Zum Hauptinhalt springen
Strukturierte Ausgaben und Tool-Aufrufe sind routenspezifische Verträge. TokenLab leitet mehrere öffentliche API-Formate weiter, daher ist das sicherste Produktionsmuster, jede provider-native Tool-Form auf der Route zu belassen, die sie besitzt, und die Modelausgabe in Ihrer eigenen Anwendung zu validieren.

Wählen Sie die Route

BedarfRouteVerwenden Sie diese Form
Tragbare JSON-Objektantworten/v1/chat/completionsresponse_format: {"type": "json_object"}
OpenAI-kompatibles Funktionsaufrufen/v1/chat/completionstools: [{ "type": "function", "function": ... }]
OpenAI-Antworten Tools/v1/responsesAntworten tools, tool_choice und text Felder
Claude-native Tool-Nutzung oder Denken/v1/messagesAnthropic Messages Tool-Schema
Gemini Funktionsdeklarationen oder integrierte Tools/v1beta/models/:model:generateContentGemini-native tools und Inhaltsbestandteile
Senden Sie keine provider-native integrierten Tools über eine andere Route und erwarten Sie, dass TokenLab sie stillschweigend übersetzt.

JSON-Modus

Für tragbare strukturierte Antworten beginnen Sie mit dem Chat Completions JSON-Modus:
{
  "model": "gpt-5.4",
  "messages": [
    {
      "role": "user",
      "content": "Geben Sie ein JSON-Objekt mit Stadt und Wetter zurück."
    }
  ],
  "response_format": { "type": "json_object" }
}
Die stabile gemeinsame Validierung für Chat Completions akzeptiert text und json_object. json_schema, strict und provider-spezifische Schema-Durchsetzung können für einige upstream-Routen oder Konvertierungspfade existieren, aber sie sind kein allgemeines Versprechen für jede TokenLab-Route und jedes Modell. Überprüfen Sie sie gegen das ausgewählte Modell, bevor Sie sich darauf verlassen. Analysieren und validieren Sie immer das zurückgegebene JSON auf Ihrem Server. Der JSON-Modus verbessert die Form, ersetzt jedoch nicht die schema-Validierung auf Anwendungsebene.

Tool-Aufrufschleife

TokenLab führt Ihre Funktionen nicht aus. Ihre Anwendung besitzt die Schleife:
  1. Senden Sie Nachrichten plus Tool-Definitionen.
  2. Lesen Sie die Modellantwort auf tool_calls, function_call, Anthropic tool_use oder Gemini Funktionsaufrufteile.
  3. Führen Sie das Tool in Ihrem eigenen Backend aus.
  4. Fügen Sie das Tool-Ergebnis im Format hinzu, das von derselben Route benötigt wird.
  5. Führen Sie das Gespräch fort, bis das Modell eine endgültige Antwort zurückgibt.
Halten Sie die gleiche Route während einer Tool-Schleife bei. Das Mischen von Chat Completions, Responses, Messages und Gemini-Formaten in einem Gespräch führt normalerweise zu subtilen Zustands- und Schema-Fehlern.

Chat Completions Beispiel

curl https://api.tokenlab.sh/v1/chat/completions \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5.4",
    "messages": [
      {
        "role": "user",
        "content": "Extrahieren Sie Name und E-Mail als JSON. Wenn nötig, suchen Sie den Kunden."
      }
    ],
    "response_format": { "type": "json_object" },
    "tools": [
      {
        "type": "function",
        "function": {
          "name": "lookup_customer",
          "description": "Suchen Sie einen Kunden nach E-Mail",
          "parameters": {
            "type": "object",
            "properties": {
              "email": { "type": "string" }
            },
            "required": ["email"]
          }
        }
      }
    ]
  }'

Schema-Design

  • Halten Sie Schemas klein und explizit. Große verschachtelte Schemas fügen Tokens hinzu und verringern die Zuverlässigkeit.
  • Bevorzugen Sie erforderliche Felder für Werte, ohne die Ihr Produkt nicht fortfahren kann.
  • Verwenden Sie Enums für geschlossene Mengen, von denen Ihre UI oder Ihr Backend abhängt.
  • Fügen Sie Beispiele in die Eingabeaufforderung ein, wenn das Modell Schwierigkeiten mit einer Form hat.
  • Behandeln Sie Fehler bei nicht unterstützten Feldern als Vertragsfeedback. Entfernen Sie das Feld oder verwenden Sie die native Route, die es dokumentiert.

Produktions-Checkliste

  • Protokollieren Sie Route, Modell, Tool-Namen und bereinigte Schema-Formate in den Logs.
  • Validieren Sie Tool-Argumente, bevor Sie Nebenwirkungen ausführen.
  • Wenden Sie Ihre eigenen Berechtigungsprüfungen vor der Tool-Ausführung an.
  • Machen Sie die Tool-Ausführung idempotent, wenn ein Client-Wiederholungsversuch denselben Tool-Aufruf wiederholen kann.
  • Protokollieren Sie keine Geheimnisse, die von Tools in modellsichtbare Nachrichten zurückgegeben werden.

API-Referenz

ThemaReferenz
Multi-Format APIMulti-Format API
Chat Completion erstellenChat Completion erstellen
Antwort erstellenAntwort erstellen
Nachricht erstellenNachricht erstellen
Gemini-Inhalt generierenGemini-Inhalt generieren