GPT
W

WizardCoder-15B-V1.0

קוד פתוח

WizardLMTeambigscience-openrail-m2023-06-14

  • transformers
  • pytorch
  • gpt_bigcode
  • text-generation
  • code

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

  • 8,192טוקנים בהקשר
  • 28.9 GBמשקל הקבצים
  • 587הורדות בחודש
  • 762לייקים

מה זה

המודל נשען על בסיס StarCoder 15B ועבר כוונון ייעודי באמצעות שיטה בשם Evol-Instruct, שלוקחת פקודות תכנות והופכת אותן למורכבות ומגוונות יותר לאורך 78 אלף דוגמאות אימון. המטרה כאן הייתה לגרום למודל קוד להבין הוראות מילוליות ישירות ולא רק להשלים שורות כמו מודלי בסיס רגילים.

במדד HumanEval המודל הציג תוצאה של 57.3 אחוז בהערכה מבוססת מדגם, או 59.8 בבדיקה עם פענוח חמדן, וציון 51.8 ב־MBPP. התוצאות האלה הציבו אותו מעל גרסאות פתוחות מקבילות של אותה תקופה, ואף מעל כלים סגורים כמו Claude-Plus הישן באותו מבחן. בפועל, זה אומר שהוא מצליח לכתוב פונקציות שלמות שעוברות בדיקות יחידה בסיסיות ביותר ממחצית מהמקרים, אם כי המרחק ממודלים מודרניים עדיין מורגש.

מתאים ל

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

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

  • שרת פיתוח פנימי בארגון

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

  • תרגום קוד בין שפות

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

איפה זה נופל

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

אותה משפחה

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

שאלות
נפוצות

האם המודל מבין וכותב קוד בעברית?

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

מה הפורמט שצריך להעביר לו כדי לקבל קוד תקין?

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

איך מריצים

כדי להריץ את קובצי המשקלים המקוריים בדיוק float16, תצטרכו כרטיס מסך עם לפחות 32 גיגה זיכרון גרפי, כמו A100 או זוג כרטיסי 24 גיגה. המודל שוקל קרוב ל־29 גיגה, כך שעל כרטיס ביתי פשוט של 16 או 24 גיגה הוא לא ייכנס בלי קוונטיזציה מוקדמת ל־8 או 4 ביט דרך הספריות המתאימות.

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

from transformers import pipeline

pipe = pipeline("text-generation", model="WizardLMTeam/WizardCoder-15B-V1.0")
print(pipe("שלום"))

הרישיון

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

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