【GPT入门】第9课 思维树概念与原理
【GPT入门】第9课 思维树概念与原理
- 1.思维树概念与原理
- 2. 算24游戏的方法
1.思维树概念与原理
思维树(Tree of Thought,ToT )是一种大模型推理框架,旨在解决更加复杂的多步骤推理任务,让大模型能够探索多种可能的解决方案路径 ,并选出最优解。以下为你详细介绍:
- 起源与背景:由普林斯顿和谷歌DeepMind联合提出。在大模型发展中,前谷歌大脑华人科学家Jason Wei提出的思维链(CoT)能增强大模型推理能力,但存在局限性。现有使用大模型解决通用问题的方法,局部上未充分探索思维过程的不同延续,总体上缺乏计划、前瞻或回溯机制。为解决这些问题,研究者提出了思维树框架。
- 核心原理 :将问题解决视为在一棵思维树上进行搜索,每个节点都是一个状态,代表输入和思维序列的部分解。具体执行任务时需回答4个关键问题:
- 思维分解:根据问题属性,将中间过程分解为合适的思维步骤。想法的粒度要恰当,既不能过大导致大模型难以连贯生成,也不能过小而无法评估其对解决问题的作用。
- 思维生成器:基于树的当前状态,通过从思维链提示采样思维,或直接提出不同想法这两种策略,为下一个思维步骤生成多个候选者。
- 状态求值器:评估不同状态在解决问题上的进展情况,以此作为搜索算法的启发式算法,来判断哪些状态值得继续探索以及探索的先后顺序。可以对每个状态独立赋值,也可以跨状态投票。
- 搜索算法:根据思维树的结构,选用合适的搜索算法,如广度优先搜索(BFS)和深度优先搜索(DFS) 。BFS每一步维护一组最有希望的状态;DFS先探索最有希望的状态,必要时回溯到父状态继续探索。
- 与思维链的关系:思维链是让大模型生成一系列中间推理步骤来增强逻辑推理,而思维树是在思维链基础上的进一步发展。思维链是线性的推理路径,思维树则允许模型尝试多种不同的推理思路,进行自我评估、选择下一步行动方案,还能在必要时回溯,使大模型思维更加灵活和全面。
- 应用案例:
- 24点游戏:将模型的思维过程分解为3个步骤,每个步骤是一个中间方程。利用思维树进行宽度优先搜索,每一步保留最好的若干候选项,并让大模型评估每个思维候选项达成目标的可能性,基于常识消除不可能的部分,最终大幅提升问题解决成功率。
- 创意写作:对于给定多个随机句子,要求输出连贯段落的任务。构建深度为2的思维树,大模型先生成中间思维步骤,探索不同写作思路,然后基于这些思路生成最终的连贯段落,激发创造性思维以及高级规划能力。
- 迷你填字游戏 :思维树可以帮助大模型在填字过程中,探索不同的单词选择和填写顺序,通过评估每个状态来逐步完成填字任务,提高填字的准确率和效率。

2. 算24游戏的方法

