Aan de slagBegin gratis

Streamen met functieaanroepen

Je hebt al gezien hoeveel use-cases mogelijk worden met LLM's die functieaanroepen ondersteunen, met hun eigen eventtypes. Dit is handig om gebruikers in real time feedback te geven wanneer het model een tool gaat aanroepen, of om te loggen en toolgebruik te volgen.

De functie convert_timezone() die je eerder hebt gedefinieerd om datetimes tussen tijdzones om te zetten, en een tools-lijst met de functiedefinitie voor de Responses API, zijn voor je klaargezet.

Deze oefening maakt deel uit van de cursus

Werken met de OpenAI Responses API

Bekijk cursus

Oefeninstructies

  • Maak de streaming-contextmanager af door client.responses.create() aan te roepen met het model "gpt-5.4-mini", de prompt en de tools-lijst.
  • Controleer binnen de lus of er "function_call_arguments.delta"-events zijn.
  • Voeg een voorwaarde toe om te controleren op "function_call_arguments.done"-events.
  • Voeg een laatste voorwaarde toe om te controleren of het eventtype "response.completed" is en print een afsluitend bericht.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

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 bewerken en uitvoeren