谷歌SEO

谷歌SEO

Products

当前位置:首页 > 谷歌SEO >

第4章:如何让Agent学会思考?

96SEO 2026-08-08 00:27 0


记忆让Agent拥有知识,但知识本身不能处理问题。Agent需要“思考”——面对一个复杂任务,它能分解步骤、选择策略、发现错误并自我纠正。怎么说呢,这就是规划与推理的主要价值。

说到任务分解,ReAct框架与思维树解析

使用者痛点的观点是,任务拆解不清晰。导致Agent卡死或走弯路

很多开发者在让Agent处理复杂查询时常常只给出“一句话”指令,结果Agent要么一次性尝试全部答案,要么在中途失去上下文。其实,缺乏程序化的任务分解是导致低效和错误的根本原因。

第4章:如何让Agent学会思考?

至于ReAct,推理与行动的交织

ReAct是目前最主流的Agent推理框架。它的主要思想极其直观:在每一步中,Agent先“想”再“做”。

思考:使用者问北京今天天气,我不知道实时天气,需要搜索
行动的观点是。调用天气API查询北京
再看观察,北京今天晴,25°C,微风
说到思考,已经获取到天气信息,可以回答了
说到回答,北京今天天气晴朗,气温25度,微风,适合外出活动。

在LangChain中实现ReAct Agent:

from langchain_openai import ChatOpenAI
from langchain.agents import AgentExecutor,create_react_agent
from langchain_core.prompts import PromptTemplate
from langchain_community.tools import DuckDuckGoSearchRun
llm = ChatOpenAI
search = DuckDuckGoSearchRun
tools =
react_template = """
尽可能回答以下问题。你可以使用以下工具:{tools}
再看使用以下格式,问题:{input}
至于思考,你应该总是思考接下来做什么
从行动来看,要采取的行动。应该是中的一个
输入这方面,行动的参数
说到观察,行动的结果...
说到思考,我现在知道最终答案了
从最终答案来看,对原始问题的最终答案
开始!问题的观点是,{input}
从思考来看。{agent_scratchpad}
"""
prompt = PromptTemplate.from_template
agent = create_react_agent
agent_executor = AgentExecutor
result = agent_executor.invoke
print

ReAct的关键参数

参数说明建议值
max_iterations最大推理步数5
max_execution_time最大执行时间-60
handle_parsing_errors推理失败时的处理策略"check" 或自定义函数
early_stopping_method提前停止策略"generate"

思维树

ReAct 是线性的——每一步只有一个选择。但复杂问题可能需要探索多条方法,这就是思维树的价值。

ToT 允许 Agent 在每一步生成多个候选方案,接下来评估每个方案的价值。选择最优方法继续深入:


问题
/ \
思路A 思路B
/ \ / \
方案A1 方案A2 方案B1 ...
\ | /
评估 & 选择最佳方法
|
最终答案
def tree_of_thought_solve -> str:
"""简化版思维树实现"""
llm = ChatOpenAI # 较高温度增加多样性
def generate_thoughts -> list:
prompt = f"当前状态:{state}
问题这方面,{problem}
请生成 {n} 个不同的接下来思路。"
response = llm.invoke
return
def evaluate_thought -> float:
prompt = f"评估以下思路对处理问题的价值:
思路的观点是,{thought}
问题的观点是,{problem}
评分:"
response = llm.invoke
try的观点是,return float)
说到except,return -10.0
best_path = ""
current_state = problem
for d in range:
thoughts = generate_thoughts
scores =
best_thought。best_score = max
best_path += f"
步骤 {d+1}:{best_thought}"
current_state = best_thought
return best_path.strip

说到反思机制,Self‑Reflection 与自我纠错流程

再看使用者痛点,“一次生成后不检查”,导致大量错误代码或误导性答案。

LLM 并非完美——它会产生幻觉、遗漏关键信息、甚至直接给出错误结论。没有反思机制的 Agent 就像一个不会检查作业的学生,犯错了也不会知道。话说回来,

Self‑Reflection 的基本模式

反思机制主要是在 Agent 执行后增加一个“自检”步骤:

