GPT
O

OlympicCoder-7B

קוד פתוח

open-r1apache-2.02025-03-11

  • transformers
  • safetensors
  • qwen2
  • text-generation
  • conversational

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

  • 7.6Bפרמטרים
  • 32,768טוקנים בהקשר
  • 14.2 GBמשקל הקבצים
  • 431הורדות בחודש

מה זה

מדובר במודל שמתבסס על Qwen2.5-Coder-7B-Instruct ועבר אימון ייעודי על פתרונות שרשרת מחשבה של DeepSeek-R1 מתוך מאגר בעיות של Codeforces. המטרה כאן היא לא עוד השלמת קוד שגרתית בתוך סביבת הפיתוח, אלא התמודדות עם אתגרים אלגוריתמיים כבדים מהסוג שרואים באולימפיאדת מדעי המחשב הבינלאומית.

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

מתאים ל

  • אימון לתחרויות תכנות

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

  • פתרון בעיות אלגוריתמיות

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

  • מחקר על שרשראות חשיבה

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

איפה זה נופל

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

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

אותה משפחה

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

שאלות
נפוצות

האם המודל הזה מתאים לכתיבת קוד בפייתון?

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

למה הפלט מתחיל ישירות בלי תגית הפתיחה של החשיבה?

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

איך מריצים

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

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

from transformers import pipeline

pipe = pipeline("text-generation", model="open-r1/OlympicCoder-7B")
print(pipe("שלום"))

הרישיון

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

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

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