控制变量测试LangGraph与Pydantic AI在4个真实agent任务上的表现,框架本身无性能差距,但换模型后某任务连续失败20次。
我们在两个框架上运行了 160 个 agent 任务。两个框架打了个平手。然后我们换了模型——结果有一个任务连续失败了 20 次。
LangChain vs LangGraph 的问题在每个启动新 agent 项目的时刻都会被问到。我们有一个略有不同的版本:当你已经选择 LangGraph 作为运行时,选哪个库来包装它,真的会改变生产环境的结果吗?
于是我们设计了一个受控基准测试来寻找答案。
LangGraph 1.2.9 对阵 Pydantic AI 2.13.0。四个任务,设计用来测试真实场景的 agent 工作:带工具调用的订单处理、物流报价计算、带日期逻辑的退款资格判断,以及库存再订货决策。所有任务共享相同的工具实现和相同的评分器——唯一的变量是哪个库来编排这些调用。
我们使用 gpt-4o,temperature 0,不启用并行工具调用。测试工具链公开于 github.com/benchclawio/harness。每次运行都有日志,没有任何 cherry-picking,原始 JSONL 已发布。
共 160 次任务执行。以下是结果。
LangGraph:所有四个任务正确率 100%。Pydantic AI:所有四个任务正确率 100%。
不是接近——是完全相同。任何一个任务的正确率差距都是零。
但存在性能差距:LangGraph 每次任务的中位墙上时间快大约 1.4–1.8 秒。原因是 Pydantic AI 的 async-to-sync 桥接层——当你同步调用它时,它会在内部启动一个事件循环,这个开销是真实且一致的。如果你在构建延迟 SLO,这很重要。如果以正确率为首要考量,用 gpt-4o 时两个框架表现完全相同。
这个结果虽然不令人满意,但有启发意义。它告诉你,框架抽象层不是正确率差异的所在——至少在这些任务上、在这个模型上、在这个规模下不是。
于是我们用同样的任务又跑了一遍。同样的工具链,同样的任务套件。只是换了模型。
我们用 gpt-4o-mini 替换了 gpt-4o。其他所有条件保持不变。
总体正确率降到了 75%。框架的分化:相同。
有一个任务完全失败,20 次运行全部失败:refund-policy-minimal-tools。这个任务要求计算退货是否在 18 天退货期内。gpt-4o-mini 把"包含第 19 天"计算成了 18 天,而正确答案是"不包含第 19 天"——这是一个日期算术的边界情况。它在每一次运行中都同样失败,不管哪个框架在处理工具调用。
其他三个任务:正确率 100%。失败不是方差问题——是系统性的。而且完全取决于模型属性,与框架无关。
开始之前,我们必须决定拿什么来比较 LangGraph。我们的依赖分析(benchclaw.io/langchain-vs-langgraph/)发现,LangChain 1.3.14 现在将 LangGraph 声明为无条件依赖——安装 LangChain 就会安装 LangGraph。反过来不成立。所以"LangChain vs LangGraph"已经不像以前那样是一个非此即彼的选择了;更真实的问题是:当你已经在 LangGraph 运行时中,选择用 Pydantic AI 还是 LangGraph 原语来写。
即便这样重新定义,我们的基准测试表明,在结构化任务上用 gpt-4o,框架抽象层并不移动正确率结果。
真正移动结果的是模型。在一个听起来很简单的任务上,差异巨大。
实际含义:如果你的任务套件涉及任何时间推理——资格窗口期、到期日、SLA 计算——在发布前明确测试你打算用的模型和一个更便宜的备选。"测试通过就够了"是不够的,如果测试只用了 gpt-4o 而生产环境会把部分流量路由到 gpt-4o-mini 或更小的模型。
在运行模型比较之前,我们预期框架差异很小,预期正确率会保持。我们没有预料到的是失败模式有多么系统化。
gpt-4o-mini 不是在某些运行中日期算术对、某些运行中错——它在 20 次运行中 20 次都错了,而且误差完全相同。这不是概率性采样失败——这是模型在这个 temperature 和这个任务表述下内置的知识缺口。
这意味着,对于生产级 agent 决策,按任务验证模型比基准测试框架更重要。你可以在一个下午把 LangGraph 换成 Pydantic AI 或者换回来。你无法在部署中途修补一个模型的算术能力。
完整基准测试含方法论、原始 JSONL 和测试工具链:benchclaw.io/langgraph-vs-pydantic-ai-benchmark/
测试工具链仓库(Apache 2.0,可引用):github.com/benchclawio/harness
如需复现,该工具链可在任何有 Python 和 OpenAI key 的机器上离线运行。
LangGraph 1.2.9,pydantic-ai-slim[openai] 2.13.0,gpt-4o(temperature 0)和 gpt-4o-mini(temperature 0)。基准测试日期:2026-07-24。所有运行均有日志;无省略。