AI Agent开发指南:从搭建知识库到调用工具全流程

技术开发AI Agent智能体LangChainCoze百度千帆自动客服国产大模型知识库2026-08-23
本文原创,面向有一定编程基础、希望从0到1落地AI Agent的开发者。

1. 智能体核心概念与架构

AI Agent(智能体)不是简单的“聊天机器人”,而是能感知任务、规划步骤、调用工具并完成目标的系统。它的核心公式是:Agent = LLM + 规划 + 记忆 + 工具 + 行动。
  • LLM:负责语言理解、生成和推理;
  • 规划:拆解复杂任务,例如 ReAct 模式中“思考-行动-观察”的循环;
  • 记忆:短期记忆保存当前对话,长期记忆通过向量库/知识库实现;
  • 工具:API、数据库、浏览器、代码解释器等外部能力;
  • 行动:向用户输出结果或触发系统操作。
下面是一个典型 Agent 的工作流程:
flowchart TD A[用户输入] --> B[Agent主循环] B --> C{需要调用工具或知识库?} C -- 否 --> D[LLM直接生成回答] C -- 是 --> E[检索知识库/调用工具] E --> F[获得信息] F --> D D --> G[输出回复] B --> H[短期记忆] H --> B B --> I[长期记忆/知识库] I --> B

2. 主流框架对比

框架类型核心优势适用场景学习成本国内落地
LangChain开发者编排框架灵活、组件丰富、可深度定制技术团队、复杂逻辑高需自行配置国产模型
Coze(扣子)低代码Agent平台可视化拖拽、插件多、上手快运营/产品、快速原型低国内版可直接使用
百度千帆Agent企业级Agent平台内置文心大模型、知识库/工具无缝集成企业客服、文档问答中百度云生态完善
选择建议:只要想快速验证业务逻辑,优先用 Coze;如果在云上做企业级应用且要用文心系列模型,选千帆;如果团队有工程能力,想完全掌控数据流和 Prompt,选 LangChain。

3. 实战:用国产模型搭建一个自动客服

本实战以“百度千帆Agent”控制台为主,模型使用 ERNIE 系列,任务是在线自动客服。场景假设:用户会咨询退货政策、订单状态、物流进度。

3.1 业务流程设计

自动客服收到问题后,先判断是否命中知识库;若用户要求查订单/物流,则触发工具调用;如果无法回答则转人工。架构如下:
sequenceDiagram participant U as 用户 participant A as 千帆Agent participant K as 知识库 participant T as 订单/物流API U->>A: 我的订单到哪里了? A->>K: 检索“退货政策”类问题?否 A->>T: 调用query_order工具 T-->>A: 返回物流信息 A-->>U: 您的包裹正在派送中

3.2 搭建知识库

  • 收集客服高频问答、用户手册、退货售后规则,统一转为 Markdown/TXT。
  • 清洗数据:去除不相关的促销文案、敏感信息,保留“问题-答案”对。
  • 在千帆控制台创建知识库,上传文档并选择分块策略。一般“按段落分块+重叠200字”效果不错。
  • 选择 embedding 模型,将文本向量化,并完成“索引-检索-重排”配置。

3.3 定义工具(函数调用)

为了让 Agent 能查订单,需要提供一个订单查询 API,并在 Agent 中声明工具。Python 工具定义如下:
tool_schema = {
 'type': 'function',
 'function': {
 'name': 'query_order',
 'description': '根据订单号查询订单状态和物流信息',
 'parameters': {
 'type': 'object',
 'properties': {
 'order_id': {'type': 'string'}
 },
 'required': ['order_id']
 }
 }
}
后台业务接口返回:
order_info = {
 'order_id': '20261107001',
 'status': '已发货',
 'logistics': '正在派送中,预计今日送达'
}
注意:Agent 框架通常只负责生成“工具调用参数”,真正请求订单 API 的代码需要你自己实现。

3.4 创建Agent并绑定配置

