LLM이 응답 전체를 완성하기 전에 생성되는 토큰을 실시간으로 전송하는 방식. 사용자가 첫 토큰이 나오는 시점부터 결과를 볼 수 있어 체감 응답속도가 크게 향상된다.
수백 토큰을 생성하는 응답을 모두 만들고 나서야 전송하면 사용자는 수초~수십 초를 빈 화면을 보며 기다려야 한다. 스트리밍은 토큰이 생성되는 즉시 HTTP SSE(Server-Sent Events) 또는 WebSocket으로 클라이언트에 전송한다. ChatGPT의 글자가 타이핑되듯 나오는 효과가 바로 스트리밍이다.
스트리밍은 실제 생성 속도를 높이지는 않는다. 전체 완료 시간은 같지만, TTFT(Time to First Token)를 줄여 사용자 경험을 크게 개선한다.
Claude API에서 stream=True로 호출하면 비동기 이터레이터로 토큰을 받을 수 있다. Next.js에서 스트리밍 API 라우트를 구현하면 ReadableStream으로 응답을 프론트엔드에 실시간 전달한다. Vercel AI SDK가 스트리밍 UI 구현을 표준화해 챗봇 인터페이스 개발을 단순화한다.