LlamaIndex 是什么:连接私有数据与 LLM 的数据框架
认识与 LangChain 并肩的另一大框架:LlamaIndex 的定位、五阶段生命周期,以及它和 LangChain 的分工。
一句话定位
LlamaIndex(🦙,原名 GPT Index)是一个专注"数据接入"的 LLM 应用框架:把你的文档、数据库、API 等私有数据变成大模型可查询、可对话的知识源。如果说 LangChain 是"编排框架",LlamaIndex 更像"数据框架"—— RAG 是它的主场。
五阶段生命周期
① Loading 加载 → 文档/数据库/API 接入(300+ Data Connectors)
② Indexing 索引 → 切分、嵌入、构建索引
③ Storing 存储 → 向量库/文档存储持久化
④ Querying 查询 → Query Engine 检索问答 / Chat Engine 对话
⑤ Evaluation 评估→ 忠实度、相关性打分
最小示例:十行跑通 RAG
pip install llama-index
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader
docs = SimpleDirectoryReader("./data").load_data() # ① 加载
index = VectorStoreIndex.from_documents(docs) # ② 索引
query_engine = index.as_query_engine() # ④ 查询引擎
resp = query_engine.query("这份文档的核心结论是什么?")
print(resp)
和 LangChain 怎么分工
- RAG 为主、数据源复杂 → LlamaIndex 上手最快,索引与检索抽象最完善;
- 复杂编排、多系统串联 → LangChain / LangGraph 更顺手;
- 两者可以混用:用 LlamaIndex 建索引,把它的 Retriever 当作 LangChain 的检索器使用。
📝 课后练习
quiz-1 LlamaIndex 相对 LangChain 的核心定位是?