00:00:00تبين أن الاعتماد على المهارات (Skills) قد لا يكون الطريقة المثلى لتزويد الوكلاء بسياق إضافي، وربما ستحقق نتائج أفضل بالعودة إلى ملف agents.md.
00:00:08كانت هذه في الواقع النتيجة المفاجئة التي توصلت إليها شركة Vercel أثناء اختبار أفضل وسيلة لتزويد وكلاء البرمجة بتوثيق Next.js.
00:00:15لذا، دعونا نبدأ مباشرة لنحلل ما حدث ولماذا، وما الذي يعلمنا إياه هذا عن كيفية استخدام وكلاء البرمجة بفعالية.
00:00:26كما ذكرت، كان هدف Vercel هو تزويد وكيل البرمجة بسياق إضافي، وهو في هذه الحالة توثيق Next.js، ليعرف الوكيل كل الواجهات البرمجية (APIs) الجديدة عند استخدامه، لأن بعضها قد لا يكون موجودًا في بيانات التدريب بعد، أو العكس.
00:00:41فقد تستخدم نسخة قديمة من Next.js وتريد التأكد من أن الوكيل يستخدم فقط الطرق المتاحة في تلك النسخة.
00:00:47أرادوا نظامًا من التوثيق المتوافق مع الإصدارات ليتمكن الوكيل من استخدامه.
00:00:51ولتحقيق ذلك، اختبروا نهجين شائعين.
00:00:54أولاً، لدينا “المهارات” (Skills).
00:00:56وقد حظيت هذه المهارات بشعبية واسعة مؤخرًا مع قيام العديد من أطر العمل والأدوات بإطلاق مهاراتها الخاصة.
00:01:01والمثير للسخرية أن Vercel هي إحدى الجهات التي ساعدت في نشر هذا النهج من خلال واجهة أوامر المهارات ومستودع المهارات الخاص بهم.
00:01:08أوصيكم بشدة بالاطلاع عليها.
00:01:09الآن، إذا كنت لا تعرف ما هي المهارات، فهي مجرد معيار مفتوح من Anthropic، عبارة عن حزم برمجية من التعليمات والنصوص البرمجية والسياقات التي يمكن للوكيل تحميلها عند الطلب لأداء المهام بدقة أكبر.
00:01:20لكن هذه هي التفصيلة الجوهرية: الأمر متروك تمامًا للوكيل ليقرر متى يحمل هذه المعلومات.
00:01:26ويبدو أن هذا الجزء هو نقطة الضعف الحالية؛ فعندما أجرت Vercel تقييماتها، وجدت أن المهارة لم يتم استدعاؤها مطلقًا في 56% من الحالات.
00:01:35حيث قرر الوكيل ببساطة عدم استخدامها.
00:01:37والمثير للدهشة أن تزويد الوكيل بالمهارة لم يحقق أي تحسن في التقييمات مقارنة بوكيل لا يملك المهارة.
00:01:44والأكثر غرابة أنهم وجدوا أن المهارة قد يكون لها تأثير سلبي أحيانًا.
00:01:48فأحياناً كان الأداء أسوأ من الخط المرجعي عند عدم استخدام المهارة، مما يشير إلى أن المهارة غير المستخدمة قد تسبب نوعاً من “التشويش” أو التشتيت للنموذج.
00:01:57ولحل هذه المشكلة، حاولوا تحديداً كتابة عبارة “يرجى استخدام هذه المهارة” في الأوامر.
00:02:02وقد ساعد ذلك بالفعل، حيث ارتفع معدل تفعيل المهارة إلى 95% وزاد معدل اجتياز التقييم إلى 79%.
00:02:09لكن هذا جلب معه مشاكل أخرى؛ فقد اكتشفوا أن الصياغات المختلفة أنتجت نتائج متفاوتة بشكل جذري.
00:02:15على سبيل المثال، إذا قلت فقط “يجب عليك استخدام المهارة”، كان يفعل ذلك لكنه يتجاهل سياق المشروع.
00:02:21لذا اضطررت للقول “استخدم المهارة وسياق المشروع معاً”.
00:02:24ولم يعجب Vercel هشاشة هذا النظام، وصرحوا بأنه إذا كانت تعديلات بسيطة في الصياغة تنتج تقلبات سلوكية كبيرة، فإن هذا النهج يعتبر هشاً للاستخدام في بيئة العمل الحقيقية.
00:02:33لذا احتاجوا إلى حل أكثر موثوقية، حل لا يضطر فيه الوكيل لاتخاذ هذا القرار بنفسه.
00:02:40هنا جربوا ملف agents.md.
00:02:42هذا تنسيق مفتوح تستخدمه العديد من الوكلاء، وإذا كنت من محبي Claude، فهو تماماً مثل ملف claude.md.
00:02:49يُستخدم لتقديم تعليمات لوكلاء البرمجة تكون مضمنة دائماً في أمر النظام (system prompt).
00:02:53بخلاف المهارات، ليس الوكيل هو المسؤول عن اتخاذ قرار جلب المعلومات.
00:02:58فالمعلومات موجودة بالفعل في أمر النظام الخاص به، لكن هذا قد يخلق مشكلة متعلقة بحجم السياق.
00:03:03وهي أنه كلما زاد السياق، تراجعت جودة النتائج.
00:03:06فأنت لا تريد وضع توثيق Next.js بالكامل داخل ملف agents.md.
00:03:10فكيف تفعل ذلك؟ لمواجهة هذه المشكلة، استخدمت Vercel فهرساً للتوثيق داخل ملف agents.md.
00:03:17وهو ببساطة قائمة بمسارات الملفات لوثائق التوثيق الفردية داخل نظام الملفات الخاص بك.
00:03:22أما القطعة الجوهرية الأخرى فكانت إضافة تعليمة تقول: “فضل الاستدلال المعتمد على الاسترجاع (Retrieval) على الاستدلال المعتمد على التدريب المسبق لأي مهام تخص Next.js”.
00:03:31شخصياً، عندما قرأت هذا، ظننت أنه سيؤدي لنتائج مشابهة للمهارات، لأنه لا يزال يتعين عليه الذهاب وجلب الملف لقراءة التوثيق.
00:03:38ولكن عندما اختبروا ذلك في تقييماتهم، سجل الوكلاء 100% في جميع الاختبارات وحصلوا على درجات كاملة في اختبارات البناء والتدقيق (lint) والفحص.
00:03:47لذا فهو أكثر موثوقية ودقة بكثير من المهارات. إنها حالة كلاسيكية في هندسة البرمجيات.
00:03:53حيث يتبين أن النهج الأبسط والأقل تعقيداً هو الأفضل طوال الوقت، دون الحاجة للمبالغة في الهندسة.
00:03:58لكن لماذا هذا هو الحال؟ لماذا ملف agents أفضل من المهارات؟ حسناً، من الصعب الجزم بذلك.
00:04:03فالذكاء الاصطناعي يشبه الصندوق الأسود، لكن Vercel ترجح أن السبب يعود لثلاثة عوامل تتمحور كلها حول اتخاذ القرار.
00:04:10عندما تستخدم ملف agents، لا توجد نقطة اتخاذ قرار للوكيل.
00:04:14نحن نخبره منذ البداية في أمر النظام باستخدام التوثيق ونحدد له مكان كل ملف بدقة.
00:04:20وهذا يجعل المعرفة سياقاً دائماً بدلاً من كونها معرفة عند الطلب نترك للموذج قرار استخدامها من عدمه.
00:04:27فهي موجودة بالفعل في عملية الاستدلال لأننا وفرناها في أمر النظام.
00:04:31لكن هذا لا يعني أن المهارات عديمة الفائدة تماماً. في الواقع، وجدت Vercel أنها تكمل بعضها البعض.
00:04:36قالوا إن المهارات تعمل بشكل أفضل في سير العمل الصريح الذي يطلبه المستخدم، مثل قولك “قم بتحديث إصدار Next.js الخاص بي”،
00:04:41أو “انتقل إلى App Router” أو “طبق بعض أفضل ممارسات إطار العمل”.
00:04:45لكن إذا أردت تلك المعرفة العامة بإطار العمل داخل وكيل البرمجة الخاص بك،
00:04:48فإن السياق الضمني مع ملف agents.md سيتفوق على المهارات، خاصة مع نماذج اليوم.
00:04:54أنا متأكد أن النماذج في المستقبل ستكون محسنة لسير عمل الاسترجاع القائم على المهارات، لكننا لم نصل إلى ذلك بعد.
00:04:59في الوقت الحالي، توصيات Vercel، خاصة لمؤلفي أطر العمل أو من يكتبون المهارات أو ملفات agents.md،
00:05:06هي ألا تنتظروا تحسن المهارات. اضغطوا سياقكم قدر الإمكان.
00:05:10صمموا للاسترجاع لا للذاكرة. والأهم من ذلك، اختبروا كل شيء دائماً بالتقييمات.
00:05:16وإذا كنت مجرد مستخدم لهذه الملفات، فإن Vercel توفر أداة لتحميل التوثيق
00:05:21وملف agents.md جاهز لنسختك المحددة من Next.js لتتمكن من الاستفادة من هذا النهج الجديد فوراً.
00:05:29أنا فضولي جداً لمعرفة ما إذا كانت الأدوات الأخرى ستتبع هذا النهج أيضاً، وفضولي لمعرفة رأيكم في هذا الأمر.
00:05:34أخبروني في التعليقات أدناه برأيكم في الوكلاء والمهارات.
00:05:37ولا تنسوا الاشتراك أثناء وجودكم هناك. كما هو الحال دائماً، نراكم في الفيديو القادم.