GPT
M

m3e-small

קוד פתוח

moka-aiרישיון לא דווח2023-06-02

  • sentence-transformers
  • pytorch
  • bert
  • embedding
  • text-embedding

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

  • 512טוקנים בהקשר
  • 91.9 MBמשקל הקבצים
  • 63,646הורדות בחודש
  • 57לייקים

מה זה

המודל הזה נבנה על בסיס ארכיטקטורת RoBERTa עם 4 שכבות וגודל של 24 מיליון פרמטרים, כשהוא פולט וקטורים בגודל 512 ממדים. הוא אומן על יותר מ־22 מיליון זוגות משפטים בסינית מתחומים מגוונים כמו רפואה, פיננסים ומשפטים, באמצעות למידת ניגודיות.

במבחני סיווג טקסט בסינית הוא השיג דיוק ממוצע של 0.5834 על פני שישה מאגרי נתונים, תוצאה שעוברת את text2vec באותו מבחן אך נמוכה מגרסת הבסיס שלו. במשימות אחזור מסמכים מסוג sentence to passage הוא מגיע ל־0.7262 במדד ndcg@10 על מדגם של עשרת אלפים מאמרים, אבל הטבלה הרשמית מגדירה אותו כמתאים בעיקר להשוואת משפט מול משפט ולא לאחזור מורכב.

מתאים ל

  • זיהוי כפילויות בסינית

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

  • סיווג טקסטים מהיר

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

  • מיקרו־שירות מקומי

    הרצה מקומית בתוך קונטיינר עם צריכת זיכרון מינימלית שלא מצריכה חומרת GPU יקרה.

איפה זה נופל

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

שאלות
נפוצות

האם המודל תומך בטקסטים בעברית או באנגלית?

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

האם אפשר להשתמש במודל הזה בתוך מוצר מסחרי?

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

מה ההבדל המרכזי בינו לבין m3e-base?

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

איך מריצים

טוענים אותו ישירות דרך ספריית sentence-transformers בפייתון עם שם המודל, ומריצים את פונקציית הקידוד. בזכות משקל של כ־92 מגה בייט ודיוק float32, הוא רץ בלי שום בעיה על מעבד מרכזי רגיל בלפטוף ולא דורש כרטיס מסך ייעודי.

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

from sentence_transformers import SentenceTransformer

m = SentenceTransformer("moka-ai/m3e-small")
v = m.encode(["שלום עולם"])

הרישיון

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

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