وكيل CUDA يدرب نماذج اللغات الكبيرة على كتابة نوى GPU بسرعة تفوق torch.compile

أطلق فريق Seed من ByteDance بالتعاون مع معهد أبحاث الذكاء الاصطناعي بجامعة تسينغهوا (AIR) نظام CUDA Agent، وهو نظام واسع النطاق لتعلّم التعزيز الذكي يهدف إلى تعليم نماذج اللغة توليد نوى CUDA عالية الأداء.

发布于 2026年8月18日generalGEO 评分: 01 次阅读
وكيل CUDA يدرب نماذج اللغات الكبيرة على كتابة نوى GPU بسرعة تفوق torch.compile

وكيل CUDA يُدرّب نماذج اللغة الكبيرة على كتابة نوى GPU أسرع من torch.compile

مقدمة

أطلق فريق Seed من ByteDance بالتعاون مع معهد أبحاث الذكاء الاصطناعي بجامعة تسينغهوا (AIR) نظام CUDA Agent، وهو نظام واسع النطاق لتعلّم التعزيز الذكي يهدف إلى تعليم نماذج اللغة توليد نوى CUDA عالية الأداء.

يستهدف هذا العمل نقطة ضعف طويلة الأمد في توليد الشيفرات منخفضة المستوى بواسطة الذكاء الاصطناعي. غالبًا ما تستطيع نماذج اللغة الرائدة توليد شيفرات CUDA قابلة للترجمة وتعمل بشكل صحيح، لكن بالنسبة لأحمال عمل GPU على مستوى الإنتاج، فإن مجرد الصحة لا يكفي. يجب أن تنافس النوى المُولَّدة أيضًا عمليات التنفيذ المُولَّدة بواسطة المترجمات عالية التحسين.

صُمم CUDA Agent حول هذه المشكلة الثانية تحديدًا: ليس فقط توليد شيفرات CUDA صالحة، بل تعلّم كيفية تحليل الأداء والتحقق من النوى وتحسينها بشكل تكراري حتى تحقيق تحسينات ملموسة في زمن التشغيل.

لماذا لا يكفي توليد شيفرات CUDA صحيحة فقط

قبل إدخال تعلّم التعزيز الذكي، أظهر النموذج الأساسي Seed1.6 قدرة قوية جدًا على كتابة شيفرات CUDA على KernelBench.

من بين 250 مهمة من مستويات KernelBench 1-3 التي استخدمها الباحثون، حقق Seed1.6 معدل نجاح قدره 74.0%. بعبارة أخرى، يمكنه توليد حلول صحيحة وظيفيًا لمعظم مهام المعيار الأساسي.

لكن الأداء كان مسألة أخرى تمامًا.

من بين النوى التي ولّدها النموذج الأساسي، كانت نسبة 27.2% فقط أسرع من torch.compile، بينما بلغت سرعته الهندسية المتوسطة مقارنة بخط الأساس للمترجم 0.69× فقط.

النموذج معدل النجاح أسرع من torch.compile السرعة الهندسية المتوسطة مقارنة بـ torch.compile
النموذج الأساسي Seed1.6 74.0% 27.2% 0.69×
CUDA Agent 98.8% 96.8% 2.11×

تسلط هذه الفجوة الضوء على التحدي الرئيسي في توليد نوى GPU تلقائيًا.

يمكن لنماذج اللغة فهم بناء جملة CUDA، لكنها قد تنتج مع ذلك وصولات ذاكرة غير فعّالة، وإطلاق نوى مفرطًا، واختيارات سيئة للتقسيم الكتلي، ومزامنات غير ضرورية.

تحليل الأداء

  • إرشادات تحسين خاصة بـ CUDA
  • بيئة رملية مقيدة
  • إشارات مكافأة مرتبطة بنتائج التنفيذ الفعلية

كما يحدّ ملف SKILL.md من الاختصارات التي قد تشوّه نتائج المعيار. على سبيل المثال، لا يمكن للوكيل ببساطة العودة إلى عمليات PyTorch التعسفية داخل تنفيذ النواة المخصصة.

