资阳市网站建设_网站建设公司_Banner设计_seo优化
2025/12/28 19:55:08 网站建设 项目流程

在上一章吃透大语言模型的核心逻辑后,终于迎来了最令人兴奋的实战环节 —— 亲手构建智能体。如果说大语言模型是智能体的 "大脑",那这些经典范式就是让大脑学会 "思考与行动" 的行为准则。市面上早已不乏 LangChain、LlamaIndex 这类成熟框架,但是如果不亲手拆解一遍底层逻辑,就永远只能做个 "工具使用者",而无法成为真正的 "应用创造者"。这篇笔记就来详细拆解 ReAct、Plan-and-Solve、Reflection 三种核心范式,让我从 0 到 1 理解智能体的构建之道。

一、基础准备:搭建智能体的 "基建工程"

在正式开工前,必须先把开发环境和基础工具准备妥当。就像盖房子要先打地基,这些准备工作能让后续的范式实现少走很多弯路。

首先是环境配置,推荐使用 Python 3.10 及以上版本,核心需要安装openai库(用于调用大模型)和python-dotenv库(安全管理 API 密钥),终端执行一行命令即可完成:

pip install openai python-dotenv

接下来是 API 密钥的配置。在项目根目录创建.env文件,把模型 ID、API 密钥、服务地址统一存放,这样既能保证安全,又方便后续切换不同的模型服务:

# .env file LLM_API_KEY="YOUR-API-KEY" LLM_MODEL_ID="YOUR-MODEL" LLM_BASE_URL="YOUR-URL"

做好这些准备,就相当于备齐了所有施工材料,接下来就能专注于三种范式的核心逻辑实现了。

二、ReAct 范式:边想边做,在交互中逼近答案

(一)核心思想:像侦探一样 "思考 - 行动 - 观察"

ReAct 范式它完美复刻了人类解决问题的过程 —— 遇到问题先分析,分析完采取行动,根据行动结果再调整思路。在它出现之前,智能体要么只会 "空想"(比如思维链,缺乏与外部世界的交互),要么只会 "蛮干"(直接输出动作,没有规划能力)。

而 ReAct 的巧妙之处,就在于把 "思考"(Thought)和 "行动"(Action)紧密结合,形成一个闭环:先通过思考明确下一步要做什么,再执行具体行动(通常是调用工具),最后根据行动结果(Observation)修正思考方向。这个循环不断重复,直到找到最终答案。

(二)实战实现:给智能体装上 "搜索的手脚"

要让 ReAct 智能体跑起来,光有思考逻辑还不够,必须给它配备能与外部世界交互的工具。示例选择了 SerpApi 作为网页搜索工具,它能返回结构化的 Google 搜索结果,比自己写爬虫高效得多。

首先安装依赖库并配置 API 密钥,然后定义工具的核心三要素:名称(Search)、描述(告诉模型什么时候该用它)、执行逻辑(调用 SerpApi 获取结果并解析)。为了让工具调用更灵活,还要写一个ToolExecutor类,专门负责工具的注册和调度,后续添加计算器、数据库查询等工具时,直接注册即可。

工具准备就绪后,就是 ReAct 智能体的核心实现:

  1. 设计提示词模板:明确告诉模型可用工具、输出格式(必须包含 Thought 和 Action),这是保证模型按规则输出的关键;
  2. 实现核心循环:格式化提示词→调用 LLM 获取思考和行动→解析行动并执行→将结果加入历史记录,重复直到任务完成;
  3. 处理边界情况:设置最大步数防止无限循环,处理工具调用失败、输出解析错误等问题。

(三)运行效果:成功找到华为最新手机卖点

我用 "华为最新的手机是哪一款?它的主要卖点是什么?" 这个问题测试了智能体。运行过程清晰地展示了它的思考路径.

三、Plan-and-Solve:先谋后动,用规划驾驭复杂任务

(一)核心思想:像建筑师一样 "先画蓝图再施工"

如果说 ReAct 是 "走一步看一步" 的探险家,那 Plan-and-Solve 就是 "运筹帷幄" 的战略家。它把任务明确分为两个阶段:规划阶段和执行阶段。

