GPT
M

multilingual-e5-base

קוד פתוח

intfloatmit2023-05-19

  • sentence-transformers
  • pytorch
  • onnx
  • safetensors
  • openvino

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

  • 278Mפרמטרים
  • 514טוקנים בהקשר
  • 5.0 GBמשקל הקבצים
  • 6,897,165הורדות בחודש

מה זה

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

במבחני ביצועים של MTEB רואים פערים חדים בין משימות שונות. בסיווג פולאריות באמזון הוא מגיע לדיוק של 90.63%, ובכריית טקסט מקביל (Bitext Mining) מגרמנית לאנגלית הוא מציג דיוק מרשים של 99.23%. לעומת זאת, בסיווג ביקורות מורכב יותר לפי שפות (AmazonReviews) הדיוק צונח לאזור ה־37% עד 44%, מה שממחיש שהוא מבריק בזיהוי הקשר סמנטי ישיר אבל מתקשה בניתוח עדין ומרובה דרגות.

מתאים ל

  • חיפוש סמנטי רב לשוני

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

  • סיווג טקסטים בינארי

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

  • איחזור קטעים קצרים

    השוואת שאלות דומות וקטעי מידע עד 514 טוקנים במערכות שאלות ותשובות פנימיות.

איפה זה נופל

חלון ההקשר מוגבל ל־514 טוקנים בלבד. אי אפשר לזרוק עליו מסמכים ארוכים, חוזים או מאמרים שלמים בלי לחתוך אותם לחתיכות קודם. בנוסף, רשימת השפות המפורטת שלו מכילה שפות כמו ar ו־bg אך אינה מציינת תמיכה מפורשת בעברית, ולכן חובה לבדוק איכות ידנית לפני שסומכים עליו עם טקסטים בעברית. גם משימות אחזור מורכבות (Retrieval) בבנצ'מרק CQADupstack הציגו בחלק מהמקרים תוצאות MAP נמוכות, למשל 15.89 במתמטיקה.

שאלות
נפוצות

האם אפשר להשתמש בו לחיפוש על מסמכים ארוכים?

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

האם הוא דורש שרת עם מעבד גרפי יקר?

ממש לא. 278 מיליון פרמטרים זה מודל קל למדי, וכרטיס מסך בסיסי עם 6GB VRAM יספיק לביצועים מעולים בזמן אמת.

איך מריצים

טוענים אותו ישירות דרך ספריית sentence-transformers בפייתון. הוא שוקל 5 גיגה בייט בקבצי ההפצה ומריץ חישובים בדיוק של float32. עם 278 מיליון פרמטרים, כל כרטיס מסך ביתי מודרני ממוצע עם 6 עד 8 גיגה זיכרון מריץ אותו במהירות, ואפילו מעבד מרכזי חזק יספיק לצווארי בקבוק קטנים.

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

from sentence_transformers import SentenceTransformer

m = SentenceTransformer("intfloat/multilingual-e5-base")
v = m.encode(["שלום עולם"])

הרישיון

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

  • שימוש מסחרי
  • שינוי הקוד
  • הפצה מחדש

הרישיון המלא בעמוד המודל ↗