تصور کن میخواهی ظرفِ شش ماه کتابی منتشر کنی، یا یک محصولِ تازه را به بازار برسانی، یا حتی فقط یک مهمانیِ بزرگ بگیری. اگر این هدف را جلوی هوش مصنوعی بگذاری و بپرسی «از کجا شروع کنم؟»، معمولاً فهرستی از کارهای کلی میگیری که از امروز رو به جلو ردیف شدهاند. این فهرست در نگاهِ اول منطقی است، اما یک عیبِ پنهان دارد: چون از «حالا» شروع کرده، اغلب نصفِ راه را میبیند و پیشنیازهای دور را جا میاندازد.
تکنیکی که در این درس یاد میگیری همین عیب را برطرف میکند. نامش «زنجیرهٔ معکوس» یا Backward Chaining است و ایدهٔ اصلیاش وارونهکردنِ جهتِ فکر است: بهجای آنکه از امروز به سمتِ هدف برویم، از هدفِ نهایی شروع میکنیم و قدمبهقدم عقب میآییم تا برسیم به کاری که همین امروز باید انجام بدهی. همین چرخشِ ساده، نقشهای میسازد که حفرههایش بسیار کمتر است.

لیست مطالب
زنجیرهٔ معکوس چیست و چه فرقی با برنامهریزی معمولی دارد؟
زنجیرهٔ معکوس یعنی استدلال را از نتیجه شروع کنی، نه از نقطهٔ شروع. در برنامهریزیِ معمولی که به آن «زنجیرهٔ روبهجلو» میگوییم، از وضعیتِ فعلی میپرسی «قدمِ بعدی چیست؟» و همینطور جلو میروی تا شاید به هدف برسی. در زنجیرهٔ معکوس برعکس عمل میکنی: از هدف میپرسی «درست پیش از رسیدن به این نتیجه، چه چیزی باید فراهم میبود؟»، بعد همان پیشنیاز را هدفِ تازه میگیری و دوباره همین سؤال را میپرسی. این پرسش را آنقدر تکرار میکنی تا به کاری برسی که از امروز در توانِ توست.
تفاوت را اینطور ببین: برنامهریزیِ روبهجلو مثلِ راهافتادن در یک شهرِ ناآشنا با این امید است که بالاخره به مقصد میرسی؛ زنجیرهٔ معکوس مثلِ این است که روی نقشه از مقصد انگشت بگذاری و خطِ برگشت را تا دمِ درِ خانهات دنبال کنی. وقتی مسیر از مقصد کشیده شود، هر قدم دقیقاً بهخاطرِ قدمِ بعدی وجود دارد و هیچ کارِ بیربطی وارد نقشه نمیشود. برای همین است که مهندسان، پژوهشگران و برنامهریزانِ پروژه سالهاست برای کارهای هدفدار از همین جهتِ معکوس استفاده میکنند؛ ما فقط آن را به یک پرامپتِ روشن تبدیل میکنیم.
چرا ذهن ما از «جلو به عقب» گیر میکند؟
وقتی از نقطهٔ فعلی شروع میکنی، انتخابهای پیشِ رو تقریباً بیشمارند. از همینجا میشود صدها کارِ بهظاهر مفید انجام داد و معلوم نیست کدام واقعاً تو را به هدف نزدیک میکند. به همین دلیل پاسخهای روبهجلو اغلب شلوغ و پراکندهاند و پر از کارهایی که «بد نیست انجام شوند» ولی ضروری نیستند.
اما وقتی از هدف عقب میآیی، در هر مرحله فقط یک سؤالِ محدود پیشِ روست: «برای تحققِ این یک چیز، بیواسطه چه لازم است؟» دامنهٔ پاسخ ناگهان کوچک و دقیق میشود. همین محدودشدنِ انتخابها در هر گام است که زنجیرهٔ معکوس را اینقدر تمیز میکند. هوش مصنوعی هم دقیقاً به همین دلیل با این جهت بهتر کار میکند: بهجای آنکه از او بخواهی از دلِ بینهایت امکان، مسیرِ درست را حدس بزند، او را وادار میکنی زنجیرهای از پیشنیازهای ناگزیر را رو کند.
سه ستون پرامپت زنجیرهٔ معکوس
یک پرامپتِ زنجیرهٔ معکوسِ خوب روی سه ستون میایستد. اگر هر سه را در پرامپت بگنجانی، خروجی بهجای یک فهرستِ سرِدستی، یک نقشهٔ وارونهٔ واقعی میشود.
ستونِ اول؛ تعریفِ دقیقِ مقصد. از مدل بخواه پیش از هر چیز هدفِ نهایی را با جزئیاتِ قابلِاندازهگیری توصیف کند: دقیقاً چه چیزی، در چه زمانی، با چه نشانهای «تمامشده» حساب میشود. مقصدِ مبهم زنجیرهٔ مبهم میسازد؛ مقصدِ روشن، زنجیرهٔ روشن.
ستونِ دوم؛ پرسشِ تکرارشوندهٔ پیشنیاز. قلبِ تکنیک همین است. از مدل بخواه برای هر وضعیت بپرسد «بیواسطه پیش از این، چه چیزی باید فراهم میبود؟» و همان پاسخ را به مرحلهٔ قبل تبدیل کند. این حلقه را آنقدر ادامه میدهد تا به وضعیتی برسد که از امروز در دسترس است.
ستونِ سوم؛ ایستگاهِ پایانیِ «اولین قدمِ امروز». به مدل بگو زنجیره را دقیقاً جایی متوقف کند که به کاری میرسد که همین حالا و بدونِ هیچ پیشنیازی میتوانی انجامش بدهی. این ستون جلوی زنجیرههای بیپایان و فلسفی را میگیرد و نقشه را به یک قدمِ عملی گره میزند.

