ChatGPT의 새로운 Intelligent UI를 대체하는 오픈소스 대안 등장, 로컬 모델까지 지원한다
원문 제목 — Open-source alternative to ChatGPT's new Intelligent UI works with any model (local too)
📄 전문 번역
v0.2.0 업데이트: 이제 답변에 실시간 3D 및 2D 장면이 포함될 수 있다. 행성의 거리가 1년에 어떤 영향을 주는지 같은 작동 원리를 물으면 모델이 작은 three.js 장면을 작성한다. 답변 자체의 슬라이더가 장면을 구동하고, 장면이 계산한 수치는 다시 텍스트로 흘러들어가므로 궤도와 1회 궤도당 연수가 새로운 모델 호출 없이 함께 변한다. 새 데모는 README 상단에 있다.
작동 방식을 살펴보면, 모델이 OpenUI Lang으로 UI를 스트리밍하므로 슬라이더는 모델이 그려넣은 HTML이 아니라 실제 앱 컴포넌트다. 각 장면은 엄격한 CSP를 적용한 iframe에 three.js를 로컬로 번들링한 샌드박스 코드 아일랜드다. 생성된 코드는 앱이나 사용자의 API 키에 접근할 수 없고 웹 페이지를 가져오거나 열 수도 없다. 작은 런타임이 모델에 준비된 장면, 카메라, 조명, 렌더 루프를 제공하므로 모델은 페이지 전체가 아니라 약 20줄만 작성하면 되며 토큰과 오류가 줄어든다. 슬라이더와 장면은 postMessage로 양방향 바인딩되어 드래그하면 값이 전달되고 진자의 주기 같은 결과가 답변으로 돌아온다.
ChatGPT가 답변이 텍스트 대신 차트, 폼, 작은 도구 형태로 돌아오는 Intelligent UI를 출시했지만 ChatGPT 내부에서만 작동한다. 이에 필자는 Ollama, LM Studio, Kimi, OpenRouter, Groq, OpenAI 등 OpenAI 호환 모델로 실행되는 오픈소스 대안을 만들었으며 GitHub 저장소 answerui의 README에서 데모 영상을 볼 수 있다.
답변은 슬라이더, 차트, 표, 체크박스, 그리고 이제는 실시간 3D 및 2D 장면 같은 실제 인터페이스로 스트리밍된다. 도구는 답변이 끝난 뒤에도 계속 작동하며 슬라이더를 움직이면 새로운 모델 호출 없이 브라우저에서 수치가 갱신된다. 단순한 질문에는 여전히 일반 텍스트가 제공된다. npx answerui-app 명령 한 줄로 실행되며 Ollama를 자동으로 찾거나 API 키를 요청하고 Docker 이미지도 제공된다. 텔레메트리가 전혀 없고 API는 사용자 자신의 머신에서 오는 요청에만 응답하며 데모는 Kimi K3에서 실행되었다(장면 영상은 1.2배속).
이 프로젝트는 스트리밍과 컴포넌트를 처리하는 OpenUI(MIT)를 기반으로 하며, 필자는 프로바이더 설정, Ollama 감지, CLI, 도구가 실제로 재계산하도록 만드는 프롬프트 규칙, 실시간 장면, 테스트를 추가했다. 솔직한 한계로는 지침이 약 12k 토큰에 달해 Ollama에 더 큰 컨텍스트 윈도우(OLLAMA_CONTEXT_LENGTH=16384)를 설정해야 하고 작은 모델은 특히 장면 생성에서 더 어려움을 겪는다. 필자는 작성자로서 어떤 모델이 잘 작동하는지에 대한 의견과 기여를 환영한다.
💬 주요 댓글 번역 (5)
🔍 루키 분석
ChatGPT의 Intelligent UI가 자사 서비스에만 국한된 가운데, OpenUI 기반 오픈소스 프로젝트 answerui가 Ollama 등 OpenAI 호환 모델과 로컬 환경까지 지원하는 대안으로 주목받고 있다. v0.2.0에서는 three.js 기반 실시간 3D·2D 장면이 추가되어 슬라이더와 양방향 바인딩되며 모델 재호출 없이 상호작용이 이어진다. 텔레메트리 없는 로컬 우선 설계가 호평을 받지만 약 12k 토큰에 달하는 지침 크기 때문에 소형 모델은 레이아웃은 그려도 로직 연결에 실패하는 한계가 지적된다.
— 루키 · glm-5.3-flash:cloud
흔한 AI 슬롭 같은 게 아니라는 점이 마음에 든다. 노력을 기울인 점 훌륭하며 이것도 정말 괜찮아 보인다.
모든 모델 지원 도구화의 어려운 부분은 채팅이 아니라 도구 호출이다. 모델마다 구조화된 호출을 다르게 형식화하므로 도구 스키마용 어댑터 계층이 진짜 엔지니어링이며, 로컬 모델에서도 이를 깔끔하게 구현한 것이 이 프로젝트의 실질적 성과다.
깔끔하다. 텔레메트리 없음과 로컬 우선 설계는 더 많이 보고 싶은 바로 그 설계다. 10k 토큰 지침 크기는 상당하지만 완전한 인터랙티브 컴포넌트를 생성할 때는 타당하다. 작은 양자화 모델이 어떻게 처리하는지 궁금해 몇몇 7B 모델로 어디서 한계에 부딪히는지 시험해볼 생각이다.
추가 모델 호출 없이 컴포넌트가 계속 작동하는 점이 특히 유용하다. 사용자가 매 조정마다 다시 프롬프트를 입력하지 않고도 답변을 탐색할 수 있다. 필자는 웹사이트와 앱의 채팅 내 사용자 정의 인터랙티브 UI를 지원하는 Predictable Dialogs의 창업자로, 우리는 도구가 UI를 제시하고 기존 컴포넌트를 재사용하는 방식에 집중해왔기 때문에 생성형 인터페이스에 대한 이 접근이 흥미롭다. 시각적 레이아웃을 넘어 작동하는 인터랙션 생성에서 특정 모델이 더 신뢰할 수 있음을 발견했는가?
감사하다. 지금까지 큰 차이가 있다. Kimi K3 같은 강력한 모델은 인터랙션을 올바르게 구현하는 반면 작은 로컬 모델(Qwen3 8B)은 레이아웃은 잘 맞추지만 로직을 연결하지 못해 보기에는 좋아도 실제로 작동하지 않는 경우가 많다. 필자는 바로 그 문제를 목표 지향적 규칙, 예제, 자가 복구 단계로 개선하는 작업을 진행 중이며 수치가 나오면 결과를 공유할 예정이다. 알려진 컴포넌트를 활용하는 당신의 접근 방식도 신뢰성 측면에서 매우 타당하다.