GPT
P

py-dpo-v0.1

קוד פתוח

jondurbincc-by-4.02024-01-09

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

  • 225הורדות בחודש
  • 56לייקים

מה זה

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

התשובות הפחות טובות הופקו ישירות באמצעות שני מודלים שונים, airoboros l2 13b 3.1 ודגם bagel 7b v0.1. הסינון שבוצע כלל בעיקר הסרה של רשומות שבהן היו בלוקים כפולים של קוד בין החלקים השונים. היוצר מציין במפורש שהקוד שסומן כדחוי עשוי להיות תקין לחלוטין בפועל, אך נקודת ההנחה בעבודה הייתה שהוא פשוט ברמה נמוכה יותר מהקוד הנבחר שנבדק לעומק.

מתאים ל

  • אימון DPO לפייתון

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

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

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

  • טיוב סגנון תכנות

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

איפה זה נופל

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

שאלות
נפוצות

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

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

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

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

כיצד נוצרו התשובות הפחות טובות ברשומות?

היוצר השתמש בשילוב של המודלים airoboros l2 13b 3.1 ו־bagel 7b v0.1 כדי לייצר את הפלטים הדחויים. לאחר מכן הוסרו מקרים שבהם היו בלוקים כפולים של קוד מול התשובה הטובה. היוצר מדגיש כי הקוד שנוצר אינו בהכרח שגוי.

מה מקור התשובות שנחשבות לטובות יותר?

התשובות המועדפות נלקחו ישירות ממאגר קיים בשם Tested 22k Python Alpaca. היתרון הגדול שם הוא שכל קוד עבר בדיקות והרצה מראש. זה מבטיח שהתשובה הנבחרת מייצגת פתרון שעובד בפועל.

איך טוענים

טוענים את הנתונים ישירות דרך ספריית datasets באמצעות הנתיב jondurbin/py-dpo-v0.1 ללא צורך באישור גישה מיוחד. המאגר מכיל קובץ נתונים ראשי בפורמט parquet שנקרא py-dpo.parquet, ואין כאן משקל כבד או חלוקות מורכבות שמצריכות משאבי אחסון מיוחדים. השדות העיקריים שמעניינים אתכם במהלך העבודה הם הפרומפט, הקוד המועדף שנבדק, והקוד שנוצר על ידי המודלים וסומן כפחות מוצלח עבור שלב הטיוב.

from datasets import load_dataset

ds = load_dataset("jondurbin/py-dpo-v0.1")

הרישיון

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

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

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