GPT
M

mamba-2.8b-hf

קוד פתוח

state-spacesרישיון לא דווח2024-03-05

  • transformers
  • safetensors
  • mamba
  • text-generation
  • text-generation-inference

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

  • 2.8Bפרמטרים
  • 10.3 GBמשקל הקבצים
  • 14,981הורדות בחודש
  • 123לייקים

מה זה

מדובר במודל ליצירת טקסט שמבוסס על ארכיטקטורת MambaForCausalLM עם 64 שכבות וקצת יותר מ־2.76 מיליארד פרמטרים. השוני המרכזי כאן מול מודלים רגילים בגודל הזה הוא המבנה הבסיסי, שמסתמך על מודלי State Space במקום על מנגנון ה־Attention הרגיל של טרנספורמרים. המשקלים שמורים במקור ברמת דיוק של float32, מה שמנפח את הקבצים לכ־10.3 גיגה-בייט.

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

מתאים ל

  • מחקר ארכיטקטורות SSM

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

  • אימון PEFT על חומרה מקומית

    ביצוע fine-tuning ממוקד בדיוק float32 באמצעות הכלים הנתמכים בספריית peft.

  • יצירת טקסט קל משקל

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

איפה זה נופל

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

אותה משפחה

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

שאלות
נפוצות

האם אפשר פשוט לטעון אותו עם AutoModelForCausalLM כרגיל?

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

כמה זיכרון דרוש כדי לאמן אותו עם PEFT?

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

איך מריצים

כדי להריץ אותו דרך Hugging Face נדרשת גרסת transformers מתאימה, יחד עם התקנה של הספריות causal-conv1d ו־mamba-ssm כדי להפעיל קרנלים ממוטבים של CUDA. אם לא מתקינים אותן, הקוד ישתמש במימוש ברירת מחדל אטי יותר. המודל שוקל 10.3 גיגה-בייט בגלל שהוא שמור ב־float32, לכן תצטרכו כרטיס מסך עם מספיק זיכרון VRAM כדי להחזיק אותו במצב כזה, במיוחד אם אתם מתכננים אימון נוסף.

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

from transformers import pipeline

pipe = pipeline("text-generation", model="state-spaces/mamba-2.8b-hf")
print(pipe("שלום"))

הרישיון

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

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