Streaming cu apeluri de funcții
Ai văzut deja câte cazuri de utilizare devin posibile cu LLM-uri care apelează funcții – acestea au propriile tipuri de evenimente. Acest lucru este util pentru a oferi feedback în timp real utilizatorilor atunci când modelul se pregătește să apeleze un instrument sau pentru a înregistra în jurnal utilizarea instrumentelor.
Funcția convert_timezone(), pe care ai definit-o anterior pentru a converti datele și orele între fusuri orare, precum și o listă tools ce conține definiția funcției pentru Responses API au fost deja definite pentru tine.
Acest exercițiu face parte din cursul
Lucrul cu Responses API de la OpenAI
Instrucțiuni pentru exercițiu
- Completează managerul de context pentru streaming apelând
client.responses.create()cu modelul"gpt-5.4-mini",prompt-ul și listatools. - În interiorul buclei, verifică dacă există evenimente de tip
"function_call_arguments.delta". - Adaugă o condiție pentru a verifica evenimentele de tip
"function_call_arguments.done". - Adaugă o condiție finală care să verifice dacă tipul evenimentului este
"response.completed"și afișează un mesaj de finalizare.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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 ---")