GPT
M

Mini-InternVL-Chat-2B-V1-5

קוד פתוח

OpenGVLabmit2024-05-13

  • transformers
  • safetensors
  • internvl_chat
  • feature-extraction
  • internvl

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

  • 2.2Bפרמטרים
  • 4.1 GBמשקל הקבצים
  • 7,759הורדות בחודש
  • 74לייקים

מה זה

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

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

מתאים ל

  • חילוץ נתונים מטפסים וקבלות

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

  • בוט תיאור תמונות מקומי

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

  • עיבוד מקדים של מדיה באדג'

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

איפה זה נופל

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

שאלות
נפוצות

איזה כרטיס מסך צריך בשביל להריץ אותו?

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

אפשר לתת לו להשוות בין שתי תמונות שונות?

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

איך מריצים

אתם יכולים להריץ אותו ישירות עם ספריית transformers או דרך כלי פריסה כמו LMDeploy. הקבצים שוקלים קצת יותר מארבעה גיגהבייט בדיוק bfloat16, כך שכרטיס מסך ישן כמו GTX 1080 Ti או כל מעבד גרפי מודרני עם שמונה גיגה זיכרון יספיק לחלוטין. אם המשאבים מוגבלים עוד יותר, אפשר לטעון אותו בכימות של שמונה או ארבעה ביט דרך bitsandbytes.

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

from transformers import pipeline

pipe = pipeline("image-text-to-text", model="OpenGVLab/Mini-InternVL-Chat-2B-V1-5")
print(pipe("שלום"))

הרישיון

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

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

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