הטמעות טקסט בהסבר פשוט: איך הן פועלות [+דוגמאות]

המדריך הזה מסביר מהן הטמעות טקסט, איך הן הופכות טקסט לווקטורים שלוכדים משמעות, ואיך לבחור, להעריך וליישם מודלי הטמעה בחיפוש, ב-RAG ובתרחישי שימוש מעשיים אחרים.

Diagram of what text embeddings are: two customer tickets, “I was charged twice for my subscription.” and “There’s a duplicate payment on my account.”, are converted by a text embedding model into similar vectors that sit close together in the billing issues cluster of a 2D embedding space, so both are routed to the billing support queue.

אם אתם מכירים את הרעיון הבסיסי של הטמעות טקסט (text embeddings), אבל תוהים איך להשתמש בהן בפועל, הגעתם למקום הנכון. ננתח וקטורים, טוקניזציה וחישוב דמיון, נצלול לעומק הערכת מודלי הטמעה ונציג מקרי שימוש מהעולם האמיתי.

מהן הטמעות טקסט?

הטמעות טקסט הן ייצוגים מספריים של מילים, משפטים או מסמכים, שלוכדים את המשמעות הסמנטית שלהם ואת הקשרים ביניהם. הן נוצרות על ידי מודלי הטמעה שממירים טקסט לוקטורים — מערכים של מספרים שאלגוריתמים של למידת מכונה יכולים לעבד ולהשוות.

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

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

לדוגמה, שני לקוחות שולחים את ההודעות הבאות:

  • "חויבתי פעמיים על המנוי שלי": [0.21, -0.47, 0.83, ...]
  • "יש בחשבון שלי תשלום כפול": [0.19, -0.45, 0.80, ...]

אלה וקטורים מפושטים, להמחשה בלבד.

אף שהלקוחות משתמשים במילים שונות, הם מתארים את אותה בעיה. מודל ההטמעה לוכד את הקשר הזה בכך שהוא ממקם את הווקטורים שלהם קרוב זה לזה במרחב מתמטי. שתי הפניות מסווגות ומנותבות לצוות החיובים.

מקרי שימוש בהטמעות טקסט בעסקים

הטמעות טקסט משמשות במגוון משימות של עיבוד שפה טבעית (NLP), כולל:

  • חיפוש סמנטי: איתור מידע רלוונטי על סמך משמעות. Delivery Hero משתמשת בהטמעות של מוצרים ושל שאילתות לצד חיפוש מילות מפתח, כדי לעזור ללקוחות שקונים מצרכים למצוא מוצרים רלוונטיים. לדוגמה, חיפוש של "יוגורט דל שומן" יכול להציג יוגורט יווני או יוגורט עם 0.5% שומן, גם בלי התאמה מדויקת לניסוח.
  • סיווג טקסט: מיון טקסט לקטגוריות, כמו זיהוי הודעות ספאם או מיון מסמכים לפי נושא. MindCraft.ai פיתחה מערכת לסיווג מסמכים שמשתמשת בהטמעות טקסט מבוססות טרנספורמר ובלמידת מכונה כדי לסווג מסמכים ארגוניים ולזהות מידע רגיש לצורך עמידה ב-GDPR.
  • ניתוח אשכולות: קיבוץ מסמכים או קטעי טקסט דומים כדי לזהות דפוסים. Doczy.ai ממירה טקסט של חוזים להטמעות ומקבצת סעיפים ומושגים קרובים מבחינה סמנטית, גם כשחוזים שונים מנסחים התחייבויות דומות במילים שונות.
  • יצירה מועשרת באחזור (RAG): אחזור מידע רלוונטי ש-LLM יכול להשתמש בו כדי ליצור תשובות מדויקות יותר ומודעות להקשר. Ring משתמשת בהטמעות הטקסט של Amazon Titan בצ׳אטבוט RAG רב-לשוני, כדי לאחזר תיעוד תמיכה רלוונטי לפני שהיא מנסחת תשובות לשאלות של לקוחות בשווקים בינלאומיים.
  • מערכות המלצה: הצעת מאמרים, מוצרים או תוכן אחר על סמך דמיון טקסטואלי. מערכת JUDE של LinkedIn משתמשת בהטמעות טקסט שנוצרו על ידי LLM מתיאורי משרות ומפרופילים של משתמשים כדי לשפר המלצות על משרות, ולוכדת את הקשרים בין הרקע של המועמדים לבין המשרות הפנויות.
  • זיהוי ישויות בעלות שם (NER): סיוע בזיהוי ובסיווג של שמות אנשים, ארגונים ומקומות בטקסט. Amazon Health Services משתמשת ב-NER כדי לזהות מושגים רפואיים בשאילתות של לקוחות, כמו מחלות, תסמינים, תרופות וטיפולים. היא משלבת את ההבנה הזו עם חיפוש דמיון מבוסס הטמעות כדי לחבר בין שאילתות לבין מוצרים ושירותי בריאות רלוונטיים.
  • תרגום מכונה: תמיכה במודלים שמתרגמים טקסט בין שפות. Transglot משתמשת בהטמעות טקסט בזיכרון תרגום סמנטי כדי לזהות קטעים שתורגמו בעבר ושמשמעותם דומה, וכך עוזרת לתהליכי עבודה של לוקליזציה לעשות שימוש חוזר בתרגומים קיימים.