هذا مهم لأن أنظمة تعلّم التعزيز قد تجد طرقًا لتعظيم المكافأة دون حل مشكلة التحسين المقصودة.

تدريب PPO يوسّع الوكيل إلى مسارات تحسين طويلة

استخدم الباحثون تعلّم السياسة القريب (PPO) لتدريب CUDA Agent.

يتمثل أحد التحديات الرئيسية في أن تحسين GPU هو بطبيعته مهمة طويلة الأمد. قد يحتاج النموذج إلى المرور بعدة جولات من تعديل الشيفرة والترجمة والتصحيح وتحليل الأداء وزيادة التحسين للوصول إلى النتيجة المرغوبة.

لذلك، اعتمدت الورقة أطوال سياق مختلفة ومراحل تدريب لتحقيق استقرار التعلّم.

النموذج الأساسي هو Seed1.6، وهو نموذج خليط من الخبراء، يمتلك 230 مليار معامل إجمالي و23 مليار معامل نشط.

بالنسبة لتعلّم التعزيز الذكي:

  • نافذة السياق هي 131,072 رمزًا.
  • تسمح إعادة تشغيل التدريب بحد أقصى 150 جولة تفاعل للوكيل.
  • يسمح التقييم بحد أقصى 200 جولة تفاعل للوكيل.
  • يُدرَّب النموذج لمدة 150 خطوة تعلّم تعزيز.
  • تعتمد نماذج الممثل والناقد استراتيجية تهيئة متعددة المراحل قبل التحسين الكامل طويل الأمد.

هذا أكثر تعقيدًا من مجرد ضبط نموذج على زوج من مطالبات وإجابات CUDA.

الهدف هو تعليم النموذج كيفية تحسين نواته الخاصة من خلال التفاعل المتكرر مع ملاحظات التنفيذ.

البيئة الرملية تفصل الترجمة عن تحليل GPU

يُعد قياس الأداء الموثوق أمرًا بالغ الأهمية لأن سرعة التشغيل جزء من المكافأة.

لذلك، بنى الباحثون بنية بيئة رملية تفصل موارد CPU عن GPU.

تتعامل البيئة الرملية الطرفية المعتمدة على Docker مع المهام الموجهة نحو CPU (مثل الترجمة)، بينما يُرسل التحقق وتحليل الأداء إلى مجموعة بيئات رملية مخصصة لـ GPU تضم 128 بطاقة NVIDIA H20.

لهذا الفصل غرض مزدوج.

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

هذا مهم لتعلّم التعزيز: إذا تأثرت قياسات التوقيت بالضوضاء، سيتلقى النموذج إشارات مكافأة غير موثوقة وقد يتعلّم سلوكيات تحسين خاطئة.

CUDA Agent يحقق معدل نجاح 98.8% ويتفوق على المترجم في 96.8% من المهام

تم تقييم النظام النهائي على 250 مهمة من مستويات KernelBench 1 إلى 3.

حقق CUDA Agent:

  • معدل نجاح إجمالي قدره 98.8%
  • أسرع بنسبة 98.4% من التنفيذ الفوري لـ PyTorch
  • أسرع بنسبة 96.8% من torch.compile
  • تسريع هندسي متوسط قدره 2.60× مقارنة بالتنفيذ الفوري
  • تسريع هندسي متوسط قدره 2.11× مقارنة بـ torch.compile

تمثل هذه النتائج قفزة كبيرة مقارنة بنقطة البداية Seed1.6.

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

النتائج حسب صعوبة KernelBench

تحافظ التحسينات على قوتها عبر مستويات الصعوبة الثلاثة في KernelBench.

صعوبة KernelBench معدل النجاح النسبة الأسرع من torch.compile التسارع الهندسي المتوسط مقارنة بـ torch.compile
المستوى 1 100.0% 97.0% 1.87×
المستوى 2 100.0% 100.0% 2.80×
المستوى 3 94.0% 90.0% 1.52×

يبرز أداء المستوى 2 بشكل خاص.

تتضمن هذه المهام تسلسلات عوامل تشغيل حيث تكون فرص التحسين الناتجة عن الدمج ونقل الذاكرة أكبر مما قد تستفيد منه استراتيجيات المترجم الساكن الاستدلالية بشكل فعّال.

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

