![[심층분석] 14MB짜리 AI 모델이 진짜로 쓸모 있다고? 스마트워치에 들어가는 파운데이션 모델 'Needle 2' 뜯어보기](/newsimg/87fXjUOZ4Dlg2a17.png)
들어가며: "AI는 클수록 좋다"는 공식이 깨지고 있어요
요즘 AI 뉴스를 보면 온통 "더 크게, 더 강하게" 경쟁이잖아요. 수천억 파라미터, GPU 수만 장, 데이터센터 전력 문제까지. 그런데 정반대 방향에서 흥미로운 프로젝트가 하나 나왔어요. Cactus Compute라는 팀이 공개한 Needle 2라는 모델인데요, 크기가 무려... 14MB예요. 오타 아니에요. 기가바이트가 아니라 메가바이트요. 요즘 스마트폰 사진 몇 장 정도 용량이죠.
파라미터 수는 4,500만 개(45M)예요. GPT-4 같은 거대 모델과 비교하면 수만 분의 일 수준이에요. 그런데 이 작은 모델이 툴 호출(tool calling)이라는 특정 영역에서는 자기보다 5배~70배 큰 모델들과 벤치마크에서 엎치락뒤치락한다는 거예요. 왜 이게 중요하냐면, 지금 업계의 큰 흐름 중 하나가 온디바이스 AI거든요. 클라우드에 데이터를 보내지 않고 기기 안에서 AI를 돌리는 것. 애플이 Apple Intelligence로, 구글이 Gemini Nano로 밀고 있는 바로 그 방향이에요. Needle 2는 이 흐름을 극단까지 밀어붙여서 "스마트폰은 물론이고 웨어러블, 스마트홈 기기, 로봇에도 들어가는 모델"을 표방하고 있어요.
기술 분석: 어떻게 14MB에 AI를 구겨 넣었을까
1. 처음부터 '다 잘하는 모델'을 포기했어요
첫 번째 비결은 설계 철학이에요. Needle 2는 시를 쓰거나 코드를 짜는 범용 챗봇이 아니에요. 딱 세 가지만 해요. 툴 호출, 기기 제어, 구조화된 데이터 추출. 툴 호출이 뭐냐면, 사용자가 "거실 불 꺼줘"라고 말하면 모델이 자연어로 답하는 게 아니라 {"function": "light_off", "room": "living_room"} 같은 정형화된 명령을 뱉어내는 거예요. 쉽게 비유하면, 뭐든 대답해주는 만능 비서 대신 "주문받기 하나만큼은 기가 막히게 잘하는 직원"을 키운 거죠. 할 일을 좁히면 필요한 지식의 양이 확 줄어들고, 그만큼 모델도 작아질 수 있거든요.
2. 2비트 양자화라는 극한의 압축
두 번째 비결은 CQ2라는 2비트 양자화예요. 양자화가 뭐냐면, 모델의 숫자(가중치)를 표현하는 정밀도를 낮춰서 용량을 줄이는 기술이에요. 보통 모델은 숫자 하나에 16비트(f16)를 쓰는데, Needle 2는 단 2비트만 써요. 고화질 원본 영상을 스트리밍용으로 압축하는 것과 비슷한데, 2비트면 사실상 숫자 하나를 네 가지 값으로만 표현하는 극단적인 압축이거든요. 보통 이 정도로 누르면 모델이 바보가 되는데, 좁은 작업 범위 + 전용 훈련 레시피 덕분에 성능을 지켜냈다는 게 이 팀의 주장이에요. 경쟁 모델들이 16비트로 겨루는 벤치마크에서 2비트로 비슷한 점수를 낸다는 건 꽤 인상적인 지점이에요.
3. Simple Attention Network: 아키텍처 자체를 새로 짰어요
기존 트랜스포머를 그냥 줄인 게 아니라, Simple Attention Network라는 자체 레시피로 구조를 바꿨어요. 핵심 요소를 쉽게 풀면 이래요.
- Hadamard MLP: 트랜스포머에서 연산량을 많이 먹는 FFN(피드포워드 신경망) 부분을 더 가벼운 곱셈 연산 구조로 대체했어요.
- GQA 어텐션: 어텐션 계산에 필요한 메모리를 여러 헤드가 나눠 쓰는 방식이에요. Llama 같은 모델도 쓰는 검증된 기법이죠.
- 엔그램(engram) 키-값 메모리: 자주 쓰이는 패턴을 일종의 '치트시트'처럼 따로 저장해두고 꺼내 쓰는 구조라고 이해하면 돼요.
- 스마트홈/가전: 인터넷 없이도 동작하는 음성 명령 처리. 14MB면 저가형 MCU급 기기에는 어려워도 라즈베리파이급 이상이면 충분히 올라가요.
- 모바일 앱: 사용자 발화에서 일정, 금액, 주소 같은 정형 데이터를 뽑는 온디바이스 파서. 서버 비용이 0원이 되는 게 매력이에요.
- 하이브리드 에이전트: 신뢰도 점수를 활용해서, 쉬운 명령은 기기에서 즉시 처리하고 애매한 것만 클라우드 LLM으로 올리는 2단 구조. API 비용을 크게 아낄 수 있어요.
4. 진짜 실용적인 부분: 문법 강제와 신뢰도 점수
개인적으로 제일 눈여겨본 건 이 부분이에요. LLM으로 JSON 출력을 받아본 분들은 아실 텐데, 모델이 멋대로 형식을 어기는 게 정말 골치잖아요. Needle 2는 개발자가 정의한 스키마를 바이트 수준 문법으로 컴파일해서, 모델이 생성하는 모든 토큰을 그 문법 안에 강제로 가둬요. 애초에 문법에 어긋나는 토큰은 뽑을 수조차 없게 만드는 거죠. 잘못된 JSON이 나올 확률이 원천 차단되는 거예요.
또 하나는 신뢰도 게이팅인데요, 모든 응답에 학습된 헤드가 계산한 보정된 확신도 점수가 붙어 나와요. "이 판단, 나 87% 확신해" 같은 점수요. 개발자는 임계값을 정해서, 점수가 높으면 기기가 바로 실행하고, 낮으면 클라우드의 큰 모델에 넘기는 구조를 만들 수 있어요. 작은 모델의 한계를 인정하고 탈출구를 설계에 포함시킨 거라 굉장히 현실적인 접근이에요.
메모리 관리도 영리해요. 256토큰 슬라이딩 윈도우로 오래된 대화는 흘려보내되, 툴 정의만은 KV 싱크로 고정해서 절대 잊지 않게 했어요. 덕분에 대화가 아무리 길어져도 메모리가 약 28MB 근처에 머물러요. 툴 카탈로그가 수백 개여도 내장 검색 헤드가 매 턴 상위 5개만 골라 보여주는 툴 검색 기능도 있고요.
업계 맥락: 작은 모델 전쟁이 시작됐어요
Needle 2가 비교 대상으로 삼은 모델들을 보면 흐름이 보여요. 구글 계열의 FunctionGemma 270M, Liquid AI의 LFM2.5 230M, 그리고 Apple의 파운데이션 모델. 다들 "기기 안에서 툴 호출을 처리하는 작은 모델" 시장을 노리고 있거든요. 왜 이 시장이 뜨겁냐면, 음성 비서나 스마트홈의 명령 대부분은 사실 단순해서요. "타이머 5분", "에어컨 켜줘" 같은 명령에 매번 클라우드 왕복을 하는 건 낭비예요. 지연 시간도 생기고, 인터넷이 끊기면 먹통이 되고, 프라이버시 문제도 있죠.
다만 접근법의 차이가 있어요. FunctionGemma는 범용 모델(Gemma)의 축소판이라 어느 정도 일반 지식이 남아 있는 반면, Needle 2는 처음부터 전용 설계예요. 비유하면 전자는 "종합병원 의사를 동네 의원에 배치한 것", 후자는 "딱 그 동네에 필요한 진료만 배우고 나온 전문 인력"이에요. 후자가 몸집은 훨씬 가볍지만, 범위를 벗어난 질문에는 완전히 무력하다는 트레이드오프가 있죠. 또 하나 유의할 점은, 이 모델은 커스텀 아키텍처라 기존 llama.cpp나 ONNX 생태계와 바로 호환되지 않고 자체 엔진에 종속된다는 거예요. 벤치마크도 자체 발표이니 실제 워크로드에서의 검증은 커뮤니티의 몫으로 남아 있고요.
한국 개발자에게 주는 시사점
한국은 이 기술이 특히 잘 맞는 시장이에요. 삼성·LG의 가전, 통신사의 IoT 플랫폼, 로봇 스타트업까지 온디바이스 수요가 많거든요. 구체적인 시나리오를 들어볼게요.
pip install cactus-needle 한 줄이면 되고, 파이썬으로 툴 스키마를 선언하면 바로 호출할 수 있어요. LoRA 파인튜닝도 패키지에 포함돼 있어서, 자사 도메인의 명령어 데이터가 있다면 가볍게 특화시킬 수 있고요. 학습 로드맵을 제안하자면: ① 먼저 툴 호출 개념 자체를 OpenAI/Claude API의 function calling으로 감 잡기 → ② Needle 2로 로컬 툴 호출 데모 만들기 → ③ 양자화와 어텐션 구조가 궁금해지면 논문(arXiv:2607.18363)으로 깊이 들어가기. 이 순서가 무난해요.마무리: '충분히 작은 지능'의 시대
Needle 2가 보여주는 건 단순한 압축 기술이 아니라 관점의 전환이에요. "모든 걸 아는 하나의 거대한 뇌" 대신 "딱 필요한 일만 하는 수많은 작은 뇌"를 곳곳에 심는 방향이요. 전기 모터가 처음엔 공장에 하나뿐인 거대 장치였다가 나중엔 드릴, 선풍기, 장난감 속으로 스며든 것처럼, AI도 비슷한 경로를 밟을 수 있다는 신호거든요. 앞으로 이어폰, 리모컨, 센서 하나하나에 전용 모델이 들어가는 풍경이 그리 멀지 않아 보여요.
여러분의 생각도 궁금해요. 여러분이 만드는 서비스에서 클라우드 LLM 호출 중 몇 퍼센트나 이런 초소형 모델로 대체할 수 있을까요? 그리고 2비트 양자화 모델을 프로덕션에 올린다면, 신뢰도 임계값은 어느 선에서 잡으시겠어요? 댓글로 의견 나눠주세요.
🔗 출처: GitHub