GPT
X

xlm-roberta-longformer-base-4096

קוד פתוח

markussagenapache-2.02022-03-02

  • transformers
  • pytorch
  • xlm-roberta
  • fill-mask
  • longformer

הכלי הזה מרחיב את XLM-RoBERTa לעבודה עם מסמכים ארוכים של עד 4,096 טוקנים בריבוי שפות. הוא פותר את מגבלת 512 הטוקנים המקורית למי שצריך עיבוד טקסט רב-לשוני ארוך.

  • 4,098טוקנים בהקשר
  • 1.1 GBמשקל הקבצים
  • 8,584הורדות בחודש
  • 40לייקים

מה זה

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

הבסיס אומן במקור על טקסטים קצרים יחסית, וההרחבה הזו נבנתה לפי פרוטוקול האימון של Longformer כדי להגיע להקשר של 4,098 טוקנים. ההרחבה עצמה אומנה במשך 6,000 איטרציות על קורפוס שנקרא WikiText-103 באנגלית בלבד. התוצאה היא מודל מסוג fill-mask עם 12 שכבות שמסוגל לעבור פיין-טיונינג למשימות מורכבות יותר, כמו מענה על שאלות מתוך טקסטים ארוכים במגוון שפות.

מתאים ל

  • מענה על שאלות מטקסט ארוך

    מאפשר לאמן משימות QA על מסמכים מלאים עד 4,096 טוקנים בלי לחתוך אותם לחלקים קטנים.

  • פיין-טיונינג בשפות מגוונות

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

  • השלמת מילים במסמכים

    ביצוע משימות fill-mask כשמשמעות המילה החסרה תלויה במידע שנמצא פסקאות רבות אחורה.

איפה זה נופל

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

שאלות
נפוצות

האם אפשר להשתמש במודל הזה ישירות כדי לענות על שאלות?

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

האם הוא יעבוד טוב בעברית למרות שאימון ההקשר היה באנגלית?

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

איך מריצים

המודל שוקל 1.1 גיגה-בייט ורץ ישירות דרך ספריית transformers בגרסאות פייתון סטנדרטיות. למרות המשקל הקל של הקבצים, הכרטיס מציין בפירוש שאימון ועיבוד של רצפים באורך מלא דורשים משאבים כבדים. היוצר השתמש במאיץ גרפי של 48GB ואימן במשך חמישה ימים, וממליץ לעבוד עם NVIDIA Apex בדיוק של 16 ביט יחד עם צבירת גרדיאנטים.

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

from transformers import pipeline

pipe = pipeline("fill-mask", model="markussagen/xlm-roberta-longformer-base-4096")
print(pipe("שלום"))

הקבצים

8 קבצים במאגר, 1.1 GB סך הכול. הקישורים מובילים ישירות ל־Hugging Face.

הרישיון

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

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

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