题目
如何在父图与子图之间传递状态,并隔离不同任务的 Checkpoint?
答案
父子图状态结构相同时,可以共享约定字段;结构不同则通过包装节点显式映射输入和输出。子图内部的临时字段不必全部暴露给父图。
例如父图传入研究问题和允许来源,子图返回证据列表与未解决问题。父图只合并这些产物,避免子图意外覆盖会话历史或任务审批状态。
Checkpoint 依靠线程标识和图的命名空间区分运行。是否继承父图 checkpointer、是否跨调用保留子图状态,要按采用的持久化模式明确配置;不能随意复用同一个线程来执行无关任务。
线程标识不等于访问权限,服务端仍要验证用户归属。并行调用同一子图时,还应确认命名空间、状态合并和持久化模式支持这种用法,并测试中断恢复后不会串任务。
参考:[LangGraph 子图](https://docs.langchain.com/oss/python/langgraph/use-subgraphs)。
