Streaming mit Funktionsaufrufen
Du hast bereits gesehen, wie viele Anwendungsfälle sich mit LLMs erschließen, die Funktionsaufrufe unterstützen und eigene Event-Typen haben. Das ist nützlich, um Nutzer:innen in Echtzeit Feedback zu geben, wenn das Modell ein Tool vorbereitend aufruft, oder um die Tool-Nutzung zu protokollieren.
Die Funktion convert_timezone() zur Umwandlung von Datums-/Zeitangaben zwischen Zeitzonen sowie eine tools-Liste mit der Funktionsdefinition für die Responses API wurden für dich vorbereitet.
Diese Übung ist Teil des Kurses
Arbeiten mit der OpenAI Responses API
Anleitung zur Übung
- Vervollständige den streaming-Context-Manager, indem du
client.responses.create()mit dem Modell"gpt-5-mini", dempromptund dertools-Liste aufrufst. - Prüfe innerhalb der Schleife, ob
"function_call_arguments.delta"-Events auftreten. - Füge eine Bedingung hinzu, um auf
"function_call_arguments.done"-Events zu prüfen. - Füge eine abschließende Bedingung hinzu, die prüft, ob der Event-Typ
"response.completed"ist, und gib eine finale Abschlussmeldung aus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
prompt = "What time is 2:30pm on January 20th in New York in Tokyo time?"
# Open the streaming connection and enable tool-calling
with ____ as stream:
for event in stream:
# Filter for function call arguments delta events
if ____:
print(f"\nTool args streaming: {event.delta}")
# Filter for function call arguments complete events
elif ____:
print("Tool call args complete.")
# Filter for response completed events
elif ____:
print("\n--- Completed ---")