GPT
J

Jamba-v0.1

קוד פתוח

ai21labsapache-2.02024-03-28

  • transformers
  • safetensors
  • jamba
  • text-generation
  • mamba

ארכיטקטורה היברידית של Mamba יחד עם Transformer שמאפשרת חלון של 256K טוקנים. מודל בסיס עם 12B פרמטרים פעילים מתוך 52B בסך הכול בזכות MoE.

  • 52Bפרמטרים
  • 262,144טוקנים בהקשר
  • 96.1 GBמשקל הקבצים
  • 11,075הורדות בחודש

מה זה

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

במבחנים הכלליים הוא מציג תוצאות טובות לגודלו עם 87.1% ב־HellaSwag ו־67.4% ב־MMLU, אבל רואים ירידה באזורים מורכבים יותר כמו BBH שבו הוא נעצר על 45.4%, ו־TruthfulQA עם 46.4%. זה אומר שהוא יעיל מאוד בהשלמת טקסט ובידע כללי, אך היכולת שלו להתמודד עם הנמקה מורכבת מוגבלת ביחס למודלים ייעודיים.

מתאים ל

  • אימון מודל הוראות פנימי

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

  • עיבוד מסמכים ארוכים

    תמיכה מובנית ב־256K טוקנים שמתאימה לסריקה והשלמה של קבצי ענק.

  • מחקר ארכיטקטורות היברידיות

    מימוש ראשון בקנה מידה גדול של שילוב Mamba ו־MoE שמאפשר לבדוק ביצועי SSM בפועל.

איפה זה נופל

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

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

שאלות
נפוצות

האם אפשר להשתמש בו ישירות כצ'אטבוט?

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

האם אני חייב כרטיס של 80GB כדי לבדוק אותו?

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

למה חשוב להגדיר את הטוקן של תחילת משפט?

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

איך מריצים

כדי להריץ אותו ב־BF16 מלא תצטרכו לחלק אותו על פני כמה מעבדים גרפיים, כי משקל הקבצים לבדו הוא 96.1 גיגה בייט. אם דוחסים ל־8 ביט בעזרת bitsandbytes ומחריגים את שכבות ה־Mamba מהכימות, אפשר לדחוף עד 140 אלף טוקנים לתוך כרטיס בודד של 80GB RAM.

ההרצה דורשת סביבת CUDA והתקנה של ספריות ייעודיות כמו mamba-ssm ו־causal-conv1d כדי לקבל ביצועים סבירים, לצד transformers בגרסה 4.40.0 ומעלה. אם אין לכם חומרה ייעודית של שרתים עם כרטיסי A100 או H100, עדיף לפנות לגרסאות ה־API או לבדוק את הגרסאות המעודכנות יותר שהוציאו בהמשך.

from transformers import pipeline

pipe = pipeline("text-generation", model="ai21labs/Jamba-v0.1")
print(pipe("שלום"))

הרישיון

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

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

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