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 Ihr API-Token im Ace Data Cloud Dashboard abrufen und für zukünftige Verwendung aufbewahren. Wenn Sie noch nicht angemeldet oder registriert sind, werden Sie automatisch zur Anmeldeseite weitergeleitet, wo Sie zur Registrierung und Anmeldung eingeladen werden. 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 einen Antrag zu stellen. Bei der ersten Beantragung erhalten Sie ein kostenloses Kontingent, um es kostenlos auszuprobieren; 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 der generierten Dialogaufgabe, die zur eindeutigen Identifizierung dieser Dialogaufgabe dient.
  • model, das ausgewählte Kimi-Modell von der offiziellen Website.
  • choices, die Antwortinformationen, die Kimi auf die gestellten Fragen gibt.
  • 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 ist.

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-Anwendungen 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 Assistant-Nachricht der vorherigen Runde 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-Serien.
  • 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 Integration in Webseiten sehr nützlich ist, da es ermöglicht, die Anzeige zeilenweise zu realisieren. Wenn Sie eine Stream-Antwort zurückgeben möchten, können Sie den stream-Parameter im Anforderungsheader 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 stream auf true geändert wurde, 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 die Anfangs-, Schlussfolgerungs-, Haupt-, End- und Verbrauchsdatenblöcke aus einer echten K3 Max Stream-Antwort ausgewählt:
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 messages-Feld hochladen. Ein konkretes Beispiel für mehrere Fragen ist im folgenden Bild dargestellt:

Python-Beispielaufrufcode:
Durch das Hochladen mehrerer Fragen können Sie problemlos mehrere Runden im Dialog realisieren. Hier ist die echte K3 Max-Antwort, die von 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 Sie die API aufrufen und auf einen Fehler stoßen, 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.