OpenAI Streaming — stream=true로 SSE 이벤트 받기
OpenAI Streaming — stream=true로 SSE 이벤트 받기
기본적으로 OpenAI API는 전체 출력이 완성된 뒤 한 번의 HTTP 응답으로 보내요. stream=true 를 주면 생성이 진행되는 동안 서버가 보내는 이벤트(SSE) 로 앞부분부터 받기 시작해요.
켜는 방법
from openai import OpenAI
client = OpenAI()
stream = client.responses.create(
model="gpt-5.5",
input=[{"role": "user", "content": "Say 'double bubble bath' ten times fast."}],
stream=True,
)
for event in stream:
print(event)
시맨틱 이벤트
Responses API의 스트리밍은 의미론적(semantic) 이벤트를 써요. 대표 이벤트는:
response.created— 응답이 시작됨.response.output_text.delta— 텍스트 델타(증분).response.completed— 응답 완료.error— 오류 발생.
원하는 이벤트만 골라 들을 수 있어요.
고급 활용
스트리밍된 도구 호출(Streaming function calls)이나 스트리밍 구조화 출력(Streaming structured output) 같은 전용 가이드도 제공돼요. 상태 관리가 중요한 에이전트 워크플로에서도 유용해요.