1P by GN⁺ | ★ favorite | 댓글과 토론
  • Moonshot AI의 Kimi K3는 전체 2.8T·활성 104B 매개변수와 네이티브 비전, 100만 토큰 문맥을 갖춘 오픈 웨이트 모델이며, Unsloth가 로컬 실행용 GGUF 양자화를 제공함
  • 전체 정밀도 추론에는 1.56TB가 필요하지만, Dynamic 1-bit UD-IQ1_S는 594GB에서 약 78.9% Top-1 정확도를, 861.3GB의 2-bit UD-Q2_K_XL은 약 90%를 기록함
  • Kimi K3는 사고 흔적을 유지하는 thinking-only 모델로 Instant 모드를 지원하지 않으며, reasoning_effort"low", "high"", "max"를 선택하고 최대 1,048,576토큰을 처리함
  • Unsloth Studio는 RAM 오프로딩과 다중 GPU 감지를 자동화하며, 비전 기능을 사용하는 llama.cpp 실행에는 Kimi K3용 Unsloth 포크가 필요함
  • 권장 UD-IQ1_S 실행에는 최소 610GB RAM이 필요하고, 대체로 RAM+VRAM을 양자화 파일 크기만큼 확보해야 하며 부족하면 디스크 오프로딩으로 크게 느려짐

모델 특성과 로컬 실행 요구사항

  • Moonshot AI의 Kimi K3는 코딩, 에이전트, 장문 문맥, 채팅을 겨냥한 2.8T 매개변수 오픈 웨이트 모델이며 추론 시 104B 매개변수를 활성화함
  • 네이티브 비전과 100만 토큰 문맥 창을 지원하고 MoE 가중치에 MXFP4를 사용함
  • 전체 정밀도 추론에는 1.56TB의 저장 공간이 필요함
  • Kimi-K3-GGUFUnsloth Studio 또는 llama.cpp에서 실행할 수 있음
  • NVIDIA DGX Station이나 128GB RAM 장치에 연결된 Mac Studio에서도 실행 가능함
  • 하드웨어 요구량은 RAM과 VRAM 또는 통합 메모리의 합으로 계산하며, 구성 범위는 610GB~1.6TB

GGUF 구현 방식

  • llama.cpp PR을 기반으로 구현했으며, Unsloth 포크가 비전 지원과 버그 수정을 추가함
  • 비전 타워는 Kimi K2.5와 유사하지만 다음 차이가 있음
    • RMSNorm을 사용하고 bias가 없음
    • 융합 QKV가 비정방형이며 qkv width != n_embd
    • projector 뒤에 정규화를 적용함
  • 큰 배치에서 n_tokens * 40 예산이 실패해 n_tokens * 160 으로 늘림
  • Kimi 채팅 템플릿을 Jinja 형식으로 변환함
  • 기본 학습 설정이 preserved thinking을 활성화하므로 사고 추적을 삭제하지 않고 유지함

양자화 방식과 품질

  • UD-Q8_K_XL은 MoE 가중치의 MXFP4와 나머지 가중치의 BF16 구성을 그대로 따르므로 무손실 양자화에 해당함
  • UD-Q4_K_XL은 정규화 텐서 등을 제외한 일부 잔여 텐서를 Q8_0으로 저장하며, 전체 정밀도에 가깝고 1.51TB 규모임
  • 무손실 UD-Q8_K_XL은 1.56TB로 UD-Q4_K_XL보다 50GB 큼
  • 주요 양자화 결과는 다음과 같음
    • UD-IQ1_S: 594.0GB, perplexity 2.5789, Top-1 정확도 78.875±0.107%
    • UD-IQ1_M: 648.9GB, perplexity 2.3639, Top-1 정확도 81.219±0.103%
    • UD-IQ2_XXS: 711.1GB, perplexity 2.1266, Top-1 정확도 84.127±0.096%
    • UD-Q2_K_XL: 861.3GB, perplexity 1.7359, Top-1 정확도 90.390±0.077%
    • UD-Q4_K_XL: 1,510GB, perplexity 1.4579
    • UD-Q8_K_XL: 1,560GB, perplexity 1.4581
  • imatrix 생성과 양자화 보정에는 1.56TB 무손실 UD-Q8_K_XL을 사용함
  • Dynamic 1-bit는 무손실 버전보다 62% 작으면서 약 79% Top-1 정확도를 달성함
  • 2-bit UD-Q2_K_XL은 45% 작으면서 약 90% 정확도를 기록함
  • 1-bit 크기는 553.2GiB이며, 모델 손상 없이 512GiB 미만으로 줄일 수 있는지는 조사 중임
  • 커뮤니티 양자화와 비교

    • 618.9GB 커뮤니티 IQ1_M은 594GB UD-IQ1_S보다 크지만 perplexity가 54.56으로 올라가 21배 악화
    • 커뮤니티 IQ2_XXS는 725GB에서 perplexity 96을 기록한 반면, Unsloth 버전은 711GB에서 2.12를 기록해 약 45배 차이가 남
    • 동적 양자화와 적절한 보정이 파일 크기와 품질을 함께 좌우함

