🌙Kimi K2 Thinking: Anleitung zum lokalen Betrieb
Anleitung zum Ausführen von Kimi-K2-Thinking und Kimi-K2 auf deinem eigenen lokalen Gerät!
Kimi-K2-Thinking wurde veröffentlicht. Lies unseren Thinking-Leitfaden oder greife zu GGUFs hier.
Wir haben auch mit dem Kimi-Team an System-Prompt-Fix für Kimi-K2-Thinking zusammengearbeitet.
Kimi-K2 und Kimi-K2-Thinking erzielen SOTA-Leistung in Wissen, Schlussfolgerung, Programmierung und agentischen Aufgaben. Die vollständigen 1T-Parameter-Modelle von Moonshot AI benötigen 1,09 TB Speicherplatz, während die quantisierte Unsloth Dynamic 1,8-Bit Version dies auf nur 230 GB reduziert (-80 % Größe): Kimi-K2-GGUF
Du kannst jetzt auch unsere Kimi-K2-Thinking GGUFs.
Alle Uploads verwenden Unsloth Dynamic 2.0 für SOTA Aider Polyglot und 5-Shot MMLU-Leistung ausführen. Sieh dir an, wie unsere Dynamic 1–2-Bit-GGUFs bei Coding-Benchmarks hier.
Thinking ausführenInstruct ausführen
⚙️ Empfohlene Anforderungen
Du brauchst 247 GB Speicherplatz um das 1bit-Quant laufen zu lassen!
Die einzige Voraussetzung ist Speicherplatz + RAM + VRAM ≥ 247GB. Das bedeutet, du musst nicht so viel RAM oder VRAM (GPU) haben, um das Modell auszuführen, aber es wird deutlich langsamer sein.
Das 1,8-Bit (UD-TQ1_0) Quant passt in eine 1x 24GB GPU (mit allen MoE-Schichten ausgelagert in Systemspeicher oder auf eine schnelle Festplatte). Erwarte mit diesem Setup ungefähr ~1–2 Token/s, wenn du zusätzlich 256GB RAM hast. Das vollständige Kimi K2 Q8-Quant hat eine Größe von 1,09 TB und benötigt mindestens 8 x H200-GPUs.
Für optimale Leistung brauchst du mindestens 247 GB einheitlichen Speicher oder 247 GB kombinierte RAM+VRAM für 5+ Token/s. Wenn du weniger als 247 GB kombinierte RAM+VRAM hast, wird die Geschwindigkeit des Modells auf jeden Fall leiden.
Wenn du nicht 247 GB RAM+VRAM hast, kein Problem! llama.cpp hat von Haus aus Festplatten-Auslagerung, sodass es durch mmaping immer noch funktioniert, nur langsamer — zum Beispiel vorher vielleicht 5 bis 10 Token/Sekunde, jetzt unter 1 Token.
Wir schlagen vor, unser UD-Q2_K_XL (360GB) Quant zu verwenden, um Größe und Genauigkeit auszugleichen!
Für die beste Leistung sollte VRAM + RAM zusammen = die Größe des Quants sein, das du herunterlädst. Wenn nicht, funktioniert es trotzdem über Festplatten-Auslagerung, es wird nur langsamer!
💭Kimi-K2-Thinking Leitfaden
Kimi-K2-Thinking sollte im Allgemeinen denselben Anweisungen wie das Instruct-Modell folgen, mit einigen wesentlichen Unterschieden, insbesondere bei Einstellungen und der Chat-Vorlage.
Um das Modell in voller Präzision auszuführen, musst du nur die 4-Bit- oder 5-Bit-Dynamic-GGUFs (z. B. UD_Q4_K_XL) verwenden, da das Modell ursprünglich im INT4-Format veröffentlicht wurde.
Du kannst eine höherbitige Quantisierung wählen, nur um auf der sicheren Seite zu sein bei kleinen Quantisierungsunterschieden, aber in den meisten Fällen ist das unnötig.
🌙 Offiziell empfohlene Einstellungen:
Laut Moonshot AIsind dies die empfohlenen Einstellungen für die Kimi-K2-Thinking-Inferenz:
Setzen Sie das Temperatur 1.0 um Wiederholungen und Inkohärenz zu reduzieren.
Vorgeschlagene Kontextlänge = 98.304 (bis zu 256K)
Hinweis: Die Verwendung unterschiedlicher Tools kann unterschiedliche Einstellungen erfordern
Wir empfehlen, min_p auf 0,01 zu setzen, um das Auftreten unwahrscheinlicher Token mit niedriger Wahrscheinlichkeit zu unterdrücken.
Zum Beispiel erhalten wir bei einer Benutzernachricht "Was ist 1+1?":
✨ Kimi K2 Thinking in llama.cpp ausführen
Du kannst jetzt das neueste Update von llama.cpp verwenden, um das Modell auszuführen:
Holen Sie sich die neueste
llama.cppauf GitHub hier. Sie können auch den unten stehenden Build-Anweisungen folgen. Ändern Sie-DGGML_CUDA=ONzu-DGGML_CUDA=OFFwenn Sie keine GPU haben oder nur CPU-Inferenz wünschen.
Wenn Sie
llama.cppdirekt zum Laden von Modellen kannst du Folgendes tun: (:UD-TQ1_0) ist der Quantisierungstyp. Du kannst auch über Hugging Face herunterladen (Punkt 3). Das ist ähnlich wieollama run. Verwenden Sieexport LLAMA_CACHE="folder"um zu erzwingen, dassllama.cppan einem bestimmten Ort zu speichern.
Das Obige wird etwa 8 GB GPU-Speicher verwenden. Wenn du etwa 360 GB kombinierten GPU-Speicher hast, entferne
-ot ".ffn_.*_exps.=CPU"um maximale Geschwindigkeit zu erzielen!
Bitte probieren Sie aus -ot ".ffn_.*_exps.=CPU" um alle MoE-Schichten auf die CPU auszulagern! Dies ermöglicht es effektiv, alle Nicht-MoE-Schichten auf einer GPU unterzubringen und die Generationsgeschwindigkeit zu verbessern. Sie können den Regex-Ausdruck anpassen, um mehr Schichten auszulagern, wenn Sie mehr GPU-Kapazität haben.
Wenn Sie etwas mehr GPU-Speicher haben, versuchen Sie -ot ".ffn_(up|down)_exps.=CPU" Dies lagert up- und down-Projektions-MoE-Schichten aus.
Versuchen Sie -ot ".ffn_(up)_exps.=CPU" wenn Sie noch mehr GPU-Speicher haben. Dies lagert nur up-Projektions-MoE-Schichten aus.
Und schließlich alle Schichten auslagern über -ot ".ffn_.*_exps.=CPU" Dies verwendet am wenigsten VRAM.
Sie können den Regex auch anpassen, zum Beispiel -ot "\.(6|7|8|9|[0-9][0-9]|[0-9][0-9][0-9])\.ffn_(gate|up|down)_exps.=CPU" bedeutet, Gate-, Up- und Down-MoE-Schichten auszulagern, jedoch nur ab der 6. Schicht.
Laden Sie das Modell herunter über (nach Installation von
pip install huggingface_hub hf_transfer). Wir empfehlen die Verwendung unseres 2-Bit-Dynamic-Quants UD-Q2_K_XL, um Größe und Genauigkeit auszugleichen. Alle Versionen unter: huggingface.co/unsloth/Kimi-K2-Thinking-GGUF
Wenn du feststellst, dass Downloads bei 90 bis 95% oder so stecken bleiben, siehe bitte https://docs.unsloth.ai/basics/troubleshooting-and-faqs#downloading-gets-stuck-at-90-to-95
Führe beliebige Prompts aus.
Bearbeiten
--threads -1für die Anzahl der CPU-Threads (standardmäßig auf die maximale Anzahl der CPU-Threads gesetzt),--ctx-size 16384für die Kontextlänge,--n-gpu-layers 99für GPU-Auslagerung, wie viele Schichten. Setze es auf 99 kombiniert mit MoE-CPU-Auslagerung, um die beste Leistung zu erzielen. Versuche es anzupassen, wenn deine GPU wegen Speichermangel abstürzt. Entferne es auch, wenn du nur CPU-Inferenz hast.
🤔Keine Thinking-Tags?
Du wirst vielleicht feststellen, dass keine Denken Tags vorhanden sind, wenn du das Modell ausführst. Das ist normales und beabsichtigtes Verhalten.
In deinem llama.cpp Skript, stelle sicher, dass du das --special Flag ganz am Ende deines Befehls einfügst. Sobald du das tust, siehst du das <think> Token wie erwartet erscheinen.
Möglicherweise siehst du auch, dass jede Antwort mit <|im_end|>endet. Das ist normal, da <|im_end|> ein spezielles Token ist, das beim Drucken spezieller Tokens erscheint. Wenn du es verstecken möchtest, kannst du <|im_end|> als Stop-String in deinen Einstellungen setzen.
✨ Mit llama-server und OpenAIs Completion-Bibliothek bereitstellen
Nachdem du llama.cpp wie in Kimi K2 Thinkinginstalliert hast, kannst du das Folgende verwenden, um einen OpenAI-kompatiblen Server zu starten:
Verwenden Sie anschließend die OpenAI-Python-Bibliothek nachdem Sie pip install openai :
🔍Tokenizer-Eigenheiten und Fehlerbehebungen
7. November 2025: Wir haben das Kimi-Team benachrichtigt und den Standard-System-Prompt von Du bist Kimi, ein von Moonshot AI erstellter KI-Assistent. behoben, dass er bei der ersten Benutzereingabe nicht erschien! Siehe https://huggingface.co/moonshotai/Kimi-K2-Thinking/discussions/12
Großer Dank an das Moonshot Kimi-Team für ihre extrem schnelle Reaktionszeit auf unsere Anfragen und die schnelle Behebung des Problems!
16. Juli 2025: Kimi K2 hat seinen Tokenizer aktualisiert, um mehrere Tool-Aufrufe zu ermöglichen laut https://x.com/Kimi_Moonshot/status/1945050874067476962
18. Juli 2025: Wir haben einen System-Prompt korrigiert – Kimi hat unseren Fix hier ebenfalls getwittert: https://x.com/Kimi_Moonshot/status/1946130043446690030. Die Korrektur wurde auch hier beschrieben: https://huggingface.co/moonshotai/Kimi-K2-Instruct/discussions/28
Wenn du die alten Checkpoints heruntergeladen hast – keine Sorge – lade einfach die erste GGUF-Teilung herunter, die geändert wurde. ODER wenn du keine neuen Dateien herunterladen möchtest, mache:
Der Kimi K2 Tokenizer war interessant zum Ausprobieren - er verhält sich größtenteils ähnlich wie der Tokenizer von GPT-4o! Wir sehen zuerst in der tokenization_kimi.py Datei den folgenden regulären Ausdruck (Regex), den Kimi K2 verwendet:
Nach sorgfältiger Prüfung stellen wir fest, dass Kimi K2 dem Regex des GPT-4o-Tokenizers nahezu identisch ist, der in llama.cpp Quellcode.
Beide tokenisieren Zahlen in Gruppen von 1 bis 3 Ziffern (9, 99, 999) und verwenden ähnliche Muster. Der einzige Unterschied scheint die Behandlung von "Han"- bzw. chinesischen Zeichen zu sein, mit der Kimi's Tokenizer intensiver umgeht. Die PR von https://github.com/gabriellarson behandelt diese Unterschiede nach einigen Diskussionen hier.
Wir stellen außerdem fest, dass das richtige EOS-Token nicht [EOS], sondern vielmehr <|im_end|> sein sollte, was wir ebenfalls in unseren Modellkonvertierungen korrigiert haben.
🌝Kimi-K2-Instruct Leitfaden
Schritt-für-Schritt-Anleitung zum Ausführen der Instruct Kimi K2-Modelle einschließlich Kimi K2 0905 – dem Update vom 5. September.
🌙 Offiziell empfohlene Einstellungen:
Laut Moonshot AI, dies sind die empfohlenen Einstellungen für die Kimi K2-Inferenz:
Setzen Sie das Temperatur 0,6 um Wiederholungen und Inkohärenz zu reduzieren.
Ursprünglicher Standard-System-Prompt ist:
(Optional) Moonshot schlägt außerdem Folgendes für den System-Prompt vor:
Wir empfehlen, min_p auf 0,01 zu setzen, um das Auftreten unwahrscheinlicher Token mit niedriger Wahrscheinlichkeit zu unterdrücken.
🔢 Chat-Vorlage und Prompt-Format
Kimi Chat verwendet einen BOS (Anfang-des-Satz-Tokens). Die Rollen System, Benutzer und Assistent sind alle mit <|im_middle|> eingeschlossen, was interessant ist, und jede erhält ihr jeweiliges Token <|im_system|>, <|im_user|>, <|im_assistant|>.
Um die Konversationsgrenzen zu trennen (du musst jede neue Zeile entfernen), erhalten wir:
💾 Modell-Uploads
ALLE unsere Uploads - einschließlich jener, die nicht imatrix-basiert oder dynamisch sind, nutze unseren Kalibrierungsdatensatz, der speziell für Konversation, Programmierung und Schlussfolgerungsaufgaben optimiert ist.
Wir haben auch Versionen in BF16-Format.
✨ Instruct in llama.cpp ausführen
Holen Sie sich die neueste
llama.cppauf GitHub hier. Sie können auch den unten stehenden Build-Anweisungen folgen. Ändern Sie-DGGML_CUDA=ONzu-DGGML_CUDA=OFFwenn Sie keine GPU haben oder nur CPU-Inferenz wünschen.
Wenn Sie
llama.cppdirekt zum Laden von Modellen kannst du Folgendes tun: (:UD-IQ1_S) ist der Quantisierungstyp. Du kannst auch über Hugging Face herunterladen (Punkt 3). Das ist ähnlich wieollama run. Verwenden Sieexport LLAMA_CACHE="folder"um zu erzwingen, dassllama.cppan einem bestimmten Ort zu speichern. Um das neue September-2025-Update für das Modell auszuführen, ändere den Modellnamen von 'Kimi-K2-Instruct' zu 'Kimi-K2-Instruct-0905'.
Bitte probieren Sie aus -ot ".ffn_.*_exps.=CPU" um alle MoE-Schichten auf die CPU auszulagern! Dies ermöglicht es effektiv, alle Nicht-MoE-Schichten auf einer GPU unterzubringen und die Generationsgeschwindigkeit zu verbessern. Sie können den Regex-Ausdruck anpassen, um mehr Schichten auszulagern, wenn Sie mehr GPU-Kapazität haben.
Wenn Sie etwas mehr GPU-Speicher haben, versuchen Sie -ot ".ffn_(up|down)_exps.=CPU" Dies lagert up- und down-Projektions-MoE-Schichten aus.
Versuchen Sie -ot ".ffn_(up)_exps.=CPU" wenn Sie noch mehr GPU-Speicher haben. Dies lagert nur up-Projektions-MoE-Schichten aus.
Und schließlich alle Schichten auslagern über -ot ".ffn_.*_exps.=CPU" Dies verwendet am wenigsten VRAM.
Sie können den Regex auch anpassen, zum Beispiel -ot "\.(6|7|8|9|[0-9][0-9]|[0-9][0-9][0-9])\.ffn_(gate|up|down)_exps.=CPU" bedeutet, Gate-, Up- und Down-MoE-Schichten auszulagern, jedoch nur ab der 6. Schicht.
Laden Sie das Modell herunter über (nach Installation von
pip install huggingface_hub hf_transfer). Sie können wählenUD-TQ1_0(dynamisches 1,8-Bit-Quant) oder andere quantisierte Versionen wieQ2_K_XL. Wir empfehlen wir die Verwendung unseres 2-Bit-Dynamic-QuantsUD-Q2_K_XLum Größe und Genauigkeit auszugleichen. Weitere Versionen unter: huggingface.co/unsloth/Kimi-K2-Instruct-GGUF
Wenn du feststellst, dass Downloads bei 90 bis 95% oder so stecken bleiben, siehe bitte https://docs.unsloth.ai/basics/troubleshooting-and-faqs#downloading-gets-stuck-at-90-to-95
Führe beliebige Prompts aus.
Bearbeiten
--threads -1für die Anzahl der CPU-Threads (standardmäßig auf die maximale Anzahl der CPU-Threads gesetzt),--ctx-size 16384für die Kontextlänge,--n-gpu-layers 99für GPU-Auslagerung, wie viele Schichten. Setze es auf 99 kombiniert mit MoE-CPU-Auslagerung, um die beste Leistung zu erzielen. Versuche es anzupassen, wenn deine GPU wegen Speichermangel abstürzt. Entferne es auch, wenn du nur CPU-Inferenz hast.
🐦 Flappy Bird + andere Tests
Wir haben den Flappy-Bird-Test eingeführt, als unsere 1,58-Bit-Quants für DeepSeek R1 bereitgestellt wurden. Wir fanden Kimi K2 eines der wenigen Modelle, das alle unsere Aufgaben mit One-Shot löste, einschließlich dieses, Heptagon und andere Tests sogar bei 2-Bit. Das Ziel ist, das LLM zu bitten, ein Flappy-Bird-Spiel zu erstellen, aber einigen spezifischen Anweisungen zu folgen:
Du kannst die dynamischen Quants auch über den Heptagon-Test testen, siehe r/Localllama der das Modell darin testet, eine grundlegende Physik-Engine zu erstellen, um Kugeln in einer rotierenden, geschlossenen Heptagon-Form zu simulieren.

Das Ziel ist, das Heptagon rotieren zu lassen, und die Kugeln im Heptagon sollten sich bewegen. Der Prompt ist unten:
Zuletzt aktualisiert
War das hilfreich?

