GPT
S

starcoder2-15b-instruct-v0.1

קוד פתוח

bigcodebigcode-openrail-m2024-04-23

  • transformers
  • safetensors
  • starcoder2
  • text-generation
  • code

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

  • 16Bפרמטרים
  • 16,384טוקנים בהקשר
  • 29.7 GBמשקל הקבצים
  • 2,356הורדות בחודש

מה זה

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

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

מתאים ל

  • מחולל פונקציות בפייתון

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

  • פיתוח עם דרישות רישוי נקי

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

  • השלמת קוד מבוססת הקשר רחב

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

איפה זה נופל

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

אותה משפחה

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

שאלות
נפוצות

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

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

איך גורמים לו להחזיר רק קוד בלי הסברים מסביב?

הוא מתקשה לעקוב אחרי הוראות עימוד ופורמט. הדרך היעילה ביותר היא להשתמש בשיטת response prefix ולהתחיל את התשובה עבורו, או לספק דוגמה בודדת בפרומפט.

איך מריצים

המשקל הכולל של הקבצים מגיע לכמעט שלושים ג'יגה בייט בדיוק של bfloat16. כדי לטעון אותו כמו שהוא ולהריץ משימות עם הקשר רחב, תצטרכו כרטיס מסך רציני עם לפחות 40 עד 80 ג'יגה זיכרון גרפי, בדומה לכרטיס ה־A100 שבו השתמשו לאימון.

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

from transformers import pipeline

pipe = pipeline("text-generation", model="bigcode/starcoder2-15b-instruct-v0.1")
print(pipe("שלום"))

הרישיון

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

  • שימוש מסחרי
  • שינוי הקוד
  • מגבלות שימוש ברישיון

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