GPT
O

openai_humaneval

קוד פתוח

openaimit2022-03-02

  • code-generation

openai עומדים גם מאחורי Sora, ויש עליו סקירה כאן.

זהו בנצ'מרק של 164 בעיות תכנות שנכתבו ידנית לבדיקת יכולות כתיבת קוד. הוא מיועד למי שרוצה למדוד מודלי שפה על משימות פיתוח מוגדרות מראש בלי רעש מסביב.

  • 297,449הורדות בחודש
  • 402לייקים

מה זה

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

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

מתאים ל

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

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

  • השוואת ביצועים נקודתית

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

  • בקרת איכות לפני שחרור

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

איפה זה נופל

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

שאלות
נפוצות

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

כן. הרישיון הוא MIT, והוא מתיר שימוש מסחרי מלא ללא הגבלות מיוחדות. הדרישה היחידה היא שמירה על הייחוס והודעת הרישיון המקורית.

כמה המאגר הזה גדול וכמה זמן ייקח להוריד אותו?

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

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

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

האם אפשר להשתמש בו כדי לאמן מודל חדש?

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

איך טוענים

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

from datasets import load_dataset

ds = load_dataset("openai/openai_humaneval")

הרישיון

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

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

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