1 Punkte von GN⁺ 2 시간 전 | 1 Kommentare | Auf WhatsApp teilen
  • Kimi K3 von Moonshot AI ist ein Open-Weight-Modell mit insgesamt 2,8T Parametern, 104B aktiven Parametern, nativer Vision-Unterstützung und einem Kontext von 1 Million Tokens; Unsloth stellt GGUF-Quantisierungen für die lokale Ausführung bereit
  • Inferenz mit voller Präzision benötigt 1,56 TB, während Dynamic 1-bit UD-IQ1_S bei 594 GB rund 78,9 % Top-1-Genauigkeit erreicht und das 2-bit-UD-Q2_K_XL mit 861,3 GB rund 90 % erzielt
  • Kimi K3 ist ein Thinking-only-Modell, das Gedankenspuren beibehält, keinen Instant-Modus unterstützt und über reasoning_effort die Werte "low", "high"", "max" auswählt sowie bis zu 1.048.576 Tokens verarbeitet
  • Unsloth Studio automatisiert RAM-Offloading und Multi-GPU-Erkennung; für die Ausführung von llama.cpp mit Vision-Funktionen ist der Unsloth-Fork für Kimi K3 erforderlich
  • Für die empfohlene Ausführung von UD-IQ1_S sind mindestens 610 GB RAM nötig; grundsätzlich sollte RAM+VRAM mindestens der Größe der Quantisierungsdatei entsprechen, andernfalls wird es durch Disk-Offloading deutlich langsamer

Modelleigenschaften und Anforderungen für die lokale Ausführung

  • Kimi K3 von Moonshot AI ist ein Open-Weight-Modell mit 2,8T Parametern für Coding, Agenten, lange Kontexte und Chat; bei der Inferenz werden 104B Parameter aktiviert
  • Es unterstützt native Vision und ein Kontextfenster von 1 Million Tokens und verwendet MXFP4 für MoE-Gewichte
  • Inferenz mit voller Präzision benötigt 1,56 TB Speicherplatz
  • Kimi-K3-GGUF kann in Unsloth Studio oder mit llama.cpp ausgeführt werden
  • Die Ausführung ist auch auf einer NVIDIA DGX Station oder einem Mac Studio möglich, der mit einem Gerät mit 128 GB RAM verbunden ist
  • Die Hardwareanforderungen werden als Summe aus RAM und VRAM bzw. Unified Memory berechnet; die Konfigurationen reichen von 610 GB bis 1,6 TB

GGUF-Implementierung

  • Implementiert auf Basis eines llama.cpp PR; der Unsloth-Fork ergänzt Vision-Unterstützung und Bugfixes
  • Der Vision Tower ähnelt Kimi K2.5, weist aber folgende Unterschiede auf
    • verwendet RMSNorm und hat keinen Bias
    • das fusionierte QKV ist nicht quadratisch und qkv width != n_embd
    • Normalisierung wird nach dem Projector angewendet
  • Bei großen Batches schlug das Budget n_tokens * 40 fehl, daher wurde es auf n_tokens * 160 erhöht
  • Das Kimi-Chat-Template wurde in das Jinja-Format umgewandelt
  • Da die Standard-Trainingseinstellung preserved thinking aktiviert, werden Denkspuren nicht entfernt, sondern beibehalten

Quantisierungsmethoden und Qualität

  • UD-Q8_K_XL entspricht unverändert der Konfiguration aus MXFP4 für MoE-Gewichte und BF16 für die übrigen Gewichte und gilt daher als verlustfreie Quantisierung
  • UD-Q4_K_XL speichert einige Rest-Tensoren mit Ausnahme von Normalisierungstensoren usw. als Q8_0, liegt nahe an voller Präzision und hat eine Größe von 1,51 TB
  • Das verlustfreie UD-Q8_K_XL ist mit 1,56 TB 50 GB größer als UD-Q4_K_XL
  • Die wichtigsten Quantisierungsergebnisse lauten wie folgt
    • UD-IQ1_S: 594,0 GB, Perplexity 2,5789, Top-1-Genauigkeit 78,875±0,107 %
    • UD-IQ1_M: 648,9 GB, Perplexity 2,3639, Top-1-Genauigkeit 81,219±0,103 %
    • UD-IQ2_XXS: 711,1 GB, Perplexity 2,1266, Top-1-Genauigkeit 84,127±0,096 %
    • UD-Q2_K_XL: 861,3 GB, Perplexity 1,7359, Top-1-Genauigkeit 90,390±0,077 %
    • UD-Q4_K_XL: 1.510 GB, Perplexity 1,4579
    • UD-Q8_K_XL: 1.560 GB, Perplexity 1,4581
  • Für imatrix-Erzeugung und Quantisierungs-Kalibrierung wurde das 1,56 TB große verlustfreie UD-Q8_K_XL verwendet
  • Dynamic 1-bit ist 62 % kleiner als die verlustfreie Version und erreicht rund 79 % Top-1-Genauigkeit
  • Das 2-bit-UD-Q2_K_XL ist 45 % kleiner und erreicht rund 90 % Genauigkeit
  • Die 1-bit-Größe beträgt 553,2 GiB; ob sie ohne Beschädigung des Modells auf unter 512 GiB reduziert werden kann, wird untersucht
  • Vergleich mit Community-Quantisierungen

    • Das 618,9 GB große Community-IQ1_M ist größer als das 594 GB große UD-IQ1_S, die Perplexity steigt jedoch auf 54,56 und ist damit 21-mal schlechter
    • Das Community-IQ2_XXS erreicht bei 725 GB eine Perplexity von 96, während die Unsloth-Version bei 711 GB auf 2,12 kommt, also rund 45-mal besser liegt
    • Dynamische Quantisierung und passende Kalibrierung bestimmen gemeinsam Dateigröße und Qualität

