GPT
I

InternVL2_5-38B

קוד פתוח

OpenGVLabmit2024-11-20

  • transformers
  • tensorboard
  • safetensors
  • internvl_chat
  • feature-extraction

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

  • 38Bפרמטרים
  • 71.5 GBמשקל הקבצים
  • 1,746הורדות בחודש
  • 49לייקים

מה זה

הארכיטקטורה מורכבת משני חלקים עיקריים: מודל הראייה InternViT-6B שמחלק תמונות למשבצות ברזולוציה דינמית, ומודל השפה Qwen2.5-32B-Instruct שמקבל את המידע דרך שכבת קישור ומעבד את התשובה. השילוב הזה יודע לקבל תמונה בודדת ברזולוציה גבוהה, רצף תמונות בהשוואה, וגם וידאו שמפורק לפריימים נפרדים.

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

מתאים ל

  • פענוח מסמכים ותרשימים

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

  • השוואה בין תמונות

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

  • ניתוח רצפי וידאו קצרים

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

איפה זה נופל

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

אותה משפחה

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

שאלות
נפוצות

אפשר להריץ את המודל על כרטיס RTX 4090 בודד?

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

למה לבחור דווקא בגרסת ה־38B ולא בגרסאות הקטנות יותר של הסדרה?

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

איך מריצים

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

הקוד דורש את transformers בגרסה 4.37.2 ומעלה, עם הפעלת trust_remote_code וחלוקה ידנית של השכבות בין המעבדים הגרפיים כדי למנוע שגיאות זיכרון. אם אין לכם שרת ייעודי כזה פנוי בענן, עדיף בהרבה לפנות לפתרונות API מנוהלים.

from transformers import pipeline

pipe = pipeline("image-text-to-text", model="OpenGVLab/InternVL2_5-38B")
print(pipe("שלום"))

הרישיון

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

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

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