GPT
G

granite-3b-code-base-2k

קוד פתוח

ibm-graniteapache-2.02024-04-23

  • transformers
  • safetensors
  • llama
  • text-generation
  • code

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

  • 3.5Bפרמטרים
  • 2,048טוקנים בהקשר
  • 6.5 GBמשקל הקבצים
  • 40,550הורדות בחודש

מה זה

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

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

מתאים ל

  • השלמת קוד מקומית

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

  • מחקר והשוואה היסטורית

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

  • יצירת בדיקות יחידה קצרות

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

איפה זה נופל

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

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

אותה משפחה

granite-3b-code יצא ב־2 גרסאות שיש להן עמוד כאן. אלה האחרות, לפי כמה מורידים אותן.

שאלות
נפוצות

למה יבמ פרסמו אזהרה נגד שימוש במודל הזה?

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

האם המודל מבין הוראות בצורה של צ'אט?

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

איך מריצים

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

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

from transformers import pipeline

pipe = pipeline("text-generation", model="ibm-granite/granite-3b-code-base-2k")
print(pipe("שלום"))

הרישיון

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

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

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