GPT
H

halong_embedding

קוד פתוח

contextboxaiapache-2.02024-07-06

  • sentence-transformers
  • safetensors
  • xlm-roberta
  • sentence-similarity
  • feature-extraction

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

  • 278Mפרמטרים
  • 514טוקנים בהקשר
  • 1.1 GBמשקל הקבצים
  • 2,931הורדות בחודש

מה זה

מדובר בהתאמה של multilingual-e5-base שנבנתה לאחזור מידע ומערכות RAG. המפתח אימן אותו על מאגר פנימי של כ־100,000 זוגות של שאלות ומסמכים קשורים, תוך שימוש ב־Matryoshka loss. השיטה הזו מאפשרת לחתוך את הווקטור מ־768 ממדים לממדים נמוכים יותר כמו 512, 256 או אפילו 128, כדי להאיץ חישובי דמיון קוסינוס ולצמצם את נפח מסד הנתונים.

בבדיקה מול מאגר המשפטי של Zalo בווייטנאמית, המודל הגיע לתוצאת NDCG@10 של 0.8976 ב־768 ממדים, ועקף את vietnamese-bi-encoder שעמד על 0.8882. גם כשחותכים את הווקטור בחצי ל־512 ממדים, הציון נשאר 0.8917, שזה כמעט אותו דיוק בחצי מכמות המשאבים. רק בחיתוך אגרסיבי ל־64 ממדים הביצועים צונחים ל־0.8145.

מתאים ל

  • חיפוש סמנטי בווייטנאמית

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

  • אחזור מידע ל־RAG חסכוני

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

  • סיווג וקיבוץ טקסטים

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

איפה זה נופל

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

שאלות
נפוצות

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

לא, המודל הזה כוונן ונבדק על וייטנאמית ואנגלית בלבד. עדיף לקחת מודל רב-לשוני כללי כמו המקור שלו, e5, או מודל שנועד מראש לעברית.

מה היתרון של חיתוך הווקטורים במודל הזה?

בזכות אימון ה־Matryoshka אפשר לשמור רק 256 ממדים במקום 768. זה מקצץ את שטח האחסון ב־vector database לשליש ומאיץ את החיפוש עם ירידה זניחה בלבד בדיוק.

איזה חומרה מינימלית צריך בשביל להריץ אותו בשרת?

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

איך מריצים

המודל שוקל 1.1 גיגהבייט ורץ ישירות דרך ספריית sentence-transformers הרגילה בפייתון. עם 278 מיליון פרמטרים בדיוק float32, אפשר להריץ אותו בלי בעיה על מעבד מודרני בכל שרת סטנדרטי, וכרטיס מסך בסיסי עם 2 או 4 גיגה זיכרון יספיק למהירויות גבוהות.

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

from sentence_transformers import SentenceTransformer

m = SentenceTransformer("contextboxai/halong_embedding")
v = m.encode(["שלום עולם"])

הרישיון

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

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

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