آموزشمدل‌های زبانی بزرگ (LLM)

درس ۵۴ از ۸۵، هوش مصنوعی، حدود ۱۰ دقیقه خواندن

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

جواب کوتاه

فکر کردن قدم به قدم (زنجیره‌ی فکر) یعنی مدل پیش از جواب آخر، قدم‌های میانی رو بنویسه. چون مدل متن رو تکه به تکه می‌سازه، هر قدمی که می‌نویسه زمینه‌ی قدم بعد می‌شه؛ مثل حساب کردن روی کاغذ به‌جای توی ذهن. توی پژوهش‌ها، این کار مدل‌های بزرگ رو در حساب و استدلال خیلی بهتر کرد؛ حتی یه جمله‌ی «بیا قدم به قدم فکر کنیم» دقت رو روی یه مجموعه از ۱۷٫۷ به ۷۸٫۷ درصد رسوند. برای مسئله‌های یک‌قدمی و مدل‌های کوچیک سود کمی داره.

یعنی چی

اگه یه‌دفعه جواب رو بخواید، مدل باید توی یه کلمه بهش برسه. اگه بگید قدم‌به‌قدم بنویس، روی کاغذ حساب می‌کنه.

خودتون رو فرض کنید. یکی ازتون می‌پرسه «۲۳ منهای ۲۰ به‌علاوه‌ی ۶ چند می‌شه؟» و فقط یه ثانیه وقت دارید. احتمالا درست می‌گید، ولی ممکنه قاطی کنید. حالا اگه بتونید روی کاغذ بنویسید «۲۳ منهای ۲۰ می‌شه ۳، به‌علاوه‌ی ۶ می‌شه ۹»، خیلی کمتر اشتباه می‌کنید. به این کار برای مدل‌های زبانی می‌گن زنجیره‌ی فکر، یا فکر کردن قدم به قدم: مدل پیش از جواب آخر، قدم‌های میانی رو می‌نویسه.

ببینیم

این مثال از خود پژوهش ۲۰۲۲ای هست که این روش رو معرفی کرد. یه بار از مدل خواستن یه‌دفعه جواب بده؛ یه بار با نمونه‌هایی که جوابشون قدم‌به‌قدم بود.

یه‌دفعه، مدل گفت ۲۷، که غلطه. با قدم‌ها، اول ۲۳ منهای ۲۰ رو حساب کرد، بعد ۶ رو اضافه کرد و رسید به ۹. همون مدل، همون سوال؛ فقط شکل جوابی که ازش خواستیم فرق داشت.

چرا کار می‌کنه

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

پس وقتی مدل «۲۳ − ۲۰ = ۳» رو می‌نویسه، عدد ۳ حالا جلوی چشمشه و برای قدم بعد لازم نیست دوباره توی ذهنش حسابش کنه. پژوهش ۲۰۲۲ دو دلیل می‌گه: یکی اینکه مسئله‌ی چندقدمی به قدم‌های کوچیک شکسته می‌شه و برای مسئله‌ای که قدم بیشتری می‌خواد، محاسبه‌ی بیشتری صرف می‌شه. دوم اینکه یه پنجره باز می‌شه برای دیدن اینکه مدل چطور به جواب رسید، و اگه غلط رفت، کجا. هرچند خود پژوهش می‌گه اینکه این زنجیره دقیقا همون چیزیه که داخل مدل می‌گذره، هنوز سوال بازه.

دو راه

راه اول همون پژوهش اول بود: چند تا نمونه توی پرامپت که جوابشون قدم‌به‌قدمه. یه مدل ۵۴۰ میلیاردی با فقط ۸ نمونه‌ی این‌شکلی، روی یه مجموعه‌ی مسئله‌های ریاضی کلامی، بهترین دقت اون روز رو گرفت.

راه دوم از یه پژوهش دیگه‌ی همون سال اومد و خیلی ساده‌تره: بی هیچ نمونه، فقط پیش از جواب بنویسید «بیا قدم به قدم فکر کنیم».

همین یه جمله، دقت یه مدل بزرگ رو روی یه مجموعه از ۱۷٫۷ به ۷۸٫۷ درصد رسوند، و روی یه مجموعه‌ی سخت‌تر از ۱۰٫۴ به ۴۰٫۷. یه جمله، بی هیچ آموزش و بی هیچ نمونه.

کی کمک می‌کنه