在千帆控制台创建 Agent,选择模型 ERNIE-4.0-8K,绑定知识库和工具。系统提示词建议:
你是“小航”,XX商城的自动客服。
第一步:优先从知识库中查找标准答案。
第二步:如果用户问订单、物流,直接调用query_order工具。
第三步:如果知识库和工具都不能解决,请回答“请稍等,我为您转接人工”,不要编造。

3.5 接入测试

在调试面板模拟以下对话:
  • 问:你们支持7天无理由退货吗? 期望:知识库给出准确政策。
  • 问:我的订单什么时候到? 期望:Agent 调用工具并返回物流信息。
  • 问:随便聊聊天? 期望:不调用工具,按正常对话回复。
如果命中错误,优先检查知识库分块是否合理、工具描述是否清晰、Prompt 是否有歧义。

4. 评估、调试与成本控制

4.1 评估指标

指标说明目标
知识库命中率正确检索次数 / 总问答次数>90%
工具调用准确率正确触发工具与参数占比>95%
幻觉率无依据但仍输出内容的比例越低越好
用户问题解决率完整解决的用户问题占比>85%

4.2 调试方法

  • 记录每次对话的 trace:用户输入、检索文档、工具返回、最终输出。
  • 建立回归测试集,每次修改 Prompt 或知识库后跑一遍,避免改坏旧能力。
  • 对工具返回做校验:字段缺失、超时、错误码要有兜底回答。
  • 使用“坏case库”持续复盘,把错误回答加入知识库或调整工具逻辑。

4.3 成本控制

  • 分流拦截:简单FAQ直接用 BM25,不调用大模型;只有复杂问题才走 LLM。
  • 模型分级:简单任务用 ERNIE Speed 或轻量模型,复杂推理才用 ERNIE-4.0。
  • 缓存:相同问题使用语义缓存,命中后不重复计费。
  • Prompt 瘦身:System Prompt 不要塞太长的历史记录,压缩上下文。
  • 设置Token上限:限制单轮最大输出长度,避免无效生成浪费。

操作清单

  • 明确自动客服的业务边界和“必须转人工”的规则
  • 收集并清洗 FAQ 文档,搭建知识库
  • 设计订单/物流查询 API,并在 Agent 中声明工具
  • 编写清晰的系统提示词
  • 在调试面板完成3类以上问答测试
  • 配置日志追踪和坏case回收机制
  • 设置模型分级、缓存和Token预算

避坑指南

  • 不要把 ChatGPT 的 Prompt 直接搬到国产模型,格式与能力有差异,要按平台要求重写。
  • 知识库不是越大越好,chunk 太小会丢失上下文,太大容易检索到无关内容,建议500-1000字并带重叠。
  • 工具调用后必须校验返回结果,否则“幻觉”会转移到“工具输出”。
  • 不要在 Prompt 中写死 API Key 或明文密钥。
  • 忘记做“转人工”兜底,会严重伤害用户体验。
  • 没有日志和评估集就盲目调优,很难知道改动是变好还是变坏。

推荐视频(标注出处,仅供学习)

  • B站:《AI Agent入门到实战:LangChain+大模型应用开发》 UP主:AI技术课堂,点击搜索
  • 腾讯视频:《AI智能体开发全流程》 出处:腾讯视频公开课,点击搜索
  • 优酷:《从0搭建自动客服机器人》 出处:优酷科技频道,点击搜索
  • 抖音:《AI Agent实战教程》 出处:抖音创作者@AI编程实验室,点击搜索

免责声明

本文为原创技术教程,内容仅用于学习与交流,不构成任何商业建议。文中涉及的平台、商标、产品名称归各自所有者所有;API接口、模型价格、控制台操作方式可能随时调整,请以官方文档为准。推荐视频来自公开平台,版权归原作者所有,引用标注如有不妥,请联系删除。
PREMIUM

需要完整版教程?

包含详细步骤、视频演示、提示词模板和可下载资料包。微信支付即时获取。

购买完整版 ¥29.90