Čo je streaming odpovedí?
Streaming v kontexte LLM aplikácií označuje postupné doručovanie generovaného textu používateľovi v reálnom čase, bez čakania na kompletnú odpoveď. Namiesto toho, aby používateľ čakal 10-30 sekúnd na dlhú odpoveď, text sa objavuje postupne – podobne ako pri písaní na klávesnici.
Táto technika drasticky zlepšuje vnímanú rýchlosť (perceived latency) aplikácie, pretože používateľ začne vnímať odpoveď ihneď.
Technická implementácia
Server-Sent Events (SSE) je dominantný transportný protokol pre LLM streaming. Server odosiela tok udalostí cez dlhodobo otvorené HTTP spojenie, klient ich parsuje a postupne renderuje. Všetky hlavné LLM API (OpenAI, Anthropic, Groq) podporujú streaming pomocou SSE.
Na frontende streaming typicky vyžaduje ReadableStream API alebo analogické abstrakcie v React/Vue. Abort controller umožňuje používateľovi prerušiť generovanie.
Výzvy streamingu
Streaming komplikuje niektoré funkcie: function calling vyžaduje čakať na kompletné JSON parsovanie pred volaním nástroja. Structured output je ťažké validovať za chodu. Chybové stavy sa musia riešiť uprostred streamu. Napriek tomu je streaming de-facto štandard pre produkčné LLM UI pre dramaticky lepší používateľský zážitok.