执行 → 检查 → 发现问题 → 修正 → 重新执行 → 通过 → 返回结果
from pydantic import BaseModel
class ReflectionResult:
is_correct: bool
issues这方面。list
suggestions: list
class ReflectiveAgent:
def __init__:
self.llm = ChatOpenAI
self.max_retries = 3
def execute_with_reflection -> str:
result = execute_fn
for _ in range:
reflection: ReflectionResult = reflect_fn
if reflection.is_correct:
return result
correction_prompt = f"""原始任务:{task}
再看上次执行结果,{result}
至于发现的问题,{reflection.issues}
至于改进建议,{reflection.suggestions}
请。"""
result = self.llm.invoke.content
return result
def reflect_on_code -> ReflectionResult:
structured_llm = self.llm.with_structured_output
return structured_llm.invoke(f"""检查以下代码是否正确完成了任务:
至于任务。{task}
代码的观点是,{code}
请评估这方面,- 是否完成任务?
- 是否有 bug 或逻辑错误?改进建议,""")

Refine 模式:迭代调整长文本输出

LangChain 提供了 Refine 链,可对报告、分析等长文本进行多轮改进:

from langchain.chains import RefineDocumentsChain
refine_chain = RefineDocumentsChain.from_llm(
llm=ChatOpenAI。question_prompt=initial_analysis_prompt,refine_prompt=refine_improvement_prompt,)
refined_report = refine_chain.run
print

至于多步推理,复杂逻辑下的决策方法调整

从使用者痛点来看,“一步到位”期待导致链式错误累积。话说回来,

复杂任务往往需要多步推理。每一步都依赖上一步结果,其实,如果中间某一步出错,后续所有步骤都会偏离正确轨道。

链式推理示例

import json
class ChainedReasoner:
def __init__:
self.llm = llm
def reason -> dict:
"""按步骤链式推理。每步记录中间结果"""
reasoning_chain = {"problem": problem,"steps": }
for i,desc in enumerate:
step_prompt = f"""当前问题:{problem}
已完成步骤这方面,{json.dumps}
第{i+1}步描述:{desc}
请给出该步明确结论。"""
step_result = self.llm.invoke.content
reasoning_chain.append({
再看"step",i+1,"description": desc。"conclusion": step_result,})
final_prompt = f"""问题:{problem}
再看推理过程,{json.dumps}
请综合以上所有步骤,给出最终答案。"""
reasoning_chain = self.llm.invoke.content
return reasoning_chain
reasoner = ChainedReasoner)
result = reasoner.reason(
problem="某电商访问使用者转化率下降了20%,如何分析原因?",steps=)
print)

分支推理与回溯

对于高度不确定的问题。可采用分支推理同时探索多条方法;当某条方法进入死胡同时回溯至上一步重新选择:

class BranchingReasoner:
def __init__:
self.llm = llm
self.max_branches = max_branches
def explore -> list:
paths =,"status": "exploring"}]
for d in range:
new_paths =
for path in paths:
if path!= "exploring":
new_paths.append
continue
branches = self._generate_branches
new_paths.extend
paths = new_paths
for path in paths:
path = self._evaluate_path
return sorted)。reverse=True)
# 以下两个方法需自行实现具体提示逻辑
def _generate_branches: ...
def _evaluate_path: ...

幻觉抑制这方面,基于事实核查的推理提高技术

User Pain Point:“模型经常编造不存在的数据”,导致业务决策风险。

L​LM 的幻觉主要表现为三类:

类型表现示例
事实性幻觉"Python 4.0 于2023年发布"
逻辑性幻觉"因为 A 所以 B。而实际两者无关联"
忠实性幻觉"上下文说 X,却回答 Y"

事实核查提高策略一:检索提高验证

def fact_check_with_retrieval -> dict:
"""用检索结果验证声明"""
docs = retriever.invoke
verification_prompt = f"""待验证声明:{claim}
说到参考资料,{docs}
从请判断来看,1. 声明是否被支持?2. 是否有证据反驳,怎么说呢,3. 给出可信度评级。"""
llm = ChatOpenAI
return llm.invoke.content

再看策略二,自我一致性检查

