(برای مشاهده ویدئوی این درس روی تصویر بالا کلیک کنید)
به محض اینکه شروع به کار روی پروژهای کنید که شامل چند عامل است، باید الگوی طراحی چندعاملی را در نظر بگیرید. با این حال، ممکن است بلافاصله مشخص نباشد که چه زمانی باید به چند عامل تغییر دهید و مزایای آن چیست.
در این درس، به دنبال پاسخ به سوالات زیر هستیم:
پس از این درس، شما باید بتوانید:
تصویر بزرگتر چیست؟
چند عاملها یک الگوی طراحی هستند که به چندین عامل اجازه میدهند با یکدیگر همکاری کنند تا به یک هدف مشترک دست یابند.
این الگو به طور گسترده در زمینههای مختلفی از جمله رباتیک، سیستمهای خودمختار و محاسبات توزیعشده استفاده میشود.
پس چه سناریوهایی برای استفاده از چند عامل مناسب هستند؟ پاسخ این است که سناریوهای زیادی وجود دارند که در آنها استفاده از چند عامل مفید است، به ویژه در موارد زیر:
یک سیستم عامل منفرد ممکن است برای وظایف ساده به خوبی کار کند، اما برای وظایف پیچیدهتر، استفاده از چند عامل میتواند چندین مزیت ارائه دهد:
بیایید یک مثال بزنیم: فرض کنید میخواهید برای یک کاربر یک سفر رزرو کنید. یک سیستم عامل منفرد باید تمام جنبههای فرآیند رزرو سفر را مدیریت کند، از پیدا کردن پروازها گرفته تا رزرو هتلها و خودروهای اجارهای. برای انجام این کار با یک عامل منفرد، عامل باید ابزارهایی برای مدیریت تمام این وظایف داشته باشد. این میتواند منجر به یک سیستم پیچیده و یکپارچه شود که نگهداری و مقیاسپذیری آن دشوار است. از سوی دیگر، یک سیستم چندعاملی میتواند عوامل مختلفی داشته باشد که در پیدا کردن پروازها، رزرو هتلها و خودروهای اجارهای تخصص دارند. این امر سیستم را ماژولارتر، نگهداریپذیرتر و مقیاسپذیرتر میکند.
این را با یک آژانس مسافرتی که به صورت یک فروشگاه کوچک خانوادگی اداره میشود در مقابل یک آژانس مسافرتی که به صورت یک فرانچایز اداره میشود مقایسه کنید. فروشگاه خانوادگی یک عامل منفرد دارد که تمام جنبههای فرآیند رزرو سفر را مدیریت میکند، در حالی که فرانچایز عوامل مختلفی دارد که جنبههای مختلف فرآیند رزرو سفر را مدیریت میکنند.
قبل از اینکه بتوانید الگوی طراحی چندعاملی را پیادهسازی کنید، باید اجزای اصلی که این الگو را تشکیل میدهند، درک کنید.
بیایید این موضوع را با نگاه دوباره به مثال رزرو سفر برای یک کاربر ملموستر کنیم. در این مورد، اجزای اصلی شامل موارد زیر میشوند:
مهم است که شما امکان مشاهده نحوه تعامل عوامل مختلف با یکدیگر را داشته باشید. این مشاهده برای اشکالزدایی، بهینهسازی و اطمینان از اثربخشی کلی سیستم ضروری است. برای این کار، باید ابزارها و تکنیکهایی برای ردیابی فعالیتها و تعاملات عوامل داشته باشید. این میتواند به صورت ابزارهای ثبت و نظارت، ابزارهای تجسم و معیارهای عملکرد باشد.
به عنوان مثال، در مورد رزرو سفر برای یک کاربر، شما میتوانید داشبوردی داشته باشید که وضعیت هر عامل، ترجیحات و محدودیتهای کاربر و تعاملات بین عوامل را نشان دهد. این داشبورد میتواند تاریخهای سفر کاربر، پروازهای پیشنهادی توسط عامل پرواز، هتلهای پیشنهادی توسط عامل هتل و خودروهای اجارهای پیشنهادی توسط عامل خودرو را نشان دهد. این به شما دید واضحی از نحوه تعامل عوامل با یکدیگر و اینکه آیا ترجیحات و محدودیتهای کاربر رعایت میشوند یا خیر، میدهد.
بیایید هر یک از این جنبهها را با جزئیات بیشتری بررسی کنیم.
ابزارهای ثبت و نظارت: شما میخواهید برای هر اقدامی که توسط یک عامل انجام میشود، ثبت انجام دهید. یک ورودی ثبت میتواند اطلاعاتی درباره عاملی که اقدام را انجام داده، اقدام انجامشده، زمان انجام اقدام و نتیجه اقدام ذخیره کند. این اطلاعات میتواند برای اشکالزدایی، بهینهسازی و موارد دیگر استفاده شود.
ابزارهای تجسم: ابزارهای تجسم میتوانند به شما کمک کنند تا تعاملات بین عوامل را به صورت بصریتر ببینید. به عنوان مثال، شما میتوانید یک نمودار داشته باشید که جریان اطلاعات بین عوامل را نشان دهد. این میتواند به شما کمک کند تا گلوگاهها، ناکارآمدیها و مسائل دیگر در سیستم را شناسایی کنید.
معیارهای عملکرد: معیارهای عملکرد میتوانند به شما کمک کنند تا اثربخشی سیستم چندعاملی را پیگیری کنید. به عنوان مثال، شما میتوانید زمان لازم برای تکمیل یک وظیفه، تعداد وظایف تکمیلشده در واحد زمان و دقت پیشنهادات ارائهشده توسط عوامل را پیگیری کنید. این اطلاعات میتواند به شما کمک کند تا زمینههای بهبود را شناسایی کرده و سیستم را بهینه کنید.
بیایید به برخی از الگوهای مشخصی که میتوانیم برای ایجاد برنامههای چندعاملی استفاده کنیم، بپردازیم. در اینجا چند الگوی جالب که ارزش بررسی دارند آورده شده است:
این الگو زمانی مفید است که بخواهید یک برنامه چت گروهی ایجاد کنید که در آن چندین عامل بتوانند با یکدیگر ارتباط برقرار کنند. موارد استفاده معمول برای این الگو شامل همکاری تیمی، پشتیبانی مشتری و شبکههای اجتماعی است.
در این الگو، هر عامل نماینده یک کاربر در چت گروهی است و پیامها بین عوامل با استفاده از یک پروتکل پیامرسانی مبادله میشوند. عوامل میتوانند پیامها را به چت گروهی ارسال کنند، پیامها را از چت گروهی دریافت کنند و به پیامهای سایر عوامل پاسخ دهند.
این الگو میتواند با استفاده از یک معماری متمرکز که در آن تمام پیامها از طریق یک سرور مرکزی مسیریابی میشوند، یا یک معماری غیرمتمرکز که در آن پیامها مستقیماً مبادله میشوند، پیادهسازی شود.
این الگو زمانی مفید است که بخواهید برنامهای ایجاد کنید که در آن چندین عامل بتوانند وظایف را به یکدیگر منتقل کنند.
موارد استفاده معمول برای این الگو شامل پشتیبانی مشتری، مدیریت وظایف و خودکارسازی جریان کار است.
در این الگو، هر عامل نماینده یک وظیفه یا یک مرحله در یک جریان کار است و عوامل میتوانند وظایف را بر اساس قوانین از پیش تعریفشده به سایر عوامل منتقل کنند.
این الگو زمانی مفید است که بخواهید برنامهای ایجاد کنید که در آن چندین عامل بتوانند برای ارائه پیشنهادات به کاربران همکاری کنند.
دلیل اینکه ممکن است بخواهید چندین عامل همکاری کنند این است که هر عامل میتواند تخصص متفاوتی داشته باشد و به روشهای مختلفی در فرآیند پیشنهاددهی مشارکت کند.
بیایید مثالی بزنیم که در آن یک کاربر میخواهد پیشنهادی درباره بهترین سهام برای خرید در بازار سهام دریافت کند.
یک سناریو را در نظر بگیرید که در آن یک مشتری در تلاش است تا برای یک محصول بازپرداخت دریافت کند. عوامل زیادی میتوانند در این فرآیند دخیل باشند، اما بیایید آن را به عوامل خاص این فرآیند و عوامل عمومی که میتوانند در فرآیندهای دیگر استفاده شوند تقسیم کنیم.
عوامل خاص فرآیند بازپرداخت:
در زیر برخی از عواملی که میتوانند در فرآیند بازپرداخت دخیل باشند آورده شده است:
عوامل عمومی:
این عوامل میتوانند در بخشهای دیگر کسبوکار شما استفاده شوند.
عوامل زیادی در بالا ذکر شدند، هم برای فرآیند خاص بازپرداخت و هم برای عوامل عمومی که میتوانند در بخشهای دیگر کسبوکار شما استفاده شوند. امیدواریم این موضوع به شما ایدهای بدهد که چگونه میتوانید تصمیم بگیرید کدام عوامل را در سیستم چندعاملی خود استفاده کنید.
طراحی یک سیستم چندعاملی برای فرآیند پشتیبانی مشتری. عوامل درگیر در فرآیند، نقشها و مسئولیتهای آنها، و نحوه تعامل آنها با یکدیگر را شناسایی کنید. عوامل خاص مربوط به فرآیند پشتیبانی مشتری و همچنین عوامل عمومی که میتوانند در بخشهای دیگر کسبوکار شما استفاده شوند را در نظر بگیرید.
قبل از خواندن راهحل زیر کمی فکر کنید، ممکن است به عوامل بیشتری نسبت به آنچه فکر میکنید نیاز داشته باشید.
TIP: به مراحل مختلف فرآیند پشتیبانی مشتری فکر کنید و همچنین عوامل مورد نیاز برای هر سیستم را در نظر بگیرید.
سؤال: چه زمانی باید استفاده از چندعامل را در نظر بگیرید؟
در این درس، ما الگوی طراحی چندعاملی را بررسی کردیم، از جمله سناریوهایی که در آنها چندعامل قابل استفاده است، مزایای استفاده از چندعامل نسبت به یک عامل منفرد، اجزای اصلی پیادهسازی الگوی طراحی چندعاملی، و چگونگی داشتن دید به نحوه تعامل عوامل متعدد با یکدیگر.
به دیسکورد Azure AI Foundry بپیوندید تا با دیگر یادگیرندگان ملاقات کنید، در ساعات اداری شرکت کنید و پاسخ سؤالات خود درباره عوامل هوش مصنوعی را دریافت کنید.
سلب مسئولیت:
این سند با استفاده از سرویس ترجمه هوش مصنوعی Co-op Translator ترجمه شده است. در حالی که ما برای دقت تلاش میکنیم، لطفاً توجه داشته باشید که ترجمههای خودکار ممکن است شامل خطاها یا نادقتیها باشند. سند اصلی به زبان اصلی آن باید به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حساس، ترجمه حرفهای انسانی توصیه میشود. ما هیچ مسئولیتی در قبال سوءتفاهمها یا تفسیرهای نادرست ناشی از استفاده از این ترجمه نداریم.