
디스크 스트리밍을 통한 소비자용 하드웨어에서의 744B 파라미터 모델 실행
요약
Colibri 프로젝트는 25GB RAM 환경에서 744B 파라미터의 거대 MoE 모델을 실행하는 혁신적인 디스크 스트리밍 기술을 소개합니다. 모델을 밀집 백본과 라우팅된 전문가 레이어로 분리하여, 메모리 부하를 NVMe SSD의 디스크 I/O로 전환함으로써 저사양 하드웨어에서의 추론을 가능하게 합니다.
핵심 포인트
- 밀집 백본은 RAM에 상주시키고 전문가 레이어는 SSD에서 스트리밍
- 메모리 제한적 문제를 I/O 제한적 문제로 전환하여 해결
- 순수 C 언어와 OpenMP를 활용해 프레임워크 오버헤드 최소화
- 추론 성능이 시스템 클록 속도보다 디스크 대역폭에 의존함
저사양 RAM 시스템에서의 고파라미터 추론(Inference) 소개
최근 머신러닝(Machine Learning)의 발전은 거대한 Mixture-of-Experts (MoE) 모델을 실행하려면 워크스테이션급 메모리 키트가 필요하다는 기존의 가설에 도전하고 있습니다. Colibri 프로젝트는 단 25 GB의 RAM만 탑재된 표준 하드웨어에서 7440억 개의 파라미터를 가진 거대 모델인 Z.ai의 GLM-5.2 모델을 실행하기 위한 혁신적인 접근 방식으로 등장했습니다. 엔지니어들은 밀집된 모델 백본(Dense model backbone)을 희소한 전문가 레이어(Sparse expert layers)와 분리함으로써, 무거운 작업 부하를 메모리에서 디스크 I/O로 성공적으로 이동시켰습니다.
아키텍처 기본 원리: 디스크 스트리밍 패러다임
모델 가중치(Weights)를 VRAM이나 시스템 RAM에 완전히 매핑하려고 시도하는 전통적인 추론 엔진과 달리, Colibri는 세밀한 스트리밍 전략을 활용합니다. 이 아키텍처는 모델을 두 개의 별도 세그먼트로 나눕니다:
- 밀집 백본 (The Dense Backbone): 어텐션 메커니즘(Attention mechanisms), 임베딩(Embeddings), 그리고 공유 전문가(Shared experts)를 포함합니다. 이들은 int4로 양자화(Quantized)되어 메모리에 상주합니다 (~9.9 GB 점유).
- 라우팅된 전문가 (The Routed Experts): 21,504개의 전문가로 구성됩니다. 이들은 고속 NVMe SSD에 상주하며, 라우터 활성화(Router activation)에 따라 필요할 때마다 LRU 캐시(LRU cache)로 로드됩니다.
이 접근 방식은 메모리 제한적(Memory-bound)인 문제를 I/O 제한적(I/O-bound)인 문제로 효과적으로 전환합니다. 런타임 의존성이 없는 순수 C 언어로 작성된 이 엔진은 멀티 코어 프로세싱을 위해 OpenMP를 활용하여 무거운 프레임워크의 오버헤드를 방지합니다.
구현 전략 및 성능
성능은 원시 클록 속도 (raw clock speed)보다는 디스크 대역폭 (disk bandwidth)에 크게 의존합니다. 콜드 캐시 (cold-cache) 작업 중에는 0.05–0.1 tokens/second 범위의 성능을 예상할 수 있습니다. 그러나 전문가 고정 휴리스틱 (expert-pinning heuristics)이 빈번한 모듈을 위해 메모리 내 "핫 스토어 (hot store)"를 채우게 되면, 처리량 (throughput)은 2–4 tokens/second로 크게 증가합니다. 주요 기술적 최적화 사항은 다음과 같습니다:
- 추측적 다중 토큰 예측 (Speculative Multi-token Prediction): 한 번의 순전파 (forward pass)당 여러 토큰을 초안으로 작성하여 출력 생성을 촉진합니다.
- KV-캐시 지속성 (KV-cache Persistence): 프로세스 재시작 시 상태 복구를 보장합니다.
- 라우터-룩어헤드 프리페치 (Router-lookahead Prefetch): 지연 시간 (latency)을 완화하기 위해 전문가 사용을 예측하려고 시도합니다.
API 서버를 통한 배포
Colibri는 OpenAI 호환 API 서버인 coli serve와 함께 제공됩니다. 서비스를 로컬에서 설정하고 실행하려면 다음 단계를 따르세요:
git clone https://github.com/JustVugg/colibri.git
cd colibri/c
./setup.sh
...
로컬 추론을 안전하게 노출하기
coli serve는 보안을 위해 기본적으로 localhost에 바인딩되므로, 워크스테이션을 벗어난 상태에서 모델에 액세스하려면 보안 터널링 솔루션이 필요합니다. Pinggy를 사용하면 복잡한 라우터 설정 없이도 로컬 서버를 공용 인터넷에 안전하게 노출할 수 있습니다:
ssh -p 443 -R0:localhost:8000 free.pinggy.io
이 명령은 임시 공용 HTTPS URL을 생성하여, 모바일 기기나 외부 클라이언트에서 실행 중인 배치 작업 (batch jobs)을 폴링 (poll)할 수 있게 해줍니다. 프로덕션과 유사한 사용 사례의 경우, 지속적인 도메인으로 업그레이드하면 안정적인 API 통합 및 2차 인증 계층을 사용할 수 있습니다.
모범 사례 및 주의 사항
디스크 스트리밍 (Disk streaming)을 통한 대규모 모델 실행은 실시간 채팅 지연 시간 (Latency)이 우선순위가 아닌 배치 처리 (Batch processing), 문서 요약 (Document summarization), 그리고 장기적 작업 (Long-horizon tasks)에 이상적입니다. 피크 라우터 활동 (Peak router activity) 동안 심각한 병목 현상 (Bottlenecking)이 발생하는 것을 방지하기 위해, 충분한 I/O 처리량 (I/O throughput)을 보장할 수 있는 하이엔드 NVMe 드라이브를 사용하는 것이 권장됩니다. 가중치 로딩 (Weight loading)의 읽기 중심 (Read-heavy) 특성 덕분에 SSD 마모 (SSD wear)에 대한 우려는 일반적으로 완화되지만, 자원이 제한된 시스템에서는 지속적인 로깅 (Logging) 및 KV-캐시 (KV-cache) 쓰기를 모니터링해야 합니다.
Reference
단 25 GB RAM으로 744B 파라미터 LLM 셀프 호스팅하기
Colibrì라고 불리는 단일 파일 C 엔진은 GLM-5.2의 744B Mixture-of-Experts (MoE) 가중치를 NVMe 드라이브에서 스트리밍하여, 25 GB의 RAM만으로 초당 0.05~2 토큰의 속도로 전체 모델을 실행합니다. 이것이 어떻게 작동하는지, Hacker News의 반응은 어떠했는지, 그리고 Pinggy를 사용하여 휴대폰으로 대기열에 있는 실행 상태를 확인하는 방법은 무엇인지 소개합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기