همیشه نه. پژوهش اول سه چیز رو دید:

برای مسئله‌های پیچیده‌تر سود بیشتر بود؛ روی سخت‌ترین مجموعه، دقت بیش از دو برابر شد. روی مسئله‌هایی که فقط یه قدم دارن، سود خیلی کم بود یا حتی منفی. و مهم‌تر از همه، فقط مدل‌های بزرگ، حدود ۱۰۰ میلیارد پارامتر، ازش سود بردن. مدل‌های کوچیک‌تر زنجیره‌هایی می‌ساختن که روون بود ولی منطق نداشت، و حتی از جواب یه‌دفعه بدتر می‌شدن.

یه نکته‌ی خوب هم داشت: از ۵۰ جواب درستی که یکی‌یکی خوندن، فقط یکی با استدلال غلط تصادفا درست دراومده بود. یعنی بیشتر وقت‌ها، وقتی جواب درسته، قدم‌ها هم درستن.

چطور ازش استفاده کنیم

راهنمای پرامپت Claude چند تا نکته‌ی کاربردی داره. اول اینکه بخواید پیش از جواب، مسئله رو قدم‌به‌قدم بررسی کنه و جواب آخر رو توی یه برچسب جدا مثل <answer> بذاره؛ این‌طوری قدم‌ها هستن، ولی جواب رو راحت جدا می‌کنید. دوم اینکه یه دستور کلی مثل «با دقت فکر کن» اغلب از یه برنامه‌ی قدم‌به‌قدم که خودتون نوشتید بهتر کار می‌کنه. سوم اینکه نمونه‌های حل‌شده روی طرز فکر مدل اثر دارن؛ هر نمونه رو به شکل مسئله، روش و جواب بدید. و چهارم، یه جمله‌ی «پیش از تموم کردن، جوابت رو با این معیار بسنج» خطاها رو می‌گیره.

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

فکری که می‌نویسه، همون فکر واقعیشه؟

وقتی مدل قدم‌هاش رو می‌نویسه، وسوسه‌انگیزه فکر کنیم داریم توی ذهنش رو می‌خونیم. یه پژوهش ۲۰۲۳ نشون داد این همیشه درست نیست.

پژوهشگرها نمونه‌های پرامپت رو طوری چیدن که جواب درست همیشه گزینه‌ی «الف» باشه. مدل‌ها کم‌کم به سمت «الف» رفتن، حتی وقتی غلط بود؛ ولی توی توضیح قدم‌به‌قدمشون تقریبا هیچ‌وقت اسمی از این الگو نیاوردن، و به‌جاش برای جواب غلط دلیل‌تراشی کردن. روی ۱۳ کار سخت، درستی تا ۳۶ درصد افت کرد. یعنی قدم‌های نوشته‌شده به فهم بهتر و جواب بهتر کمک می‌کنن، ولی لزوما همون دلیلی نیستن که واقعا جواب رو ساخته. پس به توضیح قشنگ یه جواب، به اندازه‌ی خود جواب شک کنید و جواب‌های مهم رو جدا بسنجید.

چند نکته

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

درس بعد درباره‌ی جوابیه که قراره یه برنامه بخونه، نه یه آدم: خروجی ساختاریافته.

جمع‌بندی. آنچه از این درس با خودتان می‌برید.

  • قدم‌های میانی، پیش از جواب.
  • هر قدم، زمینه‌ی قدم بعد.
  • با نمونه‌ی قدم‌به‌قدم، یا فقط یه جمله.
  • سود بیشتر برای مسئله‌ی سخت و مدل بزرگ.
  • جواب آخر رو جدا بخواید.

خودتون رو بسنجید

۱۵ پرسش، هر بار تازه از میان ۳۰ پرسش این درس. آخرش فقط کارنامه رو می‌بینید: چند تا درست، چند تا نادرست.

خودتون رو بسنجید

۱۵ پرسش

  • هر بار پرسش‌ها و ترتیب گزینه‌ها عوض می‌شه.
  • تا آخر نمی‌گیم کدوم جواب درست بوده؛ می‌تونید برگردید و جوابتون رو عوض کنید.
  • آخرش کارنامه می‌گیرید: چند تا درست، چند تا نادرست.
  • اگه وسطش بستید، دوباره که باز کنید از همون‌جا ادامه می‌دید.

فصل‌های این درس

درس بعد