GPT
M

m2m100_418M

קוד פתוח

facebookmit2022-03-02

  • transformers
  • pytorch
  • rust
  • m2m_100
  • text2text-generation

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

  • 1,024טוקנים בהקשר
  • 3.6 GBמשקל הקבצים
  • 418,187הורדות בחודש
  • 349לייקים

מה זה

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

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

מתאים ל

  • תרגום טקסט מקומי

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

  • תרגום ישיר ללא אנגלית

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

  • עיבוד תכנים מהיר בסקריפטים

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

איפה זה נופל

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

אותה משפחה

m2m100 יצא ב־2 גרסאות שיש להן עמוד כאן. אלה האחרות, לפי כמה מורידים אותן.

שאלות
נפוצות

איך קובעים לאיזו שפה המודל יתרגם?

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

האם צריך חומרה ייעודית כדי להריץ אותו?

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

איך מריצים

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

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

from transformers import pipeline

pipe = pipeline("text-generation", model="facebook/m2m100_418M")
print(pipe("שלום"))

הרישיון

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

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

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