نظرة عامة

NVIDIA OpenCodeReasoning هو أكبر مجموعة بيانات اصطناعية قائمة على الاستدلال للبرمجة التنافسية حتى الآن. يتكون من 735,255 عينة و28,319 مشكلة فريدة، وهو متخصص في لغة Python ومصمم للـ ضبط الدقيق المُشرف (SFT).

تحتوي هذه المجموعة على استجابات عالية الجودة قائمة على الاستدلال مُولدة بواسطة نماذج R1 وتدمج مشاكل من 10 منصات برمجة تنافسية رئيسية بما في ذلك CodeForces وLeetCode وCodeChef. صدرت تحت ترخيص CC BY 4.0، وهي متاحة مجاناً للاستخدام التجاري وغير التجاري.

حجم مجموعة البيانات والتركيب

الإحصائيات العامة

تحتوي مجموعة البيانات على 735,255 عينة إجمالية من الحلول القائمة على الاستدلال مُولدة بواسطة نماذج R1، 28,319 مشكلة فريدة من منصات البرمجة التنافسية، تدعم لغة Python حصرياً للتطوير المركز، تشمل تقسيمين للبيانات (split_0 وsplit_1)، ومخزنة بتنسيق Parquet الفعال بأحجام ملفات 100K-1M.

توزيع البيانات حسب المنصة

CodeForces يتصدر مع 10,069 مشكلة تولد 386,948 عينة (52.6% من الإجمالي). CodeChef يساهم بـ 3,796 مشكلة مع 72,925 عينة (9.9%). AIZU يوفر 2,123 مشكلة لـ 62,476 عينة (8.5%). HackerEarth يقدم 2,269 مشكلة تنتج 59,181 عينة (8.0%). AtCoder يساهم بـ 2,043 مشكلة مع 47,222 عينة (6.4%). GeeksForGeeks يضيف 2,667 مشكلة لـ 37,602 عينة (5.1%). Codewars يوفر 2,493 مشكلة تولد 34,326 عينة (4.7%). Kattis يساهم بـ 1,187 مشكلة مع 13,095 عينة (1.8%). HackerRank يقدم 895 مشكلة لـ 10,955 عينة (1.5%). LeetCode يوفر 777 مشكلة مع 10,525 عينة (1.4%).

تفاصيل مصادر البيانات

تشمل مجموعة البيانات الأصلية TACO وAPPS وCodeContests وopen-r1/codeforces. تم استبعاد تقسيمات الاختبار من CodeContests وopen-r1/codeforces لمنع تلوث البيانات وضمان الفصل الصارم.

هيكل حقول البيانات

أوصاف الحقول الرئيسية

يشمل هيكل مجموعة البيانات معرفات فريدة لكل مشكلة، ووصف مشاكل البرمجة التنافسية (split_0 فقط)، واستجابات استدلال كاملة من نماذج R1، وأجزاء الكود المستخرجة من استجابات R1، وأسماء مجموعات البيانات الأصلية، وتراخيص مجموعات البيانات، وأسماء تقسيمات مجموعات البيانات الأصلية، وأسماء منصات البرمجة التنافسية، وتسميات صعوبة المشاكل، ومؤشرات البحث في مجموعات بيانات APPS/TACO (split_1 فقط).

هيكل التقسيم

Split_0 يحتوي على 567,850 عينة مع أوصاف مشاكل كاملة مُدرجة، جاهز للاستخدام الفوري، وتطبيق تدريب SFT المباشر. Split_1 يشمل 167,405 عينة مع هيكل قائم على المراجع (input = “-“)، يتطلب تحميلاً منفصلاً من مجموعات بيانات TACO/APPS، ويحسن كفاءة مساحة التخزين.

طرق الاستخدام والتنفيذ

تحميل البيانات الأساسي

يمكن للمستخدمين تحميل Split_0 مع المشاكل الكاملة المُدرجة وSplit_1 مع الهيكل القائم على المراجع باستخدام مكتبة Hugging Face Datasets. تُظهر عملية التحميل عدد العينات لكل تقسيم للتحقق من الوصول الناجح للبيانات.

استعادة محتوى مشاكل Split_1

لاستعادة بيانات Split_1، يحتاج المستخدمون لتحميل مجموعات البيانات المرجعية بما في ذلك TACO وAPPS. تتضمن عملية الاستعادة التكرار عبر بيانات Split_1، والتحقق من أن حقول الإدخال مُعلمة كـ “-“، وتأكيد أن مصادر مجموعات البيانات إما “taco” أو “apps”، واسترجاع محتوى المشكلة الأصلي من مجموعات البيانات المرجعية باستخدام المؤشرات المقدمة، وإنشاء عناصر مُستعادة مع أوصاف مشاكل كاملة.

تحليل البيانات حسب المنصة

تشمل قدرات التحليل جمع إحصائيات المنصة، وتتبع توزيعات الصعوبة، وحساب إجمالي العينات لكل منصة، وإنشاء تقارير شاملة تُظهر مساهمات المنصة وتوزيعات الصعوبة.

توليد الاستدلال القائم على نموذج R1

خصائص جودة الاستدلال

استدلال نموذج R1 يتميز بعمليات تفكير صريحة خطوة بخطوة، وتحليل مفصل للمشاكل واستراتيجيات الحل، وعمليات تنفيذ الكود الشاملة والتحقق، واعتبار الحالات الحدية ونهج التحسين.

هيكل استجابة الاستدلال

الاستجابة النموذجية المُولدة بواسطة R1 تشمل تحليل المشكلة الذي يشرح التحدي الأساسي والخوارزميات القابلة للتطبيق، استراتيجية الحل التي تحدد النهج خطوة بخطوة ومعايير القرار، تنفيذ الكود مع شروحات مفصلة وتحليل التعقيد، والتحقق من حالات الاختبار الذي يُظهر الصحة مع أمثلة المدخلات والمخرجات.

جودة البيانات والخصائص

عملية إدارة الجودة

التحقق من البيانات الأصلية يضمن التحقق من المشاكل من 10 منصات رئيسية، وإزالة المشاكل المكررة وتطبيعها، وتوازن توزيعات الصعوبة. جودة توليد نموذج R1 تتضمن التحقق من الاتساق المنطقي، وتأكيد قابلية تنفيذ الكود، وتقييم وضوح عملية الاستدلال. توافق الترخيص يشمل التحقق من الترخيص الخاص بكل منصة، ومراجعة جدوى الاستخدام التجاري، وتحديد شروط إعادة التوزيع.

تحليل توزيع الصعوبة

تتضمن عملية التحليل جمع إحصائيات الصعوبة عبر جميع العينات، وتصنيف المشاكل حسب مستويات الصعوبة، وحساب توزيعات النسب المئوية، وإنشاء تقارير صعوبة شاملة تُظهر التمثيل المتوازن لمجموعة البيانات عبر مستويات تعقيد مختلفة.

التطبيقات وحالات الاستخدام

تدريب نموذج SFT

لتطبيقات الضبط الدقيق المُشرف، تمكن مجموعة البيانات من التحويل إلى تنسيقات المطالبة المعيارية، والحفاظ على البيانات الوصفية بما في ذلك معلومات المصدر والصعوبة، وإعداد عينات التدريب المحسنة لتعلم النموذج.

تقييم نموذج توليد الكود

تشمل قدرات التقييم فحص الصحة النحوية من خلال تحليل AST، والتحقق من وجود الدالة الرئيسية، وتقييم معالجة الإدخال، وتقييم جودة التعليقات، وحساب مقاييس الجودة الشاملة عبر مجموعات عينات تمثيلية.

سلسلة نماذج OpenCodeReasoning

النماذج المُدربة مسبقاً

أصدرت NVIDIA عدة نماذج قائمة على هذه المجموعة. OpenCodeReasoning-Nemotron-7B يقدم أداء نموذج متوسط الحجم فعال، بينما OpenCodeReasoning-Nemotron-32B يوفر قدرات نموذج كبير بأعلى أداء.

النماذج المُدربة من المجتمع

تم تدريب أكثر من 218 نموذج مشتق باستخدام هذه المجموعة، بما في ذلك المتغيرات الشائعة مثل SVECTOR-CORPORATION/Spec-Coder-4b-V1 مع 11.3 ألف تحميل، Mungert/OpenCodeReasoning-Nemotron-32B-IOI-GGUF الذي يقدم إصدارات GGUF مُكممة، وertghiu256/qwen3-4b-code-reasoning الذي يوفر ضبط دقيق قائم على Qwen.

التفاصيل التقنية

خط أنابيب معالجة البيانات

يشمل خط الأنابيب الشامل تحميل المشاكل الخام من جميع المنصات العشر، وتوليد الحلول باستخدام نماذج R1 مع استدلال مفصل، وتصفية الجودة من خلال عمليات التحقق، والتصدير الفعال إلى تنسيق Parquet مع ضغط Snappy.

تنسيق التخزين والتحسين

تستخدم مجموعة البيانات تنسيق Parquet مع ضغط Snappy، مخطط متوافق مع Apache Arrow، حوالي تقليل الحجم بنسبة 60-70% من خلال الضغط، والتخزين العمودي للاستعلام السريع للأداء.

الترخيص وشروط الاستخدام

ترخيص CC BY 4.0

يسمح الترخيص بـ الاستخدام التجاري مع الاستخدام التجاري المجاني، التعديل الذي يسمح بتغييرات البيانات والمعالجة، التوزيع الذي يمكن إعادة توزيع النسخ الأصلية والمعدلة، والاستخدام الخاص للتطبيقات الشخصية والتنظيمية الداخلية. تشمل المتطلبات النسبة لمطوري NVIDIA، إشعار الترخيص الذي يعرض ترخيص CC BY 4.0، والإشارة للتغيير عند إجراء التعديلات.

اعتبارات ترخيص مجموعات البيانات الفردية

يجب على المستخدمين التحقق من تراخيص مجموعات البيانات الأصلية، حيث قد تحتوي كل مجموعة بيانات مصدر على شروط ترخيص مختلفة تحتاج للاحترام إلى جانب ترخيص CC BY 4.0 لمجموعة البيانات المعالجة.

قياس الأداء

مقاييس التقييم

يشمل التقييم صحة الكود من خلال معدلات اجتياز حالات الاختبار، جودة الاستدلال عبر تقييم الاتساق المنطقي، كفاءة التنفيذ مع اعتبار تحسين التعقيد الزمني والمكاني، والقابلية للقراءة تقييم أسلوب الكود وجودة التعليقات.

إطار نتائج المعايير

يدعم إطار التقييم تقييم الصحة من خلال تنفيذ الكود ومقارنة النتائج، وتقييم جودة الاستدلال باستخدام معايير التحليل المنظم، والقياس الشامل للأداء عبر أبعاد متعددة، والتقارير المفصلة مع رؤى قابلة للتنفيذ.

اتجاهات التطوير المستقبلية

خطط توسيع مجموعة البيانات

يشمل التوسع المستقبلي الدعم متعدد اللغات إضافة Java وC++ وJavaScript بالإضافة إلى Python، التحديثات في الوقت الفعلي دمج مشاكل البرمجة التنافسية الجديدة، وأنظمة المساهمة المجتمعية تمكين تحسين مجموعة البيانات التعاوني.

تحسين أداء النموذج

تركز التحسينات على نماذج توليد أكثر قوة تطبق نماذج خلف R1، نماذج توليد كود متخصصة تستخدم هندسات خاصة بالمجال، تكامل تعلم التغذية الراجعة البشرية لجودة محسنة، أنظمة التحقق الآلي من الكود، آليات فحص اتساق الاستدلال، وأنظمة المراجعة المجتمعية لضمان الجودة.

الخلاصة

NVIDIA OpenCodeReasoning يمثل أكبر مجموعة بيانات اصطناعية قائمة على الاستدلال في البرمجة التنافسية مع 735,255 عينة و28,319 مشكلة فريدة تغطي 10 منصات رئيسية. الاستدلال عالي الجودة القائم على نماذج R1 ومنهجية جمع البيانات المنظمة تؤسس هذه المجموعة كمعيار جديد لتطوير الذكاء الاصطناعي لتوليد الكود.

متاحة تحت ترخيص CC BY 4.0 للاستخدام المجاني عبر التطبيقات التعليمية والبحثية والتجارية، تُظهر القيمة العملية والجودة لمجموعة البيانات من خلال أكثر من 218 نموذج مشتق والاستخدام المجتمعي النشط. التحسينات المستقبلية بما في ذلك الدعم متعدد اللغات والتحديثات في الوقت الفعلي متوقعة لتطوير الذكاء الاصطناعي للاستدلال البرمجي أكثر.

معلومات الاستشهاد

@article{ahmad2025opencodereasoning,
      title={OpenCodeReasoning: Advancing Data Distillation for Competitive Coding}, 
      author={Wasi Uddin Ahmad, Sean Narenthiran, Somshubra Majumdar, Aleksander Ficek, Siddhartha Jain, Jocelyn Huang, Vahid Noroozi, Boris Ginsburg},
      year={2025},
      eprint={2504.01943},
      archivePrefix={arXiv},
      primaryClass={cs.CL},
      url={https://arxiv.org/abs/2504.01943}, 
}

المراجع