一、为什么你的AI智能体总是半途而废

LangChain官方发布深度智能体框架DeepAgents的消息在AI开发者社区引发震动!这个被称为"让智能体不再浅尝辄止"的框架,究竟带来了哪些革命性变化?

你是否也曾遇到这样的困境:精心构建的AI智能体在处理简单任务时表现出色,但面对需要多步骤规划的复杂任务时,要么中途迷失方向,要么输出质量断崖式下跌?传统智能体"大模型+循环调用工具"的架构,就像没有规划能力的旅行者,只能走一步看一步,最终往往偏离目的地。

DeepAgents的出现正是为了解决这个痛点。它借鉴了Deep Research、Manus和Claude Code等深度智能体的成功经验,通过四大核心能力——规划工具、子智能体、文件系统和提示词工程,让AI智能体具备了类似人类的任务规划、分工协作和长期记忆能力。

二、DeepAgents技术原理:四大核心模块重塑智能体架构

DeepAgents的技术架构在传统智能体基础上实现了质的飞跃,其核心在于引入了四大关键模块,形成了一个闭环的智能决策系统。

DeepAgents架构图

1.核心模块解析

规划工具(Planning Tool):这是DeepAgents的"大脑",通过内置的 write_todos 工具,智能体能够在任务开始前生成详细的计划,并在执行过程中动态调整。与传统智能体"想到哪做到哪"的工作方式不同,DeepAgents会像人类专家一样,先列出清晰的任务清单和步骤顺序。

子智能体系统(Sub Agents):解决复杂任务的"团队协作"机制。主智能体可以根据任务需求,动态创建或调用专门的子智能体,如研究子智能体、数据分析子智能体等。每个子智能体拥有独立的上下文和工具集,实现了"专人专事"的分工模式,有效避免了传统单智能体架构的上下文污染问题。

文件系统(File System):提供 ls/read_file/write_file/edit_file 等工具,让智能体能够像人类一样读写文件,持久化存储中间结果。这一机制解决了大语言模型上下文窗口有限的痛点,使智能体能够处理超长文本和复杂任务。

提示词工程(System Prompt):DeepAgents内置了基于Claude Code风格的系统提示词,详细指导智能体如何使用工具、规划任务和协作。用户还可以根据具体场景自定义提示词,引导智能体形成特定的工作风格和决策模式。

2.与传统智能体的本质区别

传统智能体通常采用"感知-决策-行动"的简单循环,而DeepAgents则构建了一个更接近人类认知过程的复杂系统。通过对比两种工作流程,我们可以清晰看到DeepAgents的优势所在:

LangChain DeepAgents工作流程

传统智能体流程:

  1. 接收用户查询
  2. 直接调用工具获取信息
  3. 生成回答

DeepAgents流程:

  1. 接收用户查询
  2. 规划工具生成任务分解和执行计划
  3. 根据计划调用相应子智能体
  4. 子智能体执行任务并将结果写入文件系统
  5. 主智能体整合结果,反思优化
  6. 生成最终回答

这种架构上的革新,使得DeepAgents能够处理传统智能体难以胜任的复杂任务,如深度研究、代码开发和长篇内容创作等。

三、从零开始构建深度智能体:完整实战教程

接下来,我们将通过一个实际案例,展示如何使用DeepAgents构建一个能够进行深度技术研究的智能体。本教程包含环境配置、核心API调用和子智能体创建等完整步骤,所有代码均可直接运行。

1.环境配置与依赖安装

首先,确保你的系统满足以下要求:

  • Python 3.8+
  • pip 20.0+
  • 网络连接(用于安装依赖和调用API)

打开终端,执行以下命令安装DeepAgents及相关依赖:

# 安装DeepAgents核心包pip install deepagents# 安装网络搜索工具依赖pip install tavily-python# 安装LangChain模型集成(可选,根据需要的模型安装)pip install langchain-openaipip install langchain-anthropic

2.获取API密钥

本示例需要使用Tavily搜索引擎API,你需要先注册并获取API密钥:

  1. 访问 Tavily官网 注册账号
  2. 在个人中心获取API密钥
  3. 设置环境变量:
# Linux/Macexport TAVILY_API_KEY="your_api_key_here"# Windows (PowerShell)$env:TAVILY_API_KEY="your_api_key_here"

3.核心API调用示例

下面我们创建一个能够进行深度技术研究的智能体,以"LangGraph最新发展"为研究主题:

