GPT
O

open_llama_7b_v2

קוד פתוח

openlm-researchapache-2.02023-07-06

  • transformers
  • pytorch
  • llama
  • text-generation
  • text-generation-inference

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

  • 2,048טוקנים בהקשר
  • 12.6 GBמשקל הקבצים
  • 1,247הורדות בחודש
  • 122לייקים

מה זה

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

במבחני הביצועים מול המקור ומול GPT-J, גרסת שבעה מיליארד הפרמטרים מציגה ממוצע כולל של 0.56 לעומת 0.55 של המקור באותו הגודל. במשימות מסוימות כמו arc_easy_norm הוא מגיע ל־0.70 לעומת 0.52 של המקור, אך ברוב המבחנים כמו boolq או winogrande ההבדלים קטנים מאוד ומסתכמים באחוזים בודדים. בפועל מקבלים יכולת הסקת מסקנות ויצירת טקסט שמתקרבת מאוד למקור בלי התלות המשפטית בו.

מתאים ל

  • אימון מודל קוד פרטי

    דאטהסט האימון כולל את StarCoder, מה שמספק בסיס טוב לכוונון משימות תכנות.

  • מוצרים מסחריים סגורים

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

  • השלמת טקסט בארגונים

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

איפה זה נופל

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

אותה משפחה

open-llama יצא ב־5 גרסאות שיש להן עמוד כאן. אלה האחרות, לפי כמה מורידים אותן.

שאלות
נפוצות

האם המודל מוכן לעבודה בצ'אט ישר מהקופסה?

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

למה הפלט יוצא שגוי או מקולקל בספריית transformers?

הבעיה נובעת בדרך כלל משימוש בטוקנייזר המהיר של Hugging Face שגורם להמרות לא נכונות. חובה להגדיר שימוש בטוקנייזר הרגיל עם use_fast=False כדי לקבל תוצאה מדויקת.

איך מריצים

המשקלים שוקלים 12.6 גיגה בייט בפורמט float16, ומחולקים לעשרה קבצים שדורשים סביבת עבודה עם ספריית transformers או מסגרת EasyLM. כדי להריץ אותו בלי תקיעות צריך כרטיס מסך עם לפחות 16 גיגה בייט של VRAM עבור הסקה בסיסית, או להשתמש ב־EasyLM מעל שבבי TPU אם המטרה היא אימון המשך.

נקודה קריטית בזמן הטעינה היא עקיפת הטוקנייזר המהיר של Hugging Face. המפתחים מבהירים במפורש שחובה להגדיר use_fast=False או להשתמש ישירות במחלקת LlamaTokenizer, כי המרה אוטומטית מייצרת טוקניזציה שגויה שפוגעת בפלט. אם אין לכם חומרה ייעודית מקומית עם זיכרון מתאים, עדיף לפנות לשרת מנוהל מאשר לנסות להריץ אותו על מעבד רגיל.

from transformers import pipeline

pipe = pipeline("text-generation", model="openlm-research/open_llama_7b_v2")
print(pipe("שלום"))

הרישיון

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

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

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