بيانات التدريب ستُتاح قريبًا للعموم

حاليًا، لا تتضمن أوزان نموذج التدريب الكاملة في الإصدار العلني للمشروع.

ومع ذلك، نشر الباحثون عدة مكونات مهمة من مجموعة التدريب.

مجموعة بيانات CUDA-Agent-Ops-6K

تحتوي مجموعة بيانات CUDA-Agent-Ops-6K على 6,000 مهمة تدريب اصطناعية على مستوى العوامل.

تتضمن عملية بنائها:

  1. جمع عوامل تشغيل أولية من مكتبات مثل torch وtransformers.
  2. استخدام LLM لدمج عدة عوامل في مهام دمج أكثر تعقيدًا.
  3. تصفية المهام المُولَّدة عبر فحوصات مبنية على نتائج التنفيذ.

تزيل مرحلة التصفية الحالات ذات العشوائية أو البسيطة جدًا أو غير الصالحة أو المشابهة جدًا لمهام التقييم.

نُشرت مجموعة البيانات على Hugging Face بموجب ترخيص CC BY 4.0.

ملف SKILL.md والبيئة الذكية

يتضمن مستودع GitHub أيضًا ملف التعليمات SKILL.md الموجه لـ CUDA بالإضافة إلى بيئة عمل الوكيل.

توثق هذه المواد سير عمل التحسين والأدوات المتاحة والقيود وإعدادات بيئة التنفيذ المستخدمة لتوجيه الوكيل.

آلية المكافأة وخطة التدريب

تصف الورقة والمستودع تصميم المكافأة ومراحل التهيئة وتهيئة الناقد وخطة التدريب القائمة على PPO لتحقيق استقرار عملية التحسين طويلة المدى.

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

لماذا تتجاوز أهمية هذا العمل KernelBench نفسه

يدعم تحسين نوى CUDA جزءًا كبيرًا من البنية التحتية الحديثة للذكاء الاصطناعي.

يمكن للنوى الأسرع تحسين:

  • إنتاجية تدريب النماذج
  • أداء زمن الاستجابة لاستدلال LLM
  • استخدام GPU
  • كفاءة تكلفة الخدمة
  • خطوط معالجة الذكاء الاصطناعي في الوقت الفعلي
  • أعباء الحوسبة الرقمية عالية الأداء

تشير المقالة الأصلية لـ AIBase إلى أهميتها في مجال الذكاء الاصطناعي

التطبيقات المحتملة في مجالات البنية التحتية، وخدمات الاستدلال للنماذج الكبيرة، والقيادة الذاتية، والتداول الكمي — حيث يمكن أن تكون الفروق الدقيقة في زمن الاستجابة بالغة الأهمية في هذه المجالات.

إن إنجازات CUDA Agent لا تعني أن المترجمات التقليدية أصبحت قديمة.

يظل torch.compile خطًا أساسيًا تلقائيًا قويًا، كما أن تقييم CUDA Agent نفسه يعتمد على بيئات قياس مراقبة وبيئة GPU محددة.

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

وهذا يعني تحويل هندسة الأداء الأساسية إلى مجال معقول للتعلم الوكيل، وليس مجرد توليد كود لمرة واحدة.

الأسئلة الشائعة

ما هو CUDA Agent؟

CUDA Agent هو نظام تعلم تعزيزي واسع النطاق للوكلاء الذكيين طورته ByteDance Seed، ومعهد بحوث الصناعة الذكية (AIR) بجامعة تسينغهوا، ومختبر SIA المشترك. يقوم بتدريب النماذج اللغوية على كتابة نوى CUDA والتحقق منها وتحليلها وتحسينها بطريقة تكرارية.

على أي نموذج يعتمد CUDA Agent؟

تستخدم هذه الدراسة Seed1.6 كنموذج أساسي. تصفه الورقة البحثية بأنه نموذج خليط من الخبراء، بإجمالي 230 مليار معامل، و23 مليار معامل نشط.

ما هو KernelBench؟

