跳到主要内容

2 篇博文 含有标签「LangChain」

查看所有标签

LangChain 还是 pi-agent?两套 Agent 框架的哲学差异(含同任务实测对照)

· 阅读需 8 分钟

「我该用 LangChain 还是自己写 / 换别的?」——这是开始做 Agent 时最常见的纠结。这篇把 LangChain(JS)pi-agent 摆在一起比:不是比谁的 API 漂亮,而是比它们对「Agent 应该由谁来管」这件事的答案

为了不空谈,我给同一类任务(一个会调工具的查天气 Agent)在两边各写了一份代码并真跑起来:pi 侧用内置的 fauxProvider(不需要 key),LangChain 侧用真实模型端点(DeepSeek 的 Anthropic 兼容接口)。文中的事件序列、消息序列、最终回答都是真实输出

版本:@earendil-works/pi-ai / pi-agent-core 0.85.1langchain 1.5.11 / @langchain/langgraph 1.4.15(2026-09 npm 实测)。本站已有两个系列:pi-agent 系列LangChain + LangGraph 系列

LangGraph 的 reducer 有几种模式?顺带把 Annotation 讲透

· 阅读需 8 分钟

LangGraph 入门 那篇里,我把 reducer 一笔带过:「(a,b)=>b 是覆盖,a.concat(b) 是追加」。但那只是两种写法,不是全部模式——真正的问题是:

同一个 key 被写入多次时,状态该怎么合?

这就是 reducer 要回答的唯一问题。这篇把它讲全:Annotation 的完整用法、reducer 的几种模式、它什么时候被调用、调用几次、以及我把每种行为都真实跑出来的结果(含两个报错,都是实测)。

声明:以下行为全部在 @langchain/langgraph 1.4.15(Node 24)跑出来的,输出是真实的。不同版本行为可能微调,以你的实际运行为准。