GPT
S

snowflake-arctic-embed-xs

קוד פתוח

Snowflakeרישיון לא דווח2024-04-12

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

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

  • 23Mפרמטרים
  • 512טוקנים בהקשר
  • 386 MBמשקל הקבצים
  • 392,410הורדות בחודש

מה זה

מדובר בארכיטקטורת BertModel רזה עם 6 שכבות בלבד וכ־23 מיליון פרמטרים, מה שהופך אותו לאחד ממודלי הווקטורים הקלים בשוק. המטרה שלו פשוטה: לייצר ייצוג וקטורי לטקסטים קצרים לצורכי אחזור וחיפוש סמנטי, כשהוא נשען על ספריית sentence-transformers ותומך גם בריצה בדפדפן או בסביבות קצה בעזרת transformers.js.

תוצאות המדידה שלו בבנצ'מרק MTEB מציגות פערים חדים לפי סוג המשימה. בסיווג כוונות בנקאיות ב־Banking77 הוא מגיע לדיוק של 76.37337662337663, ובמשימת דמיון סמנטי ב־BIOSSES משיג מתאם פירסון של 85.47489332445278. מנגד, באחזור נתונים מורכבים כמו CQADupstack-mathematica, הציון ב־ndcg_at_10 צונח ל־28.288999999999998, ובסיווג ביקורות אמזון הוא עומד על 35.343999999999994 בלבד. הוא עובד מצוין בדמיון ישיר בין שאלות, אבל מתקשה כשנדרשת הסקת מסקנות עמוקה.

מתאים ל

  • סינון שאלות כפולות

    במדד AskUbuntuDupQuestions הוא מגיע לציון mrr של 73.79776194873148 ומספק התאמה מהירה בין שאלות משתמשים.

  • אחזור מהיר בפורומים

    המודל מגיע ל־recall_at_100 של 86.23100000000001 בפורומי גיימינג, ומתאים לחיפוש ראשוני בסביבה דלת משאבים.

  • סיווג שיחות שירות

    עם דיוק של 76.37337662337663 ב־Banking77, הוא מספיק לזיהוי כוונות בסיסיות של לקוחות בזמן אמת.

איפה זה נופל

המגבלה המרכזית היא חלון הקשר קצר של 512 טוקנים, מה שפוסל אותו מראש לטיפול במסמכים ארוכים או חוזים. בנוסף, 6 שכבות לא מחזיקות מספיק יכולת הפשטה, וזה ניכר בבנצ'מרקים קשים: ב־ArxivClusteringS2S מדד ה־v_measure מגיע ל־32.08725826118282 בלבד, וב־BigPatentClustering הוא יורד ל־21.31174373264835. לא הייתי בונה עליו לניתוח טקסט טכני מפותל, ואין בכרטיס שום עדות ליכולות בעברית.

שאלות
נפוצות

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

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

האם חייבים GPU כדי להשתמש בו בייצור?

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

איך מריצים

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

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

from sentence_transformers import SentenceTransformer

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

הרישיון

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

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