איך הטמעות טקסט עובדות?

אז איך מודל הטמעה מחליט אילו ערכים מספריים להקצות לקטע טקסט, ולמה כדאי לסמוך עליו?

הכול מתחיל באימון. מודלי הטמעה לומדים מאוספים גדולים של טקסט ומחפשים דפוסים באופן שבו מילים משמשות יחד. לדוגמה, מודלים מסורתיים כמו Word2Vec לומדים על ידי חיזוי מילה מתוך המילים שמסביבה, או להפך. מודלים מודרניים שמתמקדים באחזור משתמשים לעיתים קרובות בלמידה ניגודית (contrastive learning). הם מאומנים להקצות ציוני דמיון גבוהים יותר לזוגות רלוונטיים של שאילתה ומסמך מאשר לזוגות שאינם קשורים זה לזה.

אחרי שהמודל מאומן, זה מה שקורה כשנותנים לו קטע טקסט חדש:

  1. טוקניזציה. תחילה המודל מפרק את הטקסט לחלקים קטנים יותר שנקראים טוקנים. אלה יכולים להיות מילים שלמות, חלקי מילים או סימני פיסוק. כל טוקן מקבל מזהה מספרי מאוצר המילים של המודל, ולמזהה הזה אין משמעות כשלעצמו.
  2. קידוד ואיגום (pooling). המודל מעבד את הטוקנים האלה באמצעות הדפוסים שלמד במהלך האימון ומפיק וקטור. כל מספר בווקטור הוא קואורדינטה או רכיב, וממד הוא הציר שלאורכו המספר הזה מגדיר את מיקום הווקטור. כל ערך תורם למיקום הטקסט במרחב מתמטי שנקרא מרחב הטמעה.
  3. חישוב דמיון. כדי למצוא טקסט קשור, מערכת אחזור משווה בין הטמעת השאילתה להטמעות המסמכים באמצעות מדד דמיון כמו דמיון קוסינוס או מכפלה סקלרית

כך, לדוגמה, חנויות מקוונות מחזירות פריטים שתואמים לשאילתה של המשתמש.

מה ההבדל בין הטמעת מילים, הטמעת משפטים והטמעת מסמכים?

ההבדל העיקרי הוא כמות הטקסט שכל הטמעה מייצגת בווקטור יחיד. אפשר ליצור הטמעות למילים בודדות, למשפטים שלמים או למסמכים שלמים, בהתאם למידע שרוצים ללכוד.

  • הטמעות מילים לוכדות קשרים בין מילים בודדות, ומזהות למשל ש"הפסקת שירות" ו"זמן השבתה" הם מושגים קשורים.
  • הטמעות משפטים מבינות את המשמעות של משפטים שלמים, גם כשהם מבטאים את אותו רעיון במילים שונות.
  • הטמעות מסמכים מייצגות מסמך שלם כווקטור אחד, במקום ליצור וקטור נפרד לכל משפט. כך נשמר הנושא הכללי ואפשר למצוא מסמכים אחרים שעוסקים באותו נושא; עם זאת, ייתכן שיהיה קשה יותר (אם לא בלתי אפשרי) לאחזר פרטים.

עד כמה כדאי לרדת לפרטים? הרמה הנכונה תלויה בנתונים שלכם ובמה שאתם מנסים להשיג.

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

