GPT
M

Muennighoff/mbpp

קוד פתוח

Muennighoffcc-by-4.02022-07-18

  • code-generation

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

  • 7,440הורדות בחודש
  • 29לייקים

מה זה

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

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

מתאים ל

  • הערכת מודלי שפה לקוד

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

  • בנצ'מרק השוואתי

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

  • אימות קוד בסביבה מבודדת

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

איפה זה נופל

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

שאלות
נפוצות

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

כן, רישיון cc-by-4.0 מתיר שימוש מסחרי מלא. הדרישה העיקרית היא מתן קרדיט וייחוס מתאים לחוקרים מגוגל שפרסמו את הדאטהסט.

האם יש במאגר משימות בעברית?

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

איזו תצורה עדיף להריץ, המלאה או המנוקה?

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

איך המאגר נאסף במקור?

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

איך טוענים

טוענים את הנתונים ישירות דרך ספריית datasets בלי צורך באישור גישה או מפתח מיוחד. אפשר למשוך את הגרסה הרגילה או להעביר sanitized בתור פרמטר כדי לקבל את הסט המנוקה. הקבצים קטנים מאוד ונשמרים בפורמטים jsonl ו־json, כך שהטעינה לוקחת שניות בודדות. השדות המרכזיים שצריך לעבוד איתם בהרצה הם prompt להזנה למודל, ו־test_list כדי להריץ את הבדיקות על הקוד שנפלט.

from datasets import load_dataset

ds = load_dataset("Muennighoff/mbpp")

הרישיון

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

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

הרישיון המלא ב־Hugging Face ↗