LoslegenKostenlos loslegen

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

Kurs anzeigen

Anleitung zur Übung

  • Vervollständige den streaming-Context-Manager, indem du client.responses.create() mit dem Modell "gpt-5-mini", dem prompt und der tools-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 ---")
Code bearbeiten und ausführen