GPT
C

commitpackft

קוד פתוח

bigcodemit2023-06-27

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

  • 51,458הורדות בחודש
  • 113לייקים

מה זה

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

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

מתאים ל

  • אימון מודלים למילוי הוראות

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

  • בניית כלי שכתוב אוטומטי

    אימון מערכות שמקבלות קובץ קיים והנחיה ומחזירות את הקובץ המתוקן.

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

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

איפה זה נופל

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

שאלות
נפוצות

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

המאגר מופץ ברישיון MIT, וכל דגימה הגיעה ממאגר בעל רישיון מתירני כמו MIT, אפאצ'י או BSD. הרישיון המקורי מתועד בכל רשומה, כך שניתן לוודא התאמה לדרישות המוצר.

כמה מקום המאגר תופס בדיסק?

הנפח הכולל של הנתונים עומד על 1545.02 מגה-בייט, שזה כ־2GB לפי תיאור המפרסמים. קל להוריד ולעבד אותו על מחשב פיתוח רגיל.

האם יש במאגר תמיכה או טקסטים בעברית?

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

מה ההבדל בין מאגר זה ל־CommitPack הרגיל?

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

איך טוענים

טוענים את הנתונים ישירות דרך ספריית הדאטהסטים של הגינג פייס לפי המזהה bigcode/commitpackft, ללא צורך באישור גישה מיוחד. נפח האחסון הכולל עומד על 1545.02 מגה-בייט, והקבצים מחולקים לפי שפות בפורמט JSONL דחוס או ישיר. לצורך אימון מודלים להוראות, השדות החשובים ביותר למיפוי הם subject כהנחיה, old_contents כקלט הקוד הבסיסי, ו־new_contents כתוצאה הרצויה.

from datasets import load_dataset

ds = load_dataset("bigcode/commitpackft")

הרישיון

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

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

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