import osfrom typing import Literalfrom tavily import TavilyClientfrom deepagents import create_deep_agent# 初始化Tavily客户端tavily_client = TavilyClient(api_key=os.environ["TAVILY_API_KEY"])# 定义网络搜索工具def internet_search(    query: str,    max_results: int = 5,    topic: Literal["general", "news", "finance"] = "general",    include_raw_content: bool = False,):    """执行网络搜索的工具函数"""    return tavily_client.search(        query,        max_results=max_results,        include_raw_content=include_raw_content,        topic=topic,    )# 定义研究智能体的系统提示词research_instructions = """你是一位专业技术研究员,擅长深入分析AI领域的最新发展。你的任务是:1. 对给定主题进行全面搜索和资料收集2. 分析和对比不同来源的信息3. 识别关键趋势和技术突破4. 撰写结构清晰、内容深入的研究报告你可以使用internet_search工具获取最新信息。在研究过程中,请遵循以下步骤:- 首先明确研究问题和范围- 制定详细的搜索计划- 收集并评估信息来源的可靠性- 综合分析信息并形成结论- 以专业但易懂的语言呈现研究结果"""# 创建深度智能体agent = create_deep_agent(    tools=[internet_search],  # 注册工具    system_prompt=research_instructions,  # 设置系统提示词    model="anthropic:claude-sonnet-4-20250514"  # 指定模型(可选))# 调用智能体进行研究result = agent.invoke({    "messages": [{"role": "user", "content": "研究LangGraph 2025年的最新发展,包括新功能、应用案例和性能改进"}]})# 输出研究结果print(result["messages"][-1]["content"])

4.子智能体创建与任务分配

对于更复杂的研究任务,我们可以创建专门的子智能体来分工协作。以下示例展示如何创建一个文献分析子智能体和一个报告撰写子智能体:

# 定义文献分析子智能体literature_agent = {    "name": "literature-analyzer",    "description": "用于深入分析学术文献和技术文档,提取关键观点和方法",    "system_prompt": """你是一位文献分析专家,擅长从学术论文和技术文档中提取核心信息。你的任务是:1. 识别文献的研究问题和贡献2. 分析所使用的方法和实验设计3. 总结主要发现和结论4. 评估研究的优势和局限性分析时请保持客观中立,重点关注技术细节和方法论创新。""",    "tools": [internet_search],  # 继承主智能体的工具    "model": "openai:gpt-4o"  # 为子智能体指定不同模型}# 定义报告撰写子智能体writer_agent = {    "name": "report-writer",    "description": "将研究结果整理成结构清晰、语言流畅的正式报告",    "system_prompt": """你是一位专业技术撰稿人,擅长将复杂的研究结果转化为易懂的报告。你的任务是:1. 理解并整合提供的研究材料2. 构建逻辑清晰的报告结构3. 使用专业准确的语言表达技术概念4. 确保内容连贯且引人入胜报告应包括摘要、引言、主体分析、结论和参考文献等部分,适合技术决策者阅读。""",    "model": "anthropic:claude-3-5-sonnet-20240620"}# 创建包含子智能体的深度智能体agent_with_subagents = create_deep_agent(    tools=[internet_search],    system_prompt=research_instructions,    subagents=[literature_agent, writer_agent],  # 注册子智能体    model="anthropic:claude-sonnet-4-20250514")# 调用带子智能体的智能体complex_result = agent_with_subagents.invoke({    "messages": [{"role": "user", "content": "撰写一份关于大语言模型推理能力评估方法的研究报告,需要包括最新研究进展和比较分析"}]})# 输出最终报告print(complex_result["messages"][-1]["content"])

5.关键参数调优技巧

为了获得最佳性能,需要根据具体任务调整DeepAgents的关键参数。以下是一些实用的调优建议:

  1. 模型选择
  • 复杂分析任务:使用Claude 3.5 Sonnet或GPT-4o
  • 代码生成任务:使用GPT-4o或Claude Code
  • 简单任务/成本敏感场景:使用Claude Haiku或GPT-3.5 Turbo
  1. 工具调用参数
# 调整搜索结果数量(默认5)   internet_search(query, max_results=10)   # 指定搜索主题以获取更相关结果   internet_search(query, topic="academic")  # 学术搜索   internet_search(query, topic="news")      # 新闻搜索
  1. 子智能体配置
# 为子智能体分配专用工具   data_agent = {       "name": "data-analyst",       "description": "数据分析专家",       "tools": [data_analysis_tool],  # 仅提供数据分析工具       # ...   }
  1. 人机协作设置
# 配置需要人工审核的工具调用   agent = create_deep_agent(       tools=[internet_search],       system_prompt=research_instructions,       interrupt_on={           "internet_search": {               "allowed_decisions": ["approve", "edit", "reject"]           }       }   )

四、进阶技巧:打造真正智能的深度智能体

要充分发挥DeepAgents的潜力,需要深入理解其核心机制并掌握高级使用技巧。本节将从记忆机制、任务分解和反思能力三个维度,结合代码片段解析实现原理。

1.记忆机制:让智能体拥有长期记忆