规划阶段先把复杂任务拆解成一系列逻辑清晰的子步骤,就像建筑师绘制施工蓝图;执行阶段则严格按照步骤逐一落实,确保每个子任务都完成后再进入下一个。这种 "先谋后动" 的模式,能有效避免智能体在复杂任务中偏离目标。

(二)实战实现:拆解数学题的 "规划 - 执行" 流程

我选择了一道经典的数学应用题作为测试:"一个水果店周一卖出 15 个苹果,周二卖出的是周一的两倍,周三卖出的比周二少 5 个,这三天总共卖出多少个苹果?"

要实现这个范式,需要两个核心组件:

  1. 规划器(Planner):负责把问题拆成步骤。通过提示词强制模型输出 Python 列表格式的步骤,方便后续解析。比如这道题,规划器生成了四个步骤:计算周一销量→计算周二销量→计算周三销量→计算总销量;
  2. 执行器(Executor):负责按步骤执行。每一步都把原始问题、完整计划、历史结果作为上下文传给模型,确保步骤间的信息连贯。

最后用PlanAndSolveAgent类把两个组件整合起来,形成 "生成计划→执行计划" 的完整流程。

(三)运行效果:零差错完成多步计算

运行结果完全超出预期,规划器生成的步骤逻辑严谨,执行器每一步都正确使用了上一步的结果。

四、Reflection:自我反思,在迭代中优化答案

(一)核心思想:像作家一样 "初稿 - 修改 - 定稿"

ReAct 和 Plan-and-Solve 都是 "一次性" 完成任务,而 Reflection 范式则引入了 "自我纠错" 的循环,让智能体能够像人类一样审视自己的成果,不断优化。

它的核心流程是 "执行→反思→优化":先生成一个初始方案(初稿),然后扮演 "评审员" 的角色指出问题和改进方向,最后根据反馈修正方案。这个循环可以重复多次,直到达到满意效果。

这种范式的价值在于,它能把 "合格" 的答案提升到 "优秀",特别适合对结果质量要求极高的场景,比如核心代码生成、学术论文撰写、关键决策支持等。

(二)实战实现:代码优化的 "反思 - 迭代" 过程

我按示例 "编写一个找出 1 到 n 之间所有素数的 Python 函数" 作为测试任务,这个任务有明确的优化路径(从试除法到筛法),能很好地体现 Reflection 的价值。

实现这个范式需要三个关键部分:

  1. 记忆模块(Memory):存储每一次的执行结果和反思反馈,形成完整的迭代轨迹,方便后续优化时参考;
  2. 三层提示词:执行提示词(生成初始代码)、反思提示词(扮演严格的代码评审员,聚焦算法效率)、优化提示词(根据反馈修正代码);
  3. 迭代循环:控制反思和优化的次数,直到反馈显示 "无需改进" 或达到最大迭代次数。

(三)运行效果:从低效到高效的代码进化

运行过程堪称精彩,智能体完成了两次关键迭代:

五、三大范式对比与实战选型指南

亲手实现完三种范式后,我对它们的适用场景有了更清晰的认知。一张表格总结核心差异:

任务特点优先选择核心原因
不确定性强,需外部交互(如实时查询、API 调用)ReAct动态循环能适应环境变化,根据反馈调整策略
逻辑路径清晰,需多步内部推理(如数学题、报告撰写)Plan-and-Solve结构化规划确保目标一致性,执行稳定可靠
对结果质量要求极高(如核心代码、学术写作)Reflection迭代优化能将 "合格" 提升至 "

六、学习感悟:从 "用工具" 到 "造工具" 的思维跃迁

这次 "造轮子" 的过程,比直接使用 LangChain 收获大得多。不仅掌握了三种经典范式的底层逻辑,更深刻理解了智能体构建的核心挑战:如何让大模型的推理能力与外部工具高效协同,如何处理不确定性,如何平衡结果质量与成本。

最大的体会是:智能体的核心不是大模型本身,而是组织 "思考与行动" 的范式。好的范式能让普通模型发挥出惊人效果,而差的范式即便用最先进的模型,也可能输出糟糕的结果。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询