وقتی چند ایجنت عمومی را در یک گروه گفتگو کنار هم میگذارید، نتیجه اغلب تکرار کدهای متوسط و تاییدهای بیفایده است. افزودن تعداد مدلها یا تکرار گفتگوها کیفیت نهایی را تغییر نمیدهد؛ راهحل واقعی، تفکیک دقیق وظایف و تخصیص نقشهای متمایز است.
در معماریهای مدرن چندایجنتی، تفکیک نقشها به چهار جزء اصلی برنامهریز (Planner)، مجری (Executor)، ناقد (Critic) و اعتبارسنج (Verifier) باعث میشود سیستم بهجای حدسهای تصادفی، به یک پایپلاین مهندسیشده تبدیل شود. تکیهگاه اصلی این زنجیره، اعتبارسنجی قطعی و مبتنی بر کد است که جلوی توهم مدلهای زبانی را میگیرد.
کدها و منطق پیادهسازی این درس کاملاً سبک هستند و برای اجرای تستها نیازی به GPU یا زیرساختهای ابری سنگین ندارید. همچنین در صورت استفاده از API مدلهای زبانی در ایران، تنظیم یک کلاینت سازگار با OpenAI یا استفاده از گیتویهای ارائهدهندهی دسترسی برای اجرای این پایپلاینها کافی خواهد بود.
رایجترین شیوهی تفکیک وظایف در سیستمهای چندایجنتی سال 2026 این است: یک ایجنت برنامهریزی میکند، یکی اجرا میکند و یکی وظیفهی نقد یا اعتبارسنجی را بر عهده میگیرد. مقاله MetaGPT (arXiv:2308.00352) این ساختار را در قالب دستورالعملهای استاندارد عملیاتی (SOP) که درون پرامپت نقشها کدنویسی شدهاند، صورتبندی میکند: مدیر محصول، معمار، مدیر پروژه، مهندس و مهندس تضمین کیفیت (QA)؛ بر اساس قاعدهی Code = SOP(Team). پروژهی ChatDev (arXiv:2307.07924) نقشهای طراح، برنامهنویس، بازبین و تستر را از طریق یک «زنجیرهی گفتوگو» زنجیر میکند و برای رفع توهم از «حذف ارتباطی توهم» (communicative dehallucination) بهره میگیرد (ایجنتها جزئیات جاافتاده را صریحاً درخواست میکنند). در این میان، مدل اعتبارسنج (verifier) تکیهگاه اصلی است: جمیری و همکاران در چارچوب MAST (arXiv:2503.13657) نشان میدهند که ریشهی تکتک شکستهای سیستمهای چندایجنتی به نبود یا نقص سازوکار اعتبارسنجی بازمیگردد. شرکت PwC نیز گزارش داده که افزودن حلقههای اعتبارسنجی ساختاریافته در CrewAI دقت را 7 برابر کرده است (از 10% به 70%).
صورت مسئله
سیستمهای چندایجنتی عمومی، خروجیهای معمولی تولید میکنند. اگر سه برنامهنویس را در یک گروه چت بگذارید، سه روایت مختلف از همان کد متوسط را تحویل میدهند. میتوانید ایجنتهای بیشتری اضافه کنید و دورهای گفتوگو را افزایش دهید، اما همچنان از آستانهی (threshold) کیفیت عبور نکنید.
راهحل، افزایش تعداد ایجنتها نیست؛ بلکه استفاده از ایجنتهای متفاوت است. نقشهای متمایز تعریف کنید. به ناقد ابزارهایی بدهید که برنامهریز در اختیار ندارد. برای مدل اعتبارسنج هم یک مجموعهتست عینی و قطعی فراهم کنید. حالا سیستم بهجای حدسهای موازی، به اختلافنظر داخلی همراه با اصلاحات مبتنی بر شواهدِ عینی مجهز میشود.
مفاهیم اصلی
چهار نقش بنیادین
برنامهریز (Planner). هدف را بررسی میکند و فهرست مراحل یا مشخصات فنی (spec) میسازد. ابزارها: بازیابی دانش، مستندات. خروجی: برنامهی ساختاریافته.
مجری (Executor). مراحل برنامه را یکییکی پیش میبرد و دستسازه (artifact) را تولید میکند. ابزارها: ابزارهای کاری واقعی (کامپایلر کد، شل سیستمعامل، کلاینت API). خروجی: دستسازه.
ناقد (Critic). خروجی مجری را با نیت (intent) برنامهریز میسنجد. ابزارها: دسترسی فقطخواندنی به دستسازه، تحلیل ایستا. خروجی: تایید یا رد همراه با دلایل.
مدل اعتبارسنج (Verifier). دستسازه را بررسی و یک آزمون قطعی (deterministic) روی آن اجرا میکند. ابزارها: ابزار اجرای آزمون (test runner)، تحلیلگر نوع داده (type checker)، اعتبارسنج طرحواره (schema validator). خروجی: قبولی یا رد به همراه شواهد (evidence).
ناقد نقشی ذهنی، سلیقهای و معمولاً مبتنی بر مدل زبانی است. مدل اعتبارسنج نقشی عینی، قطعی و اغلب مبتنی بر کد دارد. این دو یکی نیستند.
الگوی SOP در MetaGPT
پروژهی MetaGPT (arXiv:2308.00352) رویههای استاندارد مهندسی نرمافزار را در قالب پرامپت نقشها پیاده میکند:
- مدیر محصول (Product Manager) سند نیازمندیهای محصول (PRD) را مینویسد.
- معمار (Architect) طراحی سیستم را انجام میدهد.
- مدیر پروژه (Project Manager) وظایف (tasks) را تقسیم میکند.
- مهندس (Engineer) کد را پیادهسازی میکند.
- مهندس تضمین کیفیت (QA Engineer) تستها را اجرا میکند.
هر نقش یک طرحوارهی ورودی و خروجی کاملاً صلب دارد. پرامپت نقش دقیقاً میگوید که این نقش چیست و چه خروجیای باید تولید کند. فرمول Code = SOP(Team) به همین معناست: رویههای استاندارد قطعی، تیمی از مدلهای زبانی را به یک پایپلاین (pipeline) پیشبینیپذیر تبدیل میکنند.
حذف ارتباطی توهم در ChatDev
پروژهی ChatDev یک حرکت کلیدی اضافه میکند: وقتی مجری به جزئیات مشخصی نیاز دارد که در برنامه نیامده است، پیش از ادامهی کار صریحاً آن را از طراح میپرسد. این کار مانع از خطای کلاسیک مدلهای زبانی میشود؛ یعنی سرهمکردن اطلاعات با ظاهری فریبنده و موجه.
نحوهی پیادهسازی: در پرامپت نقش قید میشود: «هر زمان به اطلاعات مشخصی نیاز داشتی که به تو داده نشده است، پیش از تولید خروجی، آن را صریحاً و با ذکر نام از نقش مربوطه بپرس.»
چرا مدل اعتبارسنج از همه مهمتر است؟
جمیری و همکاران (در پژوهش MAST) علل 1642 مورد شکست در اجرای سیستمهای چندایجنتی را ردگیری کردند. 21.3% از آنها به شکافهای اعتبارسنجی مربوط میشد؛ یعنی سیستم پاسخی را تحویل داده بود که هیچکس آن را بررسی نکرده بود. 79% باقیمانده نیز اغلب به این برمیگشت که «بررسی مشخصی بیصدا با شکست مواجه شده یا اصلاً اجرا نشده بود». اعتبارسنجی ستون اصلی و تکیهگاه سیستم است.
شرکت PwC در سال 2025 (در پیادهسازیهای عملیاتی CrewAI) گزارش داد که افزودن یک حلقهی اعتبارسنجی ساختاریافته، دقت را از 10% به 70% رساند؛ یعنی 7 برابر بهبود، تنها از جانب یک نقش.
ناقد در برابر مدل اعتبارسنج
- ناقد یک مدل زبانی است که کیفیت دستسازه را بررسی میکند؛ قضاوتی ذهنی دارد و ممکن است فریب متنی ظاهرپسند اما نادرست را بخورد.
- مدل اعتبارسنج یک برنامهی قطعی است که روی دستسازه اجرا میشود؛ قضاوتی عینی دارد و نتیجهی قبولی یا رد را همراه با شواهد مستند برمیگرداند.
از هر دو استفاده کنید. ناقد ایرادهای مربوط به سبک و سلیقه را میگیرد که مدل اعتبارسنج متوجه آنها نمیشود. مدل اعتبارسنج هم باگهایی را شکار میکند که ناقد نمیبیند، زیرا این خطاها فقط در محیط اجرا (runtime) خود را نشان میدهند.
پادالگو (Anti-pattern)
تمام نقشهای سیستم شما مدل زبانی باشند و خروجی همهی آنها «به نظر من خوب است» باشد. این، حالت شکست کلاسیک در MAST است. دستکم یک مدل اعتبارسنج بگذارید که قبولی یا رد کار را با اجرای کد تعیین کند، نه با قضاوت یک مدل زبانی.
نگاشت به فریمورکها
- CrewAI — کلاس
Agent(role, goal, backstory)ابزار اصلی و استاندارد برای تخصصیسازی نقشها است. - LangGraph — گرهها پرامپتهای اختصاصی میگیرند و یالها جریان پایپلاین را تحمیل میکنند.
- AutoGen — کلاسهای ConversableAgentِ ویژهی هر نقش با نامهای تککلمهای در یک GroupChat.
- OpenAI Agents SDK — ابزارهای دستبهدستکردن وظیفه (handoff tools) میان ایجنتهای تخصصی.
پیادهسازی
فایل code/main.py یک پایپلاین 4 نقشه برای ساخت یک تابع سادهی پایتونی را پیادهسازی میکند:
- برنامهریز مشخصات فنی میسازد.
- مجری رشتهی کد را تولید میکند.
- ناقد (شبیهسازیشده با مدل زبانی) ایرادهای واضح را مشخص میکند.
- مدل اعتبارسنج کد تولیدشده را در یک ساندباکس (sandbox) با دستور
execدر برابر یک تست بررسی میکند.
این دمو دو بار اجرا میشود: یک بار که مجری کد درستی مینویسد (ناقد و مدل اعتبارسنج هر دو تایید میکنند) و یک بار که مجری کدی مغایر با مشخصات فنی مینویسد (ناقد متوجه باگ نمیشود چون ظاهر موجهی دارد، اما مدل اعتبارسنج آن را شکار میکند چون تست رد میشود).
اجرا:
python3 code/main.py
استفاده از ابزار
فایل outputs/skill-role-designer.md یک وظیفه را میگیرد و فهرست نقشها (3 تا 5 نقش)، طرحوارهی ورودی/خروجی هر نقش و تستِ مدل اعتبارسنج را تحویل میدهد. پیش از متصلکردن ایجنتها به یک فریمورک، از این ابزار استفاده کنید.
تحویل به پروداکشن
چکلیست:
- حداقل یک مدل اعتبارسنج قطعی. هرگز تمام کار را به مدلهای زبانی نسپارید.
- طرحوارهی صریح ورودی/خروجی برای هر نقش. برنامهریز بهجای متن ساده، مشخصات فنی ساختاریافته برمیگرداند؛ مجری نیز همان طرحواره را میخواند.
- حذف ارتباطی توهم. مجری باید هنگام کمبود اطلاعات، آن را از برنامهریز بپرسد؛ هرگز اطلاعات سرهم نکنید.
- ترتیب ناقد و مدل اعتبارسنج. اول ناقد را اجرا کنید (کمهزینه است و مشکلات طراحی را میگیرد)، سپس مدل اعتبارسنج را اجرا کنید (کندتر است و باگها را درمیآورد).
- سقف بودجه حلقه (Loop budget). پیش از ارجاع کار به انسان، حداکثر 2 دور بازنگری میان ناقد و مجری در نظر بگیرید.
تمرینها
- فایل
code/main.pyرا اجرا کنید و ببینید مدل اعتبارسنج چطور باگی را که ناقد ندیده بود شکار میکند. یک بررسی تحلیل ایستا (شمارش دفعات تکرارreturn) به عنوان مدل اعتبارسنج اضافه کنید. این بررسی چه خطاهایی را پیدا میکند که تست محیط اجرا متوجه آنها نمیشود؟ - نقش پنجمی اضافه کنید: «تحلیلگر نیازمندیها» که خواستهی کاربر را به مشخصات فنی آماده برای برنامهریز تبدیل کند. چه درخواستهایی برای حذف ارتباطی توهم باید به این نقش فرستاده شوند؟
- بخش 3 («Agents») مقاله MetaGPT را بخوانید. طرحوارهی ورودی/خروجی هر یک از 5 نقش MetaGPT را فهرست کنید.
- نمودار زنجیرهی گفتوگو در پروژهی ChatDev را ببینید (تصویر شماره 3 در مقاله arXiv:2307.07924). مشخص کنید حذف ارتباطی توهم در چه نقطهای حلقهای را که ممکن بود تا بینهایت ادامه پیدا کند میشکند.
- رشد 7 برابری دقت در گزارش PwC نتیجهی حلقههای اعتبارسنجی بود. سه وظیفه فرض کنید که افزودن مدل اعتبارسنج کمکی به آنها نمیکند؛ یعنی جاهایی که بررسی قطعی درستی کار غیرممکن است یا هزینهی بسیار سنگینی دارد.
اصطلاحات کلیدی
| اصطلاح | در گفتوگوها چه میگویند | معنای واقعی چیست |
|---|---|---|
| تخصصیسازی نقش (Role specialization) | «ایجنتهای متفاوت، کارهای متفاوت» | پرامپتهای سیستمی متمایز که مشخصاً برای نقشهای برنامهریز، مجری، ناقد و مدل اعتبارسنج تنظیم شدهاند. |
| الگوی SOP (SOP pattern) | «دستورالعمل عملیاتی استاندارد کدنویسیشده» | دیدگاه MetaGPT: طرحوارههای ورودی/خروجی سختگیرانه برای هر نقش، یک تیم را به یک پایپلاین پیشبینیپذیر تبدیل میکنند. |
| حذف ارتباطی توهم (Communicative dehallucination) | «پیش از بافتن اطلاعات، سؤال بپرس» | الگوی ChatDev: مجری بهجای از خود درآوردن جزئیات جاافتاده، آنها را مستقیماً از برنامهریز میپرسد. |
| ناقد (Critic) | «بازبین مبتنی بر مدل زبانی» | ارزیاب ذهنی و سلیقهمحور. مسائل کیفی و نگارشی را میگیرد، اما ممکن است فریب کلمات موجه را بخورد. |
| مدل اعتبارسنج (Verifier) | «بررسی قطعی» | بررسی قبولی/رد مبتنی بر کد. ابزار اجرای آزمون، بررسیکنندهی نوع داده، اعتبارسنج طرحواره. فریب نمیخورد. |
| شکاف اعتبارسنجی (Verification gap) | «هیچکس بررسی نکرد» | ریشهی 21.3% از شکستهای MAST؛ پاسخی به عنوان خروجی نهایی تحویل شده بدون اینکه آزمونی برای کشف باگ آن اجرا شده باشد. |
| حلقهی بازنگری (Revision loop) | «ناقد کار را پس فرستاد» | رد خروجی توسط ناقد که باعث اجرای دوبارهی مجری همراه با دریافت بازخورد میشود. این بخش به سقف بودجه نیاز دارد. |
| پادالگوی تماماً مبتنی بر LLM (All-LLM anti-pattern) | «به نظر من خوب است» | همهی نقشها مدل زبانی باشند و هیچ بررسی قطعی کدی وجود نداشته باشد؛ الگوی کلاسیک شکستهای MAST. |
برای مطالعهی بیشتر
- Hong et al. — MetaGPT: Meta Programming for Multi-Agent Collaboration — مقالهی مرجع تبدیل رویههای استاندارد (SOP) به پرامپت نقش
- Qian et al. — Communicative Agents for Software Development (ChatDev) — زنجیرهی گفتوگو و حذف ارتباطی توهم
- Cemri et al. — Why Do Multi-Agent LLM Systems Fail? — ردهبندی خطاهای MAST؛ شکافهای اعتبارسنجی عامل 21.3% از شکستها هستند
- مستندات CrewAI — نقش ایجنتها — رابط پیادهسازی مشخصات نقش در محیط عملیاتی (پروداکشن)
