LlamaIndex 2026:构建你的私有 AI 知识库 (RAG)

不止是连接数据,LlamaIndex 是 RAG 应用的终极框架。从 PDF 到通过 SQL 查询数据库,让 AI 真正读懂你的数据。

如果 LangChain 是瑞士军刀,那么 LlamaIndex 就是专门用来做手术的精密仪器——特别是针对数据的手术。

在构建 RAG (检索增强生成) 应用时,如何高效地处理、索引和检索数据是最大的痛点。LlamaIndex(原 GPT Index)专注于此,它能让 LLM 像读取内存一样轻松读取你的私有数据(PDF、Notion、SQL、API)。

什么是 LlamaIndex?

LlamaIndex 是一个数据框架,用于将自定义数据源连接到大型语言模型。

它解决了三个核心问题:

  1. Ingestion (摄入):怎么把五花八门的数据(飞书文档、Slack记录、PDF)读进来?
  2. Indexing (索引):怎么切分、向量化并存储这些数据?
  3. Querying (查询):怎么在海量数据中精准找到 AI 需要的那一段?

环境搭建

1. 安装

pip install llama-index

2. 配置 OpenAI Key

LlamaIndex 默认使用 OpenAI 的嵌入模型和 LLM。

export OPENAI_API_KEY="sk-proj-xxxxxxxx"

实战:5行代码实现 “与 PDF 对话”

假设你有一份 sample.pdf(比如产品手册),我们想让 AI 基于它回答问题。

  1. 创建一个文件夹 data,把 sample.pdf 放进去。
  2. 编写 python 脚本:
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader

# 1. 读取数据
documents = SimpleDirectoryReader("data").load_data()

# 2. 构建索引(自动切分、Embedding、存内存)
index = VectorStoreIndex.from_documents(documents)

# 3. 创建查询引擎
query_engine = index.as_query_engine()

# 4. 提问
response = query_engine.query("这份手册里提到的保修期是多久?")
print(response)

发生了什么?

  • SimpleDirectoryReader 自动解析了 PDF 文本。
  • VectorStoreIndex 调用 OpenAI Embedding API 将文本转化为向量。
  • query 会先在向量库中搜索最相似的段落,然后把段落+问题打包发给 GPT-4,最后生成回答。

进阶玩法:Agentic RAG (智能体 RAG)

2026 年的 RAG 不再是简单的 “检索-回答”,而是具备推理能力的 Agent。LlamaIndex 提供了强大的 Agent 接口。

想象一个场景:你需要 AI 分析一份复杂的财务报表。普通的 RAG 可能会因为文档切分太碎而回答错误。LlamaIndex 的 ReAct Agent 可以:

  1. 先搜索 “2025 年 Q4 收入”。
  2. 发现数据在表格里,于是调用 “Pandas Query Engine” 工具。
  3. 计算增长率。
  4. 综合得出结论。
from llama_index.core.agent import ReActAgent
from llama_index.core.tools import FunctionTool

# 定义一个计算工具
def time_travel_tax_calculator(year: int, income: float) -> float:
    """计算未来的税收"""
    if year > 2030:
        return income * 0.5
    return income * 0.2

tool = FunctionTool.from_defaults(fn=time_travel_tax_calculator)

# 创建 Agent
agent = ReActAgent.from_tools([tool, ...], verbose=True)

agent.chat("如果我在 2032 年赚了 100 万,要交多少税?")

为什么选择 LlamaIndex 而不是 LangChain?

其实两者并不冲突,经常配合使用。但如果你的应用重数据(例如:需要处理数百万份文档,需要复杂的知识图谱检索),LlamaIndex 的高级检索策略(如 Hierarchy Index, Sentence Window Retrieval)会比 LangChain 默认的方案效果好得多。

总结

  • LangChain:擅长流程编排,通用性强。
  • LlamaIndex:擅长数据 RAG,检索精度高。

建议: 用 LlamaIndex 处理数据索引和检索,用 LangChain (或 LlamaIndex 原生 Agent) 处理上层交互逻辑。


在这个数据即资产的时代,LlamaIndex 是帮你挖掘数据金矿的铲子。