def self_consistency_check -> str:
"""通过多次采样检查答案一致性"""
llm_high_temp = ChatOpenAI
answers =
consensus_prompt=f"""问题:{question}

说到策略三。置信度校准

from pydantic import BaseModel class AnswerWithConfidence: 说到answer,str confidence: float   # 0~1 区间表示确信程度 reasoning: str assumptions: list def answer_with_confidence -> AnswerWithConfidence: llm=ChatOpenAI structured=llm.with_structured_output return structured.invoke(f"""请回答下面的问题,并提供置信度、推理过程还有所做假设: {question} 从注意来看,- 若不确定,请降低置信度而不是捏造信息。""")

:应对环境反馈的实时策略修正

User Pain Point:“一次计划后工具故障或数据缺失导致整个流程崩溃”。

A static plan is generated once and executed verbatim;其实,a dynamic planner continuously re‑evaluates environment and rewrites remaining steps.

基于反馈的规划修正示例

import json class DynamicPlanner: def __init__: self.llm=llm def plan->list: prompt=f"""任务:{tasks} 当前上下文的观点是,{context or '无'} 请制定执行计划。每步包含: · 步骤描述· 预期结果· 如果失败该怎么备选· 前置依赖""" resp=self.lll.invoke.content return self._parse_plan def adjust_plan(self,original_plan:list,current_step:int,execution_result=dict,context=dict)->list: prompt=f"""原始计划:{json.dumps} 当前已完成到第 {current_step} 步,执行结果:{json.dumps} 从当前上下文来看,{json.dumps} 请信息重新安排剩余步骤,并给出完整的新计划。""" resp=self.lll.invoke.content return self._parse_plan def _parse_plan->list: # 简单行号解析示例;实际项目建议使用结构化输出 steps= for line in text.split: if line.strip and line.strip.isdigit: steps.append}) return steps # 示例运行 planner=DynamicPlanner) initial_plan=planner.plan print

执行‑评估‑调整循环

def executewithadaptation(task:str,planner:DYNAMICPlanner,executor,maxretriesperstep:int=2): plan=planner.plan history= for i,step in enumerate: for attempt in range: result=executor # 使用者自行实现单步执行函数 if result.get: history.append break 说到else,# 调整剩余计划 plan=planner.adjustplan(plan,i,result,context={"completedsteps":history}) if attempt==maxretriesperstep-1: history.append return history

def dummy_executor: # 假设然后总会失败 if "第 3 步" in step.get: return {"success":False,"msg":"API 超时"} return {"success":True,"msg":"ok"}

runlog=executewithadaptation( task="生成并发送财务月报",planner=planner,executor=dummyexecutor。maxretriesper_step=2)

print)

关键设计原则

  1. 每次执行后都评估:
  2. 保留调整历史:

本章小结

推理技术 主要思想 适用场景
ReAct 交替 “思考→行动” 的线性链式流程 通用 Agent 任務,需要即时调用外部工具时
Tree of Thought 多方法探索 + 方法评分选择 开放式、创造性、需要比较不同解法的问题
Self‑Reflection 执行后自检 + 自动纠错 代码生成、报告撰写等对准确性要求高的输出
链式推理 分步传递中间结果、逐层累加结论 业务分析、数据洞察等多阶段决策过程
分支推理 同时探索多条方法并回溯筛选最佳路线 高不确定性决策、策略游戏等场景
幻觉抑制技术 检索验证 + 自我一致性 + 置信度标注 事实问答、法律合规、金融报告等对真实性敏感领域
动态规划 实时根据反馈修改剩余计划,实现弹性执行


标签: 能力

SEO优化服务概述

作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。

百度官方合作伙伴 白帽SEO技术 数据驱动优化 效果长期稳定

SEO优化核心服务

网站技术SEO

  • 网站结构优化 - 提升网站爬虫可访问性
  • 页面速度优化 - 缩短加载时间,提高用户体验
  • 移动端适配 - 确保移动设备友好性
  • HTTPS安全协议 - 提升网站安全性与信任度
  • 结构化数据标记 - 增强搜索结果显示效果

内容优化服务

  • 关键词研究与布局 - 精准定位目标关键词
  • 高质量内容创作 - 原创、专业、有价值的内容
  • Meta标签优化 - 提升点击率和相关性
  • 内容更新策略 - 保持网站内容新鲜度
  • 多媒体内容优化 - 图片、视频SEO优化

外链建设策略

  • 高质量外链获取 - 权威网站链接建设
  • 品牌提及监控 - 追踪品牌在线曝光
  • 行业目录提交 - 提升网站基础权威
  • 社交媒体整合 - 增强内容传播力
  • 链接质量分析 - 避免低质量链接风险

SEO服务方案对比

服务项目 基础套餐 标准套餐 高级定制
关键词优化数量 10-20个核心词 30-50个核心词+长尾词 80-150个全方位覆盖
内容优化 基础页面优化 全站内容优化+每月5篇原创 个性化内容策略+每月15篇原创
技术SEO 基本技术检查 全面技术优化+移动适配 深度技术重构+性能优化
外链建设 每月5-10条 每月20-30条高质量外链 每月50+条多渠道外链
数据报告 月度基础报告 双周详细报告+分析 每周深度报告+策略调整
效果保障 3-6个月见效 2-4个月见效 1-3个月快速见效

SEO优化实施流程

我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:

1

网站诊断分析

全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。

2

关键词策略制定

基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。

3

技术优化实施

解决网站技术问题,优化网站结构,提升页面速度和移动端体验。

4

内容优化建设

创作高质量原创内容,优化现有页面,建立内容更新机制。

5

外链建设推广

获取高质量外部链接,建立品牌在线影响力,提升网站权威度。

6

数据监控调整

持续监控排名、流量和转化数据,根据效果调整优化策略。

SEO优化常见问题

SEO优化一般需要多长时间才能看到效果?
SEO是一个渐进的过程,通常需要3-6个月才能看到明显效果。具体时间取决于网站现状、竞争程度和优化强度。我们的标准套餐一般在2-4个月内开始显现效果,高级定制方案可能在1-3个月内就能看到初步成果。
你们使用白帽SEO技术还是黑帽技术?
我们始终坚持使用白帽SEO技术,遵循搜索引擎的官方指南。我们的优化策略注重长期效果和可持续性,绝不使用任何可能导致网站被惩罚的违规手段。作为百度官方合作伙伴,我们承诺提供安全、合规的SEO服务。
SEO优化后效果能持续多久?
通过我们的白帽SEO策略获得的排名和流量具有长期稳定性。一旦网站达到理想排名,只需适当的维护和更新,效果可以持续数年。我们提供优化后维护服务,确保您的网站长期保持竞争优势。
你们提供SEO优化效果保障吗?
我们提供基于数据的SEO效果承诺。根据服务套餐不同,我们承诺在约定时间内将核心关键词优化到指定排名位置,或实现约定的自然流量增长目标。所有承诺都会在服务合同中明确约定,并提供详细的KPI衡量标准。

SEO优化效果数据

基于我们服务的客户数据统计,平均优化效果如下:

+85%
自然搜索流量提升
+120%
关键词排名数量
+60%
网站转化率提升
3-6月
平均见效周期

行业案例 - 制造业

  • 优化前:日均自然流量120,核心词无排名
  • 优化6个月后:日均自然流量950,15个核心词首页排名
  • 效果提升:流量增长692%,询盘量增加320%

行业案例 - 电商

  • 优化前:月均自然订单50单,转化率1.2%
  • 优化4个月后:月均自然订单210单,转化率2.8%
  • 效果提升:订单增长320%,转化率提升133%

行业案例 - 教育

  • 优化前:月均咨询量35个,主要依赖付费广告
  • 优化5个月后:月均咨询量180个,自然流量占比65%
  • 效果提升:咨询量增长414%,营销成本降低57%

为什么选择我们的SEO服务

专业团队

  • 10年以上SEO经验专家带队
  • 百度、Google认证工程师
  • 内容创作、技术开发、数据分析多领域团队
  • 持续培训保持技术领先

数据驱动

  • 自主研发SEO分析工具
  • 实时排名监控系统
  • 竞争对手深度分析
  • 效果可视化报告

透明合作

  • 清晰的服务内容和价格
  • 定期进展汇报和沟通
  • 效果数据实时可查
  • 灵活的合同条款

我们的SEO服务理念

我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。

提交需求或反馈

Demand feedback