چیٹ کا جواب اسٹریم کریں
ShareAI چیٹ-کمپلیشنز سرور-سینٹ ایونٹس پڑھیں، مواد کے ڈیلٹاز کو ایک بار شامل کریں اور کمپلیشن، غلطیوں اور منقطع اسٹریمز کو ہینڈل کریں۔
اس صفحے پر
سیٹ کریں stream: true جواب کو بتدریج وصول کرنے کے لیے۔ HTTP کنکشن کو کھلا رکھیں، مکمل SSE ایونٹس کو پارس کریں اور ہر مواد ڈیلٹا کو ایک بار شامل کریں۔
https://api.shareai.now/api/v1/chat/completionsایک سرور-سینٹ ایونٹ اسٹریم واپس کریں۔
- بیس URL
https://api.shareai.now- تصدیق
- 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