ComeçarComece de graça

Streaming com chamadas de função

Você já viu quantos casos de uso são liberados com LLMs que fazem chamadas de função, que têm seus próprios tipos de evento. Isso é útil para fornecer feedback em tempo real aos usuários quando o modelo está se preparando para chamar uma ferramenta, ou para registrar logs e acompanhar o uso de ferramentas.

A função convert_timezone() que você definiu antes para converter datetimes entre fusos horários e uma lista tools contendo a definição da função para a Responses API já foram definidas para você.

Este exercício faz parte do curso

Trabalhando com a OpenAI Responses API

Ver curso

Instruções do exercício

  • Complete o gerenciador de contexto de streaming chamando client.responses.create() com o modelo "gpt-5-mini", o prompt e a lista tools.
  • Dentro do loop, verifique se há eventos "function_call_arguments.delta".
  • Adicione uma condição para verificar eventos "function_call_arguments.done".
  • Adicione uma condição final para verificar se o tipo do evento é "response.completed" e imprima uma mensagem final de conclusão.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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 ---")
Editar e executar o código