GPT
S

sbert-jsnli-luke-japanese-base-lite

קוד פתוח

oshizoapache-2.02023-01-10

  • sentence-transformers
  • pytorch
  • luke
  • feature-extraction
  • sentence-similarity

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

  • 514טוקנים בהקשר
  • 509 MBמשקל הקבצים
  • 2,180הורדות בחודש
  • 36לייקים

מה זה

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

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

מתאים ל

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

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

  • קלאסטרינג של משפטים

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

  • זיהוי כפילויות טקסט

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

איפה זה נופל

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

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

שאלות
נפוצות

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

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

האם הוא דורש שרת עם GPU כדי לעבוד בפרודקשן?

ממש לא. המודל שוקל 509 מגה-בייט בלבד, ולכן הוא רץ מהר מאוד גם על גבי מעבד רגיל (CPU) בשרת צנוע.

איך מריצים

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

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

from sentence_transformers import SentenceTransformer

m = SentenceTransformer("oshizo/sbert-jsnli-luke-japanese-base-lite")
v = m.encode(["שלום עולם"])

הרישיון

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

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

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