GPT
S

snowflake-arctic-embed-l

קוד פתוח

Snowflakeapache-2.02024-04-12

  • sentence-transformers
  • onnx
  • safetensors
  • bert
  • feature-extraction

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

  • 334Mפרמטרים
  • 512טוקנים בהקשר
  • 4.6 GBמשקל הקבצים
  • 281,402הורדות בחודש

מה זה

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

במבחני ביצועים הוא מציג תוצאות מעורבות שתלויות מאוד בתחום. במשימות דמיון סמנטי ממוקד כמו BIOSSES הוא מגיע למתאם פירסון של 87.4, ובשליפת נתונים מ־ArguAna הוא משיג Recall של 87.3 בעשירייה הראשונה. לעומת זאת, בסיווג ביקורות מרובות ב־Amazon הוא צונח לדיוק של 36.7 בלבד. המשמעות היא שהחוזק שלו הוא בהשוואת משפטים ואחזור, ולא בסיווג רב־מחלקתי של טקסטים מורכבים.

מתאים ל

  • שליפת מידע במערכות RAG

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

  • איתור שאלות כפולות

    המודל מגיע ל־MRR של 75 במאגר שאלות טכניות, ולכן הוא יעיל בזיהוי כפילויות בפורומים.

  • השוואת דמיון סמנטי

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

איפה זה נופל

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

אותה משפחה

snowflake-arctic-embed-l יצא ב־2 גרסאות שיש להן עמוד כאן. אלה האחרות, לפי כמה מורידים אותן.

שאלות
נפוצות

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

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

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

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

איך מריצים

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

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

from sentence_transformers import SentenceTransformer

m = SentenceTransformer("Snowflake/snowflake-arctic-embed-l")
v = m.encode(["שלום עולם"])

הרישיון

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

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

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