Straumēšana
Kā straumēta pabeigšana nonāk tīklā, ko satur pēdējais kadrs un kas notiek, kad klients atvienojas.
Transports
Iestatiet stream: true, un atbilde būs text/event-stream: viens JSON objekts uz katras data: rindas, katrai seko tukša rinda. Buferēšana ir atspējota, lai starpniekserveris aizturētu kadrus.
HTTP/1.1 200 OK
content-type: text/event-stream; charset=utf-8
cache-control: no-cache, no-transform
connection: keep-alive
Kadri
Pirmais kadrs satur asistenta lomu, tad viens kadrs uz delta, tad kadrs ar finish_reason un maršrutēšanas bloku, tad tieši viens terminators. Klients, kas ievēro formātu, nolasa terminatoru un apstājas; tam nav jāuzskata trūkstošs terminators par pilnīgu atbildi.
data: {"id":"chatcmpl-…","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"role":"assistant"},"finish_reason":null}]}
data: {"id":"chatcmpl-…","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"Hallo"},"finish_reason":null}]}
data: {"id":"chatcmpl-…","object":"chat.completion.chunk","choices":[{"index":0,"delta":{},"finish_reason":"stop"}],"llmeu":{…}}
data: [DONE]
Maršrutēšanas bloks ceļo kopā ar pēdējo kadru
Pēdējais kadrs satur to pašu llmeu objektu, ko atgriež nestraumētā atbilde: trace_id, model_used, model_version, provider, endpoint_id, inference_region, sovereignty_class, policy_id, retention un izmaksu aplēse. Straumēšanas režīmā lietojums ir zināms tikai beigās, tāpēc bloks ceļo kopā ar pēdējo kadru, nevis pirmo.
Klienta atvienošanās
Savienojuma aizvēršana pārtrauc darbu un ieraksta pēdu ar to, kas faktiski tika radīts. Atcelts pieprasījums joprojām ir noticis izsaukums, tāpēc tas parādās lietojumā; tas netiek reģistrēts kā pabeigta pabeigšana.
Ko nevar straumēt
Iegultnes un platformes API ir atsevišķas JSON atbildes. stream: true nestraumēšanas maršrutā ir validācijas kļūda, nevis klusa atkāpšanās uz vienu kadru.