恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

如何在 LangGraph Agent 中用 subgraphs 构建多节点 CopilotKit 工作流

  • 首页
  • 资讯中心
  • /
  • 如何在 LangGraph Agent 中用 subgraphs 构建多节点 CopilotKit 工作流

相关资讯

qBittorrent Web UI 如何配置 Basic 认证(HTTP Basic Auth)登录? 2026/9/10 21:51:36
C语言指针深度解析:从内存模型到高级应用 2026/9/10 21:46:35
MySQL事务机制与InnoDB实现深度解析 2026/9/10 21:46:35

最新资讯

(全新整理)新能源汽车行业数据、充电桩相关数据2019-2025年
Web渗透之SQL注入-堆叠注入(Stacked Queries Injection)
# OpenCode 与 GitHub 联用操作手册
耐心资本、数字经济与创新效率(2011-2024年)有效样本:16964条(全新整理)
exo 如何用 exo_eval 跑 GPQA Diamond、MMLU Pro、AIME 等质量评测并读取结果?
如何用 three.js 的 GLTFLoader 加载 .glb/.gltf 模型并渲染?

今日推荐

AI搜索重构内容生态:企业从“流量争夺”转向“答案共建”
AI搜索的信任缺口:企业内容如何在答案时代自证可信
Spring Boot+Vue+Node.js售后服务系统开发实战

本周热门

超人会飞不算本事:系统稳定依赖清晰规则与边界设计
超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论
基于CNN的调制信号识别:MATLAB实现时频图分类实战

本月精选

自研推理加速器Redwood:两周内实现PyTorch模型高效部署的实战教程
V4L2摄像头采集实战:从camera_client.rar到出图全流程解析
从“谁发明了钢琴键”到知识问答智能体:RAG与记忆工程实践

如何在 LangGraph Agent 中用 subgraphs 构建多节点 CopilotKit 工作流

