GPT
M

ModernBERT-large

קוד פתוח

answerdotaiapache-2.02024-12-11

  • transformers
  • pytorch
  • onnx
  • safetensors
  • modernbert

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

  • 396Mפרמטרים
  • 8,192טוקנים בהקשר
  • 7.3 GBמשקל הקבצים
  • 1,447,756הורדות בחודש

מה זה

מדובר באנקודר של כמעט 400 מיליון פרמטרים שמחזיר לחיים את עולם ה־BERT, רק עם ארכיטקטורה עדכנית שכוללת RoPE ו־Flash Attention. הוא אומן מראש על שני טריליון טוקנים של אנגלית וקוד, במטרה לשמש בסיס למשימות חיפוש, שליפה וסיווג.

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

מתאים ל

  • חיפוש סמנטי במסמכים ארוכים

    חלון של 8,192 טוקנים מאפשר לקרוא מסמכים שלמים ברצף בלי לחתוך פסקאות.

  • אינדוקס ושליפת קוד מקור

    אימון כבד על קוד נותן לו דיוק גבוה במיוחד במבחני CodeSearchNet ו־StackQA.

  • מנוע דירוג רב-וקטורי

    הארכיטקטורה מותאמת להרצת ColBERT ומציגה תוצאות חזקות על מבחני BEIR.

איפה זה נופל

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

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

שאלות
נפוצות

האם המודל מתאים לייצור טקסט או לשיחה כמו צ׳אט?

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

האם אפשר להשתמש בו לחיפוש מסמכים בעברית?

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

האם חייבים להגדיר token_type_ids כמו ב־BERT המקורי?

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

איך מריצים

כדי להריץ אותו צריך transformers מגרסה 4.48.0 ומעלה, ומומלץ מאוד להתקין Flash Attention 2 אם כרטיס המסך תומך בזה. הקבצים שוקלים 7.3 גיגהבייט בדיוק float32, כך שבפועל כרטיס מסך מודרני עם 12 או 16 גיגהבייט זיכרון יחזיק אותו בלי בעיה לצורכי הסקת מסקנות.

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

from transformers import pipeline

pipe = pipeline("fill-mask", model="answerdotai/ModernBERT-large")
print(pipe("שלום"))

הרישיון

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

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

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