עד כמה גודל המקטע משפיע על איכות ההטמעות?

במידה רבה. לדברי Rahul Kumar, סגן נשיא להנדסת AI ב-Xenoss, האתגר הוא למצוא גודל מקטע שלוכד רעיון שלם אחד בלי לאבד הקשר חשוב. הוא מסביר את הפשרה:

"גודל המקטע קובע כמה הקשר סמנטי נושאת הטמעה אחת. מקטע גדול יותר מעניק לווקטור יותר הקשר, אבל הוא גם ממצע יותר נושאים לתוך וקטור אחד. מקטע שמכסה שלושה נושאים נוחת איפשהו באמצע ולא תואם היטב אף אחד מהם. מקטע קטן יותר שומר על משמעות חדה, אבל הוא עלול לאבד את ההקשר שבזכותו אפשר היה למצוא אותו."

לכן Kumar ממליץ לבחור אסטרטגיית חלוקה למקטעים על סמך התוכן, במקום להיצמד לגודל קבוע אחד. כדבריו, "גודל קבוע עם חפיפה מתאים רק לטקסט אחיד, כמו הודעות אימייל או דפי אינטרנט שנאספו בסריקה."

למסמכים מובנים כמו חוזים או מסמכי מדיניות, פיצול רקורסיבי שמודע למבנה מתאים יותר. חלוקה סמנטית למקטעים, לעומת זאת, יכולה לעבוד היטב בתמלולים, כי היא מפצלת את הטקסט במקומות שבהם הנושא או המשמעות משתנים.

הטמעות טקסט לעומת חיפוש מילות מפתח

למה להשתמש בהטמעות טקסט כשאפשר פשוט לחפש מילות מפתח? כי חיפוש מילות מפתח מסתמך על התאמת מונחים, ואילו חיפוש סמנטי מבוסס הטמעות יכול לאחזר מידע רלוונטי גם כשהשאילתה והמסמך משתמשים במילים שונות.

אבל דמיון סמנטי לא תמיד פירושו רלוונטיות. Shaw Talebi, מייסד AI Builder Academy, מדגים את המגבלה הזו באמצעות מערכת לחיפוש קורות חיים. במקרה של Talebi, בחיפוש אחר "מהנדס נתונים עם ניסיון ב-Apache Airflow", רק אחת מחמש התוצאות המובילות הזכירה את Apache Airflow, והיא דורגה שלישית — אף שבמערך הנתונים היו עוד שלושה קורות חיים שציינו את המיומנות הזו.

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

כדי לפתור את הבעיה הזו, Rahul Kumar ממליץ לבחור גישת אחזור לפי המקומות שבהם מערכת האחזור מתקשה:

  • חיפוש היברידי (שילוב של התאמת מילות מפתח עם חיפוש סמנטי) הוא ברירת המחדל כשהשאילתות כוללות מונחים מדויקים, כמו מק"טים, קודי שגיאה או הפניות משפטיות.
  • מודלים לדירוג מחדש (rerankers) מצדיקים את העלות שלהם כשרק התוצאות המובילות הספורות חשובות, למשל בתשובות שנוצרות מהקשר שאוחזר.
  • אחזור מבוסס גרף עוזר כשהתשובה פרוסה על פני כמה מקורות נתונים מקושרים.

Kumar שיתף גם איך הצוות שלו יישם את הגישות האלה בפועל. באחד הפרויקטים הם הריצו חיפוש מילות מפתח BM25 וחיפוש וקטורי זה לצד זה, מיזגו את התוצאות באמצעות reciprocal rank fusion (RRF) והשתמשו ב-LLM כדי לדרג מחדש את 124 התוצאות המובילות ולצמצם אותן ל-6.

"המעבר לאחזור שמתחיל בגרף, שבו חיפוש וקטורי מאתר מרחבים לטנטיים דומים ואחריו מתבצעת סריקה של הגרף בשני דילוגים (two-hop), שיפר את איכות הדירוג (nDCG) מ-0.58 ל-0.67 וקיצר את זמן האחזור באחוזון ה-90 (p90) מ-19 שניות לפחות מ-3 שניות", מוסיף Kumar.

סוגים של מודלי הטמעת טקסט

