2026/8/4
langchain 和 langgraph 和 langsmith 有什么关系
一句话总览
三者同属 LangChain Inc. 官方生态:
LangChain = 基础组件工具箱;LangGraph = 复杂工作流编排引擎;LangSmith = 调试 / 监控 / 评估平台。
标准生产栈:LangChain(组件) + LangGraph(流程调度) + LangSmith(观测运维)
-
各自定位区分
🧩 LangChain(开源库)
大模型应用基础开发框架
提供通用组件:LLM 调用、Prompt 模板、向量检索 (RAG)、工具 (Tools)、记忆、输出解析器、LCEL 链式语法
擅长:线性、DAG 单向流程、简单 RAG、基础对话、原型快速搭建
局限:原生很难实现循环、条件分支、状态持久化、人工介入的复杂 Agent 逻辑
注意:LangChain 1.0 内部底层已经基于 LangGraph Runtime
🔁 LangGraph(开源库,独立包)
有状态图编排引擎,专门用于复杂 Agent
用节点 (Node) + 状态 (State) + 条件边 (Edge)建模流程;支持循环、分支、断点持久化、人机交互 (human-in-the-loop)、多智能体协作
解决 LangChain 链式结构无法实现 “自我反思、循环重试、分支路由” 痛点
和 LangChain 关系:
✅ 不是替代关系,互补;LangGraph 的节点内部可以直接调用 LangChain 的 Chain、Runnable、工具组件
✅ 也可以脱离 LangChain 单独使用(只依赖langchain-core标准接口)
📊 LangSmith(SaaS 云平台,部分免费)
LLMOps 可观测平台,不参与业务执行
核心能力:链路追踪 (Trace)、可视化调试、Token 统计、批量评估 (Eval)、Prompt 版本管理、线上监控告警
框架无关:不仅能监控 LangChain/LangGraph,任何 LLM 应用都可以接入
集成方式:只需要配置环境变量,一行代码改造即可自动采集 LangChain / LangGraph 完整执行链路 -
三者协作关系(开发全链路)
plaintext
LangChain提供零件(模型、检索、工具、prompt)
↓
LangGraph把零件组装成复杂循环/分支Agent工作流
↓
LangSmith记录整条执行链路,用来调试、评测、线上监控 -
通俗类比
LangChain:一堆标准零件(轮胎、发动机、方向盘)
LangGraph:图纸 + 控制系统,用来把零件拼成可以自动转弯、反复调整路线、中途暂停的自动驾驶系统
LangSmith:行车记录仪 + 诊断平台,记录每一步操作,方便排查故障、评估性能 -
场景选型参考
简单 RAG、一次性问答、线性流程 → 只用 LangChain
Agent 自主反思、多轮迭代、多智能体、分支判断、人工审批 → LangGraph + LangChain 组件
只要需要调试、上线生产、持续优化效果 → 必须搭配 LangSmith -
容易混淆的关键点
❌ 误区:LangGraph 是 LangChain 的一个子模块
✅ 事实:独立 PyPI 包 langgraph,同公司开发,依赖共享标准库langchain-core,可分开使用
❌ 误区:有 LangGraph 就不需要 LangChain
✅ 事实:LangGraph 只负责流程调度,模型调用、检索、工具封装等基础能力依然大量复用 LangChain 组件
❌ 误区:LangSmith 只能搭配 LangChain
✅ 事实:框架中立,支持任何 LLM 应用,只是对 LangChain 生态原生适配最好
浙公网安备 33010602011771号