DeepAgents通过文件系统工具实现了持久化记忆,解决了传统智能体"健忘"的问题。以下代码展示如何利用文件系统存储和检索信息:

# 智能体使用文件系统存储中间结果def research_workflow():    # 1. 规划研究步骤    todos = agent.invoke({        "messages": [{"role": "user", "content": "write_todos: 为研究LangGraph最新发展创建详细任务清单"}]    })    # 2. 执行搜索并保存结果到文件    search_results = agent.invoke({        "messages": [{"role": "user", "content": "internet_search: LangGraph 2025新功能"}]    })    # 3. 将搜索结果写入文件(由智能体自动完成)    # 智能体内部会调用 write_file("langgraph_2025_features.txt", search_results)    # 4. 后续步骤中读取文件(由智能体自动完成)    # 智能体内部会调用 read_file("langgraph_2025_features.txt")    return agent.invoke({        "messages": [{"role": "user", "content": "基于收集的信息,撰写LangGraph 2025发展报告"}]    })

DeepAgents的文件系统是基于LangGraph的State实现的虚拟文件系统,不会操作真实磁盘,因此可以安全地在多智能体环境中使用。你可以通过以下方式访问智能体的文件系统状态:

# 获取智能体当前文件系统状态state = agent.get_state()files = state["files"]# 查看所有文件print("智能体文件列表:", files.keys())# 读取特定文件内容if "research_notes.txt" in files:    print("研究笔记内容:", files["research_notes.txt"])

2.任务分解:复杂问题的系统化解决

DeepAgents采用"分解优先"的任务处理策略,将复杂任务拆解为可管理的子任务。与传统的"交错进行"模式相比,这种方法显著提高了任务完成质量和可靠性。

DeepAgents任务分解

以下代码展示了DeepAgents如何自动分解任务并分配给相应的子智能体:

# 复杂任务自动分解示例complex_task = {    "messages": [{"role": "user", "content": """    完成以下数据分析项目:    1. 从Kaggle获取2024年全球气候数据集    2. 清洗和预处理数据    3. 分析温度变化趋势和区域差异    4. 构建预测模型预测未来5年气候变化    5. 生成可视化报告和结论    """}]}# 智能体自动分解任务并调用子智能体result = agent_with_subagents.invoke(complex_task)# 查看任务分解过程(通过日志)for message in result["messages"]:    if "tool_calls" in message:        for tool_call in message["tool_calls"]:            if tool_call["name"] == "write_todos":                print("任务分解结果:", tool_call["parameters"]["todos"])

DeepAgents的任务分解算法会考虑以下因素:

  • 子任务之间的依赖关系
  • 各子智能体的专业领域
  • 任务的时间和资源需求
  • 潜在风险和应对方案

3.反思能力:智能体的自我优化机制

DeepAgents内置了反思机制,使智能体能够评估自身表现并持续改进。这种能力通过"执行-反思-调整"的循环实现:

# 启用反思机制的智能体配置reflective_agent = create_deep_agent(    tools=[internet_search],    system_prompt=research_instructions + """    在完成任务后,你需要:    1. 评估你的回答是否全面解决了问题    2. 检查是否有遗漏的重要信息    3. 分析你的推理过程是否存在逻辑漏洞    4. 提出至少一项改进建议    使用以下格式进行反思:    【自我评估】:...    【改进建议】:...    """,    subagents=[literature_agent, writer_agent])# 调用反思型智能体result_with_reflection = reflective_agent.invoke({    "messages": [{"role": "user", "content": "分析大语言模型在医疗诊断中的应用现状和挑战"}]})# 提取并打印反思内容for message in result_with_reflection["messages"]:    if "content" in message and "【自我评估】" in message["content"]:        print("智能体反思:", message["content"])

反思机制显著提升了智能体的可靠性和准确性,尤其在关键领域如医疗诊断、金融分析和法律研究中至关重要。

五、结语:拥抱智能体时代

DeepAgents的出现标志着AI智能体从"浅尝辄止"的工具向"深度思考"的协作者转变。通过规划工具、子智能体系统、文件系统和提示词工程的有机结合,DeepAgents为构建真正智能的AI系统提供了强大框架。

无论是研究人员、开发者还是企业用户,现在正是拥抱这一技术变革的最佳时机。通过本文介绍的实战指南和进阶技巧,你可以快速掌握DeepAgents的核心能力,构建属于自己的深度智能体,在AI驱动的未来竞争中占据先机。

记住,构建优秀深度智能体的关键在于:从小处着手,逐步迭代,精心设计提示词,合理配置工具和子智能体,并始终保持人机协作的开放心态。随着实践的深入,你将发现DeepAgents不仅是一个工具,更是一位能够与你共同成长的智能伙伴。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