GPT
N

nomic-bert-2048

קוד פתוח

nomic-aiapache-2.02024-01-04

  • transformers
  • pytorch
  • safetensors
  • nomic_bert
  • fill-mask

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

  • 137Mפרמטרים
  • 2,048טוקנים בהקשר
  • 1.0 GBמשקל הקבצים
  • 1,596הורדות בחודש

מה זה

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

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

מתאים ל

  • סיווג מסמכים ארוכים

    קריאת מאמרים ודוחות מלאים עד 2,048 טוקנים ברצף אחד ללא צורך לחתוך פסקאות.

  • אימון אנקודר ייעודי

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

  • השלמת מילים בטקסט

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

איפה זה נופל

הנתונים מראים נפילה ברורה במשימת CoLA, שם המודל קיבל ציון של 0.50 לעומת 0.64 ב־RobertaBase, מה שמעיד על הבנה חלשה יותר של תחביר בלשני מורכב. בנוסף, הוא אומן אך ורק על אנגלית מתוך ויקיפדיה ו־BookCorpus, ולכן הוא חסר תועלת לחלוטין לטקסטים בעברית. חיסרון טכני נוסף הוא הצורך להריץ קוד חיצוני בהגדרת המודל, מה שדורש אישור הרצה ועלול לעורר בעיות אבטחה בארגונים סגורים.

שאלות
נפוצות

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

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

מדוע חובה להגדיר trust_remote_code=True בטעינה?

הארכיטקטורה כוללת התאמות קוד ספציפיות כמו SwiGLU ושכבות מיקום שאינן חלק מליבת ספריית transformers הרגילה. הגדרה זו מאפשרת לספרייה להוריד ולהריץ את קובץ המודל הישיר שנכתב על ידי nomic-ai.

איך מריצים

הרצת המודל מתבצעת דרך ספריית transformers הרגילה של פייתון, אך מחייבת להגדיר trust_remote_code כ־True בקונפיגורציה בגלל המבנה הפנימי המותאם. הטוקנייזר עצמו הוא bert-base-uncased הסטנדרטי לחלוטין. המשקל הכולל של הקבצים עומד על ג'יגה-בייט אחד בלבד, כך שאין שום בעיה להריץ אותו ישירות על מעבד מקומי או מעבד גרפי פשוט וזול.

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

from transformers import pipeline

pipe = pipeline("fill-mask", model="nomic-ai/nomic-bert-2048")
print(pipe("שלום"))

הרישיון

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

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

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