Skip to content

第 09 章 · 子智能体与上下文隔离 ​

内置 task 工具让主 agent 派生子智能体:每个子任务新上下文、完成只回一份报告。适合“重检索/重读文件”等上下文膨胀场景。

机制与设计选择 ​

子智能体是 ephemeral、stateless 的:只回一次,不做多轮来回;默认有一个 general-purpose,也可以自定义。上下文隔离是核心价值,而不是并行计算框架。

示例 ​

python
import os
from langchain_openai import ChatOpenAI

model = ChatOpenAI(
    model=os.environ["MODEL_ID"],
    api_key=os.environ["DEEPAGENT_API_KEY"],
    base_url=os.environ.get("DEEPAGENT_BASE_URL", "https://api.openai.com/v1"),
)

from deepagents import create_deep_agent

research = {
    "name": "research-agent",
    "description": "Research tasks with focused searches",
    "system_prompt": "You are a focused researcher. Return findings as a short report.",
}
agent = create_deep_agent(
    model=model,
    subagents=[research],
    system_prompt="Delegate research subtasks to the research-agent subagent.",
)
result = agent.invoke(
    {"messages": [
        {"role": "user", "content": "Research: why do we isolate subtasks in their own context?"},
    ]
}, config={"configurable": {"thread_id": "ch09"}})
print(result["messages"][-1].content)

运行与验收 ​

需要 API Key。验收:trace 中应看到子智能体被调用;主 agent 最终只拿到结论报告。

容易踩的坑 ​

子智能体解决的是上下文卫生,不是“让结果更聪明”。委派必须写明验收标准与边界,否则只是把复杂度藏起来。

🧪 随堂测验

点击你认为正确的选项。答错时会展示正确答案与原因解析。

1. 子智能体是什么状态?

2. 子智能体的核心价值?

3. 默认子智能体叫什么?

4. 委派时必须写什么?

动手实践 ​

  1. 再加一个自定义 subagent 并验证它被调用。
  2. 对子任务结果与主 agent 答案做一致性检查。
  3. 为委派定义可机器校验的验收字段。

官方参考 ​

核验日期:2026-09-17,运行环境:Deep Agents 0.7.15。