Skip to main content
Kimi ist eine AI-Modellreihe, die von der Dunklen Seite des Mondes eingeführt wurde. Das derzeit empfohlene kimi-k3 richtet sich an langfristige Programmierung, Agenten, komplexe Schlussfolgerungen und Wissensarbeit und kann über die OpenAI-kompatible Chat Completions API aufgerufen werden. Dieses Dokument beschreibt hauptsächlich den Ablauf der Nutzung der Kimi Chat Completion API, mit der wir die offiziellen Kimi-Dialogfunktionen einfach nutzen können.

Antragsprozess

Um die Kimi Chat Completion API zu nutzen, müssen Sie zunächst zu Ace Data Cloud Konsole gehen, um Ihr API-Token zu erhalten, das Sie zur Sicherheit aufbewahren sollten. Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, die Sie zur Registrierung und Anmeldung einlädt. Nach Abschluss werden Sie automatisch zur aktuellen Seite zurückgeleitet. Ein API-Token reicht aus, um alle Dienste der Plattform aufzurufen, es ist nicht erforderlich, für jeden Dienst separat zu beantragen. Bei der ersten Beantragung erhalten Sie ein kostenloses Kontingent, das Sie kostenlos ausprobieren können; wenn das Kontingent nicht ausreicht, können Sie im Dashboard Ihr allgemeines Guthaben aufladen.
📘 Vollständige Dokumentation: Kimi Chat Completion API →

Grundlegende Nutzung

Als Nächstes können Sie im Interface die entsprechenden Inhalte ausfüllen, wie im Bild gezeigt:

Bei der ersten Nutzung dieser Schnittstelle müssen mindestens drei Inhalte ausgefüllt werden: authorization kann direkt aus der Dropdown-Liste ausgewählt werden; model dient zur Auswahl des Kimi-Modells, empfohlen wird die Verwendung von kimi-k3; messages ist ein Array von Dialognachrichten, wobei jede Nachricht role und content enthält, wobei role user, assistant, system und tool unterstützt. Gleichzeitig können Sie auf der rechten Seite den entsprechenden Code zur Aufrufgenerierung sehen, den Sie kopieren und direkt ausführen oder einfach auf die Schaltfläche „Try“ klicken können, um einen Test durchzuführen.

Hier ist die echte K3-Antwort, die mit reasoning_effort: max erhalten wurde (nicht verwendete Erweiterungsfelder wurden weggelassen):
Die Rückgabe enthält mehrere Felder, die wie folgt beschrieben werden:
  • id, die ID, die für diese Dialogaufgabe generiert wurde, um diese Dialogaufgabe eindeutig zu identifizieren.
  • model, das ausgewählte Kimi-Modell von der offiziellen Website.
  • choices, die Antwortinformationen, die Kimi auf die Anfrage gegeben hat.
  • usage: Statistische Informationen zu den Tokens für diese Frage-Antwort-Paar.
Dabei enthält choices die Antwortinformationen von Kimi, und die darin enthaltenen choices sind die spezifischen Informationen, die Kimi gegeben hat, wie im Bild zu sehen.

Es ist zu erkennen, dass das content-Feld in choices den spezifischen Inhalt der Antwort von Kimi enthält; K3 kann auch reasoning_content zurückgeben, um den Schlussfolgerungsprozess darzustellen.

K3 Schlussfolgerungsstärke

kimi-k3 aktiviert immer die Schlussfolgerung. Der oberste Teil des Anforderungskörpers unterstützt das Feld reasoning_effort, wobei der derzeit einzige unterstützte Wert max ist; wenn dieses Feld weggelassen wird, wird ebenfalls max verwendet. standard, high oder andere Zeichenfolgen können von einigen kompatiblen Upstream-Systemen locker akzeptiert werden, aber es wird nicht garantiert, dass sie das Schlussfolgerungsverhalten ändern, verlassen Sie sich nicht darauf.
Bei der Verwendung des OpenAI SDK kann dieses Feld direkt übergeben werden:
Bei mehrstufigen Dialogen und Toolaufrufen sollten Sie die vollständige vorherige Assistant-Nachricht in messages zurückgeben, einschließlich reasoning_content und tool_calls.