추론 설정과 성능

  • Kimi K3는 thinking-only 모델이며 preserve_thinking이 항상 활성화되고 기본 사고 수준은 max
  • Instant 모드는 지원하지 않으며 reasoning_effort 요청 필드에 "low", "high", "max"를 지정할 수 있음
  • 문맥 길이는 최대 1,048,576토큰이며 Unsloth에서 세 사고 수준을 전환할 수 있음
  • 추론 설정에는 temperature=1.0, top_p=0.95 또는 top_p=1.0이 포함됨
  • 모델이 메모리에 들어가면 B200에서 약 20토큰/초 생성, 120토큰/초 이상의 처리량을 얻을 수 있음
  • 크기와 품질의 균형을 고려해 594GB UD-IQ1_S를 권장함
  • RAM과 VRAM의 합이 양자화 파일 크기와 비슷해야 하며, 부족해도 실행은 가능하지만 디스크 오프로딩으로 크게 느려짐

Unsloth Studio에서 실행

  • Unsloth Studio는 로컬 AI용 오픈소스 웹 UI로 macOS, Windows, Linux를 지원함
  • GGUF와 safetensors 모델을 검색·다운로드·실행하고 llama.cpp 기반 CPU+GPU 추론을 제공함
  • RAM 오프로딩과 다중 GPU 구성을 자동으로 감지함
  • 설치와 실행 명령은 다음과 같음
# macOS, Linux, WSL
curl -fsSL https://unsloth.ai/install.sh | sh


# Windows PowerShell
irm https://unsloth.ai/install.ps1 | iex

unsloth studio
  • 실행 후 브라우저에서 http://127.0.0.1:8888 또는 표시된 주소를 열며, 최초 실행 시 계정 보호용 비밀번호를 생성함
  • 무료 Cloudflare 터널을 통한 HTTPS 실행도 지원함
unsloth studio --secure
  • Model hub에서 Kimi K3를 검색해 원하는 양자화를 내려받아 실행함
  • 추론 매개변수는 자동 설정되지만 사고 수준, 문맥 길이, 채팅 템플릿 등을 수동으로 바꿀 수 있음
  • 세부 설정은 Unsloth Studio 추론 가이드에서 확인할 수 있음

llama.cpp에서 실행

  • CPU를 포함한 빠른 로컬 추론에는 llama.cpp를 사용함
  • Kimi K3 비전을 활성화하려면 범용 버전이 아닌 Unsloth 전용 포크를 빌드해야 함
git clone https://github.com/unslothai/llama.cpp
cd llama.cpp
git fetch origin pull/48/head:kimi-k3-fullsize-vision
git checkout kimi-k3-fullsize-vision
cd ..
cmake llama.cpp -B llama.cpp/build \
    -DBUILD_SHARED_LIBS=OFF -DGGML_CUDA=ON
cmake --build llama.cpp/build --config Release -j --clean-first \
    --target llama-cli llama-mtmd-cli llama-server llama-gguf-split
cp llama.cpp/build/bin/llama-* llama.cpp
  • GPU가 없거나 CPU 추론만 사용한다면 -DGGML_CUDA=OFF로 변경함
  • Apple Mac과 Metal 장치도 -DGGML_CUDA=OFF를 사용하며 Metal 지원은 기본 활성화
  • llama.cpp가 모델을 직접 내려받아 실행하도록 할 수 있지만 다운로드가 매우 느릴 수 있음
export LLAMA_CACHE="unsloth/Kimi-K3-GGUF"
./llama.cpp/llama-cli \
    -hf unsloth/Kimi-K3-GGUF:UD-IQ1_S \
    --temp 1.0 \
    --top-p 0.95
hf download unsloth/Kimi-K3-GGUF \
    --local-dir unsloth/Kimi-K3-GGUF \
    --include "*mmproj-BF16*" \
    --include "*UD-IQ1_S*"
  • 무손실 버전이 필요하면 다운로드 패턴을 *UD-Q8_K_XL*로 변경함
  • 로컬 파일과 비전 projector를 지정해 대화 모드로 실행할 수 있음
./llama.cpp/llama-cli \
    --model unsloth/Kimi-K3-GGUF/UD-IQ1_S/Kimi-K3-UD-IQ1_S-00001-of-00014.gguf \
    --mmproj unsloth/Kimi-K3-GGUF/mmproj-BF16.gguf \
    --temp 1.0 \
    --top-p 0.95
  • 텍스트 질의뿐 아니라 mmproj-BF16.gguf를 이용한 이미지 입력도 지원함

벤치마크 범위

  • 평가는 추론·지식, 코딩, 에이전트, 비전 영역을 포함함
  • 사용된 벤치마크는 GPQA Diamond, HLE-Full, DeepSWE, Terminal-Bench 2.1, BrowseComp, GDPval-AA v2, OSWorld 2.0, MMMU-Pro, MathVision임
  • DeepSWE 결과에서 Kimi K3가 효율적인 성능을 보임

댓글과 토론