చాట్ ప్రతిస్పందనను స్ట్రీమ్ చేయండి
ShareAI చాట్-కంప్లీషన్స్ సర్వర్-సెంట్ ఈవెంట్స్ను చదవండి, కంటెంట్ డెల్టాలను ఒకసారి జోడించండి మరియు కంప్లీషన్, లోపాలు మరియు అంతరాయం వచ్చిన స్ట్రీమ్లను నిర్వహించండి.
ఈ పేజీలో
సెట్ stream: true ప్రతిస్పందనను క్రమంగా స్వీకరించడానికి. HTTP కనెక్షన్ను ఓపెన్గా ఉంచండి, పూర్తి SSE ఈవెంట్స్ను పార్స్ చేయండి మరియు ప్రతి కంటెంట్ డెల్టాను ఒకసారి జోడించండి.
https://api.shareai.now/api/v1/chat/completionsసర్వర్-సెంట్ ఈవెంట్ స్ట్రీమ్ను తిరిగి ఇవ్వండి.
- బేస్ URL
https://api.shareai.now- authentication
- Bearer API కీ లేదా ఆమోదించిన OAuth యాక్సెస్ టోకెన్
cURL
curl --no-buffer --fail-with-body https://api.shareai.now/api/v1/chat/completions \
-H "Authorization: Bearer $SHAREAI_API_KEY" \
-H "Content-Type: application/json" \
--data '{"model":"MODEL_IDENTIFIER","messages":[{"role":"user","content":"Explain server-sent events briefly."}],"stream":true}'
ఈవెంట్ బౌండరీలను చదవండి#
SSE ఈవెంట్స్ను ఖాళీ లైన్తో వేరు చేస్తుంది. నెట్వర్క్ చంక్స్ JSON విలువను విభజించవచ్చు లేదా బహుళ ఈవెంట్స్ను కలిగి ఉండవచ్చు, కాబట్టి ప్రతి నెట్వర్క్ రీడ్ను పూర్తి JSON ప్రతిస్పందనగా పార్స్ చేయవద్దు. UTF-8ను క్రమంగా డీకోడ్ చేసి, ఈవెంట్ పూర్తయ్యే వరకు అసంపూర్ణ డేటాను నిల్వ చేయండి.
Plain text
data: {"object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"Hello"},"finish_reason":null}]}
data: {"object":"chat.completion.chunk","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: [DONE]
కంటెంట్ను ఒకసారి రెండర్ చేయండి#
జోడించండి choices[0].delta.content ఉన్నప్పుడు. వైట్స్పేస్ మరియు పునరావృతమైన పదాలను సంరక్షించండి. రోల్-ఒన్లీ లేదా ఫైనల్ చంక్లో కంటెంట్ లేకపోవచ్చు. [DONE] స్ట్రీమ్ టెర్మినేటర్గా.
స్ట్రీమ్ లోపాలను నిర్వహించండి#
SSE పార్సర్లో ప్రవేశించే ముందు HTTP స్థితిని తనిఖీ చేయండి. స్ట్రీమింగ్ ప్రారంభమైన తర్వాత, event: error ఈవెంట్ మరియు అనూహ్య డిస్కనెక్షన్ను నిర్వహించండి. అంతరాయం వచ్చిన సమాధానాన్ని అసంపూర్ణంగా గుర్తించి, యూజర్ను స్పష్టంగా మళ్లీ ప్రయత్నించనివ్వండి. అసంపూర్ణ అవుట్పుట్కు రెండవ స్వతంత్రంగా రూపొందించిన సమాధానాన్ని జోడించవద్దు.
మీ అప్లికేషన్ నుండి రద్దు చేయండి#
వినియోగదారుడు జనరేషన్ను ఆపినప్పుడు మీ HTTP క్లయింట్ యొక్క రద్దు మెకానిజాన్ని ఉపయోగించండి. రద్దు, నెట్వర్క్ వైఫల్యం మరియు పూర్తి చేసిన సమాధానాన్ని వేర్వేరు UI స్థితులుగా ఉంచండి. ఇప్పటికే ప్రాసెస్ చేసిన వినియోగాన్ని క్లయింట్ కనెక్షన్ మూసివేయడం తిరగదీయగలదని హామీ ఇవ్వవద్దు.
చివరిసారిగా నవీకరించబడింది సెప్టెంబర్ 15, 2026