← أحدث الأبحاث
💬 NLP

Beyond "What to Retrieve": Uncertainty in Retrieval-Augmented Code Generation

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

المؤلفون الأصليون: Chandan Kumar Sah, Xiaoli Lian, Li Zhang

نُشر 2026-07-29
📖 5 دقيقة قراءة🧠 قراءة متعمّقة

المؤلفون الأصليون: Chandan Kumar Sah, Xiaoli Lian, Li Zhang

البحث الأصلي مرخَّص بموجب CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). هذا شرح مولَّده بالذكاء الاصطناعي للبحث أدناه. لم يكتبه المؤلفون ولم يصادقوا عليه. وللتحقق من الدقة التقنية، يرجى الرجوع إلى البحث الأصلي. اقرأ إخلاء المسؤولية الكامل

تخيل أنك تحاول بناء قلعة معقدة من قطع "ليغو" (LEGO)، ولكن تم تسليمك دليلاً تعليمياً واحداً يغطي الباب الأمامي فقط. أنت تعرف الباب، لكن القلعة تحتاج إلى نوافذ، وسقف، ونفق سري تحت الأرض. هذا هو الصراع اليومي للذكاء الاصطناعي عندما يحاول كتابة كود برمجي لمشاريع حقيقية. وبينما أصبح الذكاء الاصطناعي بارعاً للغاية في كتابة قصاصات برمجية صغيرة ومعزولة، فإنه غالباً ما يضيع عندما يُطلب منه بناء شيء يتناسب مع "حي" برمجي ضخم وقائم بالفعل. ولحل هذه المشكلة، يستخدم الباحثون تقنية تسمى "التوليد المعزز بالاسترجاع" (Retrieval-Augmented Generation - RAG). فكر في RAG على أنه منح الذكاء الاصطناعي محرك بحث فائق القدرة: قبل أن يكتب سطراً واحداً من الكود، يبحث عن مشاريع مشابهة، ويتأكد من قواعد الحي (الاصطلاحات الخاصة بالمشروع)، ويجد الأدوات المناسبة (APIs) لاستخدامها.

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

وهنا يأتي دور دراسة جديدة من باحثين في جامعة بهيانغ (Beihang University). حيث قدموا نظاماً يسمى "أوبن كودر" (OpenCoder)، والذي يعمل كمدير مشروع شديد التنظيم ومتشكك للذكاء الاصطناعي. فبدلاً من الثقة العمياء في كل معلومة يجدها محرك البحث، يقوم OpenCoder بتعيين "درجة شك" لكل دليل. فهو يتساءل: "ما مدى عدم تأكدنا من أن هذه الواجهة البرمجية (API) هي الأنسب؟" أو "ما مدى احتمالية أن يتصادم هذا الكود المشابه مع مشروعنا؟". ومن خلال التعامل مع عدم اليقين ليس كخلل، بل كإشارة مفيدة، يقوم OpenCoder بتصفية الضوضاء، وترتيب الأدلة بناءً على مدى موثوقيتها، بل ويعرف متى يتوقف ويصلح أخطاءه الخاصة.

اختبر الباحثون هذا النظام عبر طلب كتابة كود لـ 32 مهمة مختلفة من العالم الحقيقي. ووجدوا أنه عند استخدام نموذج ذكاء اصطناعي قوي يسمى GPT، عزز OpenCoder معدل نجاح الكود النهائي بشكل كبير من 56.25% (باستخدام طرق البحث القياسية) إلى 78.13%. ومع ذلك، اكتشف الباحثون فارقاً جوهرياً: هذا التحسن طابق أداء مجموعة ضابطة استخدمت البحث القياسي ولكن مع إضافة خطوة "التحقق والإصلاح". وهذا يشير إلى أنه بينما ساعدت تصفية عدم اليقين في OpenCoder، فإن القفزة الهائلة في النجاح كانت مدفوعة بشكل أساسع بقدرة النظام على التحقق من الأخطاء وإصلاحها، وليس بمجرد التصفية وحدها. لم يكن "السر الخفي" هو العثور على المزيد من المعلومات فحسب؛ بل كان قدرة النظام على قول: "هذا الجزء المحدد من الأدلة يبدو مهزوزاً، لذا دعونا نتجاهله"، و"هذا الجزء الآخر يبدو صلباً، لذا دعونا نستخدمه"، كل ذلك مع وجود شبكة أمان لالتقاط الأخطاء.

ومع ذلك، فإن القصة ليست ببساطة "الذكاء الاصطناعي ينتصر للأبد". فقد لاحظ الباحثون بعناية أن هذا النجاح يعتمد بشدة على "العقل" الذي يقوم بالتفكير. فعندما استبدلوا GPT بنموذج آخر يسمى Gemini، كانت النتائج أقل وضوحاً بكثير. لم تكن التحسينات ذات دلالة إحصائية، مما يشير إلى أن "رادار عدم اليقين" في OpenCoder يعمل بشكل مختلف اعتماداً على "شخصية" الذكاء الاصطناعي. علاوة على ذلك، اصطدم النظام بحائط مسدود عندما كان المشروع يفتقر إلى الكثير من المعلومات. في حالات نقص الأدلة هذه، تفوق النظام القياسي المزود بالتحقق والإصلاح على OpenCoder. وهذا يشير إلى أنه عندما لا يستطيع محرك البحث العثور على الأدوات اللازمة للبدء، فإن آلية التصفية في OpenCoder قد تقوم أحياناً بحجب الشذرات القليلة المتاحة من الأدلة، بدلاً من تحسين القرار النهائي.

كما اكتشفت الدراسة أمراً مفاجئاً حول كيفية عمل أنواع مختلفة من المعلومات معاً. قد تعتقد أن امتلاك "كود مشابه"، و"سياق المشروع"، و"معرفة الـ API" هو دائماً أفضل من امتلاك واحد منها فقط. لكن الباحثين وجدوا أنه لا توجد قاعدة عالمية. فأحياناً، يؤدي إضافة "الكود المشابه" إلى إرباك الذكاء الاصطناعي، ما لم يكن مقترناً بـ "سياق المشروع" المناسب. الأمر يشبه امتلاك خريطة، وبوصلة، ونظام تحديد مواقع (GPS): إذا كان لديك نظام تحديد المواقع فقط، فقد تضيع؛ وإذا كان لديك الخريطة والبوصلة ولكن بدون نظام تحديد المواك، فقد تكون بخير؛ ولكن إذا كان لديك الثلاثة معاً وتتعارض فيما بينها، فقد تنتهي بالدوران في حلقات مفرغة. قيمة كل دليل تعتمد كلياً على ما هو موجود من أدلة أخرى.

لجعل هذا يعمل، يستخدم OpenCoder "رقصة" مكونة من خمس خطوات. أولاً، يبني مكتبة لجميع قواعد وأدوات المشروع. ثانياً، يفكك طلب المستخدم إلى خطوات صغيرة. ثالثاً، ينطلق للبحث عن الأدلة، ولكن هذه المرة يقوم بتقييمها بناءً على مدى "عدم اليقين" فيها. رابعاً، يقوم بتوليد الكود، لكنه يراقب بعنا "درجة عدم اليقين" لتجنب استخدام الأدلة المهزوزة. وأخيراً، وهو الأهم، يعمل كمفتش جودة لنفسه. يقوم بتشغيل الكود عبر سلسلة من الاختبارات. وإذا فشل الكود، فإنه لا يستسلم فحسب؛ بل يحدد الخطأ ويحاول إصلاح الكود بناءً على ملاحظات التحقق تلك.

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

غارق في أبحاث مجالك؟

تصلك نشرة يومية بأحدث الأبحاث المطابقة لكلماتك البحثية المفتاحية — مع ملخصات تقنية، بلغتك.

جرّب Digest →