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

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

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

السيناريو: عملية استرداد الأموال
لنأخذ سيناريو حيث يحاول عميل استرداد أموال منتج. يمكن أن يكون هناك عدد كبير من الوكلاء المشاركين في هذه العملية، ولكن دعونا نقسمهم إلى وكلاء محددين لهذه العملية ووكلاء عامين يمكن استخدامهم في عمليات أخرى.
الوكلاء المحددون لعملية استرداد الأموال:
فيما يلي بعض الوكلاء الذين يمكن أن يكونوا مشاركين في عملية استرداد الأموال:
- وكيل العميل: يمثل العميل وهو مسؤول عن بدء عملية استرداد الأموال.
- وكيل البائع: يمثل البائع وهو مسؤول عن معالجة استرداد الأموال.
- وكيل الدفع: يمثل عملية الدفع وهو مسؤول عن استرداد دفعة العميل.
- وكيل الحلول: يمثل عملية الحلول وهو مسؤول عن حل أي مشكلات تنشأ أثناء عملية الاسترداد.
- وكيل الامتثال: يمثل عملية الامتثال وهو مسؤول عن ضمان أن عملية الاسترداد تتوافق مع اللوائح والسياسات.
الوكلاء العامون:
يمكن استخدام هؤلاء الوكلاء في أجزاء أخرى من عملك.
- وكيل الشحن: يمثل عملية الشحن وهو مسؤول عن شحن المنتج مرة أخرى إلى البائع. يمكن استخدام هذا الوكيل في كل من عملية الاسترداد والشحن العام للمنتجات.
- وكيل الملاحظات: يمثل عملية جمع الملاحظات وهو مسؤول عن جمع ملاحظات العميل. يمكن جمع الملاحظات في أي وقت وليس فقط أثناء عملية الاسترداد.
- وكيل التصعيد: يمثل عملية التصعيد وهو مسؤول عن تصعيد المشكلات إلى مستوى دعم أعلى. يمكنك استخدام هذا النوع من الوكلاء لأي عملية تحتاج فيها إلى تصعيد مشكلة.
- وكيل الإشعارات: يمثل عملية الإشعارات وهو مسؤول عن إرسال إشعارات إلى العميل في مراحل مختلفة من عملية الاسترداد.
- وكيل التحليلات: يمثل عملية التحليلات وهو مسؤول عن تحليل البيانات المتعلقة بعملية الاسترداد.
- وكيل التدقيق: يمثل عملية التدقيق وهو مسؤول عن تدقيق عملية الاسترداد لضمان تنفيذها بشكل صحيح.
- وكيل التقارير: يمثل عملية التقارير وهو مسؤول عن إنشاء تقارير حول عملية الاسترداد.
- وكيل المعرفة: يمثل عملية المعرفة وهو مسؤول عن الحفاظ على قاعدة معرفية للمعلومات المتعلقة بعملية الاسترداد. يمكن أن يكون هذا الوكيل على دراية بعمليات الاسترداد وأجزاء أخرى من عملك.
- وكيل الأمان: يمثل عملية الأمان وهو مسؤول عن ضمان أمان عملية الاسترداد.
- وكيل الجودة: يمثل عملية الجودة وهو مسؤول عن ضمان جودة عملية الاسترداد.
هناك عدد كبير من الوكلاء المذكورين سابقًا سواء للعملية المحددة لاسترداد الأموال أو للوكلاء العامين الذين يمكن استخدامهم في أجزاء أخرى من عملك. نأمل أن يمنحك هذا فكرة عن كيفية تحديد الوكلاء الذين ستستخدمهم في نظامك متعدد الوكلاء.
المهمة
صمم نظامًا متعدد الوكلاء لعملية دعم العملاء. حدد الوكلاء المشاركين في العملية، أدوارهم ومسؤولياتهم، وكيف يتفاعلون مع بعضهم البعض. ضع في اعتبارك الوكلاء الخاصين بعملية دعم العملاء والوكلاء العامين الذين يمكن استخدامهم في أجزاء أخرى من عملك.
فكر جيدًا قبل قراءة الحل التالي، قد تحتاج إلى عدد أكبر من الوكلاء مما تعتقد.
TIP: فكر في المراحل المختلفة لعملية دعم العملاء وأيضًا ضع في اعتبارك الوكلاء المطلوبين لأي نظام.
الحل
الحل
اختبارات المعرفة
السؤال: متى يجب أن تفكر في استخدام الوكلاء المتعددين؟
حل الاختبار
الملخص
في هذا الدرس، تناولنا نمط تصميم الوكلاء المتعددين، بما في ذلك السيناريوهات التي يكون فيها استخدام الوكلاء المتعددين مناسبًا، المزايا التي يقدمها الوكلاء المتعددون مقارنة بالوكيل الواحد، العناصر الأساسية لتنفيذ نمط تصميم الوكلاء المتعددين، وكيفية الحصول على رؤية واضحة حول كيفية تفاعل الوكلاء المتعددين مع بعضهم البعض.
هل لديك المزيد من الأسئلة حول نمط تصميم الوكلاء المتعددين؟
انضم إلى Azure AI Foundry Discord للتواصل مع متعلمين آخرين، حضور ساعات المكتب، والحصول على إجابات لأسئلتك حول وكلاء الذكاء الاصطناعي.
موارد إضافية
تصميم التخطيط
الدرس التالي
التفكير الميتا في وكلاء الذكاء الاصطناعي
إخلاء المسؤولية:
تمت ترجمة هذا المستند باستخدام خدمة الترجمة بالذكاء الاصطناعي Co-op Translator. بينما نسعى لتحقيق الدقة، يرجى العلم أن الترجمات الآلية قد تحتوي على أخطاء أو معلومات غير دقيقة. يجب اعتبار المستند الأصلي بلغته الأصلية هو المصدر الموثوق. للحصول على معلومات حساسة أو هامة، يُوصى بالاستعانة بترجمة بشرية احترافية. نحن غير مسؤولين عن أي سوء فهم أو تفسيرات خاطئة تنشأ عن استخدام هذه الترجمة.