【AI大模型学习路线】第一阶段之大模型开发基础——第五章(提示工程技术-2)Tree of thought prompting。

【AI大模型学习路线】第一阶段之大模型开发基础——第五章(提示工程技术-2)Tree of thought prompting。

【AI大模型学习路线】第一阶段之大模型开发基础——第五章(提示工程技术-2)Tree of thought prompting。



欢迎宝子们点赞、关注、收藏!欢迎宝子们批评指正!
祝所有的硕博生都能遇到好的导师!好的审稿人!好的同门!顺利毕业!

大多数高校硕博生毕业要求需要参加学术会议,发表EI或者SCI检索的学术论文会议论文。详细信息可关注VX “学术会议小灵通”或参考学术信息专栏:https://fighting.blog.csdn.net/article/details/146692330


前言

本文概述了 Tree of Thoughts(ToT)提示在大模型中的地位与前景,然后从定义与机制、提示结构、Python 实操、效果评估及最佳实践与未来趋势五个方面展开详述。

1 背景与前景

  • 大型语言模型在“模型即服务”(MaaS)模式下广泛应用,但在需要探索和回溯的复杂推理任务中,传统的 Chain-of-Thought(CoT)线性思路仍显不足​。
  • Tree of Thoughts(ToT)提示通过在推理过程中构建“思路树”,允许模型并行探索多个思路分支、进行自我评估与回溯,从而显著提升诸如数学运算、跨词创作与解谜等多步骤任务的成功率​。
  • 在 Game of 24 等基准测试中,GPT-4 使用 CoT 仅有 4% 成功率,而采用 ToT 后成功率飙升至 74%,显示出 ToT 在工业级大模型中的巨大潜力​。

2 定义与机制

2.1 ToT 的核心理念

  • ToT 将“思考步骤”视为节点(thoughts),并在每一步生成多个候选节点,然后基于评估函数选出最优分支继续扩展​。
  • 与 CoT 只沿单一路径生成推理不同,ToT 在每个节点均可“回溯”至父节点并尝试其他分支,具备类似搜索算法的全局决策能力​。

2.2 组件与流程

  • 生成(Generation):在当前节点,根据 Prompt 生成若干候选“思路”分支。
  • 评估(Evaluation):对每个分支应用启发式或模型打分,衡量其解决问题的潜力。
  • 选择(Selection):保留得分最高的若干分支作为下轮扩展基础。
  • 回溯/终止(Backtrack/Terminate):若达到深度或找到满足条件的解,则停止或回溯至上层探索其他分支。

3 提示结构与模板

3.1 基本模板

You are a problem solver.  
Task: <描述问题>  

# Step 1: generate thoughts  
Thoughts:  
1. <candidate thought A>  
2. <candidate thought B>  
3. <candidate thought C>  

# Step 2: evaluate thoughts  
Evaluate each thought and pick the best to expand.  

# Step 3: expand chosen thought  
  • 此模板显式分离“生成—评估—扩展”阶段,引导模型按树形搜索逻辑执行。

3.2 典型示例:24 点游戏

Solve 24 Game: [3, 3, 8, 8]  
Thoughts:  
1. (3+3)×(8÷8)=6×1=6  
2. (8÷(33/8))=3. …  
Evaluate: Thought 2 yields 24select and terminate.  

  • 该示例展示了如何在 Prompt 中手动构造分支并评估​。

4 Python 实操示例

下面以 OpenAI GPT-4 为后端,演示一个简化的 ToT 搜索框架

import os, openai
openai.api_key = os.getenv("OPENAI_API_KEY")

def generate_thoughts(prompt, k=3):
    resp = openai.ChatCompletion.create(
        model="gpt-4",
        messages=[{"role":"user","content":prompt}],
        n=k, temperature=0.7
    )
    return [choice.message.content for choice in resp.choices]

def evaluate_thought(thought):
    # 简单用模型打分评价
    resp = openai.ChatCompletion.create(
        model="gpt-4",
        messages=[
            {"role":"system","content":"Score the following thought on a scale 1–10 for solving the task."},
            {"role":"user","content":thought}
        ],
        temperature=0.0
    )
    return float(resp.choices[0].message.content.strip())

def tree_of_thought(task, depth=2, breadth=3):
    nodes = [task]
    for d in range(depth):
        candidates = []
        for node in nodes:
            prompt = f"{node}\nGenerate next thoughts:"
            thoughts = generate_thoughts(prompt, k=breadth)
            candidates.extend(thoughts)
        # evaluate all candidates
        scored = [(thought, evaluate_thought(thought)) for thought in candidates]
        # select top branches
        nodes = [t for t,_ in sorted(scored, key=lambda x: -x[1])[:breadth]]
    return nodes

result = tree_of_thought("Solve 15 ÷ 5 + 6 = ?", depth=2, breadth=3)
print("Final candidate thoughts:", result)

  • 该代码展示了 ToT 的“生成—评估—选择—重复”核心循环。

5 优势与评估

  • 显著提升复杂推理能力:在创意写作、数独、编程题等多领域均见超越 CoT 的效果​。
  • 可解释性更强:每一节点均有评估分数与回溯路径,便于审计与调优​。
  • 通用性:ToT 可与 Few-Shot、RAG、Prompt Tuning 等技术叠加,形成混合推理架构​。

6 最佳实践与未来趋势

6.1 实操建议

  • 评估函数设计:可结合模型打分、规则校验或外部评分器,确保分支选择可靠​。
  • 资源管理:Depth × Breadth 指数级增长,需根据任务复杂度与算力预算调优​。
  • 自动示例生成:借助 Self-Generated ICL 自动产生初始思路种子,加速部署​。

6.2 未来方向

  • 多模态 ToT:在视觉、音频与文本示例间穿插分支,支持跨模态协同推理。
  • Serverless ToT:结合无服务器架构,实现按需弹性扩展的 ToT 推理服务。
  • Prompt Compiler:自动化生成最优 ToT 模板与评估策略,推动 Prompt Engineering 工业化。

通过上述定义、结构、实操与实践建议,可在 Python 环境中构建高效的 Tree of Thought prompting 流水线,为大模型在复杂决策与多步骤推理场景中提供强大支撑

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

985小水博一枚呀

祝各位老板前程似锦!财源滚滚!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值