stream: true und definiere clientseitige Tools mit dem Schema deiner API. Die Unterstützung für Streaming und Tool-Aufrufe hängt vom Modell ab; teste eine kleine Anfrage mit deiner Model ID, bevor du diese Funktionen in einer Anwendung nutzt.
Voraussetzungen
Führe zuerst mit den SDK-Beispielen eine reine Textanfrage erfolgreich aus. Kopiere aus der model plaza die exakte Model ID für das zu testende Protokoll. Die Anleitung zur Modellauswahl erklärt, was du prüfen solltest. Installiereopenai und anthropic in der virtuellen Python-Umgebung deines Projekts und ersetze die Platzhalter im selben Terminal:
max_tokens oder max_output_tokens festlegst.
Textantworten streamen
Streaming überträgt vom Server gesendete Ereignisse (SSE) innerhalb einer HTTP-Antwort. Ein SSE-Ereignis ist nicht unbedingt ein vollständiger Satz oder ein vollständiges JSON-Argumentobjekt.
Das SDK verarbeitet das SSE-Format für dich. Diese Beispiele geben Textfragmente und Abschlussinformationen aus; Anwendungen sollten auch Fehlerereignisse behandeln.
- Chat Completions
- Responses
- Messages
Ein Wetter-Tool für jedes Protokoll definieren
Das Modell fordert einen Funktionsaufruf an; deine Anwendung prüft die Argumente, führt die Funktion aus und gibt das Ergebnis zurück. Die Beispiele verwenden eine Funktionget_weather mit einem Argument location und liefern feste Demodaten, keine aktuellen Wetterdaten. Du benötigst weder einen Wetterdienst noch einen zusätzlichen Key.
Die Unterstützung hängt von Modell und Protokoll ab. Teste diese kleine Tool-Anfrage mit deiner Model ID auch dann, wenn reiner Text bereits funktioniert. Eine Tool-Deklaration aktiviert keine gehostete Suche oder andere vom Anbieter ausgeführte Tools.
Einen Tool-Aufruf ausführen und das Ergebnis zurückgeben
Diese Beispiele ohne Streaming zeigen einen vollständigen Ablauf von Aufruf und Ergebnis, damit du die vollständigen Argumente prüfen kannst. Jedes Beispiel verarbeitet alle Tool-Aufrufe der ersten Antwort und erlaubt eine Folgeanfrage. Ein längerer Agenten-Workflow benötigt eine eigene begrenzte Schleife und eine Abbruchbedingung.- Chat Completions
- Responses
- Messages
output, einschließlich zurückgegebener Reasoning-Elemente. Bewahre bei Messages die Inhaltsblöcke und ihre Reihenfolge. Ordne Ergebnisse den zurückgegebenen Aufruf-IDs zu, statt eigene IDs zu erfinden.
Häufige Fragen
Kann ich Tool-Argumente sofort beim Eintreffen ausführen?
Sammle Fragmente anhand des Tool-Aufrufindex oder der Element-ID. Parse und validiere anschließend die vollständigen Argumente. Unvollständiges JSON lässt sich möglicherweise nicht parsen. Beginne mit den Beispielen ohne Streaming, bevor du Streaming und Tools kombinierst.Warum funktioniert reiner Text, während Tools fehlschlagen?
Die Unterstützung hängt von Modell und Protokoll ab; prüfe eine kleine Tool-Anfrage mit deiner Model ID. Kontrolliere Tool-Schema, zurückgegebene Argumente, Ergebnis-ID und Nachrichtenreihenfolge. Für typisierte JSON-Validierung hilft die FAQ zu strukturierten Ausgaben.Sollte ich einen unterbrochenen Stream erneut anfordern?
Prüfe vor dem erneuten Senden den Anfrageeintrag. Ein Verbindungsabbruch zeigt nicht, ob die Anfrage abgeschlossen wurde. Eine Wiederholung startet einen weiteren Versuch und darf keine bereits ausgeführte Tool-Aktion wiederholen. Siehe Hinweise zu Fehlern und Wiederholungen.Weitere Informationen
- SDK-Einrichtung und Authentifizierung
- Übersicht der API-Referenz
- Limits für Ausgabetokens
- Strukturiertes JSON und Pydantic
- Timeout-Einstellungen
- Fehler und Limits

