GPT
B

bart-large-mnli

קוד פתוח

facebookmit2022-03-02

  • transformers
  • pytorch
  • jax
  • rust
  • safetensors

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

  • 407Mפרמטרים
  • 1,024טוקנים בהקשר
  • 6.5 GBמשקל הקבצים
  • 3,261,054הורדות בחודש

מה זה

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

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

מתאים ל

  • סיווג פניות באנגלית

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

  • תיוג תוכן דינמי

    שיוך מאמרים וקטעי חדשות לקטגוריות משתנות ישירות בזמן אמת.

  • ניתוח סנטימנט מהיר

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

איפה זה נופל

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

שאלות
נפוצות

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

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

כמה תגיות אפשר לבדוק בבת אחת?

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

איך מריצים

ההרצה נעשית ישירות דרך ספריית transformers בפייתון באמצעות ה־pipeline הייעודי ל־zero-shot-classification, או בטעינה ידנית של המודל והטוקנייזר לתוך PyTorch. הקבצים שוקלים 6.5 גיגה-בייט, כך שכרטיס מסך בסיסי עם 8 עד 12 גיגה-בייט זיכרון יריץ אותו בלי מאמץ, ואפשר לדחוף אותו גם על מעבד רגיל אם לא לחוצים על זמני תגובה של אלפיות שניה.

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

from transformers import pipeline

pipe = pipeline("zero-shot-classification", model="facebook/bart-large-mnli")
print(pipe("שלום"))

הרישיון

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

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

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