הערכת ביצועים, Hybrid Search ומגמות עתידיות
הערכת ביצועים: Recall, Latency וזיכרון יחד
recall@k, שהוצג בפרק העוסק ב-kNN מול ANN, נמדד בפועל על קבוצת שאילתות מייצגת (curated או held-out), מול תוצאות exact search כאמת מידה. אבל recall לבדו לא מספיק כדי להעריך מערכת חיפוש וקטורי — צריך למדוד אותו יחד עם latency וצריכת זיכרון, כי שלושת הגורמים האלה תלויים זה בזה במלואם.
latency נמדד בדרך כלל לא רק כממוצע, אלא בפרסנטילים — p50 (latency חציוני), p95 ו-p99 (latency של המקרים הגרועים יחסית) — כי שאילתה בודדת איטית במיוחד יכולה לפגוע בחוויית משתמש גם אם הממוצע נראה טוב. הבחירה בין HNSW, IVF ו-IVF-PQ (שנסקרו בפרקים הקודמים) היא בדיוק בחירת נקודה במרחב התלת-ממדי הזה — recall, latency וזיכרון — ואין קונפיגורציה שממקסמת את שלושתם בו-זמנית.

Hybrid Search: שילוב חיפוש וקטורי וחיפוש מילות מפתח
חיפוש וקטורי מצוין בתפיסת דמיון סמנטי, אך חלש דווקא במקרים שבהם חיפוש מילות מפתח קלאסי (כמו BM25) מצטיין: התאמה מדויקת של מק"ט מוצר, שם ספציפי, או מונח טכני נדיר — מונחים כאלה לא בהכרח מקבלים embedding שמבדיל אותם היטב ממונחים דומים, בעוד שחיפוש מילות מפתח פשוט מוצא אותם ישירות.
הפתרון הנפוץ הוא Hybrid Search: הרצת שני סוגי החיפוש במקביל — וקטורי וטקסטואלי — ומיזוג התוצאות לדירוג אחד משולב. שיטה מקובלת למיזוג נקראת Reciprocal Rank Fusion (RRF): במקום להשוות ציוני דמיון גולמיים משיטות שונות (שלא ניתנים להשוואה ישירה), משלבים את הדירוגים (המיקום ברשימה) של כל פריט בכל אחת מהרשימות, כך שפריט שמדורג טוב בלפחות אחת מהשיטות מקבל דירוג משולב גבוה — גם אם הוא לא הופיע כלל ברשימה השנייה.

לאן זה הולך: כיוונים נוכחיים
אחד הכיוונים הפעילים בתחום הוא מעבר מ-embedding יחיד למסמך לגישות multi-vector / late-interaction, שבהן כל מסמך מיוצג ע"י כמה וקטורים (למשל אחד לכל טוקן או קטע קטן) במקום וקטור בודד — מה שמאפשר ייצוג עשיר ומדויק יותר, במחיר עלות אחסון וחישוב גבוהה יותר. זהו כיוון מחקר ותעשייה פעיל, לא סטנדרט אחיד עדיין.
מגמה יציבה יותר: RAG, כפי שהוצג בפרק הראשון של הנושא, ממשיך להיות הכוח המניע המרכזי מאחורי הביקוש לחיפוש וקטורי מהיר ומדויק — ככל שיישומי LLM דורשים גישה לידע עדכני ופרטי בקנה מידה גדול, כך גדלה החשיבות של כל מה שנלמד בנושא הזה: embeddings איכותיים, מדדי דמיון נכונים, ואינדקסים שמתפקדים היטב תחת עומס אמיתי.
סיכום הנושא
התחלנו בפרק הראשון עם עיקרון פשוט: חיפוש לפי משמעות, לא לפי התאמת מחרוזת. מאז עברנו דרך embeddings כדרך לייצג משמעות כמספרים, המתמטיקה המדויקת שמגדירה "קרוב" במרחב הזה, האתגר שהממדיות הגבוהה מציבה, האלגוריתמים (HNSW, IVF, PQ) שהופכים חיפוש בקנה מידה עצום לישים, הכלים שמממשים את כל זה בפרקטיקה, ולבסוף איך בונים ומעריכים מערכת כזו בעולם האמיתי.
כל השכבות האלה יחד הן מה שהופך משפט כמו "מצא לי את הדבר שהכי דומה למשמעות לזה" מרעיון מעורפל לפעולה מחושבת, מהירה ומדידה.