한 개발자가 3억 5천만 개의 파라미터를 가진 언어 모델을 가져와 미세 조정(fine-tuning)한 뒤, 서버 호출, API 키, 클라우드 비용 없이 모든 현대적인 웹 브라우저에서 실행되는 완전한 기능의 AI 어시스턴트로 배포했습니다.
이 프로젝트는 모델의 가중치(weights)를 정적 웹페이지와 함께 제공하여, 에이전트가 도구를 선택하고, 인자(arguments)를 바인딩하며, "두 번째 것"과 같은 참조를 해결하고, 정보가 부족할 때 답변을 거부할 수 있게 합니다. 이 모든 과정에서 데이터는 사용자의 기기에만 머뭅니다.
브라우저 기반 에이전트 구축 방법
시작점은 LiquidAI의 LFM2.5 제품군, 특히 230M 및 350M 파라미터 변체였습니다.
제품 카탈로그나 가격표를 모델에 억지로 집어넣는 대신, 트레이너는 상호작용의 패턴을 가르쳤습니다. 에이전트는 특정 SKU를 알지 못하지만, 다음과 같은 방법을 학습합니다:
- 주어진 요청에 적절한 도구 선택.
- 해당 도구에 올바른 인자와 식별자 바인딩.
- 모호한 참조 해석 ("한 다스", "두 번째 것").
- 외부 텍스트를 가져와 질문에 답변하는 데 사용.
- 필요한 정보가 없을 때 거절.
- 대화 주제 유지.
도구 세트는 의도적으로 정적입니다: list_items, get_item, search_knowledge, add_to_cart, remove_from_cart, clear_cart, checkout, navigate. 도구 목록을 고정함으로써 모델이 도구 ID를 암기하는 것을 방지하고 미세 조정 데이터를 작게 유지합니다.
시스템을 가볍게 유지하는 세 가지 엔지니어링 선택:
- 고정된 도구 목록(Frozen tool roster) – 모델이 고정된 작업 목록을 보므로 방대한 도구 이름 어휘가 필요하지 않습니다.
- 도구로서의 RAG – 검색 증강 생성(RAG)이 다른 함수처럼 작동합니다. 에이전트는
search_knowledge를 호출하여 텍스트를 가져온 다음, 해당 텍스트를 응답에 직접 삽입합니다. 이를 통해 지연 시간과 메모리 오버헤드를 유발하는 별도의 검색 파이프라인을 피할 수 있습니다. - 문법 제약 디코딩(Grammar-constrained decoding) – 생성 과정에서 디코더는 출력을 유효한 도구 호출 구조로 강제하는 간단한 문법을 따릅니다. 이 제약은 불필요한 토큰 낭비를 없애고 잘못된 명령 생성을 줄입니다.
학습에는 합성 데이터 증류(synthetic data distillation)가 사용되었습니다. 저자는 전형적인 사용자-어시스턴트 교환을 설명하는 18가지 상호작용 레시피를 정의했습니다. 더 큰 "교사(teacher)" 모델이 자연어 부분을 생성하고, 결정론적 스크립트가 정확한 도구 호출 형식을 생성했습니다. 미세 조정 과정에는 약 3,000만 개의 토큰이 소비되었으며, 16GB 메모리를 가진 단일 GPU에서 실행 가능했습니다.
온디바이스(On-device)가 중요한 이유
- 개인정보 보호 – 모든 사용자 프롬프트는 브라우저 메모리에 머뭅니다. 민감한 질의의 경우 중요한 요소인 텔레메트리(telemetry) 데이터가 기기 외부로 유출되지 않습니다.
- 오프라인 기능 – 모델이 로컬에 캐싱되어 있으므로 인터넷 연결 없이도 어시스턴트가 작동하며, 이는 현장 작업이나 여행 시 가능성을 열어줍니다.
- 비용 – 정적 모델 파일을 배포함으로써 반복적인 GPU 기반 추론 서버 비용이나 호출당 API 수수료를 없앨 수 있습니다.
- 접근성 – 복잡한 웹 인터페이스의 음성 기반 탐색이 저사양 기기에서도 가능해져, 보조 기술에 의존하는 사용자들에게 웹 애플리케이션의 범위를 확장합니다.
이러한 장점들은 대화의 초점을 "거대 모델이 이것에 답할 수 있는가?"에서 "유용한 도움을 제공하면서 모델을 얼마나 작게 만들 수 있는가?"로 전환시킵니다.
잠재적 한계
이 정도 크기의 모델은 백과사전적 사실을 보유할 수 없습니다. 사용자가 특정 제품 가격이나 최신 뉴스 헤드라인을 물으면, 어시스턴트는 search_knowledge를 통해 정보를 검색하거나 정중히 거절합니다. 이러한 설계는 개인정보를 보호하지만, 시스템을 외부 지식 소스의 품질과 최신성에 종속시키기도 합니다.
향후 주목할 점
공개 데모는 간단한 GitHub Pages URL에서 확인할 수 있으며, 소스 코드는 공개되어 있습니다.
핵심 요약: 적당한 크기의 LLM이 엄격한 도구 문법을 따르도록 가르치고 검색을 단순한 함수로 취급함으로써, 개발자는 핵심적인 대화 능력을 희생하지 않으면서도 개인정보 보호, 오프라인 사용, 제로 클라우드 비용을 제공하는, 브라우저에서 완전히 실행되는 유용한 AI 어시스턴트를 배포할 수 있습니다.
