Colibri: 당신의 노트북에서 744B AI 모델 실행하기
요약
Colibri는 744B 파라미터 규모의 GLM-5.2 모델을 일반 노트북에서 실행할 수 있게 해주는 C 언어 기반 추론 엔진입니다. MoE 아키텍처의 특성을 활용해 전문가(experts)를 디스크에서 스트리밍함으로써 RAM 사용량을 획기적으로 줄였습니다.
핵심 포인트
- MoE 전문가를 RAM 대신 NVMe SSD에서 스트리밍하여 저사양 기기 지원
- 밀집 레이어는 RAM에 상주시키고 필요한 전문가만 디스크 I/O로 처리
- MLA attention 및 양자화 커널을 통한 효율적인 메모리 및 연산 최적화
- LRU 캐싱과 OS 페이지 캐시를 활용한 데이터 로딩 최적화
GLM-5.2는 7,440억 개의 파라미터(parameters)를 가진 프런티어 (frontier) AI 모델입니다. 일반적으로 이 모델을 실행하려면 H100 GPU, 수백 기가바이트의 VRAM, 그리고 자동차 할부금보다 더 큰 클라우드 비용이 필요합니다. Colibri는 이를 25GB RAM을 탑재한 노트북에서 실행합니다.
비결이 무엇일까요? 모델 전체를 로드하지 않는다는 점입니다.
Colibri란 무엇인가?
Colibri는 Z.ai에서 출시한 Mixture-of-Experts (MoE) 모델인 GLM-5.2를 위한 순수 C 언어 추론 엔진 (inference engine)입니다. 이 엔진은 모델 전문가 (experts)들을 메모리에 유지하는 대신 디스크에서 스트리밍하여, RAM 대신 디스크 I/O를 활용합니다.
"이것은 빠르지 않습니다. 이것은 H100 팬 하나보다 저렴한 기기에서 정확하게 답변하는 744B 프런티어급 모델입니다."
— Colibri README
작동 원리: MoE 아키텍처
GLM-5.2는 Mixture-of-Experts (MoE)를 사용합니다. 각 토큰 (token)에 대해 오직 소수의 "전문가 (experts)" 부분집합만이 활성화됩니다. 이 모델은 다음과 같이 구성됩니다:
- 21,504개의 라우팅된 전문가 (routed experts) (int4 기준 각각 19MB) — 디스크에 저장 (~370 GB)
- 밀집 부분 (Dense parts) (어텐션 (attention), 공유 전문가 (shared experts), 임베딩 (embeddings)) — RAM에 상주 (~10 GB)
핵심 통찰: 토큰마다 변하는 파라미터는 약 11GB뿐입니다. 그 11GB가 바로 라우팅된 전문가들입니다. 나머지 34GB는 계속 로드된 상태로 유지되는 밀집 레이어 (dense layers)입니다.
Colibri는 밀집 부분을 RAM에 유지하고, 필요에 따라 NVMe SSD에서 전문가들을 스트리밍합니다. 레이어별 LRU 캐싱 (LRU caching), 자주 사용되는 전문가를 위한 선택적 핀드 핫 스토어 (pinned hot-store), 그리고 무료 L2 캐시로서의 OS 페이지 캐시 (page cache)를 활용합니다.
기술 사양
| 지표 | 값 |
|---|---|
| 디스크 상의 모델 (int4) | ~370 GB |
| ... |
주요 특징
- Faithful GLM-5.2 forward — transformers 오라클(oracle)에 대한 토큰 단위 정밀 검증 (token-exact validation)
- MLA attention — 압축된 KV-캐시 (KV-cache) 적용 (토큰당 576개 float vs 32,768개 — 57배 더 작음)
- DeepSeek-V3 스타일의 sigmoid router — 공유 전문가 (shared expert) 방식 적용
- Native MTP speculative decoding — GLM-5.2의 다중 토큰 예측 (multi-token-prediction) 헤드가 초안 토큰을 생성하면, 배치 순방향 전파 (batched forward)를 통해 검증
- Grammar-forced speculative drafts — 제약된 JSON/NDJSON 출력을 위한 문법 강제 방식의 추측 초안 생성
- Integer-dot kernels — Q8_0 스타일의 int8 활성화 함수 (activations), AVX2
maddubs사용 - MLA weight absorption — 디코딩 (decode)을 위한 MLA 가중치 흡수
- Async expert readahead — 비동기 전문가 리드어헤드 (Async expert readahead)
- Quantization kernels — 양자화 커널 (Quantization kernels): int8 / packed int4 / packed int2
- DSA sparse attention — GLM-5.2의 초고속 인덱서 (indexer)
- KV-cache persistence — 엔진 재시작 시에도 대화 내용이 웜 상태 (warm)로 재개되는 KV-캐시 지속성
- Router-lookahead prefetch (실험적 기능) — 71.6%의 예측 가능한 라우팅 (predictable routing)
플랫폼 지원 (Platform Support)
| 플랫폼 (Platform) | 상태 (Status) | 비고 (Notes) |
|---|---|---|
| Linux | ✅ 전체 지원 (Full) | 기본 플랫폼 |
| ... |
요구 사항: OpenMP를 포함한 gcc, AVX2, 16 GB 이상의 RAM, 로컬 NVMe 상의 ~370 GB 모델.
사용 방법 (How to Use)
빠른 시작:
cd c
./setup.sh # 빌드 및 자체 테스트
COLI_MODEL=/path/to/glm52_i4 ./coli chat
OpenAI 호환 API:
COLI_MODEL=/nvme/glm52_i4 ./coli serve \
--host 127.0.0.1 --port 8000 --model-id glm-5.2-colibri
품질 벤치마크:
./coli bench # hellaswag, arc_challenge, mmlu
성능: 느리지만 정확함 (Performance: Slow but Correct)
이것은 트레이드오프 (trade-off)입니다. Colibri는 빠르지 않습니다. 성능은 디스크 속도, RAM 용량, 그리고 전문가 캐싱 (expert caching)에 크게 의존합니다:
| 하드웨어 (Hardware) | 초당 토큰 수 (Tokens/second) |
|---|---|
| Apple M5 Max (128 GB RAM, Metal) | 1.06–1.83 tok/s |
| ... |
참고로, 클라우드 H100 추론은 30–50 tok/s로 실행될 수 있습니다. Colibri는 10–100배 더 느립니다. 하지만 설정 이후에는 비용이 전혀 들지 않으며 완전히 로컬에서 실행됩니다.
이것이 중요한 이유 (Why This Matters)
프런티어 AI 모델 (Frontier AI models)은 점점 접근하기 어려워지고 있습니다. GPT-4, Claude 3.5, GLM-5.2 — 이들은 독점적인 API, 월간 구독, 그리고 인터넷 접속을 요구합니다. 당신의 데이터는 기기를 떠나게 됩니다. 당신의 대화는 기록됩니다.
Colibri는 영리한 엔지니어링을 통해 소비자용 하드웨어에서도 프런티어 모델을 실행할 수 있음을 증명합니다. 필요한 사항은 다음과 같습니다:
- 25 GB 이상의 RAM을 탑재한 노트북
- 약 370 GB의 여유 공간이 있는 빠른 NVMe SSD
- 인내심 (0.3–2 tok/s)
모델은 정확하게 답변합니다. 품질은 충분합니다. 트레이드오프 (trade-off)는 속도입니다.
실제 사용 사례 (Real-World Use Cases)
오프라인 코딩 어시스턴트 (Offline coding assistant): API 키나 할당량 없이 GLM-5.2를 로컬에서 실행합니다. 당신의 코드는 절대 기기를 떠나지 않습니다.
개인정보 보호 우선 지식 베이스 (Privacy-first knowledge base): 로컬 검색 및 로컬 생성을 사용하는 RAG 시스템을 구축합니다. 데이터 유출이 전혀 없습니다.
벤치마킹 연구 (Benchmarking research): 클라우드 비용 없이 프런티어 모델의 품질을 테스트합니다. hellaswag, arc_challenge, mmlu를 로컬에서 실행합니다.
엣지 배포 (Edge deployment): 인터넷 연결이 불안정한 현장 배포를 위해 견고한 노트북에 설치합니다.
이것을 가능하게 하는 것 (What Makes This Possible)
Colibri는 25 GB RAM을 갖춘 12코어 노트북에서 구축된 1인 프로젝트입니다. 저자(JustVugg)는 전문가 혼합 (Mixture-of-Experts, MoE) 아키텍처를 활용했습니다:
- MoE 모델은 토큰당 약 40B 파라미터만 활성화합니다.
- 토큰 간 변화하는 것은 약 11 GB뿐입니다.
- 나머지는 상주하는 밀집된 공유 레이어 (dense, shared layers)입니다.
- NVMe를 사용하면 디스크에서 전문가 (experts)를 스트리밍하는 것이 가능합니다.
양자화 (Quantization, int4)는 디스크 상의 모델 크기를 약 1.5 TB에서 약 370 GB로 줄여줍니다. MLA 어텐션 (MLA attention)은 KV 캐시 (KV-cache)를 57배 압축합니다. MTP 헤드를 사용한 투기적 디코딩 (Speculative decoding)은 순전파 (forward pass)당 2~3개의 토큰을 초안으로 작성합니다.
이러한 기술들은 새로운 것이 아닙니다. Colibri는 이를 전문가 스트리밍에 최적화된 단일 엔진으로 결합했습니다.
부족한 점 (What Is Missing)
Colibri는 빠르려고 노력하지 않습니다. LoRA 미세 조정 (fine-tuning), RLHF 정렬 (alignment) 로딩, 또는 사용자 정의 양자화 레시피를 지원하지 않습니다. 이는 오직 한 가지 목적, 즉 최소한의 하드웨어에서 GLM-5.2를 충실하게 실행하기 위해 특수 제작되었습니다.
저렴한 VPS나 오래된 노트북을 사용하는 BD 개발자들에게 이것은 실용적이라기보다 이론에 가깝습니다. 370 GB의 NVMe 저장 공간과 AVX2를 지원하는 최신 CPU가 필요합니다. 하지만 이는 방향성을 보여줍니다. 모델을 RAM에 완전히 로드하는 것을 중단한다면, 프론티어 모델 (frontier models)도 로컬에서 실행될 수 있다는 점을 말이죠.
로컬 AI의 미래
Colibri는 개념 증명 (proof of concept)입니다. 디스크에서 전문가 (experts)를 스트리밍하는 방식이 작동한다는 것을 증명합니다. int4 양자화 (quantization)가 품질을 유지한다는 것을 증명합니다. MLA 어텐션 압축 (attention compression)이 실행 가능하다는 것을 증명합니다.
다음 단계는 속도를 높이는 것입니다. 더 나은 캐싱 (caching), 더 스마트한 프리페칭 (prefetching), 행렬 곱셈 (matmul)을 위한 GPU 가속, 멀티스레드 전문가 로딩 (multi-threaded expert loading) 등이 필요합니다. 각 개선 사항은 실제 업무에 사용하기에 "충분히 빠른" 수준에 한 걸음씩 다가갑니다.
하지만 초당 0.3 토큰 (0.3 tok/s)의 속도에서도 Colibri는 유용합니다. 단일 H100 GPU 팬 하나보다 저렴한 기기에서 744B 모델을 실행합니다. 이는 놀라운 일입니다.
실행 방법
하드웨어를 갖추고 있다면, 방법은 다음과 같습니다:
- 리포지토리 클론:
git clone https://github.com/JustVugg/colibri - GLM-5.2 가중치 확보: Z.ai에서 다운로드 (MIT 라이선스로 공개됨)
- int4로 양자화:
tools/디렉토리의 도구 사용 - 설정 실행:
cd c && ./setup.sh - 채팅:
COLI_MODEL=/path/to/glm52_i4 ./coli chat
인내심이 필요할 것입니다. 첫 번째 토큰이 나오는 데 30~60초가 걸립니다. 이후의 토큰은 더 빠릅니다. 하지만 답변은 정확합니다. 품질은 보장됩니다.
결론
Colibri는 모두를 위한 것은 아닙니다. 370 GB의 NVMe 저장 공간, 최신 CPU, 그리고 인내심이 필요합니다. 하지만 프론티어 AI 모델이 반드시 클라우드 인프라를 필요로 하는 것은 아니라는 점을 증명합니다.
1인 프로젝트, 12코어 노트북, 그리고 영리한 엔지니어링만으로도, 그렇지 않았다면 GPU 사용료로 수만 달러가 들었을 744B 모델을 실행할 수 있습니다. 이것이 로컬 AI의 이야기입니다.
벌새는 무게가 몇 그램에 불과하며, 제자리에서 맴돌며 하루에 수천 송이의 꽃을 방문합니다. Colibri는 25 GB의 RAM, 12개의 CPU 코어, 그리고 많은 디스크 인내심이라는 벌새의 식량만으로 7440억 개의 파라미터를 가진 거인을 살려둡니다.
출처
- GitHub: JustVugg/colibri
- Z.ai가 MIT 라이선스 하에 공개한 GLM-5.2 가중치 (weights)
- Colibri 엔진은 Apache 2.0 라이선스를 따름
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기