כל מודלי ההטמעה עושים, באופן כללי, את אותו הדבר — לומדים קשרים בטקסט. עם זאת, הם נבדלים זה מזה במשימה שלשמה אומנו, במידע שהם מביאים בחשבון ובמשימות שהם נועדו לטפל בהן.

מודלים סטטיים של הטמעת מילים

מודלים מסורתיים של הטמעת מילים לומדים ייצוגים מספריים צפופים של מילים על סמך דפוסי השימוש במילים באוספי טקסט גדולים. ההטמעות האלה סטטיות, כלומר כל מילה מקבלת את אותו וקטור, בלי קשר למשמעות שלה בהקשר מסוים.

שתי שיטות מוכרות הן:

  • Word2Vec: פותח על ידי Google ב-2013, ולומד ייצוגים ממילים שכנות באמצעות שתי ארכיטקטורות: Continuous Bag of Words (CBOW), שחוזה מילה מתוך שכנותיה, ו-skip-gram, שחוזה מילים שכנות מתוך מילה נתונה.
  • GloVe (Global Vectors for Word Representation): פותח באוניברסיטת סטנפורד ב-2014, ומשתמש בסטטיסטיקות של הופעה משותפת של מילים כדי ללמוד קשרים בין מילים.

מודלי שפה הקשריים

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

  • BERT (2018, Google): משתמש בקשב עצמי דו-כיווני (bidirectional self-attention) כדי להתחשב במילים משני צדי הטוקן. לדוגמה, הוא מפיק ייצוגים שונים למילה "bank" במשפט "I deposited money at the bank" (הפקדתי כסף בבנק) ובמשפט "I sat on the bank of a river" (ישבתי על גדת הנהר).
  • GPT (2018, OpenAI): משתמש בייצוגים מבוססי טרנספורמר שמביאים בחשבון את הטקסט הקודם תוך כדי חיזוי הטוקן הבא. מודלי GPT מיועדים בעיקר ליצירת שפה.

מודלים להטמעת משפטים ומסמכים

המודלים האלה מייצגים קטעי טקסט ארוכים יותר כווקטורים — ממשפטים בודדים ועד פסקאות ומסמכים שלמים.

  • Doc2Vec: מרחיב את הלמידה בסגנון Word2Vec למשפטים, לפסקאות ולמסמכים. הוא יכול לעזור לקבץ מאמרים קשורים או לסווג מסמכים לפי נושא.
  • Universal Sentence Encoder (USE): פותח על ידי Google ב-2018 כדי ליצור ייצוגים באורך קבוע של משפטים ופסקאות קצרות, לצורכי דמיון סמנטי וסיווג טקסט.
  • Sentence-BERT (SBERT, 2019): פותח על ידי Nils Reimers ו-Iryna Gurevych באוניברסיטה הטכנית של דרמשטאט. הוא מבוסס על מודל BERT של Google ומשמש לרוב לחיפוש סמנטי, לזיהוי פרפרזות ולניתוח אשכולות.
  • pplx-embed-v1 (2026, Perplexity): מודל הטמעת טקסט חדשני שנבנה לאחזור בעולם האמיתי בקנה מידה של האינטרנט. משפחת המודלים הזו משתמשת באימון מקדים מבוסס דיפוזיה כדי להפוך מודל שפה סיבתי למקודד דו-כיווני. היא מפיקה הטמעות צפופות לשאילתות ולמסמכים שמקודדים באופן עצמאי, ומשלבת אימון מודע לקוונטיזציה כדי להפחית את עלויות האחסון. מודל ה-4B INT8 שלנו השיג 69.66 nDCG@10 במבחן הביצועים לאחזור של MTEB הרב-לשוני, לעומת 67.71 של gemini-embedding-001 של Google.
  • pplx-embed-context-v1 (2026, Perplexity): נותן מענה לבעיה נפוצה בחלוקת מסמכים למקטעים: קטעים עלולים לאבד את משמעותם כשהם מופרדים מהטקסט שמסביבם. באמצעות חלוקה מאוחרת למקטעים (late chunking), המודל מעבד את המסמך כולו לפני איגום ייצוגי הטוקנים ההקשריים להטמעות נפרדות של מקטעים. מודל ה-4B שלנו השיג 81.96 nDCG@10 ב-ConTEB, לעומת 79.45 של voyage-context-3.
  • pplx-embed-v2-context (2026, Perplexity): לוקח את האחזור ההקשרי צעד נוסף קדימה. במקום להתאמן רק על מציאת הקטע שמכיל את התשובה, הוא לומד לזהות קטעים תומכים שעוזרים להסביר את התשובה או לאמת אותה. במהלך האימון המודל משתמש באותות רלוונטיות שזוקקו ממודל לדחיסת הקשר, בלי צורך במודל המורה הזה בזמן ההסקה. גרסת התצוגה המקדימה של מודל ה-9B שלנו השיגה שיעור recall של 45.5% לתשובות ושל 40.6% לראיות ב-10 התוצאות הראשונות ב-context-bench.

