למה מערכת ה-RAG שלך מייצרת הזיות
למערכת ה-RAG שלך יש 34% דיוק בשליפה. עקבת אחרי כל המדריך. השתמשת בספריות הנכונות. בחרת גודל chunk מפוסט בבלוג. ובכל זאת, המערכת עדיין נכשלת.
זו לא בעיה של כלים. זו בעיה של יסודות.
כשאתה עורך ערימה של ספריות בלי להבין את השכבות שמתחתיהן, אתה יוצר "חוב הפשטה" (abstraction debt). אתה מרוויח מהירות אך מאבד את היכולת לדבג. אתה בונה קופסה שחורה.
כדי לתקן את ה-RAG pipeline שלך, עליך לשלוט בשלוש שכבות:
אסטרטגיית Chunking גודל ה-chunk הוא החלטה סמנטית. אם ה-chunks שלך הם 512 טוקנים, אתה שולף פסקאות. אם השאלות שלך דורשות חיבור רעיונות בין פסקאות רבות, ה-chunks שלך קטנים מדי. עליך להחליט כמה הקשר (context) זורם בין ה-chunks.
מודלי Embedding embeddings צפופים (dense) לוכדים משמעות אך מאבדים תחביר מדויק. מודל עשוי להתייחס ל-"error 403" ו-"error 404" ככמעט זהים. עליך לדעת מה המודל שלך לוכד. חוזה משפטי זקוק ל-embeddings שונים מאשר מאגר קוד (code repository).
Retrieval מול Recall חיפוש וקטורי מוצא כל דבר שעלול להיות רלוונטי. זהו ה-recall. RAG בסביבת ייצור (production) זקוק ל-precision. אתה צריך את התשובה המדויקת, לא עשר פסקאות דומות. זו הסיבה שאתה זקוק לחיפוש היברידי (hybrid search).
חיפוש היברידי משלב וקטורים צפופים עם התאמת מילות מפתח (BM25).
- חיפוש סמנטי טהור מפספס קודים או מזהים (IDs) מדויקים.
- חיפוש מילות מפתח טהור מפספס משמעות מושגית.
- חיפוש היברידי נותן משקל לשניהם כדי למצוא את האמת.
המשקל הנכון לא נמצא במדריך למשתמש. אתה מוצא אותו על ידי בדיקת הנתונים הספציפיים שלך.
הפסק להסתמך על קסמים. אם אינך יכול לבנות RAG pipeline בסיסי מאפס, אינך מוכן ל-Agentic RAG. המורכבות מכפילה את עצמה כשאינך מבין את היסודות.
בצע את ארבעת הדברים הללו לפני הפרויקט הבא שלך:
- בצע benchmark ל-chunking. בדוק שלושה גדלים שונים. מדוד precision ב-top-1 וב-top-5.
- בדוק embeddings עם נתונים אמיתיים. אל תשתמש במבחנים סינתטיים. השתמש בשאילתות המשתמשים האמיתיות שלך.
- תעד כשלים (Log failures). במשך שבועיים, תעד כל שאילתה שנכשלת. חפש דפוסים במה שהחיפוש שלך מפספס.
- הטמע BM25 פעם אחת. גם אם תשתמש בספריה מאוחר יותר, אתה צריך להבין את ה-keyword baseline.
ספריות קונות לך זמן. הבנה קונה לך אמינות.
Optional learning community: https://t.me/GyaanSetuAi