فاز 16 · درس 7

جامعه ذهن و مناظره چندایجنت در مدل‌های زبانی

نوع
مفهومی و ساختنی
زمان
حدود 60 دقیقه
زبان‌ها
Python (stdlib)
پیش‌نیاز
فاز 16 · 04 (مدل ابتدایی)
چند چراغ مطالعه روی یک میز چوبی مدور که نور هرکدام روی نقشه یا متنی متمرکز شده و با هم تلاقی دارند
فهرست مطالب
  1. صورت مسئله
  2. مفاهیم پایه
  3. الگوریتم دو و همکاران (2023)
  4. دو اهرم مستقل
  5. چرا جواب می‌دهد؟
  6. مناظره‌ی ناهمگن
  7. NLSOM — توسعه به جامعه‌ی 129 ایجنتی
  8. حالت‌های شکست
  9. پیاده‌سازی عملی
  10. استفاده در عمل
  11. استقرار در محیط عملیاتی
  12. تمرین‌ها
  13. اصطلاحات کلیدی
  14. برای مطالعه‌ی بیشتر

یکی از چالش‌های همیشگی در پیاده‌سازی سیستم‌های مبتنی بر مدل‌های زبانی، محدودیت روش‌های ساده‌ای مثل خودسازگاری (Self-Consistency) است. وقتی از یک مدل چندین بار خروجی می‌گیرید و رأی اکثریت را مبنا قرار می‌دهید، مدل به دلیل خطاهای همبسته ممکن است با اطمینان کامل به پاسخی غلط رأی دهد. افزایش تعداد نمونه‌ها نیز پس از نقطه‌ای مشخص، هیچ بهبود کیفی ایجاد نمی‌کند.

الگوریتم مناظره چندایجنت (Multi-Agent Debate) با الهام از نظریه‌ی جامعه‌ی ذهن ماروین مینسکی، این بن‌بست را برطرف می‌کند. در این رویکرد، چند ایجنت مستقل استدلال‌های یکدیگر را در چند دور بررسی، نقد و اصلاح می‌کنند تا به اجماع برسند؛ فرآیندی که همبستگی خطاها را کاهش داده و دقت مدل را روی مسائل پیچیده‌ی استدلالی بالا می‌برد.

اگر از ایران برای توسعه‌ی سیستم‌های چندایجنت به API سرویس‌های خارجی مانند OpenAI وصل می‌شوید، توجه داشته باشید که ضرب شدن تعداد دورها در تعداد ایجنت‌ها هزینه و حجم تبادل داده را به‌شدت بالا می‌برد. با توجه به چالش پرداخت‌های ارزی، شناخت دقیق سقف بهینه‌ی دورها و استفاده از مدل‌های کوچک‌تر یا گیت‌وی‌های واسط کمک می‌کند سیستم را بهینه‌تر مستقر کنید.

فرض‌پایه‌ی (Premise) سال 1986 مینسکی — هوش یعنی جامعه‌ای از متخصصان — هر دهه دوباره کشف می‌شود. در سال 2023، دو و همکارانش آن را به الگوریتمی ملموس تبدیل کردند: چند نمونه از LLM پاسخ‌هایی پیشنهاد می‌دهند، پاسخ‌های یکدیگر را می‌خوانند، نقد می‌کنند و به‌روزرسانی می‌شوند. طی N دور، آن‌ها به اجماعی می‌رسند که روی شش وظیفه‌ی استدلال و صحت فکت‌ها، زنجیره‌ی تفکر (CoT) صفرشات و خودبازاندیشی (Reflection) را شکست می‌دهد. دو یافته اهمیت دارند: هم چند ایجنت و هم چند دور به‌صورت مستقل اثرگذارند. جامعه بر تک‌گویی یک ایجنت واحد غلبه می‌کند؛ تبادل چنددوره‌ای نیز از رأی‌گیری تک‌مرحله‌ای پیشی می‌گیرد.

صورت مسئله

خودسازگاری (Self-Consistency) — یعنی از یک مدل بارها نمونه بگیریم و پاسخ اکثریت را انتخاب کنیم — کم‌هزینه‌ترین روشی است که برای تقویت استدلال می‌توانید اضافه کنید. این روش جواب می‌دهد، اما خیلی زود به اشباع (Saturation) می‌رسد؛ ممکن است تعداد نمونه‌ها را دو برابر کنید و هیچ جهش معنادار دیگری نبینید.

مناظره این بن‌بست اشباع را می‌شکند. به‌جای N نمونه‌ی مستقل از یک مدل، N ایجنت استدلال‌های یکدیگر را می‌خوانند و اصلاح می‌کنند. همبستگی میان نمونه‌ها افت می‌کند (دیگر مستقل با توزیع یکسان یا i.i.d. نیستند) و نقطه‌ی همگرایی اغلب در جایی به درستی شکل می‌گیرد که رأی‌گیریِ i.i.d. با قاطعیت در اشتباه بود.

