> **Beta Translation:** This document was translated via Machine Learning and as such may not be 100% accurate. All non-English languages are currently classified as Beta.
تصف هذه المواصفات إضافة دعم التدفق إلى خدمات GraphRAG و DocumentRAG، مما يمكّن من الحصول على استجابات على شكل أجزاء (token-by-token) في الوقت الفعلي للاستعلامات المتعلقة باسترجاع المعرفة ورؤوس المستندات. هذا يوسع البنية المعمارية الحالية للتدفق، والتي تم تنفيذها بالفعل لخدمات إكمال النص، والتعليمات البرمجية، ووكلاء LLM.
## الأهداف
- **تجربة تدفق متسقة**: توفير تجربة تدفق متسقة عبر جميع خدمات TrustGraph.
- **تغييرات واجهة برمجة تطبيقات (API) قليلة**: إضافة دعم التدفق باستخدام علامة واحدة (`streaming`)، وفقًا للأنماط المتبعة.
- **التوافق مع الإصدارات السابقة**: الحفاظ على سلوك غير تدفق بشكل افتراضي.
- **استخدام البنية التحتية الحالية**: الاستفادة من تدفق PromptClient المطبق بالفعل.
- **دعم البوابة**: تمكين التدفق من خلال بوابة websocket للتطبيقات العميلة.
## الخلفية
خدمات التدفق الحالية:
- **خدمة إكمال النص للـ LLM**: المرحلة 1 - التدفق من مزودي LLM.
- **خدمة التعليمات البرمجية**: المرحلة 2 - التدفق من خلال قوالب التعليمات البرمجية.
- **خدمة الوكيل**: المراحل 3-4 - استجابات ReAct مع أجزاء فكرية/ملاحظات/إجابات متزايدة.
قيود الحالية لخدمات RAG:
- GraphRAG و DocumentRAG تدعم فقط الاستجابات المتوقفة.
- يجب على المستخدمين الانتظار حتى استلام الرد الكامل من LLM قبل رؤية أي مخرجات.
- تجربة مستخدم (UX) سيئة للاستجابات الطويلة من استعلامات الرسم البياني المعرفي أو المستندات.
- تجربة غير متسقة مقارنة بـ خدمات TrustGraph الأخرى.
تستجيب هذه المواصفات لهذه الثغرات من خلال إضافة دعم التدفق إلى GraphRAG و DocumentRAG. من خلال تمكين الاستجابات على شكل أجزاء، يمكن لـ TrustGraph:
- توفير تجربة تدفق متسقة عبر جميع أنواع الاستعلام.
- تقليل التأخير المتوقع في استعلامات RAG.
- تمكين ملاحظات تقدم أفضل للاستعلامات الطويلة الأمد.
- دعم العرض في الوقت الفعلي في تطبيقات العملاء.
## التصميم الفني
### البنية
يستفيد تنفيذ التدفق في RAG من البنية التحتية الحالية:
1.**تدفق PromptClient** (مطبق بالفعل)
- يستقبل `kg_prompt()` و `document_prompt()` بالفعل معلمات `streaming` و `chunk_callback`.