Offizielle Referenzen

  • Thinking Effort: Erläutert, dass Kimi K3 immer die Schlussfolgerung aktiviert, wobei der derzeit einzige unterstützte Wert für reasoning_effort max ist.
  • Model Parameter Reference: Vergleicht die Schlussfolgerungsparameter, Kontextfenster und Unterschiede bei Toolaufrufen zwischen K3 und K2-Serie.
  • Create Chat Completion: Offizielle Chat Completions-Anfragen, -Antworten und OpenAPI-Felddefinitionen von Moonshot.

Stream-Antwort

Diese Schnittstelle unterstützt auch Stream-Antworten, was für die Webintegration sehr nützlich ist, da es ermöglicht, die Anzeige von Text zeilenweise zu realisieren. Wenn Sie eine Stream-Antwort zurückgeben möchten, können Sie den stream-Parameter im Header der Anfrage auf true ändern. Die Änderung ist wie im Bild gezeigt, jedoch muss der Aufrufcode entsprechend geändert werden, um Stream-Antworten zu unterstützen.

Nachdem Sie stream auf true geändert haben, gibt die API die entsprechenden JSON-Daten zeilenweise zurück, und auf der Codeebene müssen wir entsprechende Änderungen vornehmen, um die zeilenweisen Ergebnisse zu erhalten. Python-Beispielaufrufcode:
Im Folgenden sind Auszüge aus dem Anfang, der Schlussfolgerung, dem Text, dem Ende und den Verbrauchsdatenblöcken einer echten K3 Max Stream-Antwort enthalten:
Sie können sehen, dass die Antwort viele data enthält, wobei data die neuesten Antwortinhalte in choices sind, die mit den oben beschriebenen Inhalten übereinstimmen. choices sind die neuen Antwortinhalte, die Sie in Ihr System integrieren können. Das Ende der Streaming-Antwort wird anhand des Inhalts von data bestimmt; wenn der Inhalt [DONE] ist, bedeutet dies, dass die Streaming-Antwort vollständig beendet ist. Die zurückgegebenen data-Ergebnisse haben mehrere Felder, die wie folgt beschrieben werden:
  • id, die ID der generierten Dialogaufgabe, um diese Dialogaufgabe eindeutig zu identifizieren.
  • model, das gewählte Kimi-Modell von der offiziellen Website.
  • choices, die Antwortinformationen von Kimi auf die gestellten Fragen.
JavaScript wird ebenfalls unterstützt, zum Beispiel ist der Code für den Streaming-Aufruf in Node.js wie folgt:
Java-Beispielcode:
Andere Sprachen können entsprechend umgeschrieben werden, das Prinzip ist dasselbe.

Mehrere Runden im Dialog

Wenn Sie die Funktion für mehrere Runden im Dialog integrieren möchten, müssen Sie mehrere Fragen im Feld messages hochladen. Ein konkretes Beispiel für mehrere Fragen ist im folgenden Bild dargestellt:

Python-Beispielaufruf:
Durch das Hochladen mehrerer Fragen können Sie problemlos mehrere Runden im Dialog realisieren. Hier ist die echte K3 Max-Antwort, die bei dieser Anfrage erhalten wurde (nicht verwendete Erweiterungsfelder wurden weggelassen):
Sie können sehen, dass die Informationen in choices mit den grundlegenden Inhalten übereinstimmen, die Kimi für mehrere Dialoge bereitstellt, um die entsprechenden Fragen zu beantworten.

Fehlerbehandlung

Wenn beim Aufruf der API ein Fehler auftritt, gibt die API den entsprechenden Fehlercode und die Informationen zurück. Zum Beispiel:
  • 400 token_mismatched: Ungültige Anfrage, möglicherweise aufgrund fehlender oder ungültiger Parameter.
  • 400 api_not_implemented: Ungültige Anfrage, möglicherweise aufgrund fehlender oder ungültiger Parameter.
  • 401 invalid_token: Unbefugt, ungültiger oder fehlender Autorisierungstoken.
  • 429 too_many_requests: Zu viele Anfragen, Sie haben das Rate-Limit überschritten.
  • 500 api_error: Interner Serverfehler, etwas ist auf dem Server schiefgelaufen.

Beispiel für eine Fehlerantwort

Fazit

Durch dieses Dokument haben Sie gelernt, wie Sie die Kimi Chat Completion API verwenden, um normale Gespräche, Streaming-Antworten, mehrere Runden im Dialog zu realisieren und die K3-Inferenzstärke über reasoning_effort zu steuern.