Inferenz-Einstellungen und Leistung

  • Kimi K3 ist ein Thinking-only-Modell; preserve_thinking ist immer aktiviert und die Standard-Denkstufe ist max
  • Der Instant-Modus wird nicht unterstützt; im Request-Feld reasoning_effort können "low", "high" und "max" angegeben werden
  • Die Kontextlänge beträgt maximal 1.048.576 Tokens; in Unsloth lassen sich die drei Denkstufen umschalten
  • Zu den Inferenz-Einstellungen gehören temperature=1.0, top_p=0.95 oder top_p=1.0
  • Wenn das Modell in den Speicher passt, sind auf B200 etwa 20 Tokens/s Generierung und ein Durchsatz von über 120 Tokens/s möglich
  • Als Kompromiss aus Größe und Qualität wird das 594 GB große UD-IQ1_S empfohlen
  • Die Summe aus RAM und VRAM sollte ungefähr der Größe der Quantisierungsdatei entsprechen; auch bei weniger Speicher ist die Ausführung möglich, wird durch Disk-Offloading aber deutlich langsamer

Ausführung in Unsloth Studio

  • Unsloth Studio ist eine Open-Source-Web-UI für lokale KI und unterstützt macOS, Windows und Linux
  • Es kann GGUF- und safetensors-Modelle suchen, herunterladen und ausführen und bietet CPU+GPU-Inferenz auf Basis von llama.cpp
  • RAM-Offloading und Multi-GPU-Konfigurationen werden automatisch erkannt
  • Installation und Ausführung erfolgen mit folgenden Befehlen
# macOS, Linux, WSL
curl -fsSL https://unsloth.ai/install.sh | sh


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

unsloth studio
  • Nach dem Start öffnet man im Browser http://127.0.0.1:8888 oder die angezeigte Adresse; beim ersten Start wird ein Passwort zum Schutz des Kontos erstellt
  • Auch die HTTPS-Ausführung über einen kostenlosen Cloudflare-Tunnel wird unterstützt
unsloth studio --secure
  • Im Model Hub nach Kimi K3 suchen, die gewünschte Quantisierung herunterladen und ausführen
  • Die Inferenzparameter werden automatisch gesetzt, Denkstufe, Kontextlänge, Chat-Template usw. können aber manuell geändert werden
  • Details finden sich im Unsloth-Studio-Inferenzleitfaden

Ausführung mit llama.cpp

  • Für schnelle lokale Inferenz einschließlich CPU wird llama.cpp verwendet
  • Um Kimi-K3-Vision zu aktivieren, muss statt der allgemeinen Version der spezielle Unsloth-Fork gebaut werden
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
  • Wenn keine GPU vorhanden ist oder nur CPU-Inferenz genutzt wird, auf -DGGML_CUDA=OFF ändern
  • Apple-Macs und Metal-Geräte verwenden ebenfalls -DGGML_CUDA=OFF; Metal-Unterstützung ist standardmäßig aktiviert
  • llama.cpp kann das Modell direkt herunterladen und ausführen, der Download kann jedoch sehr langsam sein
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*"
  • Wenn die verlustfreie Version benötigt wird, das Download-Muster auf *UD-Q8_K_XL* ändern
  • Mit lokalen Dateien und Vision-Projector kann es im Dialogmodus ausgeführt werden
./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
  • Neben Textabfragen werden mit mmproj-BF16.gguf auch Bildeingaben unterstützt

Benchmark-Umfang

  • Die Evaluation umfasst Reasoning/Wissen, Coding, Agenten und Vision
  • Verwendete Benchmarks sind GPQA Diamond, HLE-Full, DeepSWE, Terminal-Bench 2.1, BrowseComp, GDPval-AA v2, OSWorld 2.0, MMMU-Pro und MathVision
  • In den DeepSWE-Ergebnissen zeigt Kimi K3 effiziente Leistung

1 Kommentare

 
plumpmath 6 분 전

Ich habe es ausprobiert, und es ist unglaub~lich gut~ Jetzt fehlen nur noch Tangjjamyeon & Dakkang.