CommencerCommencer gratuitement

Diffusion en continu avec appels de fonctions

Vous avez déjà vu combien de cas d’usage sont rendus possibles par les LLM avec appels de fonctions, qui disposent de leurs propres types d’événements. C’est utile pour fournir un retour en temps réel aux utilisateurs lorsque le modèle se prépare à appeler un outil, ou pour consigner et suivre l’utilisation des outils.

La fonction convert_timezone() que vous avez définie plus tôt pour convertir des dates-heures entre fuseaux horaires, ainsi qu’une liste tools contenant la définition de la fonction pour la Responses API, ont été définies pour vous.

Cet exercice fait partie du cours

Travailler avec l’API OpenAI Responses

Afficher le cours

Instructions

  • Complétez le gestionnaire de contexte de streaming en appelant client.responses.create() avec le modèle "gpt-5-mini", le prompt et la liste tools.
  • À l’intérieur de la boucle, vérifiez les événements "function_call_arguments.delta".
  • Ajoutez une condition pour vérifier les événements "function_call_arguments.done".
  • Ajoutez une dernière condition pour vérifier si le type d’événement est "response.completed" et affichez un message final de fin d’exécution.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

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 ---")
Modifier et exécuter le code