create_deep_agent vs create_agent 的区别

目录

[1. create_agent - LangChain 标准函数](#1. create_agent - LangChain 标准函数)

[2. create_deep_agent - DeepAgents 高级函数](#2. create_deep_agent - DeepAgents 高级函数)

核心区别对比

实际应用对比

工作流程对比

何时使用哪个?

总结


1. create_agent - LangChain 标准函数

来源: langchain.agents

作用: 创建基础智能体

特点:

  • ✅ 基础功能:LLM + Tools
  • ✅ 简单直接:适合单智能体场景
  • ❌ 不支持子代理协作
  • ❌ 不支持复杂的多智能体编排

使用示例:

python 复制代码
from langchain.agents import create_agent

agent = create_agent(
    model=llm,
    tools=[search_tool, calculator],
    system_prompt="你是一个助手"
)

# 运行
result = agent.invoke({"messages": ["查询天气"]})

2. create_deep_agent - DeepAgents 高级函数

来源: deepagents 库

作用: 创建支持子代理协作的高级智能体

特点:

  • ✅ 支持子代理:可以调用多个子代理协作
  • ✅ 多智能体编排:主代理协调子代理完成任务
  • ✅ 并行执行:支持多个子代理并行工作
  • ✅ 复杂任务拆解:自动将复杂任务拆分给不同子代理
  • ✅ 层级架构:支持多层级代理结构

使用示例:

python 复制代码
from deepagents import create_deep_agent

# 定义子代理
research_agent = {
    "name": "research_agent",
    "system_prompt": "你是研究员",
    "tools": [search_tool]
}

writer_agent = {
    "name": "writer_agent",
    "system_prompt": "你是作家",
    "tools": []
}

# 创建主代理(协调员)
coordinator = create_deep_agent(
    model=llm,
    tools=[],
    system_prompt="你是项目协调员",
    subagents=[research_agent, writer_agent]  # 关键:支持子代理
)

# 运行
result = coordinator.invoke({
    "messages": ["研究AI趋势并写报告"]
})

核心区别对比

|------------|--------------|-------------------|
| 特性 | create_agent | create_deep_agent |
| 来源 | LangChain | DeepAgents |
| 子代理支持 | ❌ 不支持 | ✅ 支持 |
| 多智能体协作 | ❌ 不支持 | ✅ 支持 |
| 并行执行 | ❌ 不支持 | ✅ 支持 |
| 任务拆解 | ❌ 手动 | ✅ 自动 |
| 适用场景 | 简单任务 | 复杂多步骤任务 |
| 复杂度 | 低 | 高 |


实际应用对比

场景1:简单查询(使用 create_agent)

python 复制代码
from langchain.agents import create_agent

# 简单的天气查询
agent = create_agent(
    model=llm,
    tools=[weather_tool],
    system_prompt="你是天气助手"
)

result = agent.invoke({"messages": ["北京今天天气怎么样?"]})

适用: 单一工具、简单查询


场景2:复杂项目(使用 create_deep_agent)

python 复制代码
from deepagents import create_deep_agent

# 研究员子代理
researcher = {
    "name": "researcher",
    "system_prompt": "收集信息",
    "tools": [search_tool]
}

# 分析师子代理
analyst = {
    "name": "analyst",
    "system_prompt": "分析数据",
    "tools": [calculator]
}

# 作家子代理
writer = {
    "name": "writer",
    "system_prompt": "撰写报告",
    "tools": []
}

# 主协调员
coordinator = create_deep_agent(
    model=llm,
    tools=[],
    system_prompt="协调子代理完成项目",
    subagents=[researcher, analyst, writer]
)

# 复杂任务:研究→分析→撰写
result = coordinator.invoke({
    "messages": ["研究AI趋势并撰写分析报告"]
})

适用: 多步骤、多角色、需要协作的复杂任务


工作流程对比

create_agent 工作流程:

python 复制代码
用户请求
    ↓
LLM 理解意图
    ↓
调用工具(如果有)
    ↓
返回结果

create_deep_agent 工作流程:

复制代码
用户请求
    ↓
主代理分析任务
    ↓
拆解为子任务
    ↓
并行调用子代理
    ├─→ 研究员:搜索信息
    ├─→ 分析师:分析数据
    └─→ 作家:撰写内容
    ↓
整合子代理结果
    ↓
返回最终结果

何时使用哪个?

使用 create_agent:

  • ✅ 简单的问答场景
  • ✅ 单一工具调用
  • ✅ 不需要多智能体协作
  • ✅ 快速原型开发

使用 create_deep_agent:

  • ✅ 复杂的多步骤任务
  • ✅ 需要多个专业角色协作
  • ✅ 需要并行处理
  • ✅ 需要任务自动拆解
  • ✅ 构建企业级应用

总结

|-----------------------|----------|
| 函数 | 一句话概括 |
| create_agent | 单兵作战的智能体 |
| create_deep_agent | 团队协作的智能体 |

简单理解:

  • create_agent = 单个员工
  • create_deep_agent = 项目经理 + 多个专业员工
相关推荐
燧机科技SuiJi6 分钟前
山体坍塌落石滑坡泥石流监测系统 落石泥石流监控摄像机
大数据·人工智能·深度学习·yolo
国科安芯27 分钟前
立方星与微纳卫星综合电子微型化趋势下的抗辐射MCU选型综述
人工智能·单片机·嵌入式硬件·mcu·risc-v·抗辐射
诸神缄默不语42 分钟前
小春学习日刊 2026年第4期:2026.10.16
人工智能
draracle1 小时前
为什么 AI 无法胜任系统架构
人工智能·系统架构
未来和明天2 小时前
iLeadE-3403边缘计算网关10.4 TOPS数据采集、视频接入与外设扩展等多元化应用需求
人工智能·边缘计算
youngfengying2 小时前
集成学习及置信度
人工智能·机器学习
火山引擎开发者社区2 小时前
1000次专业数据集调用,这次我们免费送!
人工智能
愚公移码2 小时前
蓝凌aiBPM:从“人找系统“到“意图自驱动“——AI 智能体重构企业报销与审批
人工智能·流程引擎·蓝凌
数商思语行2 小时前
企微、Agent平台与业务系统各管什么:读懂系统图
人工智能·ai·供应链·商业分析·ontology·本体·fde