המודלים של Perplexity מאפשרים גם לאחסן הטמעות בקנה מידה גדול. המודלים מפיקים הטמעות INT8 והטמעות בינאריות, שמפחיתות את דרישות האחסון פי 4 ופי 32, בהתאמה, בהשוואה ל-FP32.

מודל

ממדים

הקשר

MRL

קוונטיזציה

הנחיה

איגום

pplx-embed-v1-0.6B

1024

32K

כן

INT8/בינארי

לא

ממוצע

pplx-embed-v1-4B

2560

32K

כן

INT8/בינארי

לא

ממוצע

pplx-embed-context-v1-0.6B

1024

32K

כן

INT8/בינארי

לא

ממוצע

pplx-embed-context-v1-4B

2560

32K

כן

INT8/בינארי

לא

ממוצע

ממדים, אורך הקשר, קוונטיזציה ותצורת איגום של מודלי pplx-embed

הטמעות צפופות, דלילות ומרובות וקטורים

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

  • הטמעות צפופות: מייצגות טקסט באמצעות וקטורים קומפקטיים שבהם רוב הערכים שונים מאפס.
  • הטמעות דלילות: משתמשות בווקטורים שרוב ערכיהם אפס, עם משקלים נלמדים שמשויכים למונחים חשובים. מודלים כמו SPLADE (2021) לומדים אילו מונחים חשובים לאחזור מסמכים רלוונטיים.
  • הטמעות מרובות וקטורים: שומרות כמה וקטורים לכל קטע טקסט, וכך מאפשרות השוואות מפורטות יותר בין שאילתות למסמכים. מודלים כמו ColBERT (2020) משתמשים בייצוגים האלה להשוואות מפורטות יותר בין שאילתה למסמך.
  • מודלים שמשלבים כמה גישות: BGE-M3 (2024), שפותח על ידי BAAI, תומך באחזור צפוף, דליל ומרובה וקטורים באותו מודל.

איך לבחור ולהעריך מודל הטמעת טקסט

מבחני ביצועים ציבוריים כמו MTEB הם נקודת פתיחה טובה. השתמשו בהם כדי לצמצם את הרשימה לשניים או שלושה מודלים שתומכים בשפות שלכם, באורכי הקלט שלכם ובדרישות הפריסה שלכם. אבל אל תמהרו לבחור מנצח. אי אפשר להפריז בחשיבות של בדיקת המודלים האלה על הנתונים שלכם.

