GPT
G

gtr-t5-large

קוד פתוח

sentence-transformersapache-2.02022-03-02

  • sentence-transformers
  • pytorch
  • safetensors
  • t5
  • feature-extraction

המודל ממיר משפטים ופסקאות לווקטורים צפופים של 768 ממדים ומיועד לחיפוש סמנטי. הוא מבוסס על האנקודר של T5-large בגרסת PyTorch ומספק דיוק גבוה למי שמחפש שליפה חזקה באנגלית.

  • 335Mפרמטרים
  • 512טוקנים בהקשר
  • 1.3 GBמשקל הקבצים
  • 55,391הורדות בחודש

מה זה

מדובר בהסבה ל־PyTorch של המודל gtr-large-1 המקורי מבית גוגל, שמבוססת רק על רכיב האנקודר של ארכיטקטורת T5. הוא מאומן במיוחד לשמש כ־Dual Encoder לצורכי שליפת מידע וחיפוש סמנטי, כפי שתואר במאמר Large Dual Encoders Are Generalizable Retrievers. המודל מייצר וקטורים באורך 768, שמייצגים פסקאות ומשפטים שלמים לצורך השוואת דמיון.

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

מתאים ל

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

    הוא אומן בדיוק עבור שליפת מידע מבוססת משמעות וממיר פסקאות לווקטורים של 768 ממדים.

  • שלב שליפה ראשוני ב־RAG

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

  • מדידת דמיון בין משפטים

    מתאים להשוואת שאילתות למאגר קיים בזכות ארכיטקטורת Dual Encoder ייעודית.

איפה זה נופל

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

שאלות
נפוצות

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

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

האם יש הבדל בין גרסת ה־PyTorch הזו לגרסת ה־TensorFlow המקורית?

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

איך מריצים

ההרצה פשוטה מאוד באמצעות ספריית sentence-transformers מגרסה 2.2.0 ומעלה, עם קריאה ישירה של שתי שורות קוד ב־Python. המשקלים שמורים בדיוק float16 ותופסים כ־1.3 גיגה-בייט דיסק, כך שכרטיס מסך בסיסי עם 4 עד 6 גיגה-בייט VRAM יספיק לטעינה ולהסקה מהירה, וגם מעבד רגיל יתמודד איתו בלי בעיה מיוחדת.

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

from sentence_transformers import SentenceTransformer

m = SentenceTransformer("sentence-transformers/gtr-t5-large")
v = m.encode(["שלום עולם"])

הרישיון

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

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

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