Documentation Index Fetch the complete documentation index at: https://nvd-54.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
托管 Deep Agents 是一个以 API 为核心的托管运行时,用于在 LangSmith 中创建、运行和管理 Deep Agents。本指南将介绍完整流程:定义 Agent、配置 Tool、创建托管 Agent、创建线程、流式运行,以及在 LangSmith 中检查结果。
托管 Deep Agents 目前处于私有预览阶段。加入候补名单 以申请访问权限。
Deep Agents 为开发者提供了一个开源框架,用于构建能够规划、使用 Tool、委派给子 Agent、写入文件并在长时间范围内工作的 Agent。托管 Deep Agents 在该框架之上封装了运维层,让你可以专注于 Agent 的行为,而无需运行自定义的运行时基础设施。
有关路由级别的详细信息,请参阅 托管 Deep Agents API 参考 。
何时使用托管 Deep Agents
在以下场景中使用托管 Deep Agents:
以编程方式创建和管理 Deep Agents。
运行长时间运行的 Agent,而无需搭建自定义 Agent 服务器。
流式运行并保持持久的线程状态。
使用托管文件和 Tool。
在 LangSmith 中检查追踪和 Agent 行为。
你也可以通过标准的 LangSmith 部署 来部署 Deep Agents。当你需要自定义应用代码、自定义路由、高级认证、完整的 Agent Server API、更强的隔离控制或最大的可扩展性时,请使用该方式。
前置条件
在开始之前,请确保你具备:
托管 Deep Agents 私有预览访问权限。
一个拥有私有预览访问权限的工作区的 LangSmith API 密钥。
一个 Deep Agent 定义,包括指令和你希望托管运行时使用的任何 Tool 配置。
为本指南中的示例设置请求默认值:
export LANGSMITH_API_KEY = "<LANGSMITH_API_KEY>"
export LANGSMITH_API_URL = "https://api.smith.langchain.com"
export DEEPAGENTS_BASE_URL = " $LANGSMITH_API_URL /v1/deepagents"
请求需要 X-Api-Key 头:
X-Api-Key: <LANGSMITH_API_KEY>
定义 Agent
托管 Deep Agents 保持了熟悉的 Deep Agents 项目结构。将这些文件保存在你的源代码仓库中,以便你可以审查变更并在需要时重新创建托管 Agent:
文件或目录 用途 AGENTS.md定义 Agent 指令。 skills/包含 Agent 可使用的技能。 subagents/包含用于委派工作的子 Agent 定义。 tools.json为托管 Agent 配置 Tool。
对于 API 请求,在创建 Agent 的载荷中直接传递 Agent 指令和 Tool 配置。配置 Tool 时使用相同的 tools.json 格式:
{
" tools " : [
{
" name " : "tavily_web_search" ,
" mcp_server_url " : "https://tools.langchain.com" ,
" mcp_server_name " : "Fleet" ,
" display_name " : "tavily_web_search"
}
],
" interrupt_config " : {
" https://tools.langchain.com::tavily_web_search::Fleet " : true
}
}
interrupt_config 映射允许你为选定的 Tool 要求人工审批。键由 MCP 服务器 URL、Tool 名称和 MCP 服务器名称组合而成。
创建托管 Agent
使用 POST /v1/deepagents/agents 创建 Agent。载荷定义了托管资源、运行时设置、指令和 Tool。
curl --request POST \
--url " $DEEPAGENTS_BASE_URL /agents" \
--header "X-Api-Key: $LANGSMITH_API_KEY " \
--header 'Content-Type: application/json' \
--data '{
"name": "research-assistant",
"description": "Research assistant that can search the web and summarize sources.",
"runtime": {
"model": {
"model_id": "anthropic:claude-sonnet-4-6"
}
},
"instructions": "You are a careful research assistant. Search for sources, keep notes, and return concise answers with citations.",
"tools": {
"tools": [
{
"name": "tavily_web_search",
"mcp_server_url": "https://tools.langchain.com",
"mcp_server_name": "Fleet",
"display_name": "tavily_web_search"
}
],
"interrupt_config": {
"https://tools.langchain.com::tavily_web_search::Fleet": true
}
}
}'
响应包含托管 Agent ID。请保存它以便后续请求使用:
export AGENT_ID = "<AGENT_ID>"
创建线程
在运行 Agent 之前创建一个线程。线程会为长时间运行的工作保持会话和执行状态。
curl --request POST \
--url " $DEEPAGENTS_BASE_URL /threads" \
--header "X-Api-Key: $LANGSMITH_API_KEY " \
--header 'Content-Type: application/json' \
--data '{
"agent_id": "'" $AGENT_ID "'",
"options": {
"test_run": false,
"skip_memory_write_protection": false
}
}'
响应包含线程 ID:
export THREAD_ID = "<THREAD_ID>"
流式运行
使用 POST /v1/deepagents/threads/{thread_id}/runs/stream 在线程上启动工作。在请求体中包含 agent_id 并设置 Accept: text/event-stream,以便客户端通过服务器发送事件(Server-Sent Events)接收进度。
curl --request POST \
--url " $DEEPAGENTS_BASE_URL /threads/ $THREAD_ID /runs/stream" \
--header "X-Api-Key: $LANGSMITH_API_KEY " \
--header 'Accept: text/event-stream' \
--header 'Content-Type: application/json' \
--data '{
"agent_id": "'" $AGENT_ID "'",
"messages": [
{
"role": "user",
"content": "Research recent approaches to agent memory and summarize the main tradeoffs."
}
],
"stream_mode": ["values", "updates", "messages-tuple"],
"stream_subgraphs": true,
"user_timezone": "America/Los_Angeles"
}'
根据你想要构建的体验选择流模式:
流模式 用途 values步骤完成后的完整状态快照。 updatesAgent 工作时的增量状态更新。 messages-tuple用于聊天 UI 的 Token 级别消息输出。
运行会在 LangSmith 中被追踪。打开追踪记录可以检查消息、工具调用、文件、子 Agent 活动和运行时行为。
更新 Agent
当需要更新指令、运行时设置或 Tool 配置时,使用 PATCH /v1/deepagents/agents/{agent_id}。
curl --request PATCH \
--url " $DEEPAGENTS_BASE_URL /agents/ $AGENT_ID " \
--header "X-Api-Key: $LANGSMITH_API_KEY " \
--header 'Content-Type: application/json' \
--data '{
"description": "Research assistant that searches the web, reads URLs, and summarizes sources.",
"runtime": {
"model": {
"model_id": "anthropic:claude-sonnet-4-6"
}
},
"instructions": "You are a careful research assistant. Search for sources, read relevant pages, keep notes, and return concise answers with citations.",
"tools": {
"tools": [
{
"name": "tavily_web_search",
"mcp_server_url": "https://tools.langchain.com",
"mcp_server_name": "Fleet",
"display_name": "tavily_web_search"
},
{
"name": "read_url_content",
"mcp_server_url": "https://tools.langchain.com",
"mcp_server_name": "Fleet",
"display_name": "read_url_content"
}
],
"interrupt_config": {
"https://tools.langchain.com::tavily_web_search::Fleet": true,
"https://tools.langchain.com::read_url_content::Fleet": false
}
}
}'
管理现有 Agent
列出 Agent:
curl --request GET \
--url " $DEEPAGENTS_BASE_URL /agents" \
--header "X-Api-Key: $LANGSMITH_API_KEY "
获取单个 Agent:
curl --request GET \
--url " $DEEPAGENTS_BASE_URL /agents/ $AGENT_ID " \
--header "X-Api-Key: $LANGSMITH_API_KEY "
删除 Agent:
curl --request DELETE \
--url " $DEEPAGENTS_BASE_URL /agents/ $AGENT_ID " \
--header "X-Api-Key: $LANGSMITH_API_KEY "
在 LangSmith 中检查结果
托管 Deep Agents 的运行会在 LangSmith 中被追踪,因此团队可以调试行为并检查工具调用。使用追踪记录来审查:
用户的输入和 Agent 的最终响应。
模型调用和工具调用。
子 Agent 活动。
运行期间创建的文件和运行时状态。
基于开源 Deep Agents 构建
Deep Agents 仍然是开源的。托管 Deep Agents 是为那些希望获得 Deep Agents 框架加上 LangSmith 托管运行时基础设施的团队提供的托管路径。
你可以将 Agent 定义保存在你的代码仓库中,然后使用托管 Deep Agents API 在 LangSmith 中创建和运营托管 Agent。
私有预览范围
在私有预览阶段,托管 Deep Agents 并未镜像每个 LangSmith 部署端点。集成、认证、触发器、技能和 Sandbox 等端点组尚未被镜像。
连接这些文档 到 Claude、VSCode 等工具,通过 MCP 获取实时回答。