相关文章:
【GPT入门】第9课 思维树概念与原理
【GPT入门】第9课 思维树概念与原理 1.思维树概念与原理2. 算24游戏的方法 1.思维树概念与原理 思维树(Tree of Thought,ToT )是一种大模型推理框架,旨在解决更加复杂的多步骤推理任务,让大模型能够探索多种可能的解决…...
SolidWorks 转 PDF3D 技术详解
在现代工程设计与制造流程中,不同软件间的数据交互与格式转换至关重要。将 SolidWorks 模型转换为 PDF3D 格式,能有效解决模型展示、数据共享以及跨平台协作等问题。本文将深入探讨 SolidWorks 转 PDF3D 的技术原理、操作流程及相关注意事项,…...
栈概念和结构
文章目录 1. 栈的概念2. 栈的分类3. 栈的实现(数组栈)3.1 接口设计(Stack.h)3.2 接口实现(Stack.c)1)初始化销毁2)栈顶插入删除3)栈顶元素、空栈、大小 3.3 完整代码Stac…...
Trae 是一款由 AI 驱动的 IDE,让编程更加愉悦和高效。国际版集成了 GPT-4 和 Claude 3.5,国内版集成了DeepSeek-r1
Trae 是一款由 AI 驱动的 IDE,让编程更加愉悦和高效。国际版集成了 GPT-4 和 Claude 3.5,国内版继承了DeepSeek-r1,支持实时代码建议和无缝 GitHub 集成。 当前国内和国际版的AI都是免费的。 安装 国际版安装 国际版下载:下载…...
Spring (八)AOP-切面编程的使用
目录 实现步骤: 1 导入AOP依赖 2 编写切面Aspect 3 编写通知方法 4 指定切入点表达式 5 测试AOP动态织入 图示: 实现步骤: 1 导入AOP依赖 <!-- Spring Boot AOP依赖 --><dependency><groupId>org.springframework.b…...
VS Code连接服务器教程
VS Code是什么 VS Code(全称 Visual Studio Code)是一款由微软推出的免费、开源、跨平台的代码编辑神器。VS Code 支持 所有主流操作系统,拥有强大的功能和灵活的扩展性。 官网:https://code.visualstudio.com/插件市场࿱…...
leetcode69.x 的平方根
题目: 给你一个非负整数 x ,计算并返回 x 的 算术平方根 。 由于返回类型是整数,结果只保留 整数部分 ,小数部分将被 舍去 。 注意:不允许使用任何内置指数函数和算符,例如 pow(x, 0.5) 或者 x ** 0.5 。…...
HttpServletRequest 和 HttpServletResponse 区别和作用
一、核心作用对比 对象HttpServletRequest(请求对象)HttpServletResponse(响应对象)本质客户端发给服务器的 HTTP 请求信息(输入)服务器返回客户端的 HTTP 响应信息(输出)生命周期一…...
国家二级运动员证书有什么用·棒球1号位
以棒球运动为例,国家二级棒球运动员证书是由中国国家体育总局颁发的运动员技术等级认证,主要作用体现在以下几个方面: 一、升学优势 体育特招资格:符合条件者可报考高校高水平运动队或体育单招,部分院校对二级运动员有…...
Windsuf 连接失败问题:[unavailable] unavailable: dial tcp...
问题描述 3月6日,在使用Windsuf 时,遇到以下网络连接错误: [unavailable] unavailable: dial tcp 35.223.238.178:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of…...
docker中kibana启动后,通过浏览器访问,出现server is not ready yet
问题:当我在浏览器访问kibana时,浏览器给我报了server is not ready yet. 在网上试了很多方法,都未能解决,下面是我的方法: 查看kibana日志: docker logs -f kibana从控制台打印的日志可以发现ÿ…...
更多文章请查看
更多文章知识请移步至下面链接,期待你的关注 如需查看新文章,请前往: 博主知识库https://www.yuque.com/xinzaigeek...
(十 九)趣学设计模式 之 中介者模式!
目录 一、 啥是中介者模式?二、 为什么要用中介者模式?三、 中介者模式的实现方式四、 中介者模式的优缺点五、 中介者模式的应用场景六、 总结 🌟我的其他文章也讲解的比较有趣😁,如果喜欢博主的讲解方式,…...
博弈论算法
一、减法游戏 初始有一个数 n。 两个玩家轮流操作,每次可以减去 1 到 9 之间的任意整数。 将数减到 0 的玩家获胜。 可以发现规律: 减法游戏只需要判断当前数取模是否为0,即可快速判断胜负。 例题: Leetcode 292. Nim 游戏 …...
【网络】HTTP协议、HTTPS协议
HTTP与HTTPS HTTP协议概述 HTTP(超文本传输协议):工作在OSI顶层应用层,用于客户端(浏览器)与服务器之间的通信,B/S模式 无状态:每次请求独立,服务器不保存客户端状态(通…...
GitCode 助力 vue3-element-admin:开启中后台管理前端开发新征程
源码仓库: https://gitcode.com/youlai/vue3-element-admin 后端仓库: https://gitcode.com/youlai/youlai-boot 开源助力,开启中后台快速开发之旅 vue3-element-admin 是一款精心打造的免费开源中后台管理前端模板,它紧密贴合…...
网络HTTP
HTTP Network Request Library A Retrofit-based HTTP network request encapsulation library that provides simple and easy-to-use API interfaces with complete network request functionality. 基于Retrofit的HTTP网络请求封装库,提供简单易用的API接口和完…...
Qt常用控件之表格QTableWidget
表格QTableWidget QTableWidget 是一个表格控件,行和列交汇形成的每个单元格,是一个 QTableWidgetItem 对象。 1. QTableWidget属性 QTableWidget 的属性只有两个: 属性说明rowCount当前行的个数。columnCount当前列的个数。 2. QTableW…...
FFmpeg入门:最简单的音视频播放器
FFmpeg入门:最简单的音视频播放器 前两章,我们已经了解了分别如何构建一个简单和音频播放器和视频播放器。 FFmpeg入门:最简单的音频播放器 FFmpeg入门:最简单的视频播放器 本章我们将结合上述两章的知识,看看如何融…...
【Python爬虫】爬取公共交通路网数据
程序来自于Github,以下这篇博客作为完整的学习记录,也callback上一篇爬取公共交通站点的博文。 Bardbo/get_bus_lines_and_stations_data_from_gaode: 这个项目是基于高德开放平台和公交网获取公交线路及站点数据,并生成shp文件,…...
009---基于Verilog HDL的单比特信号边沿检测
文章目录 摘要一、边沿检测二、时序逻辑实现2.1 rtl2.2 tb 三、组合逻辑实现3.1 rtl3.2 tb 摘要 文章为学习记录。采用时序逻辑和组合逻辑实现边沿检测的核心逻辑。组合逻辑实现的上升沿和下降沿的脉冲比时序逻辑实现的上升沿和下降沿的脉冲提前一拍。 一、边沿检测 边沿检测…...
Trae IDE新建C#工程
目录 1 结论 2 项目结构 3 项目代码 1 结论 新建C#工程来说,Trae的Chat比DeepSeek的Coder好用。 2 项目结构 MyWinFormsApp/ │ ├── Program.cs ├── Form1.cs ├── Form1.Designer.cs ├── MyResources/ │ └── MyResources.resx └── MyWin…...
前端快速搭建Node服务(解决跨域问题)
服务搭建应用场景 前端模块化基本成为了不可或缺的一步了,最近学习的时候,使用了EsModule语法,但使用import和export,会产生跨域问题,故自己本地搭建一个服务(不需要下载npm包),一步…...
三、0-1搭建springboot+vue3前后端分离-idea新建springboot项目
一、ideal新建项目1 ideal新建项目2 至此父项目就创建好了,下面创建多模块: 填好之后点击create 不删了,直接改包名,看自己喜欢 修改包名和启动类名: 打开ServiceApplication启动类,修改如下: …...
Unity光照之Halo组件
简介 Halo 组件 是一种用于在游戏中创建光晕效果的工具,主要用于模拟光源周围的发光区域(如太阳、灯泡等)或物体表面的光线反射扩散效果。 核心功能 1.光晕生成 Halo 组件会在光源或物体的周围生成一个圆形光晕,模拟光线在空气…...
电容与电感以及其典型的电路
一、电容与电感的基本关系 1. 定义公式 电容(C,单位:法拉F) C Q / V (电荷量Q与电压V的比值) 电感(L,单位:亨利H) L Φ / I (磁通链Φ与电流I…...
在昇腾GPU上部署DeepSeek大模型与OpenWebUI:从零到生产的完整指南
引言 随着国产AI芯片的快速发展,昇腾(Ascend)系列GPU凭借其高性能和兼容性,逐渐成为大模型部署的重要选择。本文将以昇腾300i为例,手把手教你如何部署DeepSeek大模型,并搭配OpenWebUI构建交互式界面。无论…...
递归专题刷题
文章目录 递归合并两个有序链表题解代码 反转链表题解代码 两两交换链表中的节点题解代码 Pow(x, n)(快速幂)题解代码汉诺塔题解代码 总结 递归 1. 重复的子问题宏观看待递归问题 合并两个有序链表 题目链接 题解 1. 重复的子问题 -> 函数头的设…...
电商项目-秒杀系统(四)秒杀异步下单防止重复秒杀
一、 防止恶意刷单解决 在生产场景下,可能会有一些人会恶意访问当前网站,来进行恶意的刷单。这样会造成当前系统出现一些业务上的业务混乱,出现脏数据,或者造成后端访问压力大等问题。 一般要解决这个问题的话,前端可…...
Android Studio 一直 Loading devices
https://stackoverflow.com/questions/71013971/android-studio-stuck-on-loading-devices...
