什么是 AI Agent?它与普通聊天机器人有什么区别?

码海寻道 · 大模型、智能体与 RAG 工程组件系列第 34 篇

在这里插入图片描述

“聊天机器人”和“AI Agent”经常被混用。聊天机器人通常围绕对话输入和文本输出展开,而 Agent 更强调:理解目标、规划步骤、调用工具、观察结果,并根据状态继续行动。

Agent 不是“换一个更强的模型”就自动产生的能力,而是一套带状态、工具、策略和执行边界的应用系统。模型负责提出下一步意图,控制器负责校验、调度、重试和终止,工具服务负责真正访问数据或执行动作。

一、先看两种处理方式

普通聊天机器人

用户问题 → Prompt → 大模型 → 文本回答

它适合问答、总结、翻译和简单的 RAG 查询。流程通常由应用代码预先决定。

AI Agent

用户目标
   ↓
分析当前状态
   ↓
选择工具或下一步
   ↓
执行工具
   ↓
观察结果
   ↓
继续规划或结束

Agent 的关键不在于“回答更像人”,而在于它可以围绕目标进行多步行动。

二、Agent 的基本组成

一个工程化 Agent 至少包含:

  • 模型:负责理解、规划和生成工具调用;
  • 工具:搜索、数据库、业务 API、计算器等;
  • 状态:保存问题、历史消息、工具结果和中间结论;
  • 控制器:决定继续、重试、转人工还是结束;
  • 记忆:保存当前线程或跨会话需要的信息;
  • 安全策略:约束工具权限、参数和副作用。

可以把它理解为“模型驱动的状态机”,而不是一个神秘的自主程序。

三、一个最小 Agent 循环

for step in range(MAX_STEPS):
    decision = model.invoke(state)

    if decision.type == "final":
        return decision.content

    if decision.type == "tool_call":
        result = execute_tool_safely(decision.name, decision.arguments)
        state.append({"tool": decision.name, "result": result})
        continue

    raise RuntimeError("unsupported model decision")

真实系统还需要参数校验、超时、重试、并发限制、审计和最大步数控制。

四、什么场景适合 Agent?

工具选择不固定

用户可能要求搜索知识库、查询订单或调用天气 API,系统需要根据问题选择不同工具。

任务需要多步执行

例如先查库存,再计算价格,最后创建报价单。每一步的输入依赖上一步结果。

需要根据结果动态分支

搜索不到资料时追问用户,权限不足时转人工,风险操作前请求审批。

如果流程完全固定,使用普通工作流往往更容易测试和控制。

五、Agent 和 RAG 是什么关系?

RAG 是一种检索增强模式,Agent 是一种围绕目标进行行动的运行方式。Agent 可以把知识库检索当作工具:

Agent
  ├── search_knowledge_base
  ├── query_order
  ├── calculate_price
  └── create_ticket

也可以在一个固定 RAG 流程中加入 Agent,但不是所有 RAG 都需要 Agent。简单的“问题 → 检索 → 回答”不必强行增加循环和工具选择。

六、Agent 的边界在哪里?

Agent 不应该拥有无限权限和无限步数。应明确:

  • 可以调用哪些工具;
  • 每个工具允许访问哪些租户和资源;
  • 哪些工具只读;
  • 哪些操作需要人工确认;
  • 最大步数、超时和 Token 预算;
  • 工具参数校验、幂等和失败降级;
  • 单次运行最大时间和成本;
  • 什么时候必须停止并解释失败原因。

七、如何判断一个 Agent 是否真的有价值?

不要只看对话是否流畅,应该比较:

  • 任务完成率;
  • 工具调用成功率;
  • 平均和最大步骤数;
  • 错误恢复率;
  • 多步骤带来的收益是否超过额外延迟、成本和失败面;
  • 是否能通过 trace_id 回放每次规划和工具调用;
  • 是否有人工审批和降级路径;
  • P95 延迟;
  • Token 和 API 成本;
  • 越权和危险操作拦截率。

如果 Agent 只是多调用几次模型,却没有提升任务完成质量,应该回到更简单的流程设计。

八、一个企业知识助手的示例

用户:帮我查一下合同 X 的付款节点,并创建提醒
   ↓
Agent 判断需要合同检索工具
   ↓
查询权限与合同版本
   ↓
检索合同内容
   ↓
提取付款日期
   ↓
展示即将创建的提醒
   ↓
等待用户确认
   ↓
调用日历 API

“创建提醒”具有外部副作用,不能因为模型判断完成就直接执行。

结语

普通聊天机器人主要完成一次输入到输出,AI Agent 则在状态、工具和控制规则的约束下完成多步任务。Agent 不是越自主越好,真正可靠的 Agent 应该是可观测、可限制、可暂停和可恢复的。

下一篇将拆解 Tool Calling:模型如何提出工具调用,应用如何校验并执行搜索、数据库和 API。

参考资料

  1. LangGraph 官方文档:Workflows and Agents
  2. LangGraph 官方文档:Graph API
  3. OpenAI 官方文档:Function Calling
  4. LangGraph 官方文档:Persistence

本文为“码海寻道”原创技术文章。Agent 框架和模型能力持续变化,正式上线前应结合目标模型与工具协议验证。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