Text & Chat

Chat-Vervollständigung erstellen

Erstellt eine Vervollständigung für die Chat-Nachricht

POST
/v1/chat/completions

Anfragekörper

Unterstützte optionale Parameter, zulässige Werte und Standardwerte hängen vom gewählten Modell ab. Prüfen Sie die Modelldetails, bevor Sie Sampling-, Reasoning- oder Tool-Optionen festlegen.

modelstringerforderlich

ID des zu verwendenden Modells. Siehe Models für verfügbare Optionen.

messagesarrayerforderlich

Eine Liste von Nachrichten, die die Konversation bilden.

Jedes Nachrichtenobjekt enthält:

  • role (string): system, developer, user, assistant, tool, function
  • content (string | array | null): Der Nachrichteninhalt

Bei einer assistant-Nachricht mit tool_calls kann content fehlen oder null sein.

Wenn content ein Array ist, unterstützt TokenLab strukturierte multimodale Blöcke für kompatible Modelle:

  • text: { "type": "text", "text": "..." }
  • Bild: { "type": "image_url", "image_url": { "url": "https://..." } }
  • audio: { "type": "audio_url", "audio_url": { "url": "https://..." } }
  • video: { "type": "video_url", "video_url": { "url": "https://..." } }

Verwenden Sie für multimodale Eingaben öffentlich erreichbare https-URLs. Unterstützte Medientypen hängen vom gewählten Modell ab.

temperaturenumber

Sampling-Temperatur. Unterstützung, zulässige Werte und Standardwert hängen vom gewählten Modell ab. Ohne dieses Feld wird der Modellstandard verwendet.

max_tokensinteger

Maximale Anzahl an zu generierenden Tokens.

streambooleanStandard: false

Wenn true, werden partielle Nachrichtendeltas als SSE-Ereignisse gesendet.

stream_optionsobject

Optionen fürs Streaming. Setzen Sie include_usage: true, um Token-Nutzungsdaten in Stream-Chunks zu erhalten.

top_pnumber

Nucleus-Sampling-Parameter. Wir empfehlen, entweder diesen oder die Temperatur zu verändern, aber nicht beide.

frequency_penaltynumber

Zahl zwischen -2.0 und 2.0. Positive Werte bestrafen wiederholte Tokens.

presence_penaltynumber

Zahl zwischen -2.0 und 2.0. Positive Werte bestrafen Tokens, die bereits im Text vorhanden sind.

stopstring | array

Stoppsequenz oder Liste von Sequenzen. Unterstützung und Anzahl der zulässigen Sequenzen hängen vom gewählten Modell ab.

toolsarray

Eine Liste von Tools, die das Modell aufrufen kann (Funktionsaufrufe).

tool_choicestring | object

Steuert, wie das Modell Tools verwendet. Optionen: auto, none, required, oder ein spezifisches Tool-Objekt.

parallel_tool_callsboolean

Erlaubt mehrere Tool-Aufrufe in einem Antwortschritt des Assistenten, sofern das gewählte Modell dies unterstützt.

max_completion_tokensinteger

Maximale Tokens für die Vervollständigung. Alternative zu max_tokens, nützlich für neuere modellfamilien mit Reasoning-Unterstützung.

reasoning_effortstring

Reasoning-Aufwand für Modelle, die ihn unterstützen. Zulässige Werte hängen vom gewählten Modell ab.

seedinteger

Sampling-Seed für unterstützte Modelle. Identische Ausgaben sind nicht garantiert.

ninteger

Anzahl der zu erzeugenden Vervollständigungen (1-128).

logprobsboolean

Ob Log-Wahrscheinlichkeiten zurückgegeben werden sollen.

top_logprobsinteger

Anzahl der obersten Log-Wahrscheinlichkeiten, die zurückgegeben werden sollen (0-20). Erfordert logprobs: true.

top_kinteger

Top-K-Sampling für Modelle, die es unterstützen.

response_formatobject

Antwortformat. Verwenden Sie {"type": "json_object"} für den JSON-Modus oder {"type": "json_schema", "json_schema": {...}} für ein JSON-Schema. Die Unterstützung hängt vom gewählten Modell ab.

logit_biasobject

Anpassung der Wahrscheinlichkeit, dass bestimmte Tokens erscheinen. Mappen Sie Token-IDs (als Strings) auf Bias-Werte von -100 bis 100.

userstring

Ein eindeutiger Bezeichner, der Ihren Endbenutzer für Missbrauchsüberwachung repräsentiert.

Antwort

idstring

Eindeutiger Bezeichner für die Vervollständigung.

objectstring

Immer chat.completion.

createdinteger

Unix-Zeitstempel, wann die Vervollständigung erstellt wurde.

modelstring

Das für die Vervollständigung verwendete Modell.

choicesarray

Liste der Vervollständigungsoptionen.

Jede Auswahl enthält:

  • index (integer): Index der Auswahl
  • message (object): Die generierte Nachricht
  • finish_reason (string): Grund für das Ende der Generierung, etwa stop, length oder tool_calls
usageobject

Statistiken zur Token-Nutzung.

  • prompt_tokens (integer): Tokens im Prompt
  • completion_tokens (integer): Tokens in der Vervollständigung
  • total_tokens (integer): Insgesamt verwendete Tokens

Anfrage

curl -X POST "https://api.tokenlab.sh/v1/chat/completions" \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5.6-terra",
    "messages": [
      {"role": "system", "content": "You are a helpful assistant."},
      {"role": "user", "content": "Hello!"}
    ],
    "max_tokens": 1000
  }'

Multimodales Beispiel

{
  "model": "gemini-2.5-pro",
  "messages": [
    {
      "role": "user",
      "content": [
        { "type": "text", "text": "Describe this video briefly." },
        { "type": "video_url", "video_url": { "url": "https://example.com/demo.mp4" } }
      ]
    }
  ],
  "max_tokens": 64
}

Antwort

Response
{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1706000000,
  "model": "gpt-5.6-terra",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Hello! How can I help you today?"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 20,
    "completion_tokens": 9,
    "total_tokens": 29
  }
}

Autorisierung

BearerAuth
AuthorizationBearer <token>

API-Key-Authentifizierung. Erstellen oder verwalten Sie API-Keys unter Dashboard > API > API Keys.

Ort: header

Header

X-TokenLab-Delivery-Policy?string

Zustellungsrichtlinie pro Anfrage. Überschreibt die API-Key- und Workspace-Standardeinstellungen. Versucht automatisch zuerst TokenLab Verified und kann vor der Ausgabe, der Annahme der Anfrage oder der Erstellung persistenter Ressourcen einmalig auf Official umstellen.

Zulässige Werte

  • "auto"
  • "verified"
  • "official"

Anfragekörper

application/json

Antwort

application/json

application/json

application/json

application/json

application/json

application/json

application/json