跳到正文
LangChain Blog·· 2 小时前精选AI 评分70

LangChain 在 LangSmith Cloud 公测 Managed Deep Agents

Managed Deep Agents: the fastest way to ship a production deep agent

AI 导读

LangChain 宣布 Managed Deep Agents 在 LangSmith Cloud 进入公测,用户把智能体写成由 agent.py、instructions.md、skills/ 等组成的 Python 项目,用 mda deploy 一条命令部署,由 LangSmith 运行 Deep Agents harness 和生产运行时。

推荐理由

原文说明了把智能体项目按文件组织并一键部署到 LangSmith 的方式,读者可据此判断生产化环节能省掉哪些自建工作。

正文 · AI 翻译

推出托管式深度智能体

2026 年 11 月 2 日更新。Managed Deep Agents 现已在 LangSmith Cloud 上公开测试,本文介绍它目前的工作方式。本文最初发布于 2026 年 5 月 13 日,当时我们开放了私有测试。

Managed Deep Agents 让你把一个深度智能体构建成一个文件文件夹,并用一条命令将其部署到 LangSmith。你编写智能体的指令和工具并选择模型,LangSmith 则负责运行 Deep Agents 框架及其周围的生产运行时。无需运行服务器,也无需连接任何基础设施。

例如,一个支持智能体可以在 Slack 频道中回答问题,并每晚清理过期的工单,其中每一项都声明为其项目中的一个文件。Managed Deep Agents 现已在 LangSmith Cloud 上公开测试,快速入门将带你从一个空目录走到一个已部署的智能体。

我们为什么构建它

构建一个能力强大的智能体正变得越来越容易。开源 Deep Agents 框架已经为智能体提供了文件系统,并让它能够规划工作,将部分工作交给子智能体。

在生产环境中运行该智能体仍然是一项繁重的工作,而且除非智能体在生产环境中运行,否则它不可能做到主动或多用户协作。它需要能在重启后存活的线程,以及一个安全的地方来运行它编写的代码。它还需要在对话之间持久保留的记忆,以及一份它做过什么的记录,而团队往往在智能体触达第一个用户之前就得构建并运维这一切。它还需要一个 cron 服务器来管理定时运行。

Managed Deep Agents 为你卸下了这一层负担。每次部署都运行在 LangSmith Agent Server 上,它为你提供持久线程和流式运行,而无需运维服务器。

我们自己的智能体就是这样构建的。GTM Agent、Open SWE 和 Content Studio 都运行在 Managed Deep Agents 上,而 Content Studio 的代码在我们将其迁移过来后缩减了约 80%。

智能体就是一个文件文件夹

一个 Managed Deep Agent 就是一个普通的 Python 项目。唯一必需的文件是 agent.py,它用 define_deep_agent 定义智能体。这是快速入门中的研究助手:‍

from managed_deepagents import define_deep_agent

agent = define_deep_agent(
    name="research-assistant",
    model="openai:gpt-5.5",
    tools=[{"type": "web_search"}],
)

‍系统提示词就在它旁边的 instructions.md 中,而 skills/ 下的每个文件夹都存放着一份行动手册,当任务需要时智能体会加载它。工具是 tools/ 下的普通 Python 函数,你将其导入 agent.py,而 tools/mcp.py 则从远程 MCP 服务器添加工具。

几条命令就能把项目从一个空目录变成一个部署。‍

uvx --from managed-deepagents mda init research-assistant
cd research-assistant
uv sync
uv run mda dev
uv run mda deploy

mda dev 启动一个本地 Agent Server,并在 LangSmith Studio 中打开该智能体,你可以在那里与它聊天并检查其追踪记录。mda deploy 将项目发布到 LangSmith,并将你的模型提供商的密钥添加到部署中。如果你更愿意让编码智能体来完成设置,managed-deep-agents 技能会引导它完成相同的步骤。

添加智能体所需的内容

每项托管能力都是项目中的一个文件或文件夹,mda deploy 会设置它找到的任何内容。这让你可以仅从 agent.py 开始,并随着智能体的成长逐步添加组件。

  • 记忆。默认情况下,智能体只记住当前线程。添加 memory.py 后,它就能跨线程保留知识,可以放在所有调用者共享的层、每个用户的私有层,或两者兼有。
  • 定时任务。schedules/ 下的文件会按 cron 计划运行智能体,而 mda deploy 会在部署上线后配置它。
  • 渠道。借助 channels/slack.py,人们可以从 Slack 发起运行,并在同一对话中收到智能体的回答。任何能发送 webhook 的服务都可以通过 HTTP 发起运行。
  • 沙箱。sandbox/ 为智能体提供隔离的文件系统和 shell,用于运行它编写的代码。
  • 身份与连接。identity.py 对调用方进行身份验证,因此每个人都能获得私有的线程、记忆和凭据。连接存储 API 密钥并运行 OAuth,因此最终用户可以授权自己的账户,而无需你为每个人配置凭据。
  • 子智能体。你在智能体定义中声明子智能体。异步子智能体在后台运行,同时智能体继续与用户对话。
  • 评估。mda evals init -i 在 evals/ 下建立一个 Harbor 评估工作区,并交由编码智能体编写任务。

