LangGraph 同级节点之间修改数据先后问题

python 复制代码
...
...
import time
class PubState(TypedDict):
  publicStr: Annotated[str, operator.add]

def fna(state: PubState):
  v2 = state["publicStr"] +"2222"
  print('a',state["publicStr"])
  return {
    "publicStr": v2
  }

def fnb(state: PubState):
  time.sleep(1)
  v1 = state["publicStr"] +"1111"
  print('b',state["publicStr"])
  return {
    "publicStr": v1
  }
builder=StateGraph(PubState)


builder.add_node("fn1",fna)
builder.add_node("fn2",fnb)

builder.add_edge(START, "fn1")
builder.add_edge(START, "fn2")
graph=builder.compile()

res=graph.invoke({"publicStr":"start"})
rprint(res)

打印结果

arduino 复制代码
{'publicStr': 'startstart2222start1111'}

我试了调整fna 和 fnb 的顺序,注册先后顺序,给fnb 加延迟时间time.sleep(1),执行结果都没有变化, 后来我改变函数名字,例如,1_fnb 2_fna ,fn2 fn1 ,才返现了规律,执行顺序是根据名字的编码顺序先后执行的,编码数值小的先执行,跟注册顺序,执行先后没有关系 而且每个函数执行前就拿到了state的快照,同级函数修改结果对自己没有影响,同级函数都执行结束才统一修改state的值

相关推荐
能源革命4 分钟前
AI 日报 · 2026-10-04
人工智能
远方的狮27 分钟前
机器人越来越多以后,谁来把它们组织起来?
人工智能
IT_陈寒27 分钟前
Vite静态资源导入这个坑我帮你们踩过了
前端·人工智能·后端
思考着亮44 分钟前
13.Agentic RAG -2
人工智能
u1301301 小时前
AI 日报(2026年10月4日)
人工智能
飞塔老梅子1 小时前
17. Unsloth下载、安装及加载本地大模型 ❀ 老梅子学AI
人工智能·glm·lm studio·5.3·unsolth
打工仔折腾 AI1 小时前
把AI Agent托管在家用电脑:UU远程终端与端口映射实测记录
人工智能·后端·python·langchain·ai agent 实战
零基础1231 小时前
Agent 的 Memory 怎么做科研:以中医诊断场景为例
人工智能·经验分享·python·语言模型
归秋1421 小时前
人声节奏对齐软件推荐:从专业DAW到AI人声制作工具怎么选
人工智能
2601_962966643 小时前
数学与应用数学专业想进管理咨询,2027届秋招需要补哪些商业知识和技能?
人工智能