> **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, המאפשרות תגובות בזמן אמת, שוט אחר שוט, עבור שאילתות שליפה של גרפי ידע ומסמכים. זה מרחיב את הארכיטקטורה הסטנדרטית לסטרימינג, אשר כבר מיושמת עבור שירותי LLM להשלמת טקסט, בקשות וסוכנים.
## מטרות
- **חוויית משתמש סטנדרטית בסטרימינג**: לספק חוויית סטרימינג אחידה בכל שירותי TrustGraph.
- **שינויים מינימליים בממשק API**: להוסיף תמיכה בסטרימינג באמצעות דגל `streaming` יחיד, תוך עמידה בדפוסי העבודה הקיימים.
- **תאימות לאחור**: לשמור על התנהגות לא סטנדרטית קיימת כברירת מחדל.
- **ניצול תשתית קיימת**: להשתמש בסטרימינג הקיים, אשר כבר מיושם עבור ה-PromptClient.
- **תמיכה בדגלים**: לאפשר סטרימינג באמצעות דגל websocket עבור יישומי לקוח.
## רקע
שירותי סטרימינג קיימים:
- **שירות השלמת טקסט של LLM**: שלב 1 - סטרימינג מספקי LLM
- **שירות בקשות**: שלב 2 - סטרימינג באמצעות תבניות בקשות
- **שירות סוכן**: שלבים 3-4 - סטרימינג של תגובות ReAct עם חלקים של מחשבה/תצפית/תשובה
מגבלות נוכחיות לשירותי RAG:
- GraphRAG ו-DocumentRAG תומכים רק בתגובות בלתי סטנדרטיות.
- משתמשים צריכים לחכות לתגובה שלמה של LLM לפני קבלת כל תוצאה.
- חוויית משתמש גרועה עבור תגובות ארוכות לשאילתות של גרפי ידע או מסמכים.
- חוויה לא עקבית בהשוואה לשירותי TrustGraph אחרים.
מסמך זה מטפל בבעיות אלו על ידי הוספת תמיכה בסטרימינג ל-GraphRAG ו-DocumentRAG. על ידי אפשרות תגובות שוט אחר שוט, TrustGraph יכול:
- לספק חוויית משתמש סטנדרטית בסטרימינג עבור כל סוגי השאילתות.
- להפחית את הפיגור הרגשי עבור שאילתות RAG.
- לאפשר משוב מתקדם עבור שאילתות ארוכות.
- לתמוך בהצגה בזמן אמת ביישומים של לקוח.
## עיצוב טכני
### ארכיטקטורה
היישום הסטנדרטי של RAG של מנצל את התשתית הקיימת:
1.**סטרימינג של PromptClient** (כבר מיושם)
- הפרמטרים `kg_prompt()`ו-`document_prompt()` כבר מקבלים את הפרמטרים `streaming`ו-`chunk_callback`.
- הפרמטרים אלו קוראים לפונקציה `prompt()` עם תמיכה בסטרימינג.