以下页面提供了在 JavaScript 框架和托管平台上运行 LangChain 智能体的生产环境参考实现。部署示例仓库中的每个示例都是一个全栈聊天应用,包含流式 UI、子智能体和线程历史记录,并使用相同的 Agent Streaming Protocol 部署到不同的平台。 当你需要交付一个由智能体驱动的产品时,可以参考这些指南:复制与你的托管环境匹配的技术栈,替换为你自己的工具和模型,并在从单实例部署扩展出去后升级持久化方案。

示例

与 LangSmith Deployment 配合使用

智能体作为 LangSmith Deployment 运行,独立的 Web 应用通过 Agent Server API 获取流式数据。

LangSmith + Vite

LangSmith Deployment 上的智能体图;Vite + React UI 通过 Agent Server API 获取流式数据。

嵌入到你的 Web 框架中

智能体运行在框架的路由处理程序内部,并作为一个可部署应用发布到托管平台。

Next.js

App Router 路由处理程序在 /api/threads/... 下实现该协议。只需点击一次即可部署到 Vercel。

SvelteKit

Cloudflare Workers 上的 SvelteKit 服务端路由结合 @langchain/svelte 和每个线程对应的 Durable Objects,实现 SSE 重放。

Nuxt

在单个可部署的 Nuxt 4 应用中使用 Nitro 路由处理程序和 @langchain/vue 组合式函数。

Cloudflare Workers

Vite + React SPA 和 Hono API 运行在同一个 Worker 上,并使用 Workers Assets 和 Durable Objects。

Deno Deploy

Deno.serve + Hono 从同一个入口提供协议 API 和由 Vite 构建的 React SPA。
每个示例都使用相同的演示智能体:一个协调器,通过模拟工具将任务委派给 researcher 和 math-whiz 子智能体。这样,你无需更改应用行为,就可以比较不同的托管方案。

智能体部署包含哪些内容

每个示例都遵循相同的结构。框架和托管平台会变化,但各部分的职责不会变化。

智能体运行时

智能体本身通常是一个 LangGraph 图或 deepagents 协调器,包含工具、可选的子智能体和中间件。它会使用检查点存储器进行编译,以便会话状态能够跨多个轮次持久保存。为简单起见,示例使用内存中的 MemorySaver;生产环境部署则可以改用 Redis(@langchain/langgraph-checkpoint-redis)、Postgres(@langchain/langgraph-checkpoint-postgres)、SQLite(@langchain/langgraph-checkpoint-sqlite)或特定平台的存储。

协议服务器

HTTP 路由处理程序在 /api/threads/... 下实现 Agent Streaming Protocol。

最低要求(流式聊天)

以下三个端点即可通过 HttpAgentServerAdapter 运行单线程流式聊天:

线程侧边栏(所有示例)

每个示例还实现了线程历史记录侧边栏所需的端点:

会话和运行管理

服务端逻辑会跟踪活动运行,将命令传递给智能体,并通过 SSE 将实时事件分发出去。注册表或会话存储可以让客户端重新连接到正在进行的流。在无服务器或多实例托管平台上,这一层必须与检查点存储器共享,或与其部署在同一位置。

聊天前端

浏览器 UI 通过 HttpAgentServerAdapter 接入协议,该适配器来自 @langchain/react、@langchain/vue、@langchain/svelte 或 @langchain/angular。客户端会初始化线程状态、提交消息、消费 SSE 流,并渲染令牌、工具调用、推理过程和子智能体活动。 这些绑定本身不提供任何组件。useStream 等钩子会返回普通的响应式状态(消息、工具调用、加载标志、线程元数据),你可以将这些状态接入自己偏好的任意视觉层。有关适配器模式和权衡取舍,请参阅前端集成概览。

另请参阅