قالبِ آمادهٔ پرامپت زنجیرهٔ معکوس
این قالب را میتوانی عیناً بردار و فقط هدف و محدودیتهایت را جایش بگذار:
«میخواهم [هدفِ نهایی را دقیق بنویس: چه چیزی، تا چه تاریخی، با چه معیارِ موفقیت]. با روشِ زنجیرهٔ معکوس کمکم کن.
۱) اول همین مقصد را با جزئیاتِ قابلِاندازهگیری برایم بازنویسی کن تا مطمئن شویم یک چیز را میفهمیم.
۲) بعد از مقصد شروع کن و رو به عقب بیا: در هر مرحله بپرس «بیواسطه پیش از این، چه باید فراهم میبود؟» و همان را مرحلهٔ قبل قرار بده.
۳) زنجیره را تا جایی ادامه بده که به کاری برسی که من از همین امروز و بدونِ پیشنیاز میتوانم انجامش بدهم؛ همانجا متوقف شو.
۴) در پایان، زنجیره را به ترتیبِ درستِ زمانی (از امروز تا مقصد) برعکس کن و بهصورتِ یک فهرستِ مرحلهبهمرحله با تاریخِ تقریبی به من بده.
محدودیتهای من: [بودجه، زمان، منابع].»
نکتهٔ ظریف در بندِ چهارم است: زنجیره را «معکوس» میسازی اما نقشهٔ نهایی را «مستقیم» تحویل میگیری. اینطور هم از دقتِ تفکرِ معکوس بهره میبری و هم یک برنامهٔ عملیِ خواندنی از امروز به جلو در دست داری.
نمونهٔ عملی؛ از «کتابم را شش ماه دیگر منتشر کنم» تا کارِ امروز
فرض کن هدف این است: «کتابِ صدصفحهایِ من تا شش ماهِ دیگر روی آمازون منتشر شده باشد.» مدل با زنجیرهٔ معکوس اینطور عقب میآید: برای انتشار، درست پیش از آن باید فایلِ نهایی و جلد آماده باشد؛ پیش از آن باید ویرایشِ نهایی تمام شده باشد؛ پیش از آن باید نسخهٔ کاملِ اولیه نوشته شده باشد؛ پیش از آن باید فهرستِ فصلها و طرحِ کلی قطعی شده باشد؛ و پیش از آن باید موضوع و مخاطبِ کتاب دقیق مشخص شده باشد.
زنجیره همینجا به کاری میرسد که از امروز شدنی است: «نشستن و در یک صفحه، موضوع و مخاطبِ کتاب را قطعیکردن.» حالا اگر همین زنجیره را برعکس کنی، یک تقویمِ شفاف داری: این هفته موضوع و طرح، ماهِ اول و دوم نوشتنِ پیشنویس، ماهِ سوم ویرایش، و به همین ترتیب تا انتشار. توجه کن که تکنیک خودش پیشنیازِ پنهانِ «قطعیکردنِ مخاطب» را رو کرد؛ چیزی که در یک فهرستِ روبهجلو بهراحتی فراموش میشد و میتوانست کلِ کتاب را بیهدف کند.
نمونهٔ دوم؛ عیبیابیِ معکوس یک خطای نرمافزاری
زنجیرهٔ معکوس فقط برای اهدافِ آینده نیست؛ برای ریشهیابیِ مشکلاتِ گذشته هم درخشان است. فرض کن یک خطا در برنامهات رخ داده و پیامِ خطا را در اختیار داری. بهجای آنکه از مدل بخواهی کلِ کد را از اول بررسی کند، از او میخواهی از خودِ خطا شروع کند و عقب بیاید: «این پیامِ خطا دقیقاً وقتی ظاهر میشود که چه شرطی برقرار باشد؟ آن شرط از کجا مقدار میگیرد؟ آن مقدار در کدام مرحلهٔ پیشتر ساخته میشود؟»
هر پاسخ، دامنهٔ جستوجو را یک پله به عقب و باریکتر میکند، تا زنجیره به نقطهٔ اصلیِ خرابی برسد. همین جهتِ معکوس باعث میشود مدل بهجای حدسزدنِ پراکنده در کلِ برنامه، مثلِ یک کارآگاه از صحنهٔ جرم به عقب ردگیری کند. اگر این سبکِ کار را دوست داری، در درسِ پرامپت برای کد و تست نمونههای بیشتری از همکاری با هوش مصنوعی در برنامهنویسی میبینی.
تفاوت زنجیرهٔ معکوس با تجزیه به زیرمسئله و برنامهریز-مجری
شاید بپرسی این روش با تکنیکهایی که قبلاً خواندهایم چه فرقی دارد. تفاوت در «جهت» است. در تجزیه به زیرمسئله یک مسئلهٔ بزرگ را به تکههای کوچکتر میشکنی، اما لزوماً از مقصد شروع نمیکنی؛ تکهها میتوانند کنارِ هم و بدونِ ترتیبِ زمانی باشند. در پرامپت برنامهریز-مجری هم اول نقشه میگیری بعد اجرا میکنی، ولی نقشه معمولاً رو به جلو چیده میشود.
زنجیرهٔ معکوس یک چیزِ خاص را تضمین میکند که آن دو نمیکنند: هر قدم بهخاطرِ قدمِ بعدی وجود دارد. این پیوندِ علتومعلولیِ وارونه همان چیزی است که پیشنیازهای پنهان را بیرون میکشد. این تکنیک همچنین خویشاوندِ نزدیکِ پرامپت خودکشف است که در قسمتِ قبلِ همین سری خواندیم؛ هر دو یک گام عقبتر میایستند و پیش از حل، دربارهٔ ساختارِ مسئله فکر میکنند.

