一、内容归纳整理
(一)智能体(Agent)定义
- 现状:大模型领域处于快速发展阶段,Agent 暂无统一共识,非单次大模型调用的系统常被开发者称为 "Agent"。
- 核心定义参考:
- OpenAI AGI 五级分类:Level3 及以上才具备 Agent 核心能力(自主行动执行任务、创新、组织管理)。
- 翁荔(前 OpenAI 研究副总裁):Agent = 大模型 + 记忆 + 主动规划 + 工具使用,明确四大核心组件。
- LangChain 作者 Horrison:Agent 是使用 LLM 决定应用程序控制流的系统,但承认与大众认知存在差异。
- 核心共识:更应关注 "agentic"(渐进的智能属性),类似自动驾驶分级,取决于 LLM 对系统行为的决策权重。
AI Agent 和 Agentic AI 的区分:
- AI Agent:是具备自主能力的智能实体,能感知环境、制定计划、执行任务,比如智能客服机器人、个人任务助手,是一个 "具体的智能角色"。
- Agentic AI:是系统或模型具备的智能体属性,核心是 "自主决策、目标驱动、持续交互",它不是一个独立实体,而是描述智能的特征。比如普通导航软件加入自主规划路线 + 实时避堵的能力,就具备了 Agentic AI 属性。
(二)Agentic System 架构划分
| 类型 | 核心特点 | 适用场景 |
|---|---|---|
| 工作流(Workflow) | 预定义代码路径编排 LLM 和工具,流程固定、可预测 | 任务明确、步骤可预定义的场景 |
| 自主智能体(Autonomous Agent) | LLM 动态控制决策和工具使用,自主规划任务,侧重灵活性与自我决策 | 任务步骤难以预知、需长期自主规划的开放性问题 |
| 补充说明 | 多数简单场景通过 RAG(检索增强生成)和 Prompt 优化即可满足,无需盲目增加系统复杂度 | - |
(三)Agentic System 组成模块
- 基础构建模块:增强型 LLM(具备检索、工具使用和记忆能力),开发建议优先直接使用 API,必要时借助高级框架。
- 工作流(Workflow)常见模式:
- 提示链(Prompt Chaining):按顺序拆分任务,中间可添加程序检查(Gate)。
- 路由(Routing):按输入分类分配后续任务,优化成本与速度。
- 并行(Parallelization):含分段(独立子任务并行)和投票(多轮执行对比)两种变体。
- 协调者 - 工作者(Orchestrator-Workers):协调者拆解任务,工作者专注子任务。
- 评估 - 优化循环(Evaluator-Optimizer):生成 - 反馈 - 优化的反复循环。
- 自主智能体(Autonomous Agent)核心组件:
- 规划模块:子目标拆解 + 反思优化。
- 记忆系统:短期记忆(上下文)+ 长期记忆(外部存储)。
- 工具使用:调用外部 API 获取实时信息与功能扩展。
- 关键特性:支持环境真实反馈、人工检查点干预、终止条件设置。
(四)国内外 Agent 平台、框架与产品
| 类型 | 代表产品 / 框架 | 核心特点 |
|---|---|---|
| 全代码框架 | LangChain & LangGraph、LlamaIndex | 开源,灵活度高,适合技术人员深度开发 |
| 低代码平台 | 毕昇(BISHENG)、Dify、Coze、FastGPT | 开源为主,支持快速搭建,适配企业级场景,部分支持二次开发 |
| 代表性产品 | ChatGPT DeepResearch、Manus、扣子空间、毕昇灵思、AutoGLM 沉思 | 覆盖对话、报告生成、多任务处理等场景 |
(五)核心总结
- 定义层面:聚焦 "agentic" 属性分级,而非纠结是否为 "Agent"。
- 架构选择:根据任务场景权衡工作流(确定性任务)与自主智能体(开放性任务)。
- 开发原则:从简单方案(API 直接调用、RAG+Prompt 优化)出发,逐步迭代优化,避免过度复杂。
二、学习心得
- 定义的 "包容性" 是行业发展关键:Agent 领域尚未形成统一标准,"agentic" 属性的提出提供了更灵活的评估视角,既避免了定义争议带来的壁垒,也鼓励更多开发者参与探索,这与技术创新初期的 "容错性" 特征高度契合。
- 架构选择本质是 "场景与成本的平衡":工作流与自主智能体并非 "高低级" 关系,而是适配不同需求的解决方案。实际开发中,多数场景无需追求 "全自主",通过 RAG 和 Prompt 优化即可满足需求,过度复杂的架构反而会增加延迟和成本,这提醒开发者需回归 "问题导向" 而非 "技术炫技"。
- 组件化思维是 Agent 开发的核心:无论是增强型 LLM 的基础能力,还是自主智能体的 "规划 - 记忆 - 工具" 三大组件,Agent 系统的构建具有明确的模块化特征。掌握各模块的功能边界和协作逻辑,是快速落地应用的关键。
- 低代码平台降低了行业准入门槛:毕昇、Dify 等低代码平台的开源化,让非技术背景的业务人员也能通过模板快速搭建智能应用,这加速了 Agent 技术从 "实验室" 走向 "产业落地" 的进程,也预示着 "全民参与 AI 开发" 的趋势。
三、代码运行记录
(一)运行代码
python 示例如下所示:
from openai import OpenAI
# 初始化OpenAI客户端(需配置API密钥)
client = OpenAI()
# 定义工具:获取指定地点的当前温度
tools = [
{
"type": "function",
"function": {
"name": "get_weather",
"description": "Get current temperature for a given location.",
"parameters": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "City and country e.g. Bogota,Colombia"
}
},
"required": ["location"],
"additionalProperties": False
}
},
"strict": True
}
]
# 发起对话请求,询问巴黎今日天气
completion = client.chat.completions.create(
model="gpt-4o",
messages=[{"role": "user", "content": "What is the weather like in Paris today?"}],
tools=tools
)
# 输出工具调用结果
print(completion.choices[0].message.tool_calls)
(二)运行前提
- 环境依赖:安装
openaiPython 包(pip install openai)。 - 配置要求:需在环境变量或代码中配置 OpenAI API 密钥(
client = OpenAI(api_key="你的密钥"))。
(三)预期运行结果
LLM 会识别用户需求,调用get_weather工具,输出包含 "location: Paris, France" 参数的工具调用指令,示例如下:
[ToolCall(id='xxx', function=FunctionCall(name='get_weather', arguments={'location': 'Paris, France'}), type='function')]
(四)实际运行说明
若未配置 API 密钥或网络不通,会抛出认证错误或连接错误;若模型不支持工具调用(如未使用 gpt-4o 等支持函数调用的模型),会直接返回自然语言回答而非工具调用指令。
四、踩坑填坑记录
(一)坑点 1:盲目追求 "自主智能体",忽视场景适配
- 问题表现:开发初期即采用自主智能体架构,导致系统延迟高、成本飙升,但实际任务(如固定流程的客户咨询)无需动态规划。
- 填坑方法:先评估任务类型 ------ 若步骤可预定义,优先使用工作流架构;若仅需简单响应,直接通过 RAG+Prompt 优化实现,无需引入 Agent 复杂组件。
(二)坑点 2:未理清 LLM 接口逻辑,依赖高级框架导致调试困难
- 问题表现:直接使用 LangChain 等高级框架开发,遇到工具调用失败时,无法定位是 API 问题还是框架封装问题。
- 填坑方法:开发初期优先直接调用大模型 API,熟悉函数调用、参数传递等基础逻辑;在基础功能验证通过后,再根据需求引入框架提升开发效率。
(三)坑点 3:工作流设计未考虑 "成环" 需求,导致场景覆盖不足
- 问题表现:按 DAG(有向无环图)设计工作流,无法支持需要循环迭代的场景(如多轮评估优化)。
- 填坑方法:将工作流执行引擎抽象为状态机而非 DAG,支持节点成环,适配评估 - 优化循环等需要反复执行的模式。
(四)坑点 4:自主智能体未设置终止条件,导致无限迭代
- 问题表现:自主智能体执行开放性任务时,因未定义最大迭代次数等终止条件,陷入无休止的规划与工具调用。
- 填坑方法:开发时必须设置终止条件,包括任务完成判定、最大迭代次数、超时时间等,确保系统可控。
(五)坑点 5:忽视 "Human in the loop",导致系统鲁棒性不足
- 问题表现:完全依赖 AI 自主决策,未预留人工干预节点,遇到异常情况(如工具调用失败、输出不符合要求)时无法修正。
- 填坑方法:在关键节点设置人工检查点,支持人类介入判断和反馈,尤其适用于复杂业务场景(如多文件代码修改、敏感内容审核)。
五、对教程的意见及建议
(一)优点
- 结构清晰完整:从定义、架构、组件、平台到总结,形成闭环,逻辑连贯,适合入门者系统学习。
- 内容务实:强调 "场景适配" 和 "成本权衡",避免纯理论空谈,提供了明确的开发原则和实践方向。
- 资源丰富:补充了 OpenAI API 文档、学术论文等参考资料,方便学习者深入拓展。
(二)改进建议
- 增加实际案例完整流程:现有内容以模块拆解为主,建议补充 1-2 个完整落地案例(如 "基于毕昇平台搭建客户服务助手""用 LangChain 开发自主报告生成 Agent"),包含需求分析、架构选择、代码实现、测试优化全流程。
- 补充低代码平台操作演示:针对毕昇、Dify 等低代码平台,增加可视化操作步骤截图或视频,帮助非技术人员快速上手。
- 增加框架对比实验:对 LangChain、LlamaIndex 等全代码框架,补充相同任务下的开发效率、性能、成本对比,帮助开发者选择合适的工具。
- 补充常见错误排查指南:针对 API 调用失败、工具调用参数错误、工作流执行异常等常见问题,提供错误日志示例和排查步骤。
- 拓展行业落地场景:增加 Agent 在不同行业(如金融、医疗、教育)的具体应用场景和注意事项(如合规要求),提升教程的实用性。
六、参考
- datawhale 动手学Agent应用开发
- Agent 应用开发与落地全景-鲁力
- OpenAI API 文档:https://platform.openai.com/docs/guides/function-calling
- lilian weng:《LLM Powered Autonomous Agents》,https://lilianweng.github.io/posts/2023-06-23-agent/
- Langchain:《What is an AI agent?》,https://blog.langchain.dev/what-is-an-agent/
- Anthropic:《Building effective agents》,https://www.anthropic.com/research/building-effective-agents
