Agent智能体
不只回答问题,还能自己规划步骤、调用工具、看结果再决定下一步的 AI 系统
Agent(智能体)指的是这样一类 AI 系统:你给它一个目标而不是一条指令,它自己拆解任务、调用工具去执行、读取执行结果、判断离目标还差多少,然后决定下一步。从"你问我答"变成"你说要什么,我去搞定"。
它和普通对话的真正区别
普通对话是一次性的:输入 → 输出,结束。Agent 是一个循环:
1. 观察——看当前状态和上一步的结果
2. 决策——决定下一步调用哪个工具、传什么参数
3. 行动——工具真的被执行了(读文件、发请求、跑命令)
4. 回到第 1 步,直到判断目标达成或放弃
关键的分界线在第 3 步:它对外部世界产生了真实副作用。这条线一跨过,整个工程问题的性质就变了——错误不再只是"答错了",而是"改坏了文件""发错了邮件""重复下了单"。
让 Agent 能用起来的几个部件
- 工具调用:模型输出结构化的调用请求,外部代码执行后把结果喂回去。这是 Agent 的手脚。
- 规划:把大目标拆成可执行的小步。可以由模型隐式完成,也可以由外部编排显式约束。
- 记忆:循环跑长了,上下文窗口装不下全部历史,需要压缩、摘要或外部存储。
- 权限与沙箱:限定它能碰什么。这是从 Demo 到生产之间最关键、也最常被跳过的一步。
- 停止条件:最大轮数、预算上限、失败退出。没有这个,一个卡住的 Agent 能烧掉惊人的 Token。
为什么 Demo 惊艳、上线困难
单步成功率的复利效应是最反直觉的一点。假设每一步有 95% 的成功率:
- 5 步任务:成功率约 77%
- 20 步任务:成功率约 36%
- 50 步任务:成功率约 8%
所以做 Agent 的核心工程不是让它更聪明,而是缩短链条 + 让每一步可验证 + 失败能恢复。能用一次工具调用解决的,不要让它自由探索五步。
实践中管用的做法
- 先把工作流写死,只在真正需要判断的节点放开。全自主是最后一步,不是第一步。
- 在有副作用的动作前设人工确认。删除、支付、对外发送,一律拦一道。
- 让每一步的输入输出可观测。Agent 的调试成本极高,没有 trace 基本没法定位问题。
- 给它可回滚的环境。能在沙箱或分支里干活,就别让它直接动生产。
常见误解
"接了几个工具就是 Agent 了"——不是。有工具但没有循环、没有基于结果调整策略,那只是函数调用。Agent 的定义在于自主的迭代,不在于工具的数量。
英文原文解释(Dictionary of AI Coding)
A model harnessed with tools, a system prompt, and a context window, that takes turns with a user. _Claude Code is an agent. Cursor is an agent. Claude.ai is an agent._ An agent is what you actually talk to — it's the model in motion, configured for a purpose.
Unlike most terms in this dictionary, "agent" doesn't name a mechanical part. The model is a file of parameters; the harness is software you can point at. The agent is neither — it's the unit you're speaking to. People anthropomorphize AI constantly, and the agent is the anthropomorphized unit: the thing you delegate to, the thing that reads your message and answers, the "it" in "it broke the build again". When you say the agent did something, you mean the model-plus-harness did it, but you're addressing the combination as a single actor.
The idea is older than this wave of AI. Software agents — programs you delegate a goal to, which act on your behalf — have been a concept for as long as AI has.
什么时候会用到
当前 AI 产品的主要竞争方向;编程助手、浏览器操作、自动化工作流都在这条线上。
例句
- 这个流程别做成全自主 Agent,先写死工作流,只在分类那一步让模型判断。
- 20 步的任务单步 95% 也就三成多的成功率,得把链条砍短。
- 有副作用的动作前面必须加确认,不然它删错了没法回滚。
别混淆
别把「接了工具的聊天机器人」叫 Agent。区别在于有没有「看结果 → 调整下一步」的循环。