Tree of Thoughts (ToT) یا «درخت تفکر» قدرتمندترین تکامل Chain-of-Thought است. ایدهاش ساده ولی انقلابی است: مدل بهجای دنبال کردن یک مسیر استدلال، چندین گزینه را تولید میکند، هر کدام را ارزیابی میکند، و فقط بهترینها را تا پایان دنبال میکند — درست مثل یک شطرنجباز که چند حرکت بعدی را در ذهن میچیند. در این مقاله میبینیم چرا این تکنیک در Game of 24 دقت را از ۴٪ به ۷۴٪ رساند و چطور خودت میتوانی از آن در ChatGPT و Claude استفاده کنی.
Tree of Thoughts چیست؟
Tree of Thoughts روش پرامپتنویسی است که در آن فرآیند استدلال مدل بهجای خطی، به شکل یک درخت سازماندهی میشود. در هر گره از این درخت، مدل چندین «فکر» متفاوت تولید میکند، هر کدام را با معیارهای مشخص ارزیابی میکند، و فقط شاخههای امیدوارکننده را گسترش میدهد. اگر شاخهای به بنبست برسد، الگوریتم میتواند به گره قبلی برگردد (backtrack) و مسیر دیگری را امتحان کند.
این رویکرد، روش فکر کردن انسان در حل مسائل پیچیده را تقلید میکند: ما هم وقتی روی یک مسئله گیر میکنیم، چند راهحل را در ذهن مرور میکنیم، هر کدام را با شهود میسنجیم، و فقط دو سه راهحل اصلی را عمیق دنبال میکنیم.
تعریف رسمی
| مفهوم | توضیح |
|---|---|
| Thought | یک گام میانی استدلال (مثلاً «یک عدد را اضافه کنیم») |
| State | وضعیت فعلی مسئله بعد از اعمال چند Thought |
| Generator | تولیدکنندهی چند Thought ممکن از یک State |
| Evaluator | ارزیاب که هر Thought را امتیاز میدهد |
| Search | الگوریتم پیمایش درخت (BFS یا DFS) |
تفاوت ToT با Chain-of-Thought
Chain-of-Thought یک مسیر خطی است — مدل گامبهگام جلو میرود و در پایان به یک پاسخ میرسد. اگر در میانه راه اشتباه کند، اشتباه تا پایان منتشر میشود. ToT این مشکل را با گسترش موازی چندین مسیر حل میکند:
| ویژگی | CoT | ToT |
|---|---|---|
| ساختار | خطی (زنجیره) | درختی (انشعاب) |
| تعداد مسیر | ۱ | چندین (شاخهها) |
| Backtrack | ندارد | دارد |
| ارزیابی میانی | خیر | بله، در هر گره |
| هزینه توکن | پایه | ۳–۱۰× پایه |
| دقت در planning | متوسط | بسیار بالا |
بهبیان ساده: CoT یک «ندانمکاری متعهدانه» است — مدل پای یک مسیر میایستد. ToT یک «جستجوی هوشمند» است — مدل چندین راه را میسنجد و بهترین را انتخاب میکند.
تاریخچه — مقالهی Yao et al. 2023
مفهوم Tree of Thoughts در مقالهی «Tree of Thoughts: Deliberate Problem Solving with Large Language Models» از Shunyu Yao و همکاران در دانشگاه Princeton و Google DeepMind در سال ۲۰۲۳ معرفی شد. این مقاله سه آزمایش کلیدی انجام داد:
- Game of 24: رسیدن به عدد ۲۴ با چهار عدد دادهشده و چهار عمل ریاضی. CoT: ۴٪ موفقیت. ToT: ۷۴٪ موفقیت.
- Creative Writing: نوشتن متنی منسجم با پایانهای مشخص. ToT خروجیهای ۵۰٪ منسجمتر تولید کرد.
- Mini Crosswords: حل جدول کلمات متقاطع ۵×۵. CoT: ۱۵٪. ToT: ۶۰٪.
این نتایج نشان داد که محدودیت LLMها در مسائل planning نه بهخاطر «نادانی» مدل، بلکه بهخاطر معماری خطی پاسخدهی است. وقتی به مدل اجازهی جستجوی ساختاریافته بدهیم، دقتش جهش میکند.
چهار مرحلهی ToT
پیادهسازی ToT از چهار مرحله تشکیل شده:
- Thought Decomposition (تجزیه): مسئله را به چند گام میانی تقسیم کن. مثلاً Game of 24 سه گام دارد.
- Thought Generation (تولید): در هر گره، مدل را وادار کن چند Thought ممکن تولید کند (معمولاً ۳ تا ۵).
- State Evaluation (ارزیابی): هر Thought را با معیار مشخص امتیاز بده. میتوانی از خود مدل بخواهی ارزیابی کند.
- Search Algorithm (جستجو): با BFS یا DFS درخت را پیمایش کن و فقط شاخههای با بالاترین امتیاز را گسترش بده.
BFS یا DFS؟ انتخاب الگوریتم جستجو
BFS — جستجوی سطحبهسطح
در هر سطح، همهی شاخهها را ارزیابی کن و فقط top-k بهترین را به سطح بعدی ببر. این روش وقتی خوب کار میکند که مسئله عمق کم اما گزینههای زیاد در هر گام دارد (مثل Game of 24 با عمق ۳).
DFS — جستجوی عمقی
یک مسیر را تا انتها دنبال کن. اگر به بنبست رسید، یک گام عقب برگرد و مسیر بعدی را امتحان کن. این روش برای مسائل با عمق زیاد بهتر است (مثل حل کلمات متقاطع).
سه مثال عملی فارسی
مثال ۱ — تصمیمسازی کسبوکار
مسئله: میخواهم محصول جدیدی برای کسبوکار آنلاینم اضافه کنم. کدام دسته بهتر است؟
پرامپت ToT: «میخواهم به فروشگاه آنلاین کفش ورزشیام یک دستهی جدید اضافه کنم. بودجه ۲۰۰ میلیون تومان. مرحله ۱: ۴ گزینهی متفاوت پیشنهاد بده. مرحله ۲: هر گزینه را با همخوانی با مشتری فعلی، حاشیهی سود، انبار، و رقابت بازار از ۱ تا ۱۰ امتیاز بده. مرحله ۳: دو گزینه با بالاترین امتیاز را برای هر کدام یک plan ۹۰ روزه بنویس. مرحله ۴: مقایسه و توصیهی نهایی.»
مثال ۲ — حل مسئله ریاضی پیچیده
مسئله: دو نفر روی محیط یک دایره بهاندازههای ۴ و ۶ کیلومتر در ساعت میدوند. دایره ۸ کیلومتر محیط دارد. اگر در یک نقطه شروع کنند و در جهت مخالف بروند، کِی برای اولین بار به هم میرسند؟
با ToT میتوانی از مدل بخواهی سه روش متفاوت (نسبت سرعت، معادلهی برخورد، رویکرد عددی) را تولید، ارزیابی، و بهترین را تا پاسخ نهایی پی بگیرد. این کار دقت را در مسائل با چند مسیر حل، چشمگیر بالا میبرد.
مثال ۳ — Planning محتوای سوشال مدیا
مسئله: میخواهم در ۳۰ روز آینده ۱۵ پست برای پیج اینستاگرامم آماده کنم. ساختار محتوا باید چی باشد؟
ToT میتواند سه استراتژی متفاوت (پستمحور، سری-محور، carousel-محور) را پیشنهاد دهد، هر کدام را با معیارهای engagement، زمان تولید و reach بسنجد، و بهترین استراتژی را با تقویم ۳۰ روزه ارائه دهد.
ToT در ChatGPT، Claude و Gemini
هر سه مدل اصلی توانایی پیادهسازی ToT را دارند، اما با تفاوتهای مهم:
| مدل | قدرت در ToT | نکته |
|---|---|---|
| GPT-4o / o1 | عالی | o1 ذاتاً ToT داخلی اجرا میکند |
| Claude 4.5 / Opus | عالی | structured output و reasoning قوی |
| Gemini 2.5 Pro | خوب | گاهی برای تولید چندگانه consistency کم دارد |
| GPT-3.5 | ضعیف | اعتماد به ارزیابی خودش پایین است |
برای جزئیات بیشتر، مقالهی مقایسهی سه مدل را ببین.
هزینهی توکن و trade-off
بزرگترین چالش ToT، مصرف توکن است. اگر در هر گره ۵ Thought تولید کنی و درختت عمق ۴ داشته باشد، میتوانی تا ۶۲۵ بار از مدل بخواهی پاسخ بدهد. در GPT-4o که هزینهی هر ۱۰۰۰ توکن خروجی ~$۰.۰۱ است، یک ToT پیچیده میتواند $۲-۵ هزینه داشته باشد.
راههای کاهش هزینه:
- Pruning زودهنگام: فقط top-3 شاخهها را گسترش بده.
- مدل ارزانتر برای ارزیابی: از GPT-4o-mini یا Haiku برای امتیازدهی استفاده کن.
- عمق محدود: در پرامپت تأکید کن «حداکثر ۳ سطح عمق».
- Cache کردن: از prompt caching استفاده کن (هزینهی توکن ورودی ۹۰٪ کم میشود).
پرامپتهای آماده ToT
قالب ۱: ToT ساده
«برای حل [مسئله]: ۱) سه راهحل متفاوت پیشنهاد بده. ۲) هر کدام را با معیارهای [X]، [Y]، [Z] از ۱ تا ۱۰ امتیاز بده. ۳) دو راهحل برتر را انتخاب کن. ۴) هر یک را تا انتها گسترش بده. ۵) بهترین خروجی نهایی را با توجیه انتخاب کن.»
قالب ۲: ToT با Self-Evaluation
«[مسئله را شرح بده] برای هر گام: ۳ گزینهی ممکن تولید کن، هر گزینه را توجیه کن، به هر گزینه امتیاز sure/maybe/impossible بده، فقط گزینههای sure را گسترش بده، اگر همه impossible شدند یک گام عقب برگرد.»
قالب ۳: ToT برای Creative Writing
«میخواهم داستان کوتاهی با این محدودیتها بنویسی: [محدودیتها]. اول، ۴ ایدهی متفاوت پیرنگ ارائه بده. هر ایده را با انسجام، تازگی، احساس بسنج. دو ایدهی برتر را با طرح ۳ پاراگرافی بنویس. در پایان، انتخاب نهایی را با کل داستان (۸۰۰ کلمه) ارائه بده.»
چه زمانی ToT استفاده نکنیم؟
- سوالات تکمرحلهای: «پایتخت ایران کجاست؟» — اتلاف توکن.
- تولید محتوای آزاد: پست بلاگ یا ایمیل که مسیر مشخصی ندارد.
- تسکهای real-time: چتباتهای پاسخسریع — کاربر منتظر ۳۰ ثانیه نمیماند.
- وقتی Self-Consistency کافی است: رایگیری ساده روی پاسخ.
- سوالات بدون معیار ارزیابی: اگر معیار خوبی نداری.
برای جزئیات بیشتر، ۱۵ اشتباه رایج پرامپتنویسی را بخوان.
سوالات متداول
Tree of Thoughts چیست به زبان ساده؟
روشی برای حل مسئله با AI که در هر گام چندین گزینه را بررسی میکند، بهترینها را انتخاب میکند، و در نهایت بهترین مسیر را پی میگیرد — مثل یک شطرنجباز.
تفاوت با CoT چیست؟
CoT یک مسیر خطی است؛ ToT چندین مسیر را موازی بررسی و backtrack میکند. جزئیات CoT را بخوان.
چقدر توکن بیشتر مصرف میکند؟
۳ تا ۱۰ برابر CoT، بسته به عمق و تعداد شاخهها.
کی استفاده نکنم؟
برای سوالات ساده، تکمرحلهای، یا وقتی معیار ارزیابی واضحی نداری.
چطور در ChatGPT پیاده کنم؟
از پرامپت structured با مراحل «تولید گزینهها → ارزیابی → انتخاب → گسترش» استفاده کن.
آیا برای مدل o1 هم لازم است؟
o1 و Claude 4.5 reasoning خودشان نسخهای از ToT را داخلاً اجرا میکنند.
میخوای ToT را در کارت واقعی پیاده کنی؟
پرامپتهای آمادهی بالا یک شروع است. در دورهی جامع مهندسی پرامپت یک فصل کامل به جستجوی ساختاریافته اختصاص داریم — ۱۳ فصل، ۵۸ جلسه، گروه پشتیبانی، ۳ روز ضمانت بازگشت کامل وجه.
شروع دوره