先给结论
如果业务场景以检索为主,重度依赖文档加载、索引构建和信息召回,直接选择 LlamaIndex,或者仅使用它的检索层。如果需要构建多轮交互的复杂智能体,业务要求具备中断恢复、时间旅行调试能力,或者生产环境需要人工审核与并行处理,选择 LangGraph。如果任务是快速搭建业务原型,需要密集的第三方组件集成,或者只是实现标准的调用链路,选择 LangChain。这三个框架在实际应用中并不互斥——常见的组合方案是使用 LlamaIndex 负责底层检索,用 LangGraph 做上层编排。
逐项对比
| 对比维度 | LangChain | LangGraph | LlamaIndex |
|---|---|---|---|
| 定位 | 组件最全的应用框架 | 图结构的状态机框架 | 数据与检索框架 |
| 强项 | 模型、工具、记忆等抽象与集成,生态最大 | 状态管理,可靠性,支持中断恢复与调试 | 数据连接器与索引结构丰富 |
| 弱项 | 抽象层多,深定制时代码逻辑反而绕 | 侧重编排,基础组件依赖外部生态 | 智能体能力相对弱 |
| 典型场景 | 快速搭建原型与标准调用链路 | 多轮复杂智能体,需人审与并行的生产链路 | 重度依赖文档加载与检索的场景 |
| 成本 | 早期开发快,深度定制与后期维护成本高 | 状态管理与图结构设计存在一定学习成本 | 专注数据层,集成复杂编排需额外开发 |
LangChain 的核心在于生态和组件抽象。它将模型、工具、记忆和调用链做了高度封装,开发者能快速拼装业务原型。但抽象层过多会导致深度定制时代码逻辑变绕,增加开发负担,因此它适合标准链路的快速落地。
LangGraph 将重心放在状态管理和可靠性上。作为图结构的状态机框架,它通过节点、边和条件路由控制执行流。生产环境的复杂智能体常需处理多轮交互、并行任务与人工审核。LangGraph 支持检查点机制,能实现中断恢复和时间旅行调试,是复杂编排的首选,且可与 LangChain 组件混用。
LlamaIndex 的强项在数据处理和检索环节。它提供丰富的数据连接器和索引结构,是处理文档加载和检索增强生成的利器。虽然智能体能力相对弱,但在重度依赖检索的场景下它是首选。实际工程中常取长补短,用 LlamaIndex 做检索,再接入 LangGraph 完成编排。
面试怎么答
遇到框架选型题,不要直接罗列各自特点。建议先向面试官确认具体的业务场景,询问当前需求是偏向基础的文档问答,还是需要多次交互的复杂流程。确认场景后再给出对应的选型结论,体现工程思维。
常见的错误答法是认为这三个框架是非此即彼的互斥关系。回答时需要强调框架的组合使用。可以说明在实际开发中,通常把 LlamaIndex 作为数据检索层以保证召回效果,然后将检索能力接入 LangGraph,由后者负责上层状态机的流转和人工审核的控制。