← أحدث الأبحاث
💻 computer science

SWE-Pruner: Self-Adaptive Context Pruning for Coding Agents

إن SWE-Pruner هو إطار عمل للتنقية التكيفية للسياق يستخدم مِشّاراً عصبياً مدركاً للمهام لتصفية الكود غير ذي الصلة ديناميكياً بناءً على أهداف الوكيل الصريحة، مما يقلل بشكل كبير من استخدام الرموز (tokens) والتكاليف مع الحفاظ على أداء وكيل البرمجة أو تحسينه عبر مختلف المعايلات.

المؤلفون الأصليون: Yuhang Wang, Yuling Shi, Mo Yang, Rongrui Zhang, Shilin He, Heng Lian, Yuting Chen, Siyu Ye, Kai Cai, Xiaodong Gu

نُشر 2026-04-28
📖 4 دقيقة قراءة☕ قراءة في استراحة قهوة

المؤلفون الأصليون: Yuhang Wang, Yuling Shi, Mo Yang, Rongrui Zhang, Shilin He, Heng Lian, Yuting Chen, Siyu Ye, Kai Cai, Xiaodong Gu

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

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

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

وقد تسبب هذا في مشكلتين كبيرتين:

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

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

الحل: SWE-Pruner (أمين المكتبة الذكي)
قدم مؤلفو هذه الورقة البحثية SWE-Pruner، والذي يعمل كأمين مكتبة ماهر للغاية وقابل للتكيف يقف بينك وبين المكتبة.

إليك كيف يعمل بكلمات بسيطة:

  1. أنت تطرح سؤالاً محدداً: بدلاً من مجرد قول "اقرأ هذا الملف"، يتم تعليم وكيل الذكاء الاصطناعي طرح سؤال محدد أولاً، مثل "تلميح الهدف" (Goal Hint). على سبيل المثال: "أحتاج إلى العث ط الجزء من الكود الذي يعالج أخطاء تسجيل دخول المستخدم".
  2. أمين المكتبة يلقي نظرة خاطفة: يقوم SWE-Pruner (وهو نموذج ذكاء اصطناعي صغير وسريع) بأخذ الملف الضخم والسؤال المحدد. هو لا يقرأ كل كلمة بعمق؛ بل "يتصفح" النص تماماً كما يفعل المبرمج البشري عند تصحيح الأخطاء (debugging). فهو يعرف بالضبط أي الأسطر ذات صلة بـ "أخطاء تسجيل الدخول" وأي الأسطر تتعلق بـ "إعدادات قاعدة البيانات" أو "سمات الألوان".
  3. يقص الحشو: يقوم أمين المكتبة بقص الصفحات غير ذات الصلة ويقدم لوكيل الذكاء الاصطناعي الفقرات المحددة والمناسبة فقط. والأهم من ذلك، أنه يفعل ذلك سطراً بسطر. هو لا يقطع الجمل أو يزيل الكلمات المفتاحية عشوائياً؛ بل يحافظ على هيكل الكود سليماً، مثل الحفاظ على فقرة كاملة حتى لو قمت بإزالة الفقرة التي تسبقها.
  4. النتيجة: يحصل وكيل الذكاء الاصطناعي على قطعة قصيرة، مركزة، ونظيفة من اللغز. يمكنه حل المشكلة بشكل أسرع، وارتكاب أخطاء أقل، وبتكلفة أقل بكثير.

التشبيه: "الإبرة في كومة القش" مقابل "المنخل"

  • الطريقة القديمة: تفرغ كومة القش بأكملها على الطاولة وتطلب من الذكاء الاصطنا_الأن يجد الإبرة. يتعب الذكاء الاصطناعي، ويرتبك، وينفق ثروة.
  • الضغط السيئ: تحاول تقليص حجم كومة القش عن طريق سحقها. الآن أصبحت الإبرة مدفونة في كومة صغيرة ومكسورة من القش، ولا يمكنك معرفة اتجاهها.
  • SWE-Pruner: تستخدم منخلاً (غربالاً) مشكلاً تماماً مثل شكل الإبرة. تهز كومة القش، ولا يسقط من خلال المنخل إلا الإبرة (والقليل من القش المتصل بها). أما بقية القش فيبقى خلف المنخل. الإبرة سليمة تماماً وجاهزة للاستخدام.

ما وجدوه
اختبروا هذه الورقة في مهام برمجية واقعية (مثل إصلاح الأخطاء في GitHub).

  • التكلفة والسرعة: نجحوا في تقليل كمية النص التي كان على الذكاء الاصطناعي قراءتها بنسبة 23% إلى 54%. وهذا يعني أن الذكاء الاصطناعي حل المهام بشكل أسرع وأرخص.
  • قرارات أذكى: نظرًا لأن الذكاء الاصطناعي لم يكن مشتتًا بالكود غير ذي الصلة، فقد اتخذ قرارات أفضل. في بعض الاختبارات، ارتفع معدل النجاح في إصلاح الأخطاء قليلاً لأن الذكاء الاصطناعي استطاع التركيز بشكل أفضل.
  • عدم التلف: على عكس الطرق الأخرى التي كسرت قواعد الكود، حافظ SWE-Pruner على هيكل الكود مثالياً، بحيث ظل بإمكان الذكاء الاصطناعي فهم كيفية ترابط القطع معاً.

باختاً، يعلم SWE-Pruner وكلاء البرمجة التوقف عن قراءة الكتاب بأكمله والبدء في قراءة الفصول التي تهمهم فقط، مما يوفر الوقت والمال والطاقة الذهنية.

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

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

جرّب Digest →