웹 브라우저에서 로컬 LLM끼리 대화하는 사이트 제작
요약
웹 브라우저에서 로컬 LLM 간의 대화 및 인간 참여를 가능하게 하는 사이트가 제작되었습니다. 이는 Chrome 148에 도입된 Prompt API라는 JavaScript API를 활용하여, 클라우드가 아닌 로컬 환경에서 Gemini Nano 같은 모델을 구동하는 방식입니다. 이 기술은 개인 정보 보호 측면에서는 유리하지만, 웹 표준화 및 상호 운용성 문제로 인해 여러 우려와 반대에 직면하고 있습니다.
핵심 포인트
- Chrome 148의 Prompt API를 활용하여 로컬 LLM 대화 시연 가능
- 클라우드 의존성을 낮춰 개인 정보 보호에 유리한 경험 제공
- 웹 표준 적용 및 상호 운용성 측면에서 여러 기술적/정책적 우려 존재
- AI 기능이 웹 브라우저의 새로운 개발 방향을 제시함
로컬 LLM(Large Language Model)들이 끊임없이 이야기를 나누고, 인간도 그 대화에 참여할 수 있는 사이트를 만들었습니다. 현재는 PC 버전 Chrome에서만 작동합니다.
AI가 클라우드가 아닌 로컬에서 동작하기 때문에 모든 대화는 개인적입니다. 아래 링크를 이용해 주세요(※ 접속하면 바로 시작되니 주의하십시오).
Chrome 148에서는 Prompt API라는, 웹 브라우저 상에서 Local LLM 모델 (Gemini Nano)에 자연어로 지시를 보낼 수 있는 JavaScript API가 생겨났습니다. 정확히는 Chrome 138부터 이미 확장 프로그램용으로는 제공되었으나, Chrome 148에서 일반적인 웹 페이지에도 개방된 형태입니다.
이는 나중에 설명하겠지만, Mozilla와 Apple로부터 반대에 부딪혔으며, 실제로 웹 표준에 적용하는 데에는 여러 가지 우려가 있습니다. 하지만 장난감으로 가지고 놀기 재미있었고, 무언가를 만들고 싶다는 생각이 들었습니다.
Gemini Nano의 세션을 두 개 만들고, 각각에 다른 페르소나를 설정하여 번갈아 발언하게 했습니다. 각 세션에는 최근 몇 건의 대화가 전달되며, 인간이 게시한 발언도 동일한 대화 기록에 추가됩니다.
구현을 크게 단순화하면 다음과 같습니다.
const create = (name, persona) =>
LanguageModel.create({
initialPrompts: [{ role:
– Apple (WebKit)
– 상호 운용성 및 개인 정보 보호에 대한 우려가 있습니다.
– 상호 운용성에 대해서는 Mozilla의 주장과 비슷한 우려입니다.
– 게다가, AI 추론 실행에 대해 사용자 동의를 얻는 메커니즘이 없고, 웹사이트가 CPU/GPU/배터리를 임의로 소모할 수 있다는 점입니다.
– 애초에 현재 API가 모든 플랫폼에서 동일하게 작동할 수 있을지 의문입니다.
– 개인 정보 보호 문제도 있습니다. 모델 사용 가능 여부 등의 정보가 지문(fingerprint)이 될 수 있습니다.
이런 느낌이라고 할까요.
개인적으로는 가장 타당하다고 생각합니다. 장난감으로는 매우 흥미롭지만, 표준 API라는 관점에서 보면 다소 의심스러운 부분이 있습니다. 그리고 이러한 반대에도 불구하고 Chrome에서는 공식 출시되어 버렸습니다.
그래서 여러 가지 복잡한 심경이 있지만, 일단 이번에는 '누구의 PC에서 웹사이트에 접속하는 것만으로 AI와 상호작용할 수 있다'는 경험을 프로토타입 할 수 있었다는 점은 좋다고 생각합니다. 앞으로 Web 표준에 AI 관련 기능들이 어떻게 통합되어 나갈지 주목하고 싶습니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기