返回架构笔记
Arch Day 148

Arch Day 148: LLM编排框架 — LangChain vs LlamaIndex vs Haystack

LLM编排框架解决的是如何将LLM、检索、工具、记忆组装成可靠应用的问题。2026年的最佳实践是:LlamaIndex做知识层 + LangGraph做编排层。

2026-08-25
第六阶段 - LLM与AI架构
LangChainLlamaIndexHaystack编排RAGPipelineLangGraph

日期: 2026-08-25 (Day 148) 阶段: 第六阶段 - LLM与AI架构 标签: #LangChain #LlamaIndex #Haystack #编排 #RAGPipeline #LangGraph


核心概念

一句话定义

LLM编排框架解决的是如何将LLM、检索、工具、记忆组装成可靠应用的问题。2026年的最佳实践是:LlamaIndex做知识层 + LangGraph做编排层。


知识点详解

1. 框架定位对比

框架核心定位优势适用
LangChain通用LLM编排生态最大、集成最广快速原型
LangGraph v1.0Agent运行时状态机+持久化+Human-in-Loop生产Agent
LlamaIndex数据框架文档索引/检索最强RAG Pipeline
HaystackPipeline编排模块化、组件可替换搜索系统

2. LangChain vs LlamaIndex选择

维度LangChainLlamaIndex
擅长通用编排、多工具串联文档处理、知识索引
RAG可以但非核心核心能力
AgentLangGraph(最成熟)Agent模式(较新)
学习曲线抽象多,概念密相对直观

最佳实践: LlamaIndex处理文档→索引→检索,LangGraph处理Agent逻辑→工具调用→状态管理。

3. LangGraph v1.0关键特性

  • 有向图状态机: 节点是处理步骤,边是条件转移
  • 状态持久化: 外部存储(Redis/Postgres)保存Agent状态
  • Human-in-the-Loop: 一流API支持人工审核/批准
  • Streaming: 实时返回中间结果
  • 2025.10 v1.0发布: 标志生产就绪

4. 不用框架的情况

简单场景(单次LLM调用+Structured Output)不需要框架——直接用SDK即可。框架的价值在复杂场景:多步推理、多工具协调、状态管理、错误恢复。


面试题

问题:LangChain被批评过度抽象,你怎么看?

回答:批评有道理——早期LangChain的抽象层太深,简单场景反而增加复杂度。但2025-2026的LangGraph解决了这个问题:它是显式的图结构,每个节点做什么一目了然。我的建议:简单RAG直接用LlamaIndex或原生SDK,复杂Agent用LangGraph,避免为了用框架而用框架。