مفاهیم پایه

الگوریتم دو و همکاران (2023)

برگرفته از arXiv:2305.14325 (کنفرانس ICML 2024):

  1. هر یک از N ایجنت پاسخی اولیه به سؤال تولید می‌کند.
  2. در دور r = 2..R: به هر ایجنت پاسخ‌های دور r-1 سایر ایجنت‌ها نشان داده می‌شود و درخواست می‌شود: «با در نظر گرفتن این موارد، پاسخ بازنگری‌شده‌ی خود را ارائه دهید.»
  3. پس از R دور، با رأی اکثریت پاسخ نهایی انتخاب می‌شود.

این مقاله الگوریتم را روی بنچ‌مارک‌های MMLU ،GSM8K، زندگی‌نامه‌ها، MATH و صحت فکت‌ها آزمایش کرده است. مناظره به‌طور پیوسته بر CoT و خودبازاندیشی غلبه می‌کند.

دو اهرم مستقل

آزمون‌های مقایسه‌ای سیستماتیک (Ablations) در همین مقاله نشان می‌دهند:

  • تنها تعداد ایجنت‌ها (1 دور، رأی اکثریت از N ایجنت) در بیشتر وظایف، مدل تک‌ایجنتی را شکست می‌دهد، اما به فلات (رشد ایستا) می‌رسد.
  • تنها تعداد دورها (1 ایجنت که استدلال‌های پیشین خودش را می‌بیند) اثر ناچیزی دارد — که همان ضعف شناخته‌شده‌ی خودبازاندیشی است.
  • ترکیب هر دو جهش‌های بزرگ ایجاد می‌کند. این تبادل چنددوره‌ای میان چند ایجنت است که رشد کارایی را هدایت می‌کند.

چرا جواب می‌دهد؟

دو سازوکار در این امر دخیل است:

  1. مواجهه با اختلاف‌نظر. وقتی ایجنتی زنجیره‌ی استدلال ایجنت دیگری با نتیجه‌گیری متفاوتی را می‌بیند، باید یا از موضعش دفاع کند یا آن را به‌روزرسانی کند. در هر دو حالت، کانتکست برای دور r+1 غنی‌تر از دور r خواهد بود.
  2. کاهش خطاهای همبسته. در خودسازگاری، همه‌ی نمونه‌ها از یک مدل واحد می‌آیند، بنابراین خطاهایشان با هم همبستگی دارند — در نتیجه روی پاسخی کاملاً اشتباه با اطمینان بالا میانگین‌گیری می‌کنید. مدل‌های مختلف یا سیدهای (seeds) مختلف این همبستگی را می‌شکنند. زاویه‌های دید مناظره‌شده‌ی گوناگون، همبستگی را باز هم بیشتر کاهش می‌دهند.

مناظره‌ی ناهمگن

پژوهش A-HMAD و کارهای پس از آن از مدل‌های پایه‌ی متفاوت برای ایجنت‌های مختلف استفاده می‌کنند. مناظره‌ی Llama + Claude + GPT باعث کاهش فروپاشی ناشی از تک‌کِشتی (تک‌فرهنگی، درس 26) می‌شود، چرا که خطاهای همبسته‌ی یک خانواده از مدل‌ها با دیگری مشترک نیست.

نقطه‌ی ضعف: شرکتِ مدلی ضعیف در مناظره می‌تواند اجماع را به سمت پاسخ اشتباه خود بکشاند (به مقاله‌ی «Should we be going MAD?‎»، به شناسه‌ی arXiv:2311.17371 مراجعه کنید).

NLSOM — توسعه به جامعه‌ی 129 ایجنتی

ژوگه و همکاران («Mindstorms in Natural Language-Based Societies of Mind»، به شناسه‌ی arXiv:2305.17066) این ایده را تا جوامعی متشکل از 129 عضو مقیاس دادند. نتیجه: تخصص‌گرایی و خودسازمان‌دهی با مقیاس ظهور می‌کنند و سیستم در وظایفی مانند پاسخ‌گویی تصویری به سؤالات (Visual Question Answering)، مدل تک‌ایجنتی را پشت سر می‌گذارد.

