8~29MB 초소형 온디바이스 모델 'Needle 3' 공개…레이어 깊이별 성능 사다리로 도구 호출·구조화 추출 노린다

Hacker News22일 전조회 2

캑터스(Cactus)가 초소형 기기용 파운데이션 모델 Needle 3를 공개했다. 양자화 기준 8~29MB 크기로, 스마트홈 기기나 웨어러블, 소형 로봇 같은 하드웨어에서 네트워크 연결 없이 도구 호출(tool calling), 구조화 데이터 추출, 문장 임베딩을 처리하는 것이 목표다. 클라우드 API 왕복 없이 기기 안에서 "거실 불 꺼" 같은 요청을 함수 호출로 바꾸거나, 알림 문자를 정형 필드로 뽑아내는 식이다.

모델의 핵심은 '인텔리전스 래더링(intelligence laddering)'이다. 하나의 가중치 세트 안에서 2레이어부터 20레이어까지 각 깊이가 그 자체로 독립된 서브네트워크로 동작하며, 깊이가 늘수록 용량이 단조 증가한다. 파라미터는 29~121M, 아키텍처는 Laddered Simple Attention Networks, 양자화는 CQ2 비트다. 같은 구성의 트랜스포머보다 토큰당 MFLOPs를 2배 이상 줄였다는 설명이 붙는다. 학습에는 360B 토큰 규모의 독점 구조화 데이터셋이 쓰였다.

성능 주장에서 눈에 띄는 대목은 4레이어 서브네트워크다. 다운스트림 태스크에 1에폭 파인튜닝하면 DeepSeek V4 Flash와 맞먹는다는 것이다. 벤치마크는 Mobile Actions(961행), DroidCall(200행), BFCL v4(3,641행), DSTC8(1,813턴), SNIPS(700행), SNIPS 7-way(700행)로 구성됐다. 자체 측정 기준으로 모바일 도구 호출에서는 자기보다 10배 큰 모델을 앞서고, 추출 과제에서는 2~3배 큰 모델과 비슷한 수준을 낸다. 라즈베리파이 5에서 디코드 400~4,000토큰/s, 프리필 1,000~10,000토큰/s가 나온다고 한다.

적용 범위는 넓게 제시된다. 스마트홈에서는 "침실 조명 낮추고 문 잠가" 같은 발화를 두 개의 호출로 나눠 오프라인에서 실행하고, 청소 로봇에는 "주방만 청소하고 침실은 건너뛰고 끝나면 도크로 복귀" 같은 지시를 이동 시퀀스로 바꾼다. 웨어러블에서는 알림을 결제 정보·답장·감정 플래그 같은 구조로 정리하고, AR 글래스나 차량에서는 짧은 요청으로 주변 검색이나 공조·미디어 제어를 처리한다. 임베딩은 기기를 떠나지 않으므로 노트·메시지 시맨틱 검색이나 수백 개 도구 중 가장 가까운 것 고르기, 중복 알림 병합에 쓸 수 있다.

배경에는 온디바이스 AI의 오래된 딜레마가 있다. 클라우드 모델은 성능이 좋지만 지연·비용·프라이버시·오프라인 문제를 안고 있고, 소형 모델은 대화는 그럴듯해도 도구 호출이나 스키마 준수 같은 구조화 작업에서 자주 무너졌다. Needle 3는 범용 챗봇이 아니라 이 구조화 작업에 특화해 그 틈을 노린다. 디코드 문법으로 출력 파싱을 보장하고, 추출 과제를 분류 문제로 일반화하는 식이다.

개발자 입장에서 진입 장벽은 낮은 편이다. Python 패키지를 설치하면 추론 엔진은 Hugging Face에서 한 번 받아 캐시되고 별도 빌드가 없다. 함수에 데코레이터를 붙이면 시그니처가 인자 타입이 되고 독스트링이 도구 설명이 되며, run()이 호출 선택→함수 실행→결과 피드백까지 한 바퀴 돈다. 설명만으로 모든 표현을 담기 어려우면 정규식 triggers를 달아 매칭된 도구로 디코드를 제한할 수 있고, 이때는 신뢰도 하한 아래에서도 호출이 나간다.

신뢰도 게이팅도 실무적으로 중요하다. 모든 응답에 보정된 신뢰도 점수가 붙고 엔진이 0.1 하한을 기본 적용한다. 하한 미만이면 호출은 suppressed_calls로 빠지고 function_calls는 비워진다. 그 위 구간은 개발자가 라우팅 규칙을 정하면 된다. 높으면 즉시 실행, 애매하면 호출을 보여주고 확인을 요청, 빈 결과는 거절로 취급하는 식이다. 구조화 추출은 Pydantic 모델을 넘기면 타입이 붙은 객체로 돌려받는다.

주의할 점도 분명하다. "4레이어가 DeepSeek V4 Flash와 맞먹는다"는 조건부 주장이다. 특정 다운스트림 태스크에 1에폭 튜닝했을 때의 결과이며, 범용 대화나 복잡한 추론 능력을 뜻하지 않는다. 벤치마크 수치도 자체 측정이고, 학습 데이터가 독점이라 재현성은 제한된다. 또 모델이 도구 스키마를 문자 그대로 읽기 때문에 설명 품질이 성능을 좌우한다. 한 턴에 넣는 도구 수가 늘수록 오라우팅 확률도 올라가므로, 좁고 명확한 도구를 유지하는 설계가 권장된다. 파인튜닝은 20레이어 전체를 고정한 LoRA로 진행한 뒤 원하는 서브네트워크를 4비트 .cact로 뽑는 경로다.

관련 글