AI Agent 这一年:从工具调用到自主执行,附可运行源码示例
AI Agent 最新更新内容汇总|附源码
过去一年,AI Agent(智能体)从“能调用工具的聊天机器人”快速演进为“可规划、可执行、可协作、可评估”的自动化系统。无论是个人知识助理、企业流程自动化、软件研发助手,还是数据分析、客服、运营、投研等场景,Agent 都正在成为大模型落地的重要形态。本文将系统梳理 AI Agent 的最新更新方向、核心架构变化、主流能力模块,并附上一个可运行的简化版 Agent 源码示例,帮助你快速理解和上手。
一、AI Agent 到底是什么?
AI Agent 可以理解为一个具备“目标理解、任务规划、工具调用、记忆管理、结果反馈”能力的智能系统。
传统 Chatbot 的主要能力是对话,它通常根据用户输入直接生成回答;而 AI Agent 不只是回答问题,还可以主动拆解任务、选择工具、执行步骤、检查结果,甚至在失败后自我修正。
例如,用户说:
“帮我分析最近三个月销售数据,找出增长最快的产品,并生成一份汇报。”
普通聊天机器人可能只能给出分析思路;而 Agent 可以:
- 读取数据库或表格;
- 编写并执行数据分析代码;
- 生成图表;
- 总结业务结论;
- 输出 Markdown、PPT 或邮件草稿;
- 根据用户反馈继续修改。
因此,Agent 的价值不在于“更会聊天”,而在于“更会完成任务”。
二、AI Agent 最新更新趋势汇总
近年来,AI Agent 的发展主要集中在以下几个方向。
1. 从单轮问答升级为多步骤任务规划
早期大模型主要依赖 prompt 直接生成答案,但面对复杂任务时容易出现遗漏、幻觉或逻辑跳跃。最新 Agent 架构普遍引入了 Planner,也就是“规划器”。
规划器会先把用户目标拆解为多个子任务,例如:
用户目标:为一个电商店铺制定双十一营销方案
Agent 规划:
1. 分析目标用户画像
2. 查询历史销售数据
3. 总结热销品类
4. 设计促销策略
5. 生成活动排期
6. 输出最终方案
相比一次性回答,多步骤规划有几个优势:
- 任务过程更透明;
- 复杂问题更容易分解;
- 失败步骤可以单独重试;
- 可以结合不同工具完成不同子任务;
- 更适合企业级流程自动化。
目前主流 Agent 框架基本都支持任务规划,包括 ReAct、Plan-and-Execute、Reflection、Tree of Thoughts、Graph-based Agent 等模式。
2. 工具调用能力显著增强
AI Agent 最核心的能力之一是 Tool Use,也就是工具调用。
所谓工具,可以是:
- 搜索引擎;
- 数据库;
- 计算器;
- Python 执行器;
- 邮件系统;
- 日历系统;
- 企业 CRM;
- ERP;
- 知识库检索;
- 文件读写;
- 浏览器自动化;
- API 接口;
- 图像生成工具;
- 代码执行环境。
最新的 Agent 不再只是“知道很多”,而是可以通过工具获取实时信息、执行真实操作。
例如,Agent 可以根据用户问题自动选择工具:
用户:今天上海天气如何?
Agent:调用天气 API。
用户:帮我计算 2023 年销售额同比增长率。
Agent:调用数据库查询工具 + Python 计算工具。
用户:帮我给客户发一封会议确认邮件。
Agent:调用邮件发送工具。
这意味着 Agent 的能力边界不再局限于模型训练数据,而是扩展到外部系统。
3. Function Calling / Tool Calling 成为标准能力
过去,让大模型调用工具通常需要在 Prompt 中写复杂规则,例如:
如果你需要搜索,请输出 search(query="xxx")
但这种方式不够稳定。现在,越来越多模型和框架支持结构化的 Function Calling 或 Tool Calling。
简单来说,就是开发者提前定义好工具名称、参数格式和说明,大模型根据用户意图返回结构化调用请求。
例如:
{
"tool_name": "search_web",
"arguments": {
"query": "AI Agent 最新发展趋势"
}
}
这种方式相比纯文本指令更可靠,因为它:
- 参数格式更稳定;
- 便于程序解析;
- 可以减少幻觉调用;
- 更适合接入真实业务系统;
- 支持多工具组合调用。
对于企业应用来说,Function Calling 是 Agent 工程化落地的重要基础。
4. 记忆系统从简单上下文升级为长期记忆
传统聊天机器人只能依赖当前上下文窗口,一旦对话太长,前面的信息就会丢失。最新 Agent 普遍引入 Memory 模块。
Agent 的记忆一般分为几类:
1)短期记忆
短期记忆主要保存当前对话上下文,例如用户刚刚说过什么、当前任务进行到哪一步。
2)长期记忆
长期记忆用于保存跨会话信息,例如:
- 用户偏好;
- 历史任务记录;
- 常用文件;
- 项目背景;
- 客户信息;
- 团队规范。
3)向量记忆
通过 embedding 将文本转换为向量,存入向量数据库。之后 Agent 可以根据语义相似度检索相关内容。
常见向量数据库包括:
- Chroma;
- FAISS;
- Milvus;
- Pinecone;
- Weaviate;
- Qdrant。
4)情景记忆
情景记忆更关注“发生过什么事情”,例如:
用户上周让 Agent 生成过一份产品分析报告;
用户更喜欢简洁风格;
用户所在公司主要客户是中小企业;
用户希望方案中多使用表格。
记忆系统的升级,使 Agent 更像一个真正的长期助手,而不是每次都从零开始的聊天程序。
5. RAG 与 Agent 深度融合
RAG,即 Retrieval-Augmented Generation,中文通常称为“检索增强生成”。
它的核心逻辑是:
- 先从知识库中检索相关资料;
- 再把资料作为上下文交给大模型;
- 最后由大模型生成回答。
在 Agent 场景中,RAG 不再只是问答插件,而是任务执行过程中的重要信息来源。
例如,一个企业知识库 Agent 可以这样工作:
用户:公司报销差旅费有什么规定?
Agent:
1. 调用知识库检索工具;
2. 找到财务制度文档;
3. 提取差旅费相关条款;
4. 总结报销标准;
5. 给出依据来源。
RAG 与 Agent 融合后,可以显著降低幻觉,提高回答可追溯性,尤其适合企业知识管理、客服、法务、医疗、金融等领域。
6. 多 Agent 协作成为热点
单个 Agent 可以完成很多任务,但复杂项目往往需要多个角色协作。
因此,多 Agent 系统逐渐兴起。
常见设计方式包括:
- 一个 Agent 负责规划;
- 一个 Agent 负责搜索;
- 一个 Agent 负责写作;
- 一个 Agent 负责代码;
- 一个 Agent 负责审核;
- 一个 Agent 负责执行。
例如,生成一份市场调研报告,可以设计为:
Research Agent:负责收集资料
Analysis Agent:负责分析数据
Writer Agent:负责撰写报告
Reviewer Agent:负责检查事实和格式
Manager Agent:负责任务分配与结果整合
多 Agent 的优势在于:
- 分工更明确;
- 输出质量更稳定;
- 可以模拟团队协作;
- 适合复杂项目自动化;
- 更容易扩展不同专业能力。
不过,多 Agent 也带来新的问题,例如通信成本增加、任务循环、角色冲突、结果不一致等。因此在实际项目中,需要设计清晰的流程、终止条件和评估机制。
7. Agent 工作流从链式结构升级为图结构
早期 Agent 流程通常是线性的:
输入 → 思考 → 调用工具 → 生成答案
但真实业务流程往往不是简单直线,而是存在条件判断、循环、并行和回退。
因此,图结构 Agent Workflow 越来越重要。
例如:
开始
↓
理解需求
↓
是否需要查询知识库?
├── 是 → 检索文档 → 整理资料
└── 否 → 直接规划
↓
是否需要调用工具?
├── 是 → 执行工具 → 校验结果
└── 否 → 生成回答
↓
审核输出
↓
结束
图结构工作流的好处是:
- 更适合复杂业务;
- 可控性更强;
- 可以设置人工审批节点;
- 可以支持失败重试;
- 方便监控每个步骤。
这也是很多企业级 Agent 框架正在强化的能力。
8. Agent 评估与可观测性越来越重要
当 Agent 真正进入业务系统后,最难的问题不是“能不能跑”,而是“跑得是否可靠”。
因此,Agent Evaluation 和 Observability 成为最新重点方向。
常见评估指标包括:
- 任务完成率;
- 工具调用准确率;
- 回答事实正确率;
- 幻觉率;
- 成本;
- 响应时间;
- 用户满意度;
- 多轮对话一致性;
- 安全合规性。
可观测性则包括:
- 每一步调用了什么工具;
- 每次调用耗时多少;
- 输入输出是什么;
- 失败原因是什么;
- Token 消耗多少;
- 是否命中知识库;
- 是否触发安全规则。
没有评估和监控的 Agent,很难在企业生产环境中长期稳定运行。
三、AI Agent 核心架构
一个典型 AI Agent 架构通常包括以下模块:
用户输入
↓
任务理解模块
↓
规划器 Planner
↓
记忆模块 Memory
↓
工具选择器 Tool Router
↓
工具执行器 Tool Executor
↓
结果观察 Observer
↓
反思与修正 Reflector
↓
最终输出
下面对几个核心模块做进一步说明。
1. Planner:任务规划器
Planner 负责把用户目标拆解为可执行步骤。
示例:
用户:帮我写一篇关于新能源汽车行业趋势的文章。
Planner 输出:
1. 搜索新能源汽车行业最新数据;
2. 总结市场规模、政策、技术、竞争格局;
3. 提炼核心观点;
4. 生成文章大纲;
5. 撰写正文;
6. 检查逻辑与格式。
2. Tool Router:工具路由器
Tool Router 负责判断当前步骤应该使用哪个工具。
例如:
- 需要实时信息 → 搜索工具;
- 需要计算 → Python 工具;
- 需要知识库资料 → RAG 工具;
- 需要发送通知 → 邮件/IM 工具;
- 需要文件处理 → 文件工具。
3. Memory:记忆模块
Memory 负责保存历史上下文和用户偏好。
例如:
{
"user_preference": {
"language": "zh-CN",
"writing_style": "专业、简洁、有结构",
"output_format": "Markdown"
},
"project_context": {
"industry": "SaaS",
"target_users": "中小企业老板"
}
}
4. Reflection:反思模块
Reflection 负责检查中间结果是否满足目标。
例如:
检查点:
1. 是否回答了用户问题?
2. 是否引用了可靠信息?
3. 是否存在明显逻辑错误?
4. 是否需要补充数据?
5. 是否需要重新调用工具?
反思机制可以提高 Agent 的鲁棒性,但也会增加成本和耗时,因此需要根据场景合理使用。
四、AI Agent 典型应用场景
1. 编程助手
AI Agent 可以帮助开发者完成:
- 需求理解;
- 架构设计;
- 代码生成;
- 单元测试;
- Bug 定位;
- 代码审查;
- 文档生成;
- 自动化部署脚本编写。
相比普通代码补全,Agent 更适合完成端到端开发任务。
2. 企业知识库助手
企业内部往往有大量制度、流程、培训材料和项目文档。Agent 可以结合 RAG:
- 回答员工问题;
- 查询制度条款;
- 总结会议纪要;
- 生成培训材料;
- 自动整理知识库;
- 提供引用来源。
3. 数据分析助手
Agent 可以连接数据库和 BI 系统,实现自然语言数据分析:
用户:帮我看一下上个月华东区销售额下降的原因。
Agent:
1. 查询销售数据;
2. 按区域、产品、渠道拆分;
3. 对比历史同期;
4. 发现异常指标;
5. 生成分析报告。
4. 客服与销售助手
Agent 可以在客服和销售场景中承担:
- 自动回复常见问题;
- 查询订单;
- 推荐产品;
- 生成销售话术;
- 记录客户需求;
- 创建 CRM 跟进任务;
- 识别高价值客户。
5. 个人效率助手
对于个人用户,Agent 可以帮助:
- 安排日程;
- 总结邮件;
- 写文章;
- 制定学习计划;
- 管理待办事项;
- 搜索资料;
- 生成旅行攻略。
五、附源码:一个简化版 AI Agent 实现
下面给出一个 Python 版本的简化 Agent 示例。它不依赖复杂框架,重点演示 Agent 的基本流程:任务理解、工具选择、工具调用和结果返回。
说明:为了便于阅读,这里使用规则模拟 LLM 决策。如果你要接入真实大模型,可以把
decide_tool部分替换为大模型 API 调用。
1. 项目结构
simple_ai_agent/
├── agent.py
├── tools.py
├── memory.py
└── main.py
2. tools.py
# tools.py
import math
import datetime
def calculator(expression: str) -> str:
"""
简单计算器工具。
注意:真实生产环境不要直接 eval 用户输入。
这里仅用于演示。
"""
try:
allowed_names = {
"abs": abs,
"round": round,
"pow": pow,
"sqrt": math.sqrt,
"sin": math.sin,
"cos": math.cos,
"tan": math.tan,
"pi": math.pi,
}
result = eval(expression, {"__builtins__": {}}, allowed_names)
return f"计算结果:{result}"
except Exception as e:
return f"计算失败:{str(e)}"
def get_current_time(_: str = "") -> str:
"""
获取当前时间工具。
"""
now = datetime.datetime.now()
return f"当前时间:{now.strftime('%Y-%m-%d %H:%M:%S')}"
def mock_search(query: str) -> str:
"""
模拟搜索工具。
真实项目中可以替换为搜索引擎 API、企业知识库或数据库查询。
"""
fake_database = {
"AI Agent": "AI Agent 是具备规划、工具调用、记忆和反馈能力的智能系统。",
"RAG": "RAG 是检索增强生成技术,通过外部知识库提升回答准确性。",
"Function Calling": "Function Calling 可以让模型以结构化方式调用外部函数或 API。",
}
for key, value in fake_database.items():
if key.lower() in query.lower():
return f"搜索结果:{value}"
return f"搜索结果:暂未找到与「{query}」高度相关的内容。"
TOOLS = {
"calculator": {
"name": "calculator",
"description": "用于数学计算,例如 3 + 5 * 2",
"func": calculator,
},
"get_current_time": {
"name": "get_current_time",
"description": "用于获取当前系统时间",
"func": get_current_time,
},
"mock_search": {
"name": "mock_search",
"description": "用于查询 AI Agent、RAG、Function Calling 等知识",
"func": mock_search,
},
}
3. memory.py
# memory.py
class Memory:
"""
简单记忆模块。
用于保存历史对话和用户偏好。
"""
def __init__(self):
self.history = []
self.profile = {
"language": "中文",
"style": "专业、清晰、有结构",
}
def add_message(self, role: str, content: str):
self.history.append({
"role": role,
"content": content
})
def get_recent_history(self, limit: int = 5):
return self.history[-limit:]
def get_profile(self):
return self.profile
def clear(self):
self.history = []
4. agent.py
# agent.py
from tools import TOOLS
from memory import Memory
class SimpleAgent:
"""
一个简化版 AI Agent。
核心流程:
1. 接收用户输入
2. 根据输入选择工具
3. 执行工具
4. 结合工具结果生成最终回答
"""
def __init__(self):
self.memory = Memory()
self.tools = TOOLS
def decide_tool(self, user_input: str):
"""
工具选择器。
这里用简单规则模拟大模型决策。
真实场景中可以替换为 LLM Function Calling。
"""
text = user_input.lower()
# 判断是否需要计算
math_keywords = ["计算", "等于", "+", "-", "*", "/", "sqrt", "平方根"]
if any(keyword in text for keyword in math_keywords):
expression = (
user_input
.replace("计算", "")
.replace("等于多少", "")
.replace("等于", "")
.replace("平方根", "sqrt")
.strip()
)
return {
"tool_name": "calculator",
"tool_input": expression
}
# 判断是否需要时间
time_keywords = ["现在几点", "当前时间", "今天日期", "现在时间"]
if any(keyword in text for keyword in time_keywords):
return {
"tool_name": "get_current_time",
"tool_input": ""
}
# 判断是否需要搜索
search_keywords = ["查询", "搜索", "什么是", "介绍", "解释"]
if any(keyword in text for keyword in search_keywords):
return {
"tool_name": "mock_search",
"tool_input": user_input
}
return {
"tool_name": None,
"tool_input": user_input
}
def execute_tool(self, tool_name: str, tool_input: str):
"""
工具执行器。
"""
if tool_name not in self.tools:
return "未找到可用工具。"
tool = self.tools[tool_name]
return tool["func"](tool_input)
def reflect(self, user_input: str, tool_result: str):
"""
简单反思模块。
用于检查工具结果是否可用。
"""
if not tool_result:
return "工具没有返回有效结果,需要重新处理。"
if "失败" in tool_result:
return "工具执行失败,请检查输入或更换工具。"
return "工具结果可用。"
def generate_response(self, user_input: str, tool_name, tool_result: str):
"""
生成最终回答。
真实场景中,这一步通常由大模型完成。
"""
profile = self.memory.get_profile()
if tool_name:
return (
f"根据你的问题,我调用了工具 `{tool_name}`。\n\n"
f"工具返回结果如下:\n\n"
f"{tool_result}\n\n"
f"以上是按照「{profile['style']}」风格整理的回答。"
)
return (
"我已经理解你的问题。当前示例 Agent 没有调用外部工具,"
"你可以尝试输入:\n"
"1. 计算 3 + 5 * 2\n"
"2. 现在几点\n"
"3. 什么是 AI Agent\n"
)
def run(self, user_input: str):
"""
Agent 主入口。
"""
self.memory.add_message("user", user_input)
decision = self.decide_tool(user_input)
tool_name = decision["tool_name"]
tool_input = decision["tool_input"]
if tool_name:
tool_result = self.execute_tool(tool_name, tool_input)
reflection = self.reflect(user_input, tool_result)
else:
tool_result = ""
reflection = "无需调用工具。"
response = self.generate_response(user_input, tool_name, tool_result)
self.memory.add_message("assistant", response)
return {
"user_input": user_input,
"tool_name": tool_name,
"tool_input": tool_input,
"tool_result": tool_result,
"reflection": reflection,
"response": response,
"recent_history": self.memory.get_recent_history()
}
5. main.py
# main.py
from agent import SimpleAgent
def main():
agent = SimpleAgent()
print("Simple AI Agent 已启动,输入 exit 退出。")
print("-" * 50)
while True:
user_input = input("\n用户:")
if user_input.lower() in ["exit", "quit", "退出"]:
print("Agent:再见!")
break
result = agent.run(user_input)
print("\n[工具调用信息]")
print(f"工具名称:{result['tool_name']}")
print(f"工具输入:{result['tool_input']}")
print(f"工具结果:{result['tool_result']}")
print(f"反思结果:{result['reflection']}")
print("\n[最终回答]")
print(result["response"])
if __name__ == "__main__":
main()
6. 运行方式
在终端中执行:
python main.py
然后可以输入:
计算 3 + 5 * 2
输出示例:
[工具调用信息]
工具名称:calculator
工具输入:3 + 5 * 2
工具结果:计算结果:13
反思结果:工具结果可用。
[最终回答]
根据你的问题,我调用了工具 `calculator`。
工具返回结果如下:
计算结果:13
以上是按照「专业、清晰、有结构」风格整理的回答。
再输入:
什么是 AI Agent
可能输出:
工具名称:mock_search
工具输入:什么是 AI Agent
工具结果:搜索结果:AI Agent 是具备规划、工具调用、记忆和反馈能力的智能系统。
这个示例虽然简单,但已经包含 Agent 的基本组成:
- 输入理解;
- 工具选择;
- 工具执行;
- 结果反思;
- 记忆存储;
- 最终输出。
在真实项目中,你可以继续扩展:
- 接入大模型 API;
- 接入数据库;
- 接入向量知识库;
- 添加权限控制;
- 增加日志系统;
- 增加多 Agent 协作;
- 增加任务队列;
- 增加前端界面。
六、如何将示例升级为真实 Agent?
上面的源码是教学版。如果要用于真实业务,需要做以下升级。
1. 使用大模型替代规则判断
当前 decide_tool 是基于关键词判断的,灵活性有限。真实 Agent 应该让大模型根据工具描述自动选择工具。
可以给模型提供类似结构:
[
{
"name": "search_knowledge_base",
"description": "用于查询企业内部知识库",
"parameters": {
"query": "用户要查询的问题"
}
},
{
"name": "query_database",
"description": "用于查询销售、订单、客户等结构化数据",
"parameters": {
"sql": "需要执行的 SQL 查询语句"
}
}
]
然后让模型返回:
{
"tool_name": "query_database",
"arguments": {
"sql": "SELECT product_name, SUM(amount) FROM orders GROUP BY product_name;"
}
}
2. 增加安全控制
Agent 一旦可以调用工具,就可能带来风险。例如:
- 错误发送邮件;
- 删除重要文件;
- 执行危险代码;
- 泄露敏感数据;
- 误操作业务系统。
因此必须设置权限和审批机制。
建议:
- 高风险操作必须人工确认;
- 数据库只开放只读权限;
- 文件操作限制目录范围;
- API 调用设置白名单;
- 对用户输入做安全过滤;
- 对工具输出做脱敏处理;
- 保存完整操作日志。
3. 增加任务状态管理
复杂任务通常不是一步完成的,需要管理状态。
例如:
任务状态:
- pending:等待执行
- running:执行中
- waiting_approval:等待人工审批
- failed:执行失败
- completed:执行完成
状态管理可以让 Agent 更适合长任务,例如自动生成周报、批量处理工单、数据同步、内容审核等。
4. 增加评估机制
Agent 输出质量必须可衡量。可以设计自动化评估:
评估维度:
1. 是否完成用户目标;
2. 是否调用了正确工具;
3. 是否引用了正确资料;
4. 是否存在事实错误;
5. 是否符合格式要求;
6. 是否产生安全风险。
对于企业级 Agent,建议保留测试集,并定期评估不同版本的表现。
七、AI Agent 开发中的常见问题
1. Agent 为什么容易“跑偏”?
原因通常包括:
- 用户目标不清晰;
- Prompt 约束不足;
- 工具描述不准确;
- 缺少终止条件;
- 记忆污染;
- 模型推理能力不足;
- 缺少结果校验。
解决方法:
- 明确任务边界;
- 限制最大执行步数;
- 为工具写清楚输入输出;
- 增加反思和校验;
- 对关键操作增加人工确认;
- 定期清理或压缩记忆。
2. Agent 是否越复杂越好?
不是。
很多业务场景并不需要复杂 Agent。比如 FAQ 问答,只需要 RAG 就够了;简单表单填写,也不一定需要多 Agent。
设计时应该遵循一个原则:
能用规则解决的,不必强行用 Agent;能用单 Agent 解决的,不必上多 Agent;能用工作流解决的,不必让模型自由发挥。
Agent 的目标是提高任务完成能力,而不是堆叠复杂架构。
3. 如何控制 Agent 成本?
Agent 的成本主要来自:
- 大模型调用;
- 多轮推理;
- 工具调用;
- 向量检索;
- 长上下文;
- 失败重试。
优化方法包括:
- 简单任务使用小模型;
- 复杂任务才使用强模型;
- 缓存常见问题答案;
- 限制最大循环次数;
- 减少不必要的反思;
- 对长文档先摘要再处理;
- 使用批量处理降低调用次数。
八、AI Agent 未来发展方向
未来 AI Agent 可能会向以下方向继续演进。
1. 更强的自主规划能力
Agent 将能够更准确地理解复杂目标,自动生成可执行计划,并动态调整步骤。
2. 更可靠的工具执行能力
工具调用会更加结构化、稳定和安全。Agent 不仅能调用工具,还能理解工具失败原因并自动修正。
3. 更完善的长期记忆
未来 Agent 会更懂用户偏好、项目背景和组织知识,但同时也必须解决隐私、安全和记忆污染问题。
4. 更成熟的多 Agent 协作
多 Agent 系统会从实验阶段走向生产应用,但需要更好的通信协议、角色管理和冲突解决机制。
5. 更强的端侧 Agent
随着小模型和端侧推理发展,个人设备上的 Agent 会越来越多,例如手机 Agent、电脑 Agent、浏览器 Agent、办公软件 Agent。
6. 更深的企业系统集成
Agent 将不仅是聊天入口,而是企业系统的智能操作层,连接 CRM、ERP、OA、BI、工单、知识库、邮件、日历等系统。
九、总结
AI Agent 的最新发展可以概括为一句话:
从“会回答问题的大模型”,升级为“能理解目标、调用工具、管理记忆、执行任务并持续改进的智能系统”。
当前 AI Agent 的关键更新包括:
- 多步骤任务规划;
- 结构化工具调用;
- 长期记忆系统;
- RAG 深度融合;
- 多 Agent 协作;
- 图结构工作流;
- 结果反思与自我修正;
- 评估与可观测性;
- 企业级安全与权限控制。
对于开发者来说,学习 AI Agent 不应只停留在 Prompt 技巧,而要理解其工程架构:模型、工具、记忆、规划、执行、评估和安全。
本文提供的简化版源码可以作为入门模板。你可以在此基础上逐步接入真实大模型、知识库、数据库和业务系统,构建属于自己的 AI Agent 应用。