← أحدث الأبحاث
🤖 AI

EA-Graph: Artifact-Anchored Verification Memory for Coding Agents under Upstream Drift

تقدم هذه الورقة البحثية نظام EA-Graph، وهو نظام ذاكرة تحقق مرتكز على الأثر (artifact-anchored) يعمل على تحسين قدرة وكيل البرمجة بشكل كبير على تصنيف صحة الادعاءات السابقة بدقة بعد التغييرات في المستويات الأعلى، وذلك من خلال ربطها بقطع برمجية محددة بدلاً من الملاحظات النصية، مما يقلل من الهلوسة ويعزز أحكام القابلية للإثبات.

المؤلفون الأصليون: Hwai-Jung Hsu, Cheng-Jan Chi, Hanna Everett

نُشر 2026-08-06
📖 7 دقيقة قراءة🧠 قراءة متعمّقة

المؤلفون الأصليون: Hwai-Jung Hsu, Cheng-Jan Chi, Hanna Everett

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

تخيل أنك محقق تحاول حل لغز يمتد لعدة أيام. لديك دفتر ملاحظات تسجل فيه الأدلة، مثل "كان الخادم في المكتبة في الساعة 8 مساءً". لكن هنا تكمن المشكلة: دفتر ملاحظاتك يسجل فقط أين بحثت، وليس الدليل الفعلي الذي وجدته. إذا تم تجديد المكتبة خلال الليل وتحركت رفوف الكتب، فقد تظل ملاحظتك القديمة تقول "المكتبة"، لكن الدليل أصبح الآن عديم الفائدة لأن الغرفة قد تغيرت. هذا هو الصراع اليومي لـ "وكلاء البرمجة" (coding agents)—وهي برامج حاسوبية ذكية تكتب البرمجيات وتصلحها. غالبًا ما يعمل هؤلاء الوكلاء بنظام النوبات، حيث يسلمون الراية من جلسة إلى أخرى. هم يعتمدون على الملاحظات لتذكر ما فحصوه، ولكن إذا تغير البرنامج الذي يعملون عليه من وراء الكواليس (ما يسمى بـ "الانجراف" أو drift)، فإن تلك الملاحظات قد تصبح أكاذيب خطيرة. قد تخبر الوكيل: "هذا الجزء آمن!" بينما هو في الواقع معطل، أو والأسوأ من ذلك، قد تجبره على التخمين في حين ينبغي له فقط أن يعترف بـ "أنا لا أعرف بعد".

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

المشكلة: الكذبة "الصامتة"

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

في عالم البرمجيات، يحدث هذا طوال الوقت. قد يتحقق وكيل برمجة من أن برنامجًا يعمل بشكل صحيح، ويكتب ملاحظة تقول "تم التحقق"، ثم يمضي قدمًا. بعد ذلك، يتغير "المصدر العلوي" (الرمز المصدري أو البيانات التي يعتمد عليها البرنامج) قليلًا. ربجة رقم في قاعدة بيانات يتغير من 10 إلى 11. أسماء الملفات لم تتغير، وعمليات الاستيراد لا تزال تعمل، والبرنامج لا يزال يعمل (compiles). لكن المنطق أصبح الآن معطلًا.

المشكلة هي أن الملاحظات التقليدية غامضة للغاية. فهي تقول: "لقد فحصت الملف rates.py". لكن rates.py قد يحتوي على 50 رقمًا مختلفًا. إذا تذكر الوكيل اسم الملف فقط، فلن يتمكن من معرفة ما إذا كان الرقم المحدد الذي اعتمد عليه قد تغير. يؤدي هذا إلى "أخطاء صامتة"—وهي أخطاء برمجية (bugs) لا تؤدي إلى توقف البرنامج ولكنه يجعله يعطي إجابات خاطئة. تسمي الورقة البحثية هذا الفرق بين دقة الملف (النظر إلى الملف بأكمله) و دقة الأثر (النظر إلى قطعة محددة من البيانات). وجد الباحثون أنك إذا نظرت إلى الملفات فقط، فقد تعتقد أن 88 سلوكًا من أصل 96 معطلة بينما هي في الواقع 17 فقط. هذا قدر كبير من الإنذارات الكاذبة!

الحل: EA-Graph (نظام "المرساة")

لإصلاح ذلك، ابتكر المؤلفون EA-Graph. فكر فيه كنظام مرساة فائق الدقة. بدلاً من ربط ادعاء بملف كامل، يربط EA-Graph الادعاء بقطعة البيانات الصغيرة والدقيقة المستخدمة.

إليك كيف يعمل الأمر، باستخدام تشبيه توضيحي:
تخيل أنك حارس أمن يتحقق من قائمة كبار الشخصيات (VIPs).

  • الطريقة القديمة (الملاحظات النثرية): تكتب: "تحققت من قائمة كبار الشخصيات في الردهة". إذا قام شخص ما باستبدال اسم في القائمة، تصبح ملاحظتك عديمة الفائدة لأنك لم تسجل أي اسم رأيت.
  • طريقة EA-Graph: تكتب: "تحققت من الشخص المهم المسمى 'أليس' الذي يحمل بطاقة تعريف رقم #123 وصورة لقطة".
    • هوية المسار الفرعي: إذا انتقلت الردهة، أو حصلت القائمة على صفحة جديدة، تظل ملاحظتك صالحة لأنها مرتبطة بـ "أليس" و "رقم التعريف #123"، وليس بالردهة.
    • حل الأسماء المستعارة: أحيانًا تكون الأسماء مخادعة. قد تُدرج "أليس" في مكان ما باسم "سيدة القطط" وفي مكان آخر باسم "VIP-001". EA-Graph ذكي بما يكفي لتتبع الأثر وإدراك أنهم جميعًا نفس الشخص.
    • زر "غير قابل للإثبات": هذا هو الجزء الأهم. إذا تم حذف إدخال "أليس" من القائمة الجديدة، ولم تتمكن من العثور على النسخة الجديدة، فإن EA-Graph لا يخمن "ربما لا تزال أليس؟" أو "ربما هي بوب؟". بدلاً من ذلك، يقول: "غير قابل للإثبات". إنه يعترف: "لا يمكنني التحقق من هذا بعد الآن لأن الدليل قد اختفى". هذا يمنع الوكيل من اختلاق الحقائق أو التخمين الخطير.

التجربة: عالم مصطنع

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

  • أنشأوا 7 "عوالم" مختلفة، كل منها يحتوي على 12 وحدة و96 سلوكًا محددًا (مثل "احسب السعر لشخص مهم").
  • أعطوا الذكاء الاصطناعي "مرجعًا" (الحقيقة) و "منفذًا" (الرمز الذي يحافظ عليه الوكيل).
  • تحققوا من الكود في جولة أولى (D1).
  • ثم وضعوا نسخة ثانية (D2) مع تغييرات: بعض الأرقام تغيرت، بعض المنطق تم استبداله، وبعض البيانات تم حجبها (إخفاؤها).
  • كان على الذكاء الاصطناعي النظر إلى النسخة الجديدة وتقرير حالة كل سلوك من الـ 96: هل هو غير متأثر (لا يزال جيدًا)، متأثر (معطل)، أم غير قابل للإثبات (لا يمكنني معرفة ذلك بسبب نقص البيانات)؟

اختبروا ثلاثة أنواع من الذاكرة:

  1. ANCHOR: نظام EA-Graph الجديد.
  2. PROSE: مجرد ملاحظة نصية تقول "لقد فحصت هذا".
  3. NONE: لا توجد ذاكرة على الإطلاق؛ يتعين على الذكاء الاصطناعي اكتشاف الأمر من الصفر.

أجروا هذا مع نوعين من نماذج الذكاء الاصطناعي: نموذج أصغر وأسرع (Haiku)، ونموذج أكبر وأذكى (Sonnet).

النتائج: النماذج الصغيرة تحقق انتصارات كبيرة

كانت النتائج مثيرة للاهلاه، خاصة بالنسبة لنموذج الذكاء الاصطناعي الأصغر (Haiku).

  • النموذج الصغير (Haikor): عند استخدام ذاكرة ANCHOR، نجح في التصنيف الصحيح في كل مرة تقريبًا (درجة مثالية قدرها 1.000 في معظم العوالم). بدونها، وباستخدام الملاحظات فقط أو بدون ذاكرة، واجه صعوبة بالغة، حيث سجل حوالي 0.27 إلى 0.29. كان الفرق ذا دلالة إحصائية (p = 0.0156). ساعدت الذاكرة المهيكلة النموذج الأصغر ليعمل كأنه محقق أكثر ذكاءً بكثير.
  • النموذج الكبير (Sonnet): كان النموذج الأكبر جيدًا جدًا بالفعل. لقد سجل درجات شبه مثالية (1.000) حتى مع الملاحظات فقط أو بدون ذاكرة. ولأن النموذج كان جيدًا بالفعل، لم يظهر نظام الذاكرة الجديد تحسنًا إحصائيًا كبيرًا. كان الأمر يشبه إعطاء شيف محترف سكينًا جديدًا؛ فقد كان يقطع بشكل مثالي بالفعل باستخدام سكينه القديم.

ماذا يعني هذا (وما لا يعنيه)

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

ومع ذلك، فإن المؤلفين حذرون من المبالغة في تقدير الأمر:

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

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

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

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

جرّب Digest →