Phase 14: Agent Engineering

شجرة الأفكار والآثار: البحث المتعمد

لا توجد مسار واحد لسلسلة التفكير للعودة. تحويل التفكير إلى شجرة مع تقييم ذاتي على كل عقدة. LATS (Zhou et al., 2024) يوحد ToT مع ReAct و Reflexion تحت بحث شجرة مونت كارلو. يذهب لعبة 24 من 4% (CoT) إلى 74% (ToT); LATS يصل إلى 92.7% على HumanEval.

Type: Build

Languages: Python (stdlib)

Prerequisites: Phase 14 · 01 (Agent Loop), Phase 14 · 03 (Reflexion)

Time: ~75 minutes

أهداف التعلم

  • التفكير الإطارية كبحث: العقدة هي "أفكار" ، الحواف هي "توسعات" ، والقيمة هي "كيف تعد".
  • تنفيذ بحث شجرة BFS على طراز stdlib ToT مع تسجيل تقييم ذاتي.
  • تمديد إلى حلقة LATS MCTS لعبة مع اختيار / توسيع / محاكاة / التنويع الخلفي.
  • قرر متى يستحق البحث مضاعف الرمز (لعبة 24، إنتاج رمز) ومتى تكون مسار واحد كافية (سائل ومسائل بسيطة).

المشكلة

سلسلة التفكير هي خط خطي. إذا كانت الخطوة الأولى خاطئة، فإن كل خطوة لاحقة تعمل على أساس سيء. في لعبة 24 (استخدم أربعة أرقام مع + − × ÷ لتحقيق 24) ، يصل GPT-4 CoT إلى دقة 4٪. يختار النموذج التعبير الفرعي الخطأ مبكرا ولا يمكن التعافي.

ما يحتاجه التفكير هو القدرة على اقتراح مرشحين متعددين وتقييمهم واختيار المرشحين الواعدين والعودة إلى الوراء عندما تظهر نهاية مسدودة. هذا هو البحث. شجرة الأفكار و LATS هي الصيغين القانونية.

المفهوم

شجرة الأفكار (ياو وغيرها، NeurIPS 2023)

كل عقدة هي خطوة متواصلة متواصلة ("فكر"). يمكن لكل عقدة توسيع إلى أفكار الطفل K. تقييم LLM نفس كل عقدة مع طلب تسجيل. البحث يستكشف شجرة BFS ، DFS ، أو شعاع.

                     (root: "find 24 from 4 6 4 1")
                    /               |            \
           ("6 - 4 = 2")    ("4 + 1 = 5")    ("4 * 6 = 24")  <- Score: HIGH
              /   \              |                  |
          ...    ...          ...                finish

التقييم الذاتي هو الجزء المحمل. الورقة تظهر ثلاثة خيارات:sure / likely / impossibleالتصنيف1..10النتيجة الرقمية، والصوت بين المرشحين. جميع الثلاثة هزمت CoT بشكل كبير في لعبة 24 (4% -> 74% مع GPT-4).

LATS (Zhou et al., ICML 2024)

يوحد LATS ToT ، ReAct ، و Reflexion تحت MCTS. يلعب LLM ثلاثة أدوار:

  • Policy: اقتراح الإجراءات التالية (مثل "ReAct").
  • Value function: تسجيل مسار جزئي (مقياس ذاتي على النمط ToT).
  • Self-reflector: عند الفشل، اكتب انعكاساً باللغة الطبيعية (بطريقة انعكاس) واستخدمها لإعادة النظر في التطبيقات المستقبلية.

تعليقات البيئة (الملاحظات) تتلاشى مع وظيفة القيمة بحيث يتم إدلاء البحث بموجب نتائج أداة حقيقية ، وليس فقط آراء النموذج. النتائج في الوقت الورقي: HumanEval pass@1 92.7% مع GPT-4 (SOTA) ، WebShop متوسط 75.9 مع GPT-3.5 (الاستعدادات الدقيقة القريبة على أساس التدفقات).

الـ MCTS، على الأقل

أربعة مراحل لكل إعادة التكرار:

  1. Select المشي من الجذر إلى الورقة باستخدام UCT (الثقة العليا المرتبطة بالأشجار).
  2. Expand إنجاب أطفال K من خلال السياسة.
  3. Simulate التنفيذ من طفل يستخدم السياسة، تسجيل الورقة مع وظيفة القيمة (أو مكافأة البيئة).
  4. Backpropagate تحديث عدد الزيارات وتقديرات القيمة على المسار.

صيغة الـ UCT: Q(s, a) + c * sqrt(ln N(s) / N(s, a))المصطلح الأول هو الاستغلال، والصيغة الثانية هي الاستكشاف.cلكل مهمة

حقيقة التكلفة