例如,一个定时计划在 schedules/daily_digest.py 中只需几行代码。

from managed_deepagents import define_schedule

schedule = define_schedule(
    cron="0 8 * * 1-5",
    timezone="America/Los_Angeles",
    prompt="Write the daily digest.",
)

有些能力完全不需要文件。智能体可以使用由 Parallel 提供支持的内置网页搜索,无需单独的账户或 API 密钥;它还可以在浏览器中工作,当网站需要登录时把控制权交给你。要在选定的工具调用前暂停以等待人工批准,请在智能体定义中设置 interrupt_on。

从你的应用或 MCP 客户端调用它

每个部署都会提供 Agent Server API,因此你自己的应用可以创建线程并流式传输运行结果,或者你也可以在其之上构建自定义前端。部署还会在 /mcp 提供一个 MCP 端点,让 Claude Code 等 MCP 客户端可以将该智能体作为工具调用。

团队正在构建什么

公开测试版中的团队在 Managed Deep Agents 上运行着各种各样的智能体,其中有几种模式反复出现:

  • 事件分诊。智能体接收发布到 Slack 频道的监控告警,在沙箱中调查,并在该线程中报告发现。有些团队让它打开一个包含修复的拉取请求。
  • 工程工作流。来自团队问题跟踪器的 webhook 会启动一次运行,智能体在该任务上执行构建并验证的循环。其他团队让智能体在预览环境中用浏览器测试修复,然后再由人工审查。
  • Slack 中的内部助手。团队为每项工作部署一个智能体,例如 HR 政策助手,或是在项目工具中管理团队任务的财务助手。
  • 产品内部的智能体。面向客户的智能体通过 Agent Server API 在公司自己的前端后面运行,并具有按用户隔离的记忆,使每位客户的上下文保持独立。
  • 长期运行的项目智能体。每个项目一个智能体,保留该项目的记忆,并在工作推进过程中为其项目经理处理任务。
  • 定时工作。以公司职能(如销售或产品)为模型的智能体按计划运行,无需任何人提示即可产出竞品分析和营销素材。

从真实使用中改进智能体

Managed Deep Agents 将智能体的指令和技能保存在 LangSmith Context Hub 中。每个 mda deploy 都会从你的项目同步 instructions.md 和 skills/,你可以在 Context Hub 中编辑它们,以便在不重新部署的情况下快速更改。如果自上次部署以来有人更改了 Hub 中的副本,CLI 会询问要保留哪个版本。

持久记忆同样存放在 Context Hub 中,智能体在工作时会写入其中。一个了解你团队升级路径的支持智能体,会在之后的每次对话中保留这一记忆。

运行过程在 LangSmith 中被追踪,因此你可以查看每一次工具调用和中间步骤。LangSmith Engine 基于这些追踪记录来发现反复出现的问题并诊断其成因。当你将它连接到智能体的 Context Hub 仓库后,它可以针对指令和技能提出修复建议。

基于开源 Deep Agents 构建

托管版 Deep Agents 运行同一套开源 harness,拥有相同的智能体循环、文件系统工具、子智能体和技能。在代码层面,区别在于由谁来编译智能体。create_deep_agent 返回一个由你运行的已编译智能体,后端、存储、检查点器和服务器都由你自行掌控。define_deep_agent 接受相同的参数(减去由运行时管理的那些),并返回一个由托管运行时为你编译的定义。

如果你已经用 create_deep_agent 构建了智能体,从 Deep Agents 迁移 会介绍如何转换它。如果你希望完全掌控托管,Deep Agents SDK 可在你自己的基础设施上运行同一套 harness。

开始使用

按照快速入门部署一个研究助手。随后教程会为同一个项目添加自定义搜索工具、持久记忆和每日调度。

我们很想了解你构建了什么、默认配置在哪些场景下好用,以及你在哪些地方需要更多控制。

‍

来源:LangChain Blog · langchain.com