[智能体-359]:Deep Agents代码示例:最简入门 → 内置规划 / VFS → 子代理 + 人机介入
2026/6/11 10:11:33 网站建设 项目流程

下面提供3 个梯度的可运行代码示例,从最简入门 → 内置规划 / VFS → 子代理 + 人机介入,覆盖 Deep Agents 核心用法,同时结合你之前的Skill/Tool概念。

环境说明

  • Python 3.9+
  • 依赖安装

bash

运行

pip install langchain langchain-openai langchain-deepagents python-dotenv

根目录新建.env,填入模型密钥:

env

OPENAI_API_KEY=sk-xxx

一、示例 1:最简入门(基础调用)

演示:创建基础Deep Agent,执行普通文本任务,体会开箱即用特性。

python

运行

from dotenv import load_dotenv from langchain_openai import ChatOpenAI from langchain_deepagents import create_deep_agent load_dotenv() # 1. 初始化大模型 llm = ChatOpenAI(model="gpt-3.5-turbo", temperature=0) # 2. 创建 Deep Agent(默认内置规划、上下文管理、基础运行时) agent = create_deep_agent( llm=llm, system_prompt="你是专业文档助手,回答简洁、条理清晰。" ) # 3. 执行任务 if __name__ == "__main__": res = agent.run("总结 Deep Agents 的 3 个核心作用") print("===== 执行结果 =====") print(res)

要点说明

  • 无需手动写 Agent 循环、记忆、Prompt 编排;
  • 底层自动启用Planner 规划,复杂问题会自动拆解步骤;
  • 基于 LangGraph 做状态管理。

二、示例 2:结合 VFS 虚拟文件系统 + 自定义 Tool

演示 Deep Agents标志性能力VFS 虚拟文件,同时接入自定义外部 Tool,区分SkillTool。 场景:

  1. 先用 Skill(模型原生能力)整理文本;
  2. 写入 VFS 虚拟文件;
  3. 用自定义 Tool 读取并二次加工。

python

运行

from dotenv import load_dotenv from langchain_openai import ChatOpenAI from langchain.tools import tool from langchain_deepagents import create_deep_agent load_dotenv() llm = ChatOpenAI(model="gpt-3.5-turbo", temperature=0) # ===================== 1. 定义 Skill(模型原生能力,纯推理) ===================== @tool def text_sort_skill(raw_text: str) -> str: """ Skill:文本要点梳理(大模型原生能力,无外部调用) Args: raw_text: 原始文本 """ prompt = f"将以下内容梳理为条理清晰的要点:\n{raw_text}" return llm.invoke(prompt).content # ===================== 2. 定义 Tool(外部操作能力) ===================== @tool def file_analysis_tool(file_content: str) -> str: """ Tool:文件内容分析(模拟外部工具) Args: file_content: 从VFS读取的文件内容 """ return f"【工具分析结果】内容总字数:{len(file_content)},核心主题:智能体Harness架构" # ===================== 3. 创建 Deep Agent ===================== agent = create_deep_agent( llm=llm, system_prompt="你可以使用文本梳理技能和文件分析工具,优先把长内容存入虚拟文件。", tools=[text_sort_skill, file_analysis_tool] ) if __name__ == "__main__": task = """ Deep Agents 是 LangChain 官方生产级 Harness,内置任务规划、虚拟文件系统、子代理、安全沙箱。 它基于 LangGraph 作为运行时,解决普通智能体上下文超限、任务混乱、无法长期运行的问题。 广泛用于长文档处理、项目开发、复杂报告生成等场景。 """ res = agent.run(f"梳理下面内容,存入虚拟文件,并调用工具分析文件:\n{task}") print("===== 最终输出 =====") print(res)

核心看点

  1. VFS 自动生效长文本会被 Agent 主动写入内存虚拟文件,不占用对话上下文;
  2. 严格区分:
    • text_sort_skill:模型内生能力 →Skill
    • file_analysis_tool:外部功能封装 →Tool
  3. Deep Agents自动调度「规划 → Skill 处理 → VFS 存文件 → Tool 读取分析」全流程。

三、示例 3:子代理 (Subagent) + 人机介入 (HITL)

演示两大企业级核心能力:分层子代理、人工审批,模拟多角色协作。 角色分工:

  • 主代理:总调度
  • 调研子代理:收集、整理信息
  • 写稿子代理:生成正式文案
  • 关键步骤触发人工确认

python

运行

from dotenv import load_dotenv from langchain_openai import ChatOpenAI from langchain_deepagents import create_deep_agent load_dotenv() llm = ChatOpenAI(model="gpt-3.5-turbo", temperature=0) # 创建 Deep Agent,指定子代理角色 + 开启人机介入 agent = create_deep_agent( llm=llm, system_prompt="你是项目总负责人,协调调研代理和文案代理完成工作,重要内容必须等待人工确认。", # 内置子代理:分工协作,上下文互相隔离 subagents=["researcher", "writer"], # 开启人机在回路(关键步骤暂停,等待人工输入) human_in_the_loop=True ) if __name__ == "__main__": print("任务开始:制作一份 Deep Agents 技术简介文案") result = agent.run("先调研 Deep Agents 核心组件,再编写对外技术简介文案") print("\n===== 全部任务完成 =====") print(result)

运行交互说明

  1. Agent 自动拆分任务:先派researcher子代理调研信息;
  2. 调研完成后,切换到writer子代理撰写文案;
  3. 到达输出最终文案节点时,程序暂停,控制台提示人工输入:

    plaintext

    [Human Input] 请审核内容,可修改/补充,输入完成后回车继续:
  4. 人工确认 / 修改后,任务继续并收尾。

核心概念对应

  • subagents:Deep Agents分层协作能力,各司其职、上下文隔离;
  • human_in_the_loop=True:企业合规必备 HITL 人机介入;
  • 整体运行在 LangGraph 之上,状态自动持久化。

四、补充:关键 API 与参数释义

1.create_deep_agent常用参数

表格

参数作用
llm绑定大模型,智能核心
system_prompt全局角色与规则,统一所有子代理行为
tools挂载自定义 Skill / Tool 列表
subagents声明内置子代理角色,自动创建分工单元
human_in_the_loop开启 / 关闭人机介入
enable_vfs开关虚拟文件系统(默认True
enable_planning开关显式任务规划(默认True

2. 内置默认工具(开箱即用)

Deep Agents 自带一组基础工具,无需手动定义:

  • 文件类:read_file/write_file/ls(操作 VFS)
  • 任务类:write_todo/update_todo(管理待办计划)
  • 子代理:spawn_subagent(动态创建子代理)

五、架构链路总结(结合代码)

plaintext

用户任务 ↓ Deep Agents Harness ├─ Planner 规划器 → 拆解待办 ├─ 分发任务 │ ├─ 本地执行 → Skill(模型推理) │ ├─ 外部操作 → Tool + Sandbox │ └─ 专项任务 → Subagent 子代理(独立上下文) ├─ VFS 虚拟文件 → 存储大内容,减负上下文 ├─ HITL 人机介入 → 关键节点人工审核 └─ LangGraph Runtime → 状态持久、断点续跑

六、拓展落地建议

  1. 私有化部署:VFS 可对接本地磁盘 / 对象存储,把虚拟文件落地持久化;
  2. 对接 MCP:自定义 Tool 中封装 MCP 调用,实现Agent → MCP → 外部系统标准链路;
  3. 结合 A2A:多个 Deep Agents 之间通过 A2A 协议互通,构建大规模多智能体集群;
  4. 权限管控:在 Tool/Sandbox 中增加白名单、权限校验,适配企业安全规范。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询