البحث ينفجر الرموز. ToT على لعبة 24 يستخدم 1001000x الرموز من CoT. LATS مشابهة. هذا ليس مجانا؛ البحث الاحتياطي ل:

  • المهام التي يظهر فيها أن مسار واحد غير كاف (لعبة 24، رمز معقد).
  • المهام التي لا تهم الساعات الجدارية من الصواب
  • المهام ذات وظيفة قيمة رخيصة وموثوق بها (اختبارات الوحدة للرمز، هدف صريح للرياضيات).

إذا كانت مهمتك لديها إجابة واحدة صحيحة ومقيّم ضجيج، فإن البحث غالباً ما يزيد الأمور سوءاً فإنه يجد إجابة خاطئة "بالتسجيل الجيد".

2026 وضع

معظم وكلاء الإنتاج لا يعملون على LATS. إنهم يعملون على ReAct مع التحقق القائم على الأدوات (CRITIC، الدروس 05).

  • وكالات التشفير التي تقوم بإجراء الاختبارات كعمل قيمة (مثل HumanEval).
  • وكلاء البحث العميق الذي يستكشف مسارات استفسارات متعددة.
  • تدفقات عمل خططية ثقيلة داخل الرسومات الفرعية لاندغراف

الفا إيفولف (دروس 11) هو 2025 المتطرف: البحث التطوري على الكود، والطاقة التي يمكن التحقق منها من الآلة، والتحقيقات الحدودية (أول تحسن في 4x4 في 56 عاما).

بناءها

code/main.pyتطبيقات:

  • "بإف إس" صغير في مهمة "اختيار عمليات الحساب"
  • حلقة LATS MCTS لعبة على نفس المهمة (اختر / توسع / محاكاة / التنقل الخلفي) مع اختيار UCT.
  • وظيفة قيمة تتكون من نتيجة رمزية زائد نتيجة نفسية.

إشغله

python3 code/main.py

يظهر البصمة أن ToT توسع ثلاثة مرشحين لكل عقدة مع BFS ، مقارنة مع LATS المتقاربة على أفضل التنفيذ عبر MCTS.

استخدمها

لينغغغراف يرسل استكشاف على طراز توت على أنها أنماط فرعية؛ مدونة فريق لانغ تشين على LATS (مايو 2024) هي الدروسية المرجعية.TreeOfThoughtsبالنسبة لمعظم وكلاء الإنتاج في عام 2026 هذا النمط يعيش خلفif task_complexity > threshold: use_search()انظر النمط المقيّم-المُحسن في الدروس 05.

أرسله

outputs/skill-search-policy.mdيختار بين ReAct الخطية، ToT، LATS، والبحث التطوري نظرا لشكل المهمة، وال ميزانية، وفاء المقيّم.

التمارين

  1. إشغال لعبة LATS مع UCT c=0.1 مقابل c=2.0. ما هي التغييرات في البصمة؟
  2. تغيير وظيفة القيمة لجهاز تسجيل أكثر ضوضاء (إضافة الارتجاج العشوائي). هل ما زال MCTS يجد أفضل ورقة؟ ما هو الحد الأدنى من الإشارة إلى الضوضاء التي يتسامح بها؟
  3. تنفيذ البحث عن الشعاع ToT (حفاظ على أعلى-k في كل مستوى) ومقارنة مع BFS. أي أفضل على ميزانية رمزية ضيقة؟
  4. اقرأ قسم LATS 5.1 إعادة إنتاج عدد مسارات HumanEval: كم عدد الإنتشالات التي تحتاجها للوصول إلى المخطط المبلغ عن ذلك@1؟
  5. اقرأ بحث ورقة LATS حول "عندما يساعد LATS أقل". اكتب قاعدة قرار واحدة الفقرة خريطة شكل المهمة ل استراتيجية البحث.

الشروط الرئيسية

TermWhat people sayWhat it actually means
Tree of Thoughts"Branching CoT"Yao et al. — tree of thought nodes with self-evaluation
LATS"MCTS for LLMs"Zhou et al. — unifies ToT + ReAct + Reflexion under MCTS
UCT"Upper confidence bound"Select formula balancing exploitation (Q) and exploration (ln N / n)
Value function"How good is this state"Prompted LLM score or environment reward; feeds backprop
Policy"Action proposer"ReAct-style generator; emits candidate next thoughts/actions
Rollout"Simulated trajectory"Walk from a node to a leaf using policy, score with value
Backpropagate"Update ancestors"Push the leaf's reward up the path, updating visit counts and Q
Search cost"Token explosion"100-1000x CoT on Game of 24; budget before you adopt

المزيد من القراءة

This free lesson is part of the AI Engineering from Scratch curriculum. Read the full explanation, run the lesson code, and verify the result in the interactive reader or from the repository source.

Browse the complete course catalog or open this lesson on GitHub.