GPT
M

Molmo-7B-D-0924

קוד פתוח

allenaiapache-2.02024-09-25

  • transformers
  • safetensors
  • molmo
  • text-generation
  • multimodal

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

  • 8Bפרמטרים
  • 4,096טוקנים בהקשר
  • 29.9 GBמשקל הקבצים
  • 32,503הורדות בחודש

מה זה

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

לפי מבחני הביצועים של החוקרים ב־11 מדדים שונים, הוא משיג ציון ממוצע של 77.3 ומדד העדפת אנושית של 1056. בפועל, המספרים האלה מציבים אותו מעל מודלים כמו GPT-4V ו־Claude 3.5 Sonnet בחלק מהבדיקות, ומעל כמעט כל מודל פתוח אחר בסדר הגודל שלו, כולל גרסאות של שבעים מיליארד פרמטרים.

מתאים ל

  • חילוץ מידע מתרשימים

    הוא השיג ציונים גבוהים במבחני ChartQA ומסוגל להבין גרפים ונתונים מספריים מתמונות.

  • מענה חזותי למוצרי קוד פתוח

    הוא מציע ביצועים שקרובים למודלים קנייניים בלי תלות בשרתים של חברות צד שלישי.

  • ספירה וזיהוי אובייקטים

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

איפה זה נופל

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

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

שאלות
נפוצות

האם המודל תומך בעברית?

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

למה התמונות שלי נכשלות בעיבוד?

המודל דורש תמונות במבנה RGB סטנדרטי ואינו מתמודד טוב עם שקיפות. חובה להמיר תמונות PNG עם ערוץ אלפא לפורמט RGB ולהוסיף רקע בהיר או כהה לפני השליחה.

איך אפשר לחסוך בזיכרון בזמן ההרצה?

המשקלים יורדים בפורמט float32, אבל אפשר להמיר אותם ל־bfloat16 בקוד או להשתמש ב־autocast של PyTorch. זה חותך את דרישות הזיכרון כמעט בחצי, אם כי זה עשוי להשפיע במעט על התוצאות.

איך מריצים

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

אפשר להריץ אותו דרך transformers או לשלב בתוך vLLM עד גרסה 0.7.2 בגלל באג פתוח בעיבוד המקדים. אם אין לכם כרטיס מסך מודרני עם לפחות 16 עד 24 גיגה בייט זיכרון פנוי, עדיף להשתמש בדמו הרשת או בפתרון ענן מנוהל במקום להסתבך עם קריסות מקומיות.

from transformers import pipeline

pipe = pipeline("image-text-to-text", model="allenai/Molmo-7B-D-0924")
print(pipe("שלום"))

הרישיון

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

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

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