הנה תהליך עבודה מעשי להערכה:

  1. בנו מערך נתונים לבדיקה. אספו 50-100 שאילתות חיפוש מייצגות כמערך הערכה ראשוני (ייתכן שתצטרכו יותר), כולל מקרים מסובכים כמו פרפרזות, מינוח טכני וקודי שגיאה מדויקים. לכל שאילתה, זהו אילו מסמכים או קטעים מכילים תשובות רלוונטיות. תוויות הרלוונטיות האלה יהיו נתוני האמת (ground truth) שלכם.
  2. מדדו את איכות האחזור. בדקו כל מודל מול אותו מערך נתוני הערכה, תוך שמירה על תנאים ברי השוואה להכנת המסמכים ולאחזור, ובמקביל הקפידו על הדרישות הספציפיות של כל מודל בנוגע לעיצוב שאילתות, לנרמול ולחישוב ציוני הדמיון. לאחר מכן חשבו את המדדים הבאים באמצעות InformationRetrievalEvaluator של Sentence Transformers:
    • Recall@k: מציין את שיעור הקטעים הרלוונטיים שמופיעים בין k התוצאות המובילות.
    • MRR: מודד עד כמה גבוה בדירוג מופיעה התוצאה הרלוונטית הראשונה.
    • nDCG@k: מודד את איכות הדירוג של k התוצאות המובילות בהתאם לרלוונטיות שלהן.
  3. ערכו מבחני ביצועים לזמן ההשהיה ולתפוקה. מדדו כמה זמן לוקח לכל מודל ליצור הטמעה של שאילתה, ורצוי לדווח על זמן ההשהיה החציוני (p50) ועל זמן ההשהיה באחוזון ה-95 (p95) תחת עומס מציאותי.
  4. חשבו את עלויות האחסון והתפעול. נפח האחסון של הווקטורים תלוי במספר ההטמעות, במספר הממדים שלהן ובדיוק המספרי. לדוגמה, מיליון הטמעות FP32 בנות 768 ממדים דורשות כ-3.1 GB של אחסון וקטורים גולמי, לא כולל תקורת האינדוקס. כדי להפחית את דרישות האחסון, אפשר לבצע קוונטיזציה של הווקטורים לדיוק מספרי נמוך יותר. מעבר מ-FP32 ל-INT8, למשל, מקטין את נפח האחסון הגולמי של הווקטורים בערך פי 4. עם זאת, דחיסה עלולה לפגוע באיכות האחזור, ולכן הריצו שוב את ההערכות כדי לבחון את הפשרה.

לבסוף, השוו את התוצאות זו לצד זו: מדדי אחזור, זמן השהיה ב-p95, תפוקה, אחסון ועלות. בחרו את המודל שעומד בדרישות האיכות שלכם במסגרת המגבלות של סביבת הייצור.

מתי כדאי להשתמש בהטמעות במקום ב-LLM?

כשמודלי LLM מטפלים בכל דבר, מניתוח מסמכים ועד הנמקה מורכבת, מפתה מאוד להזין למודל את כל הטקסט שלכם ולתת לו להסתדר לבד. אבל סביר להניח שלא תשמחו לשלם על זה.

בנוסף, מודלי LLM טובים יותר בשיפוט ובניסוח, אבל הם מוגבלים בכמות המידע שאפשר להכניס להנחיה אחת. הטמעות, לעומת זאת, זולות, מהירות ועקביות, ופועלות על פני מיליוני פריטים.

„הטמעות מנצחות בחיפוש, בהמלצות (‚עוד כמו זה’), באיתור כפילויות, כמו פניות תמיכה שחוזרות על עצמן, ובקיבוץ כמויות גדולות של תוכן לפי נושא. הן חזקות גם בעבודה רב-לשונית. LLM מנצח כשהמשימה דורשת הנמקה: סיכום, השוואה בין אפשרויות או כתיבת תשובה. רוב המערכות בעולם האמיתי צריכות את שניהם, כשכל אחד עושה את החלק שהוא טוב בו”, מסכם Kumar.

במה מפתחים טועים כשמדובר בהטמעות טקסט

כדי לברר מה מפתחים נוטים לפספס, שוחחתי עם Rahul Kumar ועם Xibeijia Guan, מדענית נתונים ב-Ahrefs. הם הצביעו על שש טעויות שכדאי להיזהר מהן:

  • דילוג על עיבוד מקדים של הטקסט. אם נתוני הקלט כוללים HTML, תפריטי ניווט, מודעות או תוכן לא רלוונטי אחר, שלבי עיבוד מקדים כמו הסרת תוכן תבניתי (boilerplate) יכולים לשפר את איכות ההטמעות באמצעות הסרת מידע מיותר.
  • התעלמות מאורך הקלט המרבי של המודל. לכל מודל יש מגבלות טוקנים והתנהגות קיטוע משלו. טקסט שחורג מהמגבלה עלול להיקטע, וכך מידע חשוב עלול ללכת לאיבוד.
  • אי-עמידה בדרישות הספציפיות של המודל. חלק ממודלי ההטמעה דורשים קידומות מסוימות, כמו query: ו-passage:, או הנחיות שונות למשימות שונות. אי-עמידה בדרישות האלה עלולה לפגוע בביצועי האחזור.
  • שימוש במדד דמיון לא תואם. דמיון קוסינוס ומכפלה סקלרית לא תמיד ניתנים להחלפה זה בזה. בדקו אם ההטמעות מנורמלות, והשתמשו בשיטת חישוב הציון המומלצת עבור המודל ועבור אינדקס הווקטורים.
  • בלבול בין דמיון נושאי לרלוונטיות. באוספים מתחום צר, מסמכים רבים עשויים להיות דומים מבחינה סמנטית בלי לענות על אותה שאלה. בחנו את השאילתות שנכשלו ואת התפלגויות הדירוג. כשהמשתמשים זקוקים למידע מדויק, נסו אחזור לקסיקלי או היברידי, דירוג מחדש (reranking) ומסנני מטא-נתונים.
  • התעלמות מנרמול ההטמעות. מודלי הטמעה שונים עשויים להפיק וקטורים מנורמלים או לא מנורמלים. בדקו אם ההטמעות מנורמלות ואם נדרש נרמול נוסף, בהתאם למדד הדמיון שבו אתם משתמשים.

