پرامپت‌نویسی زنجیره‌ تفکر

 Chain-of-Thought Prompting

پرامپت‌نویسی زنجیره‌ تفکر (CoT) که توسط Wei و همکاران در سال 2022 معرفی شده، به ما کمک می‌کنه تا با استفاده از مراحل میانی استدلال بتونیم استدلال‌های پیچیده‌تری انجام بدیم. می‌تونین از این روش کنار روش چند نمونه‌ای استفاده کنین تا نتایج بهتری در کارهای پیچیده‌ای که نیاز به استدلال دارند، بگیرین.

پرامپت زنجیره‌ تفکر COT

پرامپت:

مجموع عددهای فرد این گروه یک عدد زوج است: 4، 8، 9، 15، 12، 2، 1.

پاسخ: اگر همه عددهای فرد (9، 15، 1) را جمع بزنیم، 25 می‌شود. پس جواب درست نیست.

مجموع عددهای فرد این گروه یک عدد زوج است: 17، 10، 19، 4، 8، 12، 24.

پاسخ: اگر همه اعداد فرد (17، 19) رو جمع کنید، به 36 می‌رسید. جواب درست است.

مجموع عددهای فرد این گروه یک عدد زوج است: 16، 11، 14، 4، 8، 13، 24.

پاسخ: اگر همه اعداد فرد (11، 13) رو جمع کنی، به 24 می‌رسید. جواب درست است.

مجموع عددهای فرد این گروه یک عدد زوج است: 17، 9، 10، 12، 13، 4، 2.

پاسخ: اگر همه اعداد فرد (17، 9، 13) رو جمع کنید، به 39 می‌رسید. جواب اشتباه است.

مجموع عددهای فرد این گروه یک عدد زوج است: 15، 32، 5، 13، 82، 7، 1.

پاسخ:

خروجی:

اگر همه اعداد فرد (15، 5، 13، 7، 1) رو جمع کنی، می‌رسید به 41. جواب اشتباه است.

واو! وقتی مرحله‌های استدلال رو ارائه می‌دیم، نتیجه فوق‌العاده‌ای به‌دست میاریم. در واقع، می‌تونیم این کار رو حتی با ارائه مثال‌های کمتری هم انجام بدیم، یعنی فقط یک مثال کافی به نظر می‌رسه:

پرامپت:

مجموع اعداد فرد این گروه عددی زوج است: ۴، ۸، ۹، ۱۵، ۱۲، ۲، ۱.

پاسخ: جمع کردن تمام اعداد فرد (۹، ۱۵، ۱)، ۲۵میشه. جواب نادرست است.

مجموع اعداد فرد در این گروه عددی زوج است: ۱۵، ۳۲، ۵، ۱۳، ۸۲، ۷، ۱.

پاسخ:

خروجی:

جمع تمام اعداد فرد (۱۵، ۵، ۱۳، ۷، ۱) ، ۴۱ می‌شود . جواب نادرست است.

نویسندگان می‌گن که این یک توانایی نوظهوره که با مدل‌های بزرگ زبانی به وجود اومده.

زنجیره تفکر بدون نمونه Zero-shot COT Prompting

ایده‌ای که اخیراً مطرح شده، به نام “CoT بدون نمونه” هست که میشه اضافه کردن عبارت “بیایید قدم به قدم فکر کنیم” یا “Let’s think step by step” به سوال اصلی. بذارین یک سوال ساده رو امتحان کنیم و ببینیم مدل چطور عمل می‌کنه:

پرامپت:

من به بازار رفتم و 10 سیب خریدم. 2 تا سیب به همسایه دادم و 2 تا هم به تعمیرکار. بعد رفتم 5 سیب دیگه خریدم و 1 دونه‌شو خوردم. حالا چند تا سیب برام مونده؟

خروجی:

11 سیب

پاسخ اشتباهه! حالا با اون عبارت خاص امتحان می‌کنیم. 

من رفتم بازار و 10 تا سیب خریدم. 2 تا سیب به همسایه دادم و 2 تا هم به تعمیرکار. بعدش 5 تا سیب دیگه خریدم و 1 تا هم خوردم. حالا ببینیم چند تا سیب دارم.

قدم به قدم فکر کنیم:

خروجی:

اول، تو 10 تا سیب داشتی.

2 تا سیب به همسایه دادی و 2 تا هم به تعمیرکار، پس 6 تا سیب برات موند.

بعد 5 تا سیب دیگه خریدی، حالا تو 11 تا سیب داری.

در آخر، 1 تا سیب خوردی، پس حالا 10 تا سیب برات می‌مونه.

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

زنجیره تفکر خودکار (Auto-CoT)

وقتی داریم از روش “زنجیره تفکر” با مثال‌های عملی استفاده می‌کنیم، باید مثال‌های مؤثر و متنوعی رو به‌طور دستی درست کنیم. این کار ممکنه منجر به نتایج خوبی نشه. Zhang و همکارانش (2022) یه روشی رو پیشنهاد دادن که بتونه این کار دستی رو کم کنه.

در این روش از مدل‌های بزرگ زبان (LLMs) استفاده می‌کنن و از جمله “بیایید قدم به قدم فکر کنیم” برای تولید زنجیره‌های استدلال به‌صورت خودکار استفاده می‌کنن. اما هنوز ممکنه این زنجیره‌ها اشتباهاتی داشته باشن. برای کاهش تأثیر این اشتباهات، تنوع نمونه‌ها خیلی مهمه. این روش به نام Auto-CoT، سوالاتی با تنوع انتخاب می‌کنه و زنجیره‌های استدلال رو تولید می‌کنه تا بتونه نمونه‌ها رو بسازه.