کجا زنجیرهٔ معکوس بیشترین سود را میدهد؟
این تکنیک همهجا بهترین انتخاب نیست و دانستنِ جای درستش بخشی از مهارت است. زنجیرهٔ معکوس وقتی میدرخشد که یک مقصدِ روشن و مشخص داری اما مسیرِ رسیدن به آن مبهم است: راهاندازیِ یک محصول تا تاریخی معین، آمادهشدن برای یک آزمون، برنامهریزیِ یک سفر یا رویداد، و هر کاری که یک «خطِ پایانِ» قابلِتعریف دارد. در این موقعیتها شروع از مقصد، پیشنیازها را مرتب و بیحفره میچیند.
در مقابل، برای مسائلی که هدفِ نهاییشان هنوز مبهم است یا اصلاً یک مقصدِ واحد ندارند — مثلِ کاوشِ آزادِ ایدهها یا طوفانِ فکری — جهتِ معکوس چندان کمکی نمیکند، چون چیزی برای شروعِ عقبگرد نداری. آنجا بهتر است اول با روشهای واگرا ایده بسازی و وقتی مقصد روشن شد، تازه زنجیرهٔ معکوس را روی آن سوار کنی.
نکتههای پیشرفته و خطاهای رایج
اولین خطای رایج این است که مقصد را مبهم رها کنی. اگر هدف را «موفقشدن در کار» بگذاری، زنجیره هم مبهم درمیآید. همیشه ستونِ اول را جدی بگیر و از مدل بخواه مقصد را قابلِاندازهگیری کند. خطای دوم، زنجیرههای بیشازحد بلند و فلسفی است؛ با تأکید بر ستونِ سوم — توقف در «اولین قدمِ امروز» — جلوی این را بگیر.
یک نکتهٔ پیشرفته هم این است که پس از ساختِ زنجیره، از مدل بخواه هر پیوند را یکبار وارسی کند: «آیا این قدم واقعاً و بهتنهایی برای قدمِ بعدی کافی است، یا پیشنیازِ دیگری هم لازم است؟» این وارسی، پیوندهای شکننده را رو میکند. برای عمیقترکردنِ همین وارسی میتوانی زنجیره را به زنجیرهٔ راستیآزمایی بسپاری تا مدل فرضهای هر قدم را جداگانه بیازماید. و فراموش نکن که کنترلِ نهایی همیشه دستِ توست؛ اگر قدمی غیرواقعی بود، آن را اصلاح کن و زنجیره را از همانجا دوباره بساز.
پرسشهای پرتکرار
زنجیرهٔ معکوس همان مهندسیِ معکوس است؟
نه دقیقاً. مهندسیِ معکوس یعنی یک چیزِ ساختهشده را باز کنی تا بفهمی چطور کار میکند. زنجیرهٔ معکوس یک روشِ برنامهریزی و استدلال است که از هدف به عقب میآید تا مسیرِ رسیدن به آن را بسازد. شباهتشان فقط در «جهتِ معکوس» است، نه در هدف.
روی چه مدلهایی بهتر جواب میدهد؟
روی مدلهای اصلی مثلِ ChatGPT، Claude و Gemini خیلی خوب کار میکند، چون زنجیره را منظم نگه میدارند. اما حتی روی مدلهای سبکتر هم چون هر گام یک سؤالِ محدود دارد، کیفیتِ خروجی بهتر از یک پرامپتِ کلی میشود.
برای کارهای روزمره هم بهدردم میخورد؟
بله. هر وقت یک «نتیجهٔ مشخص» میخواهی — از آمادهکردنِ یک ارائه تا برنامهریزیِ یک مهمانی — میتوانی از مقصد عقب بیایی. هرچه خطِ پایان روشنتر باشد، سودِ تکنیک بیشتر است.
میشود زنجیرهٔ معکوس را با تکنیکهای دیگر ترکیب کرد؟
بله، و اغلب باید همین کار را کرد. میتوانی هر قدمِ بزرگِ زنجیره را با تجزیه به زیرمسئله ریزتر کنی، یا کلِ زنجیره را با راستیآزمایی وارسی کنی. زنجیرهٔ معکوس چارچوبی است که بهراحتی کنارِ روشهای دیگر مینشیند.
حالا نوبتِ توست. دو تمرینِ زیر کمک میکنند مطمئن شوی تکنیک را واقعاً گرفتهای، نه فقط خواندهای.
در پرامپت زنجیرهٔ معکوس، مدل در هر مرحله باید چه سؤالی از خودش بپرسد؟
این تمرین ویژهٔ اعضاست
برای دیدن این بخش باید عضو ویژه (VIP) باشی. با شمارهٔ موبایلت وارد شو تا ۱۴ روز دسترسی رایگان فعال شود.
🎁 ورود / ثبتنام و شروع ۱۴ روز رایگانجمعبندی
زنجیرهٔ معکوس یک چرخشِ کوچک اما نیرومند در طرزِ فکر است: بهجای آنکه از امروز به سمتِ هدف حدس بزنی، از هدف شروع میکنی و با پرسشِ تکرارشوندهٔ «پیش از این چه لازم بود؟» تا کارِ امروز عقب میآیی. با سه ستونِ تعریفِ دقیقِ مقصد، پرسشِ پیشنیاز، و توقف در اولین قدمِ عملی، مدل یک نقشهٔ بیحفره میسازد که پیشنیازهای پنهان را رو میکند.
این درس بخشی از یک مجموعهٔ گامبهگام دربارهٔ پرامپتنویسی است. برای دیدنِ نقشهٔ کاملِ سریها و ادامهٔ مسیر، به راهنمای جامع پرامپتنویسی سر بزن. اگر میخواهی گامِ بعدی را برداری، سراغِ درخت تفکر برو تا ببینی چطور مدل چند مسیرِ حل را همزمان میکاود و بهترین را برمیگزیند.
