양자화와 최적화된 커널을 활용해 Whisper, Llama, NLLB 같은 Transformer 모델을 더 빠르고 적은 메모리로 실행하는 C++ 및 Python 라이브러리입니다.
FareedKhan-dev/kimi-k3-in-c
GPU나 BLAS 없이 단일 CPU에서 2.78조 파라미터 Kimi K3 모델을 실행하며, 전문가를 디스크에서 스트리밍하는 C99 추론 엔진입니다.
- 스타
- 10,896
- 포크
- 1,702
- 열린 이슈
- 4
- 마지막 커밋
- 지난달
어떤 프로젝트인가요?
kimi-k3-in-c는 Moonshot의 전문가 혼합(MoE) 모델 Kimi K3를 위한 추론 엔진으로, BLAS, 프레임워크, GPU에 의존하지 않는 이식성 높은 C99로 작성되었습니다. 체크포인트는 디스크에서 1.56 TB를 차지하지만, 토큰마다 각 레이어에서 라우팅되는 전문가 896개 중 16개만 활성화되므로 엔진은 밀집 트렁크를 메모리에 유지하고 나머지는 디스크에서 스트리밍합니다. 프로젝트 보고에 따르면 8 GB급 환경에서 최대 상주 메모리는 8.24 GB이며, 메모리 예산이 달라도 출력은 바이트 단위로 동일합니다. RAM이 많을수록 생성 속도만 빨라집니다.
엔진은 safetensors 리더, 설정 리더, 공식 토크나이저와 일치하는 토크나이저, MXFP4 전문가 커널, KDA 및 MLA 어텐션, 전문가용 LRU 캐시, 공식 XTML 형식을 사용하는 텍스트 채팅 모드까지 전체 파이프라인을 지원합니다. 설정하려면 체크포인트를 다운로드하고 트렁크를 단일 파일로 패킹한 다음 메모리 프리셋을 선택하면 됩니다. 테스트 스위트는 전체 가중치 없이 소형 모델에서 PyTorch 레퍼런스와 엔진을 비교합니다.
이 프로젝트는 일반적인 하드웨어에서 초대형 MoE 모델을 연구하거나 실행하려는 개발자를 위한 것이며, 저수준 추론 설계를 참고하는 데도 유용합니다. 생성 속도는 디스크 처리량에 좌우되므로 로컬 NVMe 드라이브가 큰 차이를 만듭니다.
핵심 기능
- 01약 8 GB의 최대 RAM으로 단일 CPU에서 2.78조 파라미터 Kimi K3를 실행합니다.
- 02라우팅된 전문가를 디스크에서 스트리밍하고 자주 쓰는 전문가는 LRU 캐시에 저장합니다.
- 03MXFP4 커널과 AVX2 또는 NEON SIMD 경로를 사용하며 BLAS에 의존하지 않습니다.
- 04메모리 예산에 관계없이 바이트 단위로 동일한 출력을 생성합니다.
- 05공식 XTML 형식과 토크나이저를 사용하는 텍스트 채팅 모드를 포함합니다.
- 06PyTorch 레퍼런스와 출력을 비교하는 테스트 스위트를 제공합니다.
활용 사례
- GPU 없이 노트북이나 데스크톱에서 초대형 MoE 모델을 실행합니다.
- 스트리밍 방식의 전문가 혼합 추론과 KV 또는 recurrent state의 작동 방식을 C 수준에서 연구합니다.
- 다른 대형 모델용 CPU 추론 엔진을 만들 때 참고 자료로 활용합니다.
- 저장 장치 처리량이 CPU 기반 LLM 생성 속도를 어떻게 제한하는지 벤치마크합니다.
빠른 시작
- 1
저장소를 클론합니다
git clone https://github.com/FareedKhan-dev/kimi-k3-in-c.git - 2
프로젝트 디렉터리로 이동합니다
cd kimi-k3-in-c - 3
엔진을 빌드합니다
make -j - 4
테스트 스위트를 실행합니다(체크포인트 불필요)
make test
사용 전 알아둘 점
- 전체 모델을 실행하려면 디스크에 1.56 TB의 체크포인트가 필요하며, 총 약 1.7 TB의 여유 공간이 필요합니다.
- 사양이 낮은 머신에서는 생성 속도가 매우 느립니다. RAM이 8 GB인 경우 토큰 하나를 생성하는 데 약 26초가 걸립니다.
- 채팅 모드와 전체 모델을 사용하려면 용량이 큰 공식 체크포인트를 별도로 다운로드해야 합니다.
포함된 컬렉션
토픽
자주 묻는 질문
- kimi-k3-in-c은(는) 무엇인가요?
- GPU나 BLAS 없이 단일 CPU에서 2.78조 파라미터 Kimi K3 모델을 실행하며, 전문가를 디스크에서 스트리밍하는 C99 추론 엔진입니다. kimi-k3-in-c는 Moonshot의 전문가 혼합(MoE) 모델 Kimi K3를 위한 추론 엔진으로, BLAS, 프레임워크, GPU에 의존하지 않는 이식성 높은 C99로 작성되었습니다. 체크포인트는 디스크에서 1.56 TB를 차지하지만, 토큰마다 각 레이어에서 라우팅되는 전문가 896개 중 16개만 활성화되므로 엔진은 밀집 트렁크를 메모리에 유지하고 나머지는 디스크에서 스트리밍합니다. 프로젝트 보고에 따르면 8 GB급 환경에서 최대 상주 메모리는 8.24 GB이며, 메모리 예산이 달라도 출력은 바이트 단위로 동일합니다. RAM이 많을수록 생성 속도만 빨라집니다.
- kimi-k3-in-c은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- kimi-k3-in-c은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- kimi-k3-in-c은(는) 아직 유지보수되고 있나요?
- 6개월 이내 업데이트. kimi-k3-in-c의 마지막 커밋은 2026년 10월 2일입니다.
- kimi-k3-in-c은(는) 어디에 사용할 수 있나요?
- GPU 없이 노트북이나 데스크톱에서 초대형 MoE 모델을 실행합니다. 스트리밍 방식의 전문가 혼합 추론과 KV 또는 recurrent state의 작동 방식을 C 수준에서 연구합니다. 다른 대형 모델용 CPU 추론 엔진을 만들 때 참고 자료로 활용합니다. 저장 장치 처리량이 CPU 기반 LLM 생성 속도를 어떻게 제한하는지 벤치마크합니다.
- kimi-k3-in-c는 어떻게 설치하나요?
- 저장소를 클론합니다: git clone https://github.com/FareedKhan-dev/kimi-k3-in-c.git 프로젝트 디렉터리로 이동합니다: cd kimi-k3-in-c 엔진을 빌드합니다: make -j 테스트 스위트를 실행합니다(체크포인트 불필요): make test
- kimi-k3-in-c은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/FareedKhan-dev/kimi-k3-in-c
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Google의 Gemma 모델을 CPU에서 실행하는 경량 독립형 C++ 추론 엔진입니다.
SIMD 벡터화와 멀티스레딩을 활용해 단일 파일의 순수 Mojo로 구현한 Llama 2 스타일 트랜스포머 추론 코드입니다.
제한된 GPU 메모리에서 대규모 MoE 모델을 CPU-GPU 이기종 환경으로 추론하고 LoRA/전체 파인튜닝하기 위한 연구 프레임워크입니다.
OpenAI 및 Anthropic 호환 API로 제공되는, NVIDIA Blackwell GPU에서 Qwen3.8-Flash-Next MoE 모델을 실행하는 로컬 추론 엔진입니다.
20개 이상의 오픈 웨이트 모델을 사전 학습, 파인튜닝, 평가, 서빙할 수 있는 PyTorch 기반 LLM 구현 툴킷입니다.