top of page

שימור ההקשר הרחב ושליפה רב-שכבתית כשעושים צ'אנקינג ל-RAG

  • Writer: shlomoyona
    shlomoyona
  • Apr 27
  • 3 min read

בשרשרת הפוסטים על בעיות נפוצות וטעויות נפוצות ואתגרים נפוצים בארגונים שמממשים בעצמם לוקאלית פתרונות RAG וסביבה אג'נטית ומערכות מבוססות AI, אז הפעם... כשמתעסקים במסמכים שונים ומשונים בהקשרים שונים ומשונים, הצוות מתחבט בשאלה של אובדן הקשר בתוך ה-chunks שנוצרו: כמה מהכותרות הקודמות במסמך יש לשמור ולהזריק לתוך כל צ'אנק? האם יש לשמור רק את הכותרת הגדולה האחרונה, או גם את כותרות המשנה שיורדות במורד ההיררכיה? במקביל, עלתה הצעה לבחון האם כדאי ליצור סיכום מוקדם של המסמך השלם, להטמיע את הסיכום, ואז להשתמש בו כדי לתמוך ולכוון את שירות ה-Retrieval בשלב החיפוש. אז הנה מה שברוב המקרים מתאים לענות ולהתייחס למקרה מהסוג הזה. בעיית הצ'אנק המיותם היא תופעה מוכרת וידועה היטב בארכיטקטורות RAG. כאשר מסמך עשיר מחולק לצ'אנקים לצורך embedding, כל צ'אנק הופך לישות עצמאית מנותקת מהקשרה הרחב. לדוגמה, צ'אנק שמכיל את המשפט "הרווח הנקי ברבעון השלישי צמח ב-15%" אינו כולל את שם החברה, שנת הדוח, או את הפסקה הכללית שמסבירה על איזו חטיבה עסקית מדובר. חיפוש וקטורי פשוט יתקשה מאוד לחבר בין שאלת משתמש ספציפית לבין הנתח המיותם הזה. בניית שרשור פסיבי של כותרות עבר עשויה לעזור במעט, אך לרוב היא יוצרת רעש טקסטואלי, מבזבזת טוקנים יקרים, ולא תמיד מכסה את ההקשר הלוגי והנושאי שמחבר את הנתח למסמך.


כדי להתמודד עם האתגר ולענות על הצרכים שהועלו, התעשייה אימצה שתי מתודולוגיות מתקדמות שמטפלות בשימור ההקשר בצורות שונות: אסטרטגיית יחסי אב-ילד ולצידה טכניקת השליפה ההקשרית של חברת אנת'רופיק, Contextual Retrieval.


השיטה הראשונה עונה ישירות על השערת הצוות בנוגע לשימוש בסיכומי מסמכים, ומכונה שליפה היררכית או Parent-Child Retrieval. התפיסה המרכזית בגישה זו היא הפרדה מוחלטת בין היחידה שמשמשת למציאת המידע לבין היחידה שמסופקת למודל השפה לצורך ניסוח התשובה. בתהליך העיבוד המקדים, המסמך מחולק למקטעים גדולים ועשירים בהקשר, שמכונים נתחי-אב, Parent Chunks. אלו יכולים להיות פרקים שלמים או מסמכים קצרים במלואם. כל נתח-אב מפוצל בתורו לנתחי-ילד, Child Chunks, קטנים מאוד וממוקדים רעיונית, למשל, משפט או שניים. ה-Embeddings מחושבים אך ורק עבור נתחי הילד הקטנים. כאשר המשתמש מזין שאילתה, מתבצע חיפוש במרחב הילדים, ולכן מתאפשרת התאמה וקטורית כירורגית ונקודתית תוך מזעור רעשי רקע. אולם, ברגע שנמצאת התאמה לנתח-ילד מסוים, המערכת אינה שולחת אותו למודל ה-LLM; במקום זאת, מנגנון חילוץ פנימי משתמש במזהה המשותף כדי לשלוף את נתח-האב שעוטף אותו, וזהו הנתח המלא שיועבר למודל ה-Generation. הליך זה מבטיח שמודל השפה מקבל את כלל הכותרות, פסקאות הרקע והזרימה הלוגית שסביב הפסקה הנבחרת.


