Streamen met semantische events

Werken met de OpenAI Responses API

James Chapman

AI Curriculum Manager, DataCamp

Waarom streamen?

streaming_uit.gif

Werken met de OpenAI Responses API

Waarom streamen?

streaming_aan.gif

Werken met de OpenAI Responses API

Semantische events

  • Gestructureerde updates die beschrijven wat er gebeurt
Werken met de OpenAI Responses API

Semantische events

  • Gestructureerde updates die beschrijven wat er gebeurt
Eventtype Beschrijving
response.created Het model is gestart met genereren
response.output_text.delta Tussentijdse tekstupdate
response.output_text.done Tekstblok voltooid
response.function_call.arguments.delta Streamende tool-argumenten
response.completed Volledig antwoord gereed
Werken met de OpenAI Responses API

Voorbeeld: basis tekststreaming

prompt = "Explain the seasons of the year concisely to a child."

with client.responses.create(model="gpt-5-mini", input=prompt, stream=True) as stream:
current_text = ""
for event in stream: if event.type == "response.output_text.delta":
current_text += event.delta print(current_text)
Werken met de OpenAI Responses API

Voorbeeld: basis tekststreaming

tekststreaming.gif

Werken met de OpenAI Responses API

Voorbeeld: meerdere events afhandelen

prompt = "Explain how a neural network learns concisely for a child."

with client.responses.create(model="gpt-5-mini", input=prompt, stream=True) as stream:

for event in stream: if event.type == "response.created":
print("Antwoord gestart...\n")
elif event.type == "response.output_text.done":
print("\n\n--- Tekstblok klaar ---\n")
elif event.type == "response.completed":
print(f"\nVolledig antwoord:\n{current_text}")
Werken met de OpenAI Responses API

Voorbeeld: meerdere events afhandelen

meerdere_events.gif

Werken met de OpenAI Responses API

Voorbeeld: tool-events streamen

convert_currency() -> str:

  • date_time: str
  • from_timezone: str
  • to_timezone: str
tools = [
    {
        "type": "function",
        "name": "convert_currency",
        ...
     }
]

frankfurter.png

Werken met de OpenAI Responses API

Voorbeeld: tool-events streamen

prompt = "How much is 120 euros in British pounds using the current exchange rate?"

with client.responses.create(model="gpt-5-mini", input=prompt, tools=tools, stream=True) as stream:
current_args = ""
for event in stream: if event.type == "response.function_call_arguments.delta":
current_args += event.delta print("Streamende args:", current_args)
elif event.type == "response.function_call_arguments.done":
print("\nDefinitieve argumenten:", event.arguments)
elif event.type == "response.completed":
print("\n--- Klaar ---")
Werken met de OpenAI Responses API

Voorbeeld: tool-events streamen

tool_events_streamen.gif

Werken met de OpenAI Responses API

Samenvatting

chatgpt_semantische_events.gif

1 Semantische events gebruikt in ChatGPT
Werken met de OpenAI Responses API

Laten we oefenen!

Werken met de OpenAI Responses API

Preparing Video For Download...