发布时间:2026/9/10 21:51:36
如何在 LangGraph Agent 中用 subgraphs 构建多节点 CopilotKit 工作流 如何在 LangGraph Agent 中用 subgraphs 构建多节点 CopilotKit 工作流【免费下载链接】CopilotKitThe Frontend Stack for Agents Generative UI. React, Angular, Mobile, Slack, and more. Makers of the AG-UI Protocol项目地址: https://gitcode.com/GitHub_Trending/co/CopilotKit当你把 LangGraph 应用从单节点 agent 扩展成多个节点、甚至多个嵌套 agent 时前端要能实时看到子图subgraph内部的执行事件而不是只拿到最终结果。本文面向已经在用 LangGraph 接 CopilotKit 的开发者说明 subgraphs 在 CopilotKit 中的工作方式agent 侧无需额外配置前端订阅 agent 状态即可拿到子图节点的实时流式输出。适用前提是 agent 通过 AG-UILangGraph 的ag-ui-langgraph端点或 LangSmith 部署暴露给 CopilotKit Runtime参考路径为 LangGraph 集成 Quickstart。Subgraph 是什么什么场景用官方文档 Subgraphs 的定义A subgraph is simply a graph used as a node inside another graph.即一个图作为另一个图中的节点。文档给出了三类典型用途把图结构拆分成更小的、可复用的单元构建多 agent 系统multi-agent system复用一组节点node sets到多个图中让不同团队独立开发图的不同部分。也就是说如果你的图只是START → 单个 LLM 节点 → END这种结构用不到 subgraph当图中出现某个节点内部是一整条含多个节点、可能还有分支的子图时就是 subgraph 场景。Agent 侧subgraph 不需要额外配置CopilotKit 对流式输出的支持直接覆盖子图文档原话是CopilotKit supports streaming directly from subgraphs, so nested graphs can emit events in real time just like a single graph. Using this feature requires no extra steps on the agent side.即你在 LangGraph 中正常用StateGraph组织子图、把编译后的图传给LangGraphAGUIAgent不需要为子图单独加任何 CopilotKit 相关代码。agent 侧的代码仍按 Quickstart 的 FastAPI 路径组织见 quickstart.mdximport os from dotenv import load_dotenv from ag_ui_langgraph import add_langgraph_fastapi_endpoint from copilotkit import LangGraphAGUIAgent from fastapi import FastAPI from langgraph.graph import END, START, MessagesState, StateGraph from langchain_core.messages import SystemMessage from langchain_openai import ChatOpenAI from langgraph.checkpoint.memory import MemorySaver import uvicorn load_dotenv() async def mock_llm(state: MessagesState): model ChatOpenAI(modelgpt-4.1-mini) system_message SystemMessage(contentYou are a helpful assistant.) response await model.ainvoke( [ system_message, *state[messages], ] ) return {messages: response} graph StateGraph(MessagesState) graph.add_node(mock_llm) graph.add_edge(START, mock_llm) graph.add_edge(mock_llm, END) graph graph.compile( checkpointerMemorySaver() ) app FastAPI() add_langgraph_fastapi_endpoint( appapp, agentLangGraphAGUIAgent( namesample_agent, descriptionAn example agent to use as a starting point for your own agent., graphgraph, ), path/, ) def main(): Run the uvicorn server. uvicorn.run( main:app, host0.0.0.0, port8123, reloadTrue, ) if __name__ __main__: main()这段是 Quickstart 中可直接运行的最小 agent。要把它变成多节点工作流只需用 LangGraph 自身的StateGraphAPI 把graph内部节点换成你的子图结构例如某个节点的值是另一张已编译的 graphLangGraphAGUIAgent与端点注册方式不变。FastAPI 路径下compile(checkpointerMemorySaver())是必需的原因见 Quickstart 中 Why this tab compiles with a checkpointer 说明ag-ui-langgraph通过graph.aget_state(...)读取线程状态没有 checkpointer 会抛ValueError: No checkpointer setMemorySaver只存在于进程内存生产环境可换成持久化 saver如 Postgres。走 LangSmith 部署时则相反compile()不带checkpointer由 LangSmith 平台在运行时注入。启动 agent在 agent 目录下uv run main.py服务运行在main.py中uvicorn.run(...)指定的 8123 端口。Runtime 与前端订阅 agent 状态即可Runtime 侧按 Quickstart 配置即可FastAPI 部署路径下路由如下app/api/copilotkit/route.tsimport { CopilotKitIntelligence, CopilotRuntime, createCopilotRuntimeHandler, } from copilotkit/runtime/v2; import { LangGraphHttpAgent } from copilotkit/runtime/langgraph; const runtime new CopilotRuntime({ agents: { sample_agent: new LangGraphHttpAgent({ url: process.env.LANGGRAPH_DEPLOYMENT_URL || http://localhost:8123, }), intelligence: new CopilotKitIntelligence({ apiKey: process.env.CPK_INTELLIGENCE_API_KEY!, }), identifyUser: (request) ({ id: request.headers.get(x-user-id) ?? anonymous, name: request.headers.get(x-user-name) ?? Anonymous, }), }, }); const handler createCopilotRuntimeHandler({ runtime, basePath: /api/copilotkit, mode: single-route, }); export const POST handler;其中http://localhost:8123是文档给出的本地回退地址与 agent 侧 uvicorn 端口对应如果不用 CopilotKit Intelligence 平台可删除intelligence与identifyUser两项runtime 会回退到 SSE 模式加内存 runner聊天仍可用文档原文的说明。前端是 subgraphs 特性唯一需要关注的地方。文档要求subscribe to the agent state in your frontendReact 端写法来自 subgraphs.mdxconst { agent } useAgent({ agentId: sample_agent, }); // Access agent state as usual - subgraph streaming is handled automatically const state agent.state;Angular 端import { injectAgentStore } from copilotkit/angular; export class AgentStatusComponent { readonly store injectAgentStore(sample_agent); // Read this.store().state() in the template or another computed signal. // Subgraph streaming updates it automatically. }文档的关键结论subgraph 节点会像普通节点一样正常流式输出The subgraph nodes will stream as usual并且可以在子图中直接使用interrupt()。验证子图流式输出是否生效文档没有给出独立的subgraph 流式成功检查命令验证方式是端到端跑通后观察前端状态启动 agentuv run main.py确认服务在 8123 端口LangSmith 部署则用npx langchain/langgraph-cli dev --port 8123 --no-browserQuickstart 专门提醒不带--port 8123时langgraph dev默认监听 2024端口不匹配会导致 runtime 连接失败且没有额外诊断信息。启动前端npm run dev或 pnpm/yarn/bun 对应命令。在聊天界面发起一轮对话触发你构建的多节点流程如果前端通过useAgent或 Angular 的injectAgentStore读取的state随子图节点的执行实时更新说明子图事件已在流中。连接类问题按 Quickstart 的 Troubleshooting 章节排查常见项包括保持localhost不要换成 IP 字面量0.0.0.0是 bind-all 地址不能作为客户端 URL 目标agent 目录要有langgraph.json且其中引用了.envOpenAI API key 正确配置runtime 的LANGGRAPH_DEPLOYMENT_URL或回退值端口与 agent 实际监听端口一致runtime endpoint 路径与 provider 的runtimeUrl一致。相关能力与边界子图内可以直接调用interrupt()Human-in-the-Loop文档明确支持用法见 human-in-the-loop 章节。多 agent 编排的另一种做法是把多个独立 agent 交给 CopilotKit 路由Router Mode或用agentprop 锁定单 agentAgent Lock Mode见 Multi-Agent Flows。那是多 agent而非单图内嵌子图两者解决不同问题subgraphs 是 LangGraph 图内部的结构封装Router Mode 是 CopilotKit 层面对多个 agent 的调度。官方在线示例Feature Viewer 中的 subgraphs demo在文档页内以 iframe 形式嵌入可在文档站直接查看运行效果与对应代码。子图流式本身没有需要你在 agent 侧填写的配置项如果你按上述路径接好后前端仍只看到最终结果而非节点级更新优先核对 agent 是否按 Quickstart 的方式通过 AG-UI 端点暴露、端口是否一致而不是在子图代码里找问题。【免费下载链接】CopilotKitThe Frontend Stack for Agents Generative UI. React, Angular, Mobile, Slack, and more. Makers of the AG-UI Protocol项目地址: https://gitcode.com/GitHub_Trending/co/CopilotKit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号