GPT
I

internlm-xcomposer2d5-7b

קוד פתוח

internlmother2024-07-02

  • transformers
  • pytorch
  • internlm2
  • feature-extraction
  • visual-question-answering

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

  • 24,576טוקנים בהקשר
  • 20.7 GBמשקל הקבצים
  • 333הורדות בחודש
  • 210לייקים

מה זה

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

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

מתאים ל

  • המרה של עיצובים לקוד

    יצירת דפי Tailwind מתוך צילומי מסך בעזרת הפונקציה המובנית screen_2_webpage ישירות מקובץ תמונה.

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

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

  • המרת קורות חיים לאתרים

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

איפה זה נופל

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

שאלות
נפוצות

האם הוא מסוגל לקרוא ולנתח עברית מתוך תמונות ומסמכים?

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

אפשר להריץ אותו ישירות על מחשב נייד חזק?

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

איך מריצים

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

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

from transformers import pipeline

pipe = pipeline("visual-question-answering", model="internlm/internlm-xcomposer2d5-7b")
print(pipe("שלום"))

הרישיון

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

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