שאלות נפוצות על הטמעות טקסט

1. איך יוצרים הטמעות טקסט?

הגישה הפשוטה ביותר היא להשתמש במודל הטמעה שאומן מראש. לדוגמה, עם ספריית Sentence Transformers של Python אפשר לטעון מודל כמו all-MiniLM-L6-v2, להעביר את הטקסט שלכם אל model.encode(), ולקבל בחזרה וקטור מספרי. לחלופין, אפשר ליצור הטמעות באמצעות API.

לחיפוש סמנטי או ל-RAG, בדרך כלל מפצלים את המסמכים למקטעים (chunks), יוצרים הטמעה לכל מקטע ושומרים את הווקטורים באינדקס שאפשר לחפש בו.

2. מהם מודלי ההטמעה הטובים ביותר לטקסט?

יש כמה מודלים ששווה לשקול, בהתאם למה שאתם בונים:

  • pplx-embed-v1 של Perplexity: נבנה לאחזור צפוף (dense retrieval) בקנה מידה גדול, עם הטמעות INT8 ובינאריות שמפחיתות את דרישות האחסון של הווקטורים.
  • pplx-embed-context-v1 של Perplexity: שימושי לאחזור קטעים ממסמכים ארוכים, שבהם מקטעים בודדים מאבדים את משמעותם בלי ההקשר הסובב אותם.
  • all-MiniLM-L6-v2: מתאים לחיפוש סמנטי קל ומקומי, לאשכול (clustering) ולמשימות של דמיון בין משפטים. מפיק וקטורים קומפקטיים בני 384 ממדים, אבל קוטע קלטים שאורכם עולה על 256 יחידות מילה (word pieces).
  • BGE-M3: שימושי ל-RAG רב-לשוני ולאחזור היברידי. תומך ביותר מ-100 שפות ומשלב ייצוגים צפופים, דלילים ורב-וקטוריים.
  • Qwen3-Embedding: מועמד חזק לחיפוש רב-לשוני, לאחזור קוד ולהטמעות ייעודיות למשימות. מציע מודלים במשקלים פתוחים בגדלים 0.6B, 4B ו-8B, עם תמיכה בהנחיות.
  • text-embedding-3-large של OpenAI: אפשרות מבוססת API לחיפוש סמנטי ולאחזור מסמכים, כשלא רוצים לארח מודל בעצמכם. תומך בעד 3,072 ממדים, שאפשר לצמצם כדי לחסוך באחסון.
  • מודלי Gemini Embedding של Google: שימושיים לאפליקציות אחזור מנוהלות. Gemini Embedding 2 תומך גם בחיפוש על פני טקסט, תמונות, אודיו, וידאו וקובצי PDF במרחב הטמעה משותף.

3. האם אפשר להשתמש ב-LLM כמודל הטמעה?

כן, אבל יש הבדל בין LLM לשימוש כללי לבין LLM שעבר אופטימיזציה להטמעות. מודלי LLM מפיקים ייצוגים וקטוריים פנימיים של טקסט, שאפשר לחלץ ולאגד (pooling) להטמעה אחת. עם זאת, הווקטורים האלה לא בהכרח שימושיים לחיפוש סמנטי בלי אימון נוסף.

לדוגמה, Qwen3-Embedding מבוסס על עמוד שדרה של LLM שעבר אימון נוסף למשימות הטמעה ואחזור. לכן, אף שאפשר להתאים LLM ליצירת הטמעות, מודל הטמעה ייעודי הוא בדרך כלל נקודת פתיחה מעשית יותר.