TECH 으로 돌아가기
TECH HACKER NEWS 오늘 6분 읽기 24 READS

브라우저에서 그냥 돌아가는 7MB 임베딩 모델, Ternlight 이야기

브라우저에서 그냥 돌아가는 7MB 임베딩 모델

요즘 AI 서비스를 만들다 보면 '임베딩(embedding)'이라는 단어를 정말 자주 만나게 되는데요. 이게 뭐냐면, 사람이 쓴 문장을 컴퓨터가 다룰 수 있는 숫자 덩어리, 그러니까 벡터로 바꿔주는 기술이에요. 예를 들어 '고양이가 귀엽다'랑 '강아지가 사랑스럽다'라는 문장을 각각 수백 개의 숫자로 바꾸면, 의미가 비슷하니까 두 벡터가 좌표 공간에서 서로 가까이 자리를 잡거든요. 이 원리 하나로 의미 기반 검색, 추천, 그리고 챗봇이 관련 문서를 찾아오는 RAG까지 다 돌아가는 거예요.

그런데 지금까지는 이 임베딩을 만들려면 보통 서버에 모델을 띄워두고 API로 불러오거나, 아니면 외부 서비스에 돈 내고 요청을 보내야 했어요. 사용자가 입력한 문장을 어딘가 밖으로 보내야 하니까 프라이버시도 걸리고, 요청이 몰리면 비용도 무시 못 했고요. 'Ternlight'가 재밌는 건 바로 이 지점을 뒤집었다는 거예요. 크기가 겨우 7MB밖에 안 되는 임베딩 모델을 웹어셈블리(WASM)로 감싸서, 사용자의 브라우저 안에서 통째로 돌려버리거든요.

어떻게 7MB까지 줄였을까

이름의 'Tern'은 삼진법을 뜻하는 ternary에서 왔을 가능성이 높은데요. 보통 신경망 모델은 가중치(weight) 하나하나를 32비트나 16비트 소수로 저장해요. 근데 요즘 뜨는 방식 중에 BitNet 계열이라는 게 있어요. 가중치를 -1, 0, +1 딱 세 가지 값으로만 표현하는 거죠. 이렇게 하면 숫자 하나에 필요한 저장 공간이 확 줄어들어서 모델 크기가 수십 분의 일로 작아져요. 흔히 쓰는 MiniLM 계열 임베딩 모델이 80~100MB쯤 되는 걸 생각하면, 7MB는 정말 파격적인 크기인 거예요. 웹페이지에 이미지 몇 장 넣는 용량이면 모델 하나가 통째로 들어오는 셈이죠.

웹어셈블리로 돌린다는 것도 중요해요. WASM이 뭐냐면, 브라우저 안에서 자바스크립트보다 훨씬 빠르게 돌아가는 저수준 실행 환경이에요. C나 Rust로 짠 코드를 브라우저에서 거의 네이티브 속도로 굴릴 수 있게 해주죠. 덕분에 GPU 없이 CPU만으로도 임베딩 계산이 실시간에 가깝게 나오는 거예요. 서버도, API 키도, 심지어 인터넷 연결조차 필요 없이 사용자 기기 안에서 모든 게 끝나요.

비슷한 시도들과 뭐가 다른가

사실 브라우저에서 AI 모델을 돌리려는 시도가 처음은 아니에요. Hugging Face의 transformers.js나 ONNX Runtime Web 같은 도구를 쓰면 all-MiniLM 같은 임베딩 모델을 브라우저에서 굴릴 수 있거든요. 다만 이런 모델들은 아무리 작아도 수십 MB는 기본이라, 사용자가 페이지 처음 열 때 모델을 내려받느라 한참 기다려야 하는 경우가 많았어요. Ternlight는 삼진법 양자화로 이 다운로드 부담 자체를 확 낮췄다는 게 차별점이에요. 첫 로딩이 빠르면 사용자 경험이 완전히 달라지거든요. '작게 만드는 경쟁'이 이제 임베딩 영역까지 왔다는 신호로 볼 수 있어요.

우리가 써먹을 수 있는 곳

한국에서 서비스를 만드는 입장에서 보면 쓸모가 꽤 많아요. 예를 들어 사내 문서 검색 도구를 만드는데 보안 때문에 문서 내용을 외부 API로 보내면 안 되는 상황, 은근히 많잖아요. 이럴 때 브라우저 안에서 임베딩을 만들면 데이터가 기기 밖으로 한 발짝도 안 나가니까 보안 검토가 훨씬 수월해져요. 개인정보를 다루는 서비스나, 오프라인에서도 돌아가야 하는 앱, 아니면 그냥 서버 비용 아끼고 싶은 사이드 프로젝트에도 딱이고요.

물론 한계도 분명해요. 7MB짜리 모델이 대형 임베딩 모델만큼 미묘한 의미 차이를 잡아내진 못하거든요. 정밀한 검색 품질이 생명인 서비스라면 여전히 큰 모델이 낫죠. 하지만 '적당히 괜찮은 품질을, 서버 없이, 프라이버시까지 지키면서' 얻을 수 있다는 건 상황에 따라 엄청난 무기예요.

정리하며

작고 빠른 온디바이스 AI 흐름이 이제 임베딩 영역까지 왔다는 신호예요. 모델을 무조건 크게 키우는 경쟁만 있는 게 아니라, 실제 사용자 기기에서 돌 만큼 작게 만드는 방향도 똑같이 중요해지고 있는 거죠. 여러분이라면 브라우저에서 도는 7MB 임베딩 모델, 어떤 프로젝트에 제일 먼저 넣어보고 싶으세요?


🔗 출처: Hacker News

SOURCE · HACKER NEWS
원문 전체 보기 → https://ternlight-demo.vercel.app/
SHARE
처리 중...