שיטה מקבילה שתומכת ברעיון הסיכום היא אינדקס סיכומי מסמכים, Document Summary Index. בגישה זו, לפני שמחלקים את המסמך לצ'אנקים, מופעל LLM על המסמך השלם, או על עמודים שלמים, כדי לייצר פסקת סיכום תמציתית שמתארת את תוכנו. הסיכומים הללו עוברים סדרת Embeddings ומאוחסנים במסד וקטורי נפרד. במקביל, המסמך מחולק לנתחים רגילים ששמורים במסד הנתונים הראשי, תוך צימוד מזהה משותף, Metadata Linking. בזמן שליפה, החיפוש הראשוני מבוצע מול מסד הסיכומים כדי לאתר באופן כללי אילו מסמכים או פרקים רלוונטיים לנושא. משאלו זוהו, השאילתה מופנית לחפש את המידע הפרטני רק בתוך צביר הנתחים המשויך למסמכים אלו. אסטרטגיה זו מספקת מענה מלא כי היא מייעלת את תהליך הסינון ומגדילה את רזולוציית השליפה ללא עומס חישובי מיותר.

המתודולוגיה השנייה, שזכתה לתהודה רבה בעקבות מחקר של חברת אנת'רופיק, נקראת Contextual Retrieval. מחקר זה הראה כי הוספת הקשר יזום לכל נתח יכולה להפחית את שיעור הכישלון בשליפה בכ-49% כשהיא משולבת עם חיפוש דליל, ועד 67% בשילוב דירוג מחדש, Reranking. במקום להתלבט אילו כותרות לשרשר בצורה מכנית, שיטה זו נעזרת במודל שפה חסכוני (למשל Claude 3 Haiku) שיבצע את ההערכה הלוגית. בשלב עיבוד הנתונים, המערכת מזינה למודל את המסמך המלא, או פרק משמעותי ממנו, ואת הנתח הבודד, ומבקשת מהמודל לנסח באופן סינתטי וקצר, בין 50 ל-100 טוקנים, את ההקשר הכללי של הנתח ביחס למסמך כולו. משפט ההקשר הסינתטי (למשל: "נתח זה מופיע בפרק 'נהלי אבטחה' בתוך מסמך ההנחיות הרשמי של חברת שקר-כלשהו לשנת 2026, ודן באופן הטיפול בשרתי קצה") מוצמד כטקסט מקדים, Prepended, לתוכן הנתח המקורי. הנתח המורחב עובר פעולת Embedding רק לאחר מכן. כך, כל צ'אנק מכיל בתוכו באופן עצמאי את תמצית המשמעות, פותר לחלוטין את שאלת שרשור הכותרות ומשפר דרמטית את יעילות מציאת המידע הן במנועים וקטוריים והן במנועים לקסיקליים מבוססי מילות מפתח, כמו BM25.

יש לציין כי אחת הביקורות על שיטת ה-Contextual Retrieval היא העלות הגבוהה וזמן העיבוד שנדרש להעברת מסמכים שלמים למודל השפה עבור כל נתח קטן. עם זאת, טכנולוגיות כגון Prompt Caching מאפשרות כיום לטעון את המסמך הגדול לזיכרון המודל פעם אחת בלבד, ולבצע עשרות פעולות השלמת הקשר לנתחים בודדים בעלות מינימלית ובמהירות שיא והופך את היישום לכלכלי וישים בסביבת פרודקשן.


שימור ההקשר הרחב ושליפה רב-שכבתית כשעושים צ'אנקינג ל-RAG
שימור ההקשר הרחב ושליפה רב-שכבתית כשעושים צ'אנקינג ל-RAG

צריכים עזרה עם AI/GenAI/AgenticAI/AI Platform ועם מעבר מהוכחות יכולת לעבודה בסקייל מלא באנטרפרייז? זקוקים לשותף טכנולוגי עתיר ניסיון שיודע לספק שירותי מחקר ופיתוח Hands-on, מארגוני אנטרפרייז ועד סטארט-אפים, על מנת להוציא חזון אלגוריתמי שלכם מהכוח אל הפועל?  הבה נדבר!


שלמה יונה,

מייסד ומדען ראשי, 

מתמטיקאי מחקר ופיתוח בע"מ

053-7326360


פודקאסט על החברה ועליי, שלמה יונה, ואופן העבודה שלנו ואיתנו:



 
 
 

Comments


  • Facebook Social Icon
  • LinkedIn Social Icon

© 2010-2026 mathematic.ai

bottom of page