在 LangGraph 中,Reducer(归约器/聚合器)的核心作用是定义“如何将节点产生的新数据合并到图的全局状态(State)中”。 为了让你更容易理解,我们可以从以下几个方面来拆解 Reducer 的作用和机制: 1. 为什么需要 Reducer? LangGraph 是基于状态(State)运行的。当图(Graph)中的一个节点(Node)执行完毕后,它会返回一个字典(dict)作为状态更新。 默认情况(没有 Reducer):如果一个状态字段没有配置 Reducer,LangGraph 默认会用新值覆盖(Overwrite)旧值。 有 Reducer 的情况:很多时候我们不希望覆盖。比如在聊天应用中,我们希望把新的消息追加(Append)到历史消息列表中,而不是替换掉之前的聊天记录。Reducer 就是用来告诉 LangGraph 如何进行这种追加或合并操作的函数。 2. Reducer 是如何工作的? Reducer 本质上是一个接收两个参数的函数: 和 ,并返回一个。 在 LangGraph 中,我们通常使用 Python 的 来为特定的状态字段绑定 Reduce...