GPT
L

Llama-3.1-Minitron-4B-Width-Base

קוד פתוח

nvidiaother2024-08-13

  • transformers
  • nemo
  • safetensors
  • llama
  • text-generation

nvidia עומדים גם מאחורי NVIDIA AI, ויש עליו סקירה כאן.

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

  • 4.5Bפרמטרים
  • 131,072טוקנים בהקשר
  • 16.8 GBמשקל הקבצים
  • 1,870הורדות בחודש

מה זה

מדובר במודל בסיס שנוצר על ידי חיתוך שכבות ה־MLP וגודל ההטמעה של Llama 3.1 8B המקורי, ולאחר מכן אומן מחדש בעזרת זיקוק על 94 מיליארד טוקנים. הרעיון כאן הוא לקבל את היכולות של מודל גדול יותר בגודל של 4.5 מיליארד פרמטרים, מבלי לאמן מודל חדש לגמרי מאפס.

במבחני הביצועים הוא מציג ציון של 60.5 ב־MMLU וציון של 41.2 ב־GSM8K. המספרים האלה מראים שמדובר במודל בסיס סביר לגודלו בידע כללי ובהיגיון בסיסי, אבל היכולות שלו במתמטיקה מורכבת או בכתיבת קוד, שם קיבל ציון 32 ב־MBPP, נמוכות מאוד. ללא כוונון נוסף, הוא לא יספק פתרונות תכנות או לוגיקה ברמה גבוהה.

מתאים ל

  • בסיס לכוונון ייעודי

    נקודת מוצא זולה לאימון מודל מותאם אישית למשימה מוגדרת באנגלית, בזכות גודל קומפקטי וזיקוק מ־8B.

  • השלמת טקסט מקומית

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

  • סיווג וניתוח טקסטים

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

איפה זה נופל

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

שאלות
נפוצות

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

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

איך המודל מתמודד עם עברית?

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

מה המשמעות של חיתוך רוחב במודל הזה?

אנבידיה הקטינה את גודל השכבות והווקטורים של מודל ה־8B במקום למחוק שכבות שלמות. השיטה הזו שומרת על עומק הרשת ומאפשרת למזער את הפגיעה בביצועים תוך כדי ירידה לנפח של 4.5 מיליארד פרמטרים.

איך מריצים

כדי להריץ אותו ב־bfloat16 דרוש כרטיס מסך עם לפחות 16 עד 24 גיגה זיכרון גרפי, כמו כרטיסים מארכיטקטורת Ampere, Lovelace, Hopper או Blackwell של אנבידיה. הקבצים עצמם שוקלים 16.8 גיגה, כך שכרטיס של 16 גיגה ייחנק ללא קוונטיזציה, במיוחד אם מנצלים את ההקשר הארוך. אנבידיה בדקה אותו על A100 עם מנוע TensorRT-LLM או NeMo, והוא עובד היטב גם עם ספריית transformers בהתקנה מהמקור.

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

from transformers import pipeline

pipe = pipeline("text-generation", model="nvidia/Llama-3.1-Minitron-4B-Width-Base")
print(pipe("שלום"))

הרישיון

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

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