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 = 项目经理 + 多个专业员工
相关推荐
程序员清洒9 分钟前
CANN模型安全:从对抗防御到隐私保护的全栈安全实战
人工智能·深度学习·安全
island131412 分钟前
CANN ops-nn 算子库深度解析:神经网络计算引擎的底层架构、硬件映射与融合优化机制
人工智能·神经网络·架构
小白|16 分钟前
CANN与实时音视频AI:构建低延迟智能通信系统的全栈实践
人工智能·实时音视频
Kiyra16 分钟前
作为后端开发你不得不知的 AI 知识——Prompt(提示词)
人工智能·prompt
艾莉丝努力练剑20 分钟前
实时视频流处理:利用ops-cv构建高性能CV应用
人工智能·cann
程序猿追20 分钟前
深度解析CANN ops-nn仓库 神经网络算子的性能优化与实践
人工智能·神经网络·性能优化
User_芊芊君子23 分钟前
CANN_PTO_ISA虚拟指令集全解析打造跨平台高性能计算的抽象层
人工智能·深度学习·神经网络
初恋叫萱萱26 分钟前
CANN 生态安全加固指南:构建可信、鲁棒、可审计的边缘 AI 系统
人工智能·安全
机器视觉的发动机32 分钟前
AI算力中心的能耗挑战与未来破局之路
开发语言·人工智能·自动化·视觉检测·机器视觉
铁蛋AI编程实战35 分钟前
通义千问 3.5 Turbo GGUF 量化版本地部署教程:4G 显存即可运行,数据永不泄露
java·人工智能·python