تقدم Microsoft مساراً عملياً من أربع جلسات لبناء وكيل ذكاء اصطناعي بلغة C# باستخدام Microsoft Agent Framework، بدءاً من استدعاء بسيط يحيط بواجهة IChatClient، وصولاً إلى وكيل يمكن مراقبته وتقييمه وحوكمته ونشره في Microsoft Foundry. ويستخدم المثال مساعداً تعليمياً للتمويل الشخصي حتى تظهر الفروق بين قراءة البيانات، وتعديل الملفات، وتنفيذ إجراء ذي أثر، مثل صفقة تداول افتراضية.
ما المقصود بـ Agent Harness؟
النموذج اللغوي يستطيع إنشاء النص، لكنه لا يوفر وحده الحلقة التشغيلية اللازمة للوكيل. هذه الحلقة تستدعي الأدوات، وتفحص نتائجها، وتحدّث الخطة، وتحافظ على الذاكرة، وتتعامل مع نافذة السياق، وتطلب موافقة المستخدم على الإجراءات الحساسة، ثم تواصل العمل حتى إتمام المهمة. يطلق المصدر على هذه الطبقة المحيطة اسم harness، بينما يشير مفهوم “claw” إلى وكيل بأسلوب أدوات سطر الأوامر مبني فوق هذه الطبقة.
في المثال، تكفي تهيئة تتضمن التعليمات والأدوات لبدء وكيل قادر على استدعاء الدوال تلقائياً، وحفظ السجل بعد استدعاءات النموذج، وإنشاء قوائم مهام، وضغط السياق، واستخدام ذاكرة الملفات، وتشغيل البحث على الويب عندما تدعم خدمة النموذج ذلك، إضافة إلى طلب موافقات الأدوات وإرسال بيانات القياس عبر OpenTelemetry. وتظل هذه القدرات قابلة للاستبدال أو التعطيل أو التوسعة بمزودات مخصصة.
أربع مراحل لبناء الوكيل
تبدأ الجلسة الأولى بتحويل عميل محادثة متصل بنموذج في Microsoft Foundry إلى وكيل مزود بأداة C# مخصصة للحصول على سعر سهم توضيحي. عند سؤال الوكيل عن سعر MSFT، يختار النموذج الأداة، ويستدعيها الـ harness، ثم يعيد النتيجة إلى النموذج لإنتاج الإجابة. وعند طرح مهمة أوسع، مثل مراجعة قائمة متابعة واقتراح ما ينبغي بحثه تالياً، يمكن للوكيل إنشاء خطة وقائمة مهام من دون أن يضطر المطور إلى بناء محرك تخطيط مستقل للعرض التجريبي.
تركز الجلسة الثانية على العمل مع بيانات المستخدم بأمان. يقرأ الوكيل ملف محفظة بصيغة CSV من مجلد عمل معتمد فقط، بينما تمنعه الحدود المحددة من الوصول إلى مسارات عشوائية في نظام الملفات. كما تُغلّف صفقة التداول الافتراضية بأداة تتطلب موافقة، بحيث يستطيع النموذج طلب الإجراء لكنه لا ينفذه مباشرة. في المقابل، يمكن تمرير عمليات القراءة فقط تلقائياً لتجنب إغراق المستخدم بطلبات تأكيد غير ضرورية.
يعرض المصدر أيضاً سياسة موافقة بمهلة زمنية: خمس ثوانٍ لكل محاولة، وبحد أقصى خمس محاولات، مع إعادة المحاولة عند غياب الإدخال أو عدم صلاحيته، والموافقة الفورية عند إدخال y والرفض عند إدخال n، ثم الرفض التلقائي بعد المحاولة الأخيرة. كما يناقش الفرق بين ذاكرة JSON محلية تملكها application وبين Microsoft Foundry Memory، مؤكداً أن قول النموذج “لقد حفظت ذلك” لا يثبت أن البيانات كُتبت فعلياً أو أنها حُفظت ضمن النطاق الصحيح.
في الجلسة الثالثة، تُضاف المهارات التي تحزم المعرفة المتخصصة في ملفات لا تُحمّل كاملة إلى التعليمات الأساسية إلا عند الحاجة، إلى جانب وصول مقيد إلى shell، وتنفيذ CodeAct لتشغيل الشيفرة في بيئة مضبوطة، ووكلاء خلفيين يمكنهم تنفيذ مهام بحث مستقلة بالتوازي. ويشير المصدر صراحة إلى أن الموافقة والسياسات لا تغنيان عن العزل عند تشغيل الأوامر أو الشيفرة.
ما الذي يتغير عملياً في بيئة الإنتاج؟
تخصص الجلسة الرابعة للمراقبة والحوكمة والتقييم والنشر. تشمل المراقبة آثار OpenTelemetry واستدعاءات الأدوات والنموذج واستهلاك الرموز، بينما تربط الحوكمة بسياسات Microsoft Purview. كما تُستخدم التقييمات المتكررة لتحويل الانطباع عن جودة العرض التجريبي إلى إشارة قابلة للقياس، ويُطرح خيار نشر الوكيل المستضاف في Foundry مع مشاركة تعريف واحد بين تطبيق وحدة تحكم ونقطة نهاية مستضافة وبيئة تقييم.
الرسالة الأهم هنا أن قابلية تركيب القدرات لا تعني وجوب نقلها كلها إلى الإنتاج. فوكيل التطوير قد يحتاج إلى ملفات أو shell، لكن الحاوية المستضافة المشتركة لا ينبغي أن ترث وصولاً محلياً واسعاً لمجرد أن هذه الصلاحيات كانت مفيدة أثناء البناء. تحديد ما يُسمح بقراءته أو كتابته أو تنفيذه أو تذكره أو تتبعه يظل قراراً تصميمياً تملكه الجهة المطورة.
لماذا يهم هذا النهج؟
تقلل طبقة الـ harness الحاجة إلى إعادة بناء حلقة الأدوات والتخطيط والذاكرة والموافقات لكل مشروع، لكنها لا تلغي مسؤولية تحديد الحدود. القيمة العملية للسلسلة أنها تربط القدرات المتقدمة بضوابطها المقابلة: الملفات بمجلد معتمد، الإجراءات الحساسة بموافقة، الذاكرة بنتيجة تخزين قابلة للتحقق، والتنفيذ البرمجي بالعزل والسياسات، والنشر بالمراقبة والتقييم. وتبقى الأمثلة المالية تعليمية؛ فالأسعار والصفقات المستخدمة mock وتوضيحية وليست نصيحة مالية.
كيف أعددنا هذا الخبر؟
اعتمد الخبر على المصدر الأصلي الموضح أعلاه. قد نستخدم أدوات آلية للمساعدة في الاستخراج والتصنيف والصياغة،
لكن النشر يخضع لقواعد تمنع المحتوى المكرر والقصير أو الروتيني منخفض القيمة.
اقرأ سياستنا التحريرية.