GPT
P

paraphrase-MiniLM-L6-v2

קוד פתוח

sentence-transformersapache-2.02022-03-02

  • sentence-transformers
  • pytorch
  • tf
  • onnx
  • safetensors

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

  • 23Mפרמטרים
  • 512טוקנים בהקשר
  • 845 MBמשקל הקבצים
  • 2,035,823הורדות בחודש

מה זה

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

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

מתאים ל

  • חיפוש סמנטי מקומי

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

  • זיהוי כפילויות

    השוואת כותרות או שאלות משתמשים כדי לאתר ניסוחים מקבילים באותו נושא.

  • חלוקה לקבוצות

    קיבוץ אוטומטי של פניות קצרות ומשובים לפי קרבה סמנטית ברמת המשפט.

איפה זה נופל

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

שאלות
נפוצות

האם המודל הזה מתאים לשימוש בעברית?

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

כמה זיכרון דרוש כדי להריץ אותו בשרת?

הקבצים שוקלים 845 מגה-בייט והמודל מכיל כ־23 מיליון פרמטרים. המשמעות היא שבזמן ריצה הוא תופס פחות מג'יגה-בייט אחד של זיכרון עבודה. אפשר להעלות אותו לצד תהליכים אחרים גם על השרת הכי קטן בענן.

איך מריצים

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

בזכות 23 מיליון פרמטרים ומשקל קבצים של 845 מגה-בייט, אין שום צורך במאיץ גרפי ייעודי. מעבד רגיל של שרת זול או מחשב פיתוח מריץ אותו בקלות ובאלפי דגימות בשנייה. לפנות ל־API חיצוני בשביל מודל כזה זו בדרך כלל טעות, כי זמני הרשת יהיו איטיים פי כמה מזמן החישוב המקומי.

from sentence_transformers import SentenceTransformer

m = SentenceTransformer("sentence-transformers/paraphrase-MiniLM-L6-v2")
v = m.encode(["שלום עולם"])

הרישיון

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

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

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