KernelBench هو معيار مفتوح لتقييم ما إذا كانت النماذج اللغوية قادرة على توليد نوى GPU صحيحة وفعالة لبرامج PyTorch. تم تقييم CUDA Agent على 250 مهمة تغطي المستويات من 1 إلى 3 من KernelBench.

ما مدى سرعة CUDA Agent مقارنة بـ torch.compile؟

عبر المعيار بأكمله، حقق CUDA Agent تسارعًا هندسيًا متوسطًا قدره 2.11 ضعفًا مقارنة بـ torch.compile. كانت النوى التي ولّدها أسرع من خط الأساس للمترجم في 96.8% من المهام التي تم تقييمها.

هل يستخدم CUDA Agent التعلم التعزيزي؟

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

كم يمكن أن تستمر جولة تحسين واحدة لـ CUDA Agent؟

يسمح تدريب rollout بما يصل إلى 150 جولة وكيل، بينما يسمح التقييم بما يصل إلى 200 جولة. يبلغ سياق تدريب الوكيل 131,072 رمزًا.

هل CUDA Agent مفتوح المصدر؟

نشر المشروع مستودع GitHub الخاص به، وبيئة الوكيل، وملف SKILL.md، ووصفة التدريب، ومجموعة بيانات CUDA-Agent-Ops-6K. لا تُدرج أوزان النموذج المدربة بالكامل ضمن المحتوى المنشور حاليًا للجمهور.

ما هو CUDA-Agent-Ops-6K؟

CUDA-Agent-Ops-6K هو مجموعة بيانات تحتوي على 6000 مهمة تدريب CUDA تركيبية على مستوى المشغلات. صممت خصيصًا للتعلم التعزيزي واسع النطاق للوكلاء، وتتضمن خطوات تصفية لضمان أن المهام قابلة للتنفيذ وحتمية وغير بديهية ومنفصلة عن مجموعة تقييم KernelBench.

الأدوات ذات الصلة

  • CUDA Agent: الصفحة الرسمية لمشروع نظام توليد نوى CUDA من ByteDance Seed ومعهد بحوث الصناعة الذكية بجامعة تسينغهوا.
  • CUDA Agent GitHub: المستودع الرسمي الذي يحتوي على بيئة الوكيل وملف SKILL.md والمواد المنشورة للمشروع.
  • CUDA-Agent-Ops-6K: مجموعة بيانات التدريب الرسمية المكونة من 6000 عينة المنشورة مع المشروع.
  • KernelBench: معيار مفتوح لتقييم نوى GPU المولدة بواسطة النماذج اللغوية الكبيرة.
  • PyTorch: إطار عمل التعلم العميق، حيث يعد تنفيذ الوضع الفوري وtorch.compile خطوط أساس رئيسية في الدراسة.
  • NVIDIA CUDA: وثائق NVIDIA الرسمية لبرمجة CUDA وتطوير نوى GPU.

الروابط ذات الصلة

الملخص

يعالج CUDA Agent نقطة ضعف محددة في كود النظام الذي تولده النماذج اللغوية الكبيرة: كود CUDA المولد يجب ألا يكون صحيحًا فحسب، بل يجب أن يكون أسرع فعليًا من البدائل التي يولدها المترجم.

بدءًا من Seed1.6، استخدم الباحثون بيئة وكيل مخصصة لـ CUDA، وتغذية راجعة للتنفيذ، وتصميم مكافآت قوي، وتدريب PPO طويل الأفق، لرفع معدل النجاح من 74.0% إلى 98.8%، ونسبة التفوق على torch.compile من 27.2% إلى 96.8%.

كما نشر المشروع مجموعة بيانات تدريبية تتكون من 6000 مهمة، وملف SKILL.md، ومواد بيئة الوكيل، ووصفة التدريب، مما يوفر أساسًا ملموسًا للباحثين لمزيد من العمل في اتجاه تحسين GPU المُتعلَّم.

تتمثل المساهمة الرئيسية لـ CUDA Agent في إثبات أن هندسة الأداء نفسها يمكن تعلمها من خلال حلقات وكيل تكرارية — وليس مجرد تقريبها من خلال توليد كود لمرة واحدة.