كانت لدى Farah Rahman مشكلة مألوفة في Doha: تقرير خطأ من عميل، وخيط Slack عند منتصف الليل، وقاعدة شيفرة تضم 1.8 مليون سطر موزعة عبر 43 مستودعًا. طلبت من وكيل تتبع فشل في عملية دفع. في المحاولة الأولى، استهلكت العملية هذا العدد الكبير من الرموز المميزة لدرجة أن النموذج فقد الخيط. ثم عاد بإجابة صحيحة جزئيًا فقط، لكنها قُدمت بثقة مفرطة.

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

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

لماذا يهم هذا الآن

Laptop screen showing debugging software with code, perfect for tech and software development themes.
Fot. Daniil Komov / Pexels

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

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

الفكرة الأساسية: ابحث من أجل النموذج، لا من أجل المهندس فقط

A close-up of a laptop displaying code in a dimly lit room with a coffee mug nearby.
Fot. Daniil Komov / Pexels

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

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

والنقطة الأعمق هي أن الرموز المميزة أصبحت الآن موردًا هندسيًا نادرًا. ليس بشكل مجازي. بل حرفيًا. كل مقطع ملف إضافي تطعمه للوكيل يمكن أن يغير زمن الاستجابة، والتكلفة، وجودة الإجابة. لهذا السبب، فإن أداة تدعي أنها تستخدم رموزًا مميزة أقل بنسبة 98% من grep تثير الاهتمام: ليس لأن grep سيئ، بل لأن grep لم يُصمم يومًا ليكون خطة غذائية للـ LLM.

عمليًا، يميل النظام الأفضل للبحث في الشيفرة المخصص للوكلاء إلى القيام ببضعة أمور بشكل جيد:

إذا لم يستطع النموذج شرح سبب اختياره لملف ما، فغالبًا لا تثق به بما يكفي لتعديل ذلك الملف.

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

لذلك ينبغي قراءة ادعاء Semble بشأن تقليل الرموز المميزة باعتباره مؤشرًا لشيء أكبر: نظافة استرجاع أفضل. ضوضاء أقل تعني مساحة أقل للهلوسة. والضوضاء الأقل تعني أيضًا مساحة أكبر للنموذج ليرى الثوابت الحقيقية في الشيفرة. وهذا هو مصدر التغييرات المفيدة.

كيف يبدو هذا عمليًا

Laptop displaying code with reflection, perfect for tech and programming themes.
Fot. Christina Morillo / Pexels

كان Kenji Silva، وهو محلل بيانات في Krakow، Poland، يساعد فريقه في تشخيص خط أنابيب تسعير يلامس 14 خدمة و9 نماذج SQL. البحث التقليدي أعاد 311 تطابقًا لسلسلة خطأ واحدة. أما سير عمل بحث واعٍ بالرموز المميزة فقلّص مجموعة العمل إلى 18 مقطعًا وخفض حجم مطالبة الوكيل بنسبة 91%. وقال إن أول تشخيص مفيد وصل بعد 4 دقائق بدلًا من 29.

استخدمت Rina Popescu، وهي قائدة عمليات في Tallinn، Estonia، وكيلًا لفحص أدلة التعامل مع الحوادث عبر 6 مستودعات داخلية. كان الوكيل يختلط عليه الأمر مرارًا بسبب markdown القالبية ودفاتر التشغيل المكررة. وبعد أن انتقل فريقها إلى طبقة بحث في الشيفرة تزيل التكرار عن العبارات الجاهزة، انخفضت حالات التصعيد الخاطئة من 17 في أسبوع إلى 3، وتوقف فريق المناوبة عن تجاهل نصف التنبيهات.

أما Farah Rahman، في Doha، فأجرت تجربة أولية على خدمة دفع شهدت 248 فشلًا في الاختبارات خلال شهر. طلب فريقها من وكيل تجميع الفشل بحسب السبب الجذري. ومع طبقة بحث أفضل، نجح الوكيل في تجميع 193 منها في 5 أنماط، وأظهر المسارات الدقيقة للملفات التي تغيرت. لم يُلغِ ذلك الحكم البشري، لكنه أزال قدرًا كبيرًا من البحث الأعمى.

أخطاء شائعة يجب تجنبها

Close-up of JavaScript code on a laptop screen, showcasing programming in progress.
Fot. Markus Winkler / Pexels

قائمة مراجعة عملية

A laptop screen shows a coding application with a calculator design in a tech office setting.
Fot. Eduardo Rosas / Pexels
  1. ابدأ بسير عمل واحد مؤلم. اختر مهمة مثل فرز الأخطاء، أو تحليل فشل الاختبارات، أو تتبع الاعتماديات. لا تحاول حل كل شيء قبل أن تعرف أي ألم في البحث هو الأهم.

  2. قِس حجم المطالبة قبل وبعد. تتبع رموز الإدخال، وجودة المخرجات، والوقت حتى أول إجابة قابلة للاستخدام. إذا لم تستطع تسمية خط الأساس، فلن تستطيع إثبات التحسن.

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

  4. أزل الوزن الميت مبكرًا. استبعد الأدلة المضمّنة من طرف ثالث، ومخرجات البناء، والملفات المولدة المكررة. هذا رخيص وغالبًا ما يؤتي ثماره فورًا.

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

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

  7. قارن بـ grep بإنصاف. لا يزال grep يتفوق في كثير من المهام البشرية. انظر أين يفيد البحث الجديد الوكيل وأين تظل الأداة القديمة أسرع وأبسط.

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

متى لا ينبغي فعل ذلك

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

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

أين تتعلم المزيد

بالمناسبة، الجزء المثير في Semble ليس الرقم التسويقي، حتى لو كان “98% أقل من الرموز المميزة” عنوانًا جميلًا. بل الإشارة إلى أن البحث في الشيفرة يُعاد بناؤه أولًا للقراء الآليين، وثانيًا للبشر، وأن هذا التغيير سيعيد تشكيل الطريقة التي تُشخّص بها الفرق أخطاء برمجياتها، وتُصلحها، وتؤتمتها. لم يعد السؤال هو ما إذا كان الوكلاء قادرين على البحث في الشيفرة - بل ما إذا كانت طبقة البحث لديك تساعدهم على التفكير بوضوح أم أنها لا تطعمهم سوى المزيد من الضوضاء.