حالت‌های شکست

  • آبشار تملق (Sycophancy cascade). همه‌ی ایجنت‌ها تسلیم ایجنتی می‌شوند که با اعتمادبه‌نفس بیشتری صحبت می‌کند. مناظره به نفع پرصداترین ایجنت فرو می‌پاشد. پرامپت‌نویسی با نقش‌های تقابلی («یک ایجنت باید حتماً موضع مخالف را پی بگیرد») این مشکل را کاهش می‌دهد.
  • انحراف از موضوع. مناظره‌هایی که دورهای زیادی دارند، از سؤال اصلی منحرف می‌شوند. راهکار: سؤال را در هر دور دوباره تزریق کنید.
  • انفجار بار محاسباتی. N ایجنت × R دور = N·R فراخوانی LLM، که کانتکست هر کدام مدام بزرگ‌تر می‌شود. یک مناظره‌ی 5 ایجنتی در 5 دور یعنی 25 فراخوانی با کانتکست رو به افزایش. هزینه‌ی هر سؤال می‌تواند به بیش از 10 برابر یک فراخوانی ساده‌ی CoT برسد.
مناظره چندایجنتدورها را بکشید
MULTI-AGENT DEBATEIn debate, several agents answer independently, then read each other transcripts and revise across rounds. Disagreement forces each to defend or correct its reasoning, and the positions usually converge toward a better shared answer. The first one or two rounds capture most of the accuracy gain; beyond that the agents agree and extra rounds mostly burn tokens.پاسخایجنت Aایجنت B
در مناظره، چند ایجنت به‌طور مستقل پاسخ می‌دهند، سپس متن صحبت‌های یکدیگر را می‌خوانند و در طول دورها دیدگاه خود را بازبینی می‌کنند. اختلاف‌نظر هر کدام را وادار به دفاع یا تصحیح استدلالش می‌کند و مواضع معمولاً به سمت یک پاسخ مشترک بهتر همگرا می‌شوند. یک یا دو دور اول بیشترین میزان افزایش دقت را رقم می‌زنند؛ فراتر از آن ایجنت‌ها به توافق می‌رسند و دورهای اضافی بیشتر توکن‌ها را هدر می‌دهند.

پیاده‌سازی عملی

فایل code/main.py یک مناظره‌ی 3 ایجنتی در 3 دور را روی سؤالی ریاضی اجرا می‌کند که در آن هر ایجنت کارش را با پاسخی متفاوت (و احتمالاً اشتباه) آغاز می‌کند. ایجنت‌ها اسکریپت‌شده هستند — هر کدام با میانگین‌گیریِ وزن‌دار بر اساس اطمینانِ تعیین‌شده از پاسخ همسایگانش، پاسخ خود را «به‌روزرسانی» می‌کند. همگرایی به‌وضوح در لاگ دوربه‌دور مشخص است.

این دمو دو اثر کلیدی را نشان می‌دهد:

  • یک دور تبادل، ایجنت‌ها را به پاسخ درست نزدیک‌تر می‌کند.
  • دورهای اضافه بعد از دور 2 بازده نزولی نشان می‌دهند (منطبق بر فلات مقاله‌ی دو و همکاران).

اجرا:

python3 code/main.py

استفاده در عمل

فایل outputs/skill-debate-configurator.md یک مناظره را برای وظیفه‌ای جدید پیکربندی می‌کند: تعداد ایجنت‌ها، تعداد دورها، ناهمگنی (مدل یکسان در برابر مدل‌های ترکیبی) و تخصیص نقش‌ها (متقارن در برابر یک ایجنت تقابلی). همچنین پیش از اجرا، هزینه‌ی توکن را برآورد می‌کند.

استقرار در محیط عملیاتی

اگر مناظره را در محیط پروداکشن پیاده می‌کنید:

  • سقف دورها را روی 3 بگذارید. دو و همکاران نشان دادند که 3 دور بخش اعظم بهره‌وری را تأمین می‌کند. دورهای بیشتر صرفاً هزینه است، نه افزایش کیفیت.
  • سقف ایجنت‌ها را روی 5 بگذارید. فراتر از 5، تورم کانتکست و هزینه غالب می‌شود.
  • پیش‌فرض را بر ناهمگنی بگذارید. حداقل از دو مدل پایه‌ی متفاوت در مجموعه‌ی خود استفاده کنید.
  • جایگاه تقابلی اختصاص دهید. به یک ایجنت پرامپت دهید که در هر صورت مخالفت کند. این کار آبشار تملق را می‌شکند.
  • همه‌ی دورها را لاگ کنید. سیستم‌های مناظره‌ای که دورهای میانی را پنهان می‌کنند، قابل اشکال‌زدایی یا بازرسی نخواهند بود.

تمرین‌ها

  1. کد code/main.py را اجرا کنید، سپس تعداد دورها را روی 5 بگذارید و کاهش بازده را ببینید. در کدام دور همگراییِ بیشتر متوقف می‌شود؟
  2. یک ایجنت چهارم با نقش تقابلی اضافه کنید: همیشه با اکثریت فعلی مخالفت کند. آیا این کار همگرایی را مختل می‌کند یا بهبود می‌بخشد؟
  3. امتیاز توافق در هر دور (نسبت ایجنت‌های هم‌رأی با پاسخ اکثریت) را رسم (یا چاپ) کنید. در چه نقطه‌ای به 1.0 می‌رسد و آیا این معادل «پاسخ درست» است؟
  4. بخش 4 مقاله‌ی دو و همکاران درباره‌ی آزمون‌های مقایسه‌ای سیستماتیک را بخوانید. نتایج حالت‌های «فقط ایجنت‌ها» در برابر «فقط دورها» در برابر «ترکیب هر دو» را با استفاده از این کد بازتولید کنید.
  5. مقاله‌ی «Should we be going MAD?‎» (شناسه‌ی arXiv:2311.17371) را بخوانید و دو نوع از ساختارهای مناظره را فراتر از نوبت‌گردشی (round-robin) فهرست کنید — مثل مناظره با هدایت داور، زنجیره‌ی مناظره، یا تقابلی.

اصطلاحات کلیدی

اصطلاح در گفتار عامیانه معنای دقیق فنی
جامعه‌ی ذهن (Society of Mind) «ایدۀ مینسکی» هوش به‌مثابه‌ی متخصصان در تعامل با هم؛ چارچوب سال 1986 که اکنون از طریق مناظره‌ی LLM عملیاتی شده است.
مناظره چندایجنت (Multi-agent debate) «ایجنت‌ها با هم بحث می‌کنند» N ایجنت پیشنهاد می‌دهند، یکدیگر را نقد می‌کنند، طی R دور بازنگری می‌کنند و با رأی اکثریت تصمیم می‌گیرند.
اجماع (Consensus) «با هم به توافق می‌رسند» لزوماً حقیقت معرفت‌شناختی نیست — صرفاً نسبت افراد بر سر پاسخ اکثریت است؛ می‌تواند با اطمینان بالا کاملاً اشتباه باشد.
دورها (Rounds) «مراحل تبادل نظر» یک دور = هر ایجنت پاسخ‌های دیگران را می‌خواند و یک بار پاسخ خود را به‌روزرسانی می‌کند.
مناظره‌ی ناهمگن (Heterogeneous debate) «ترکیب خانواده‌های مختلف مدل‌ها» به‌کارگیری مدل‌های پایه‌ی گوناگون برای شکستن همبستگی خطاها.
آبشار تملق (Sycophancy cascade) «همه با ایجنت پرسرصدا موافقت می‌کنند» نوعی شکست مناظره که در آن ایجنت‌ها بدون توجه به درستی گزاره، تسلیم ایجنتی می‌شوند که با اعتمادبه‌نفس بیشتری صحبت می‌کند.
سامانه‌ی NLSOM «جامعه‌ی 129 ایجنتی» جامعه‌ی ذهن بر پایه‌ی زبان طبیعی؛ نسخه‌ی مقیاس‌یافته‌ی ژوگه و همکاران.
خطای همبسته (Correlated error) «مدل یکسان، باگ یکسان» دلیل اشباع خودسازگاری؛ مناظره بین دیدگاه‌های مختلف این همبستگی را می‌شکند.

برای مطالعه‌ی بیشتر

سؤالات متداول

چرا مناظره چندایجنت بهتر از خودسازگاری (Self-Consistency) عمل می‌کند؟

در خودسازگاری، همه‌ی خروجی‌ها از یک مدل دریافت می‌شوند و خطاهای همبسته دارند. در مناظره، ایجنت‌ها با استدلال‌های متفاوت روبه‌رو می‌شوند و مجبورند موضع خود را بازنگری کنند که این امر خطاهای مشترک را خنثی می‌کند.

چند دور مناظره برای رسیدن به دقت مناسب در پروداکشن کافی است؟

بر اساس نتایج تجربی مقاله، سقف 3 دور مناظره بخش عمده‌ی بهره‌وری را تأمین می‌کند و اجرای بیش از 3 دور صرفاً هزینه‌ی توکن را بالا می‌برد بدون اینکه کیفیت خروجی افزایش یابد.

پدیده‌ی آبشار تملق (Sycophancy cascade) در مناظره چیست و چگونه رفع می‌شود؟

حالتی است که تمام ایجنت‌ها تسلیم ایجنتی می‌شوند که با اعتمادبه‌نفس بیشتری پاسخ داده است. اختصاص دادن یک نقش تقابلی (Adversarial) به یکی از ایجنت‌ها برای مخالفت مداوم، این چرخه را می‌شکند.

ما رو توی گوگل بیشتر ببین

با افزودن نکست ادمین به «منابع ترجیحی» گوگل، درس‌ها و مطالب ما را در بخش اخبار برتر جستجو بیشتر می‌بینید.