עורכת דין בתל אביב מעלה חוזה שכירות מסחרי בן תשעים עמודים, מקלידה שאלה אחת פשוטה, "מה תקופת ההודעה המוקדמת לביטול?", ומקבלת תשובה בטוחה בעצמה: "שישים יום". המספר נשמע סביר, הוא מנוסח בעברית רהוטה, והוא שגוי לחלוטין. הסעיף האמיתי מדבר על תשעים יום, והוא נמצא בעמוד שנסרק עקום. הכלי לא שיקר במובן שאנחנו מייחסים לשקר. הוא פשוט מעולם לא ראה את הסעיף הזה.
הסצנה הזאת חוזרת על עצמה בכל משרד, מרפאה ומחלקת כספים שאימצו כלי לצ'אט עם מסמכים. מישהו מעלה קובץ, שואל שאלה ממוקדת, ומקבל תשובה שנשמעת מוסמכת אבל מפספסת את מה שכתוב שחור על גבי לבן. התגובה הראשונה היא בדרך כלל כעס על הטכנולוגיה, "ה-AI ממציא". התגובה השנייה, המושכלת יותר, היא שאלה: מה בעצם קורה שם בפנים, בין הרגע שבו לחצנו "שלח" לבין הרגע שבו הופיעה תשובה שאיש לא כתב?
כדי לענות על זה צריך לוותר על דימוי אחד שכולנו נושאים איתנו: שהמכונה "קוראת" את המסמך שלנו כמו שאדם קורא, מהעמוד הראשון ועד האחרון. היא לא. מה שקורה קרוב הרבה יותר לארכיונאי שעובד בחדר חשוך, מכוון זרקור צר על מדף אחד בכל פעם, ומתאר בביטחון מוחלט רק את מה שהאלומה מצליחה להאיר. כל השאר, כל מה שנשאר בחושך, פשוט לא קיים מבחינתו. המאמר הזה הוא על הזרקור הזה: איך הוא עובד, מתי הוא מפספס, ולמה דווקא ההבנה של המנגנון היא ההבדל בין משתמש שסומך על כל תשובה לבין משתמש שיודע לכוון את האור למקום הנכון.
מה קורה כשמעלים קובץ
נתחיל מהמכניקה עצמה, כי בלעדיה כל השאר נשמע כמו קסם. כשאתם מעלים PDF לכלי צ'אט, המסמך לא נכנס "שלם" למוח של המודל. הוא עובר קודם תהליך פירוק. המערכת חותכת אותו לקטעים קטנים, בדרך כלל פסקה או שתיים כל אחד, מה שנקרא בעגה המקצועית chunks. כל קטע כזה מתורגם לרשימה ארוכה של מספרים, וקטור, שממקם אותו במרחב לפי המשמעות שלו. פסקה על "דמי ניהול" ופסקה על "עלויות תחזוקה" יישבו קרוב זו לזו במרחב הזה, גם אם לא הופיעה בהן אף מילה משותפת. זהו לב השיטה: חיפוש לפי משמעות ולא לפי מילים מדויקות.
עכשיו מגיעה השאלה שלכם. גם היא מתורגמת לוקטור, והמערכת מחפשת את הקטעים שהכי קרובים אליה במרחב המשמעות. היא שולפת קומץ קטעים, שלושה, חמישה, אולי עשרה, ורק אותם היא מגישה למודל השפה יחד עם השאלה. המודל מנסח את התשובה על סמך אותם קטעים בלבד. את שאר תשעים העמודים הוא לא ראה מעולם. השם המקצועי לשיטה הזאת הוא Retrieval-Augmented Generation, אחזור שמזין יצירה, והיא נטבעה במאמר של פטריק לואיס וחוקרים מ-FAIR ומ-University College London שהוצג בכנס NeurIPS בשנת 2020. הרעיון שלהם היה אלגנטי: במקום לבקש מהמודל לזכור הכל, תן לו זיכרון חיצוני שאפשר לחפש בו, והגש לו בכל פעם רק את מה שרלוונטי.
כאן נכנס הזרקור. האחזור הוא האלומה. הוא לא מאיר את הארכיון כולו, הוא סורק אותו ובוחר כמה מדפים להאיר. המודל, החכם ככל שיהיה, מנתח מצוין את מה שבתוך האלומה. הבעיה מתחילה כשהתשובה שחיפשתם יושבת מחוץ לאור.
התפנית: הכלי לא קורא, הוא מכוון אור
זאת נקודת המפתח שהופכת את כל התמונה. אנחנו נוטים לחשוב שאם העלינו את המסמך, "הכל בפנים" והמודל "יודע" אותו. אבל הידע של המודל בכל רגע נתון מוגבל בדיוק לאותם קטעים שהאחזור בחר. אם השאלה נוסחה במילים שונות מאלה שבמסמך, אם הסעיף הרלוונטי נחתך לשניים בדיוק על גבול הקטע, או אם הטקסט הגיע משובש מסריקה, הזרקור פשוט לא ינחת על המקום הנכון. והנה החלק המטריד: כשהמודל לא מוצא את התשובה בקטעים שהוגשו לו, הוא לרוב לא אומר "אין לי את זה". הוא ממלא את החלל מתוך הידע הכללי שספג באימון, וזה בדיוק הרגע שבו נולד ה"שישים יום" שלא היה שם.
שווה לעצור על ההבחנה הזאת, כי היא משנה את האופן שבו כדאי לעבוד. תשובה שגויה מכלי מסמכים היא כמעט אף פעם לא "המצאה יש מאין". היא כמעט תמיד סימפטום של אחזור שפספס. הכלי ענה נאמנה על סמך מה שהאיר לו, אלא שהאור נחת על המקום הלא נכון. מי שמבין את זה מפסיק לשאול "למה ה-AI משקר" ומתחיל לשאול "למה האלומה לא הגיעה לסעיף שרציתי", וזאת שאלה שאפשר לעשות איתה משהו.
לזרקור יש בעיקר שלוש דרכים לפספס, וכדאי להכיר את כולן כי הטיפול בכל אחת שונה. הראשונה היא פער ניסוח: שאלתם על "דמי ביטול" והמסמך קורא לזה "פיצוי מוסכם", ולמרות שהחיפוש לפי משמעות אמור לגשר על הפער, ניסוח רחוק מדי עלול להחטיא את הקטע הנכון. השנייה היא גבול קטע: הסעיף שחיפשתם נחתך בדיוק על התפר בין שני קטעים, כך שחציו נמצא באחד וחציו בשני, ואף אחד מהם לבדו לא נראה רלוונטי מספיק כדי להישלף. השלישית, והמרכזית בעברית, היא קלט משובש: הטקסט הגיע פגום מסריקה, ואז גם אחזור מושלם מאיר טקסט שכבר אינו נאמן למקור. שלוש התקלות נראות זהות מבחוץ, תשובה בטוחה ושגויה, אבל כל אחת נפתרת אחרת.
גם בתוך האור, המרכז מתעמעם
אפשר היה לחשוב שהפתרון פשוט: נגיש למודל יותר קטעים, או נדחוף לו את המסמך כולו לתוך חלון ההקשר הענק שיש למודלים החדשים. אלא שכאן מחכה הפתעה. בשנת 2020 ומאז, וביתר שאת במחקר מ-2023 בהובלת נלסון ליו ופרסי ליאנג מאוניברסיטת סטנפורד שכותרתו "אבודים באמצע" (Lost in the Middle), נמצא שהמודלים משתמשים בהקשר ארוך בצורה לא אחידה. כשהמידע הרלוונטי יושב בתחילת ההקשר או בסופו, המודל מאתר אותו היטב. כשאותו מידע בדיוק נמצא באמצע, הביצועים צונחים, לעיתים אל מתחת לרמה של מודל שלא קיבל את המסמך כלל.
במונחי הדימוי שלנו, אפילו אחרי שהזרקור מצא את המדף הנכון, האלומה עצמה בהירה יותר בקצוות ומעומעמת במרכז. לדחוף מסמך של מאתיים עמודים לחלון הקשר גדול לא מבטל את הבעיה, לפעמים הוא מחמיר אותה, כי הסעיף הקריטי נבלע איפשהו באמצע הערימה. זאת הסיבה שאחזור טוב, שמגיש מעט קטעים ממוקדים, מנצח לא פעם הזנה של הכל בבת אחת. מי שרוצה להעמיק בטכניקה של תמצות מסמכים ארוכים בלי לאבד את ההקשר יכול לקרוא את המדריך שלנו על סיכום מסמך של מאה עמודים בכמה שניות, אבל העיקרון נשאר: פחות אור ממוקד עדיף על שיטפון של אור מפוזר.
כמה זה באמת קורה
נשמע תיאורטי, אז הנה מספר מהשטח. בשנת 2024 בדקו חוקרים מ-RegLab של סטנפורד, בראשות ורון מגש, את כלי המחקר המשפטי המובילים בארצות הברית, אותם כלים שמבוססים בדיוק על אחזור מתוך מאגרי פסיקה ושמשווקים כ"נקיים מהזיות". התוצאה: הכלי של Lexis הפיק תשובות שגויות בכ-17 אחוז מהשאלות, והכלי של Westlaw בכ-33 אחוז, כלומר כמעט שאלה מכל שלוש. לשם השוואה, GPT-4 גולמי, בלי שכבת אחזור, טעה בכ-43 אחוז. הלקח כפול, והוא כל תמצית המאמר הזה: האחזור מוריד את שיעור ההזיות באופן דרמטי, אבל הוא לא מאפס אותו. גם המערכת המשפטית המהונדסת ביותר עדיין נשענת על זרקור שלפעמים מפספס.
המספרים האלה הם על אנגלית משפטית מוקפדת. על מסמך עברי סרוק באיכות בינונית, האתגר גדול יותר, לא בגלל שהמודל "פחות חכם" בעברית, אלא בגלל שהשלב שלפני האחזור, קריאת הטקסט מהתמונה, שביר יותר. נחזור לזה בהמשך.
מילון כיס: ארבעה מונחים שכדאי להכיר
אחזור (Retrieval). שלב החיפוש שבו המערכת בוחרת אילו קטעים מהמסמך להגיש למודל. זהו הזרקור.
קטע (Chunk). פיסת המסמך, בדרך כלל פסקה, שהיא יחידת החיפוש הבסיסית. סעיף שנחתך בין שני קטעים עלול "ליפול בין הכיסאות".
וקטור (Embedding). ייצוג מספרי של משמעות. הוא מה שמאפשר לחפש לפי כוונה ולא לפי מילים מדויקות.
הזיה (Hallucination). תשובה שנשמעת סבירה אך אינה מבוססת על המסמך. כמעט תמיד סימפטום של אחזור שפספס, לא של "המצאה" אקראית.
איך הגענו לכאן
שווה לזכור שהמבנה הזה, מודל שאינו זוכר הכל ומסתמך על זיכרון חיצוני שאפשר לחפש בו, לא נולד כפתרון מסחרי אלא כפתרון למגבלה עמוקה. מודל שפה גולמי הוא כמו מומחה מבריק עם זיכרון מטושטש: הוא יודע המון על העולם בגדול, אבל אם תבקשו ממנו את הסעיף המדויק בחוזה שלכם, הוא ינחש. מאמר ה-RAG של 2020 הציע להפריד בין השניים, בין היכולת להבין ולנסח לבין היכולת לשלוף עובדה מדויקת ממקור אמין. ההפרדה הזאת היא הסיבה שכלי צ'אט עם מסמכים בכלל אפשריים, והיא גם הסיבה שהם ניתנים לתיקון: אם הבעיה היא באחזור, אפשר לשפר את האחזור.
הבנה של ההיסטוריה הזאת עוזרת לכוונן ציפיות. אנחנו לא מדברים על מכונה שקוראת והופכת למומחית למסמך שלכם. אנחנו מדברים על מנוע חיפוש חכם במיוחד, שמחובר לכותב מיומן. וכמו בכל מנוע חיפוש, איכות התוצאה נקבעת קודם כל באיכות החיפוש.
המיתוס של חלון ההקשר הענק
אחת האמונות הרווחות היום היא שכל בעיית האחזור תיעלם ברגע שחלונות ההקשר יהיו גדולים מספיק. אם אפשר להכניס מיליון מילים לתוך ההקשר, למה בכלל לטרוח לחתוך ולחפש? נכניס את המסמך כולו וזהו. זה נשמע משכנע, וזה בעיקר לא נכון מהסיבה שכבר ראינו: "אבודים באמצע". חלון גדול אינו ערובה לתשומת לב אחידה. הוא גם יקר יותר, איטי יותר, ומזמין את המודל לשקול מידע לא רלוונטי לצד המידע החשוב. לרוב, הזנת קומץ קטעים נכונים תיתן תשובה טובה, זולה ומהירה יותר מהזנת ספר שלם. חלון ההקשר הענק הוא כלי מצוין, אבל הוא משלים את האחזור, לא מחליף אותו.
הסצנה העברית: כשהאור מגיע מטושטש
בואו נחזור לחוזה הסרוק מתחילת המאמר, כי הוא מגלם את נקודת התורפה הישראלית. במסמך עברי שהגיע מסריקה, לפני שהזרקור בכלל מתחיל לפעול, יש שלב מקדים: זיהוי הטקסט מהתמונה, מה שנקרא OCR. וזהו השלב השברירי. עברית היא שפה שנכתבת מימין לשמאל, עם אותיות סופיות, לעיתים עם ניקוד, ולא פעם בגופנים ישנים או בהעתקים מטושטשים. די בכך שהמערכת תקרא "תשעים" כ"תשעה", או תשבש טבלה שבה יושבים התאריכים, כדי שהקטע שנוצר יהיה פגום. ואז, גם אם הזרקור מכוון בול לסעיף הנכון, מה שהוא מאיר הוא כבר טקסט משובש.
זאת הסיבה שאיכות הסריקה אינה פרט טכני שולי אלא תנאי סף לאמינות התשובה. מי שעובד קבוע עם מסמכים סרוקים בעברית ימצא ערך ממשי במדריך שלנו על חילוץ טבלאות בעברית מ-PDF סרוק, ובבחירת המודל, כפי שבדקנו כשהשווינו איך מודלים שונים מתמודדים עם מסמכים משפטיים בעברית. השורה התחתונה הישראלית פשוטה: על מסמך עברי, חצי מהקרב מוכרע עוד לפני שהקלדתם את השאלה, באיכות הטקסט שנכנס פנימה.
איך לעבוד עם זה, לא נגד זה
אם קיבלתם שהכלי מכוון זרקור ולא קורא ספר, נגזרת מכך דרך עבודה שונה לגמרי. הנה מסגרת מעשית בחמישה צעדים, מסודרת לפי הסדר שבו הדברים משפיעים על התוצאה.
1. תתחילו מהקלט, לא מהשאלה. ודאו שהמסמך נקי. אם הוא סרוק, בדקו שהטקסט קריא לפני ההעלאה. קובץ טקסט אמיתי תמיד עדיף על צילום של טקסט.
2. שאלו במילים של המסמך. האחזור מחפש לפי משמעות, אבל קרבה לניסוח המקורי עוזרת. אם החוזה מדבר על "הודעה מוקדמת", שאלו על "הודעה מוקדמת", לא על "כמה זמן מראש צריך להתריע".
3. פרקו שאלות מורכבות. שאלה שדורשת מידע משלושה מקומות שונים במסמך מכריחה את הזרקור להאיר שלושה מדפים בבת אחת, וזה קשה יותר. פצלו לשלוש שאלות ממוקדות.
4. בקשו ציטוט ומראה מקום. "על סמך איזה עמוד ואיזה משפט ענית?" זאת אולי השאלה החשובה ביותר. היא הופכת תשובה עמומה לתשובה שאפשר לאמת מול המקור, וחושפת מיד אחזור שפספס.
5. אמתו את הקריטי מול המסמך. בכל החלטה עם משקל, משפטי, כספי או רפואי, קראו את הסעיף עצמו. הכלי מקצר לכם את הדרך אל הסעיף, הוא לא פוטר אתכם מלקרוא אותו. ובמסמך רגיש, שקלו גם את שאלת הפרטיות, כפי שהרחבנו במדריך על סריקת חוזה ושאלות ללא דליפת מידע.
שימו לב שאף אחד מחמשת הצעדים אינו דורש ידע טכני. כולם נגזרים מהבנה אחת: אתם מכוונים זרקור. ככל שתכוונו אותו טוב יותר, כך תפחת התלות שלכם במזל.
שאלות נפוצות
אם המודל טעה, זה אומר שהוא לא מבין את המסמך? לרוב לא. סביר יותר שהאחזור לא הגיש לו את הקטע הרלוונטי. המודל ענה נאמנה על סמך מה שקיבל, אלא שמה שקיבל היה חסר. תיקון הניסוח או שיפור איכות הקובץ פותרים חלק גדול מהמקרים.
אז אי אפשר לסמוך על כלי צ'אט עם מסמכים? אפשר, בתנאי שמתייחסים אליהם כאל מאיצי חיפוש ולא כאל פוסקים סופיים. הם מצוינים לאיתור, לתמצות ולניווט במסמך גדול. את ההחלטה הסופית בנושא קריטי עדיין מקבל אדם שקרא את הסעיף.
למה זה גרוע יותר בעברית? לא המודל גרוע יותר, אלא שלב הקריאה מהתמונה שברירי יותר בעברית סרוקה. טקסט משובש בכניסה מוביל לתשובה משובשת ביציאה, גם אם האחזור עצמו עבד מצוין.
חלון הקשר ענק לא פותר הכל? לא. מחקר "אבודים באמצע" מראה שמודלים מזניחים מידע שיושב באמצע הקשר ארוך. אחזור ממוקד לרוב מדויק, זול ומהיר יותר מהזנת המסמך כולו.
מי שמכוון את האור
נחזור לעורכת הדין מההתחלה, אבל הפעם עם הידע שלנו. היא לא זקוקה למודל חכם יותר. היא זקוקה לסריקה נקייה, לשאלה שמנוסחת במילים של החוזה, ולהרגל הקטן לשאול "מאיזה סעיף ענית". ברגע שהיא עושה את שלושת הדברים האלה, ה"שישים יום" שאינו קיים מפסיק להופיע, כי היא כבר לא מסתמכת על המקום שאליו האור נפל במקרה, היא מכוונת אותו.
וזה, בסופו של עניין, כל ההבדל. הכלי לצ'אט עם מסמכים לא הבטיח לנו קורא. הוא נתן לנו זרקור בתוך ארכיון עצום, וזרקור הוא שימושי בדיוק במידה שבה יש יד יציבה שמכוונת אותו. הפחד שהמכונה תמציא לנו עובדות מפספס את הנקודה. השאלה האמיתית היא לא אם לתת לזרקור לעבוד לבד, אלא אם אנחנו מוכנים להיות הארכיונאי שמחזיק בו. מי שמאמץ את התפקיד הזה מגלה שהמסמכים שלו נעשו נגישים מתמיד. מי שמוותר עליו ימשיך לקבל תשובות יפות, בטוחות, ולפעמים על סעיף שמעולם לא היה שם.