LlamaIndex 完整教程
欢迎来到 LlamaIndex 完整教程。本教程基于 LlamaIndex Python 官方文档 与开源项目 run-llama/llama_index 整理,聚焦 用你的数据做 RAG 与文档 Agent:从加载文档、建索引、查询,到 FunctionAgent 与事件驱动 Workflows。
LlamaIndex 的口号是 Context Augmentation(上下文增强):把私有 PDF、Wiki、SQL、API 变成 LLM 在推理时能用的上下文。最常见形态就是 RAG;同一套索引也可以作为 Agent 的工具。
教程目录
基础篇
- LlamaIndex 简介 — 数据层定位,与 LangChain / CrewAI / 本站 RAG 课的关系
- 安装与环境 —
pip install llama-index、API Key、Settings - 快速上手 —
FunctionAgent、VectorStoreIndex、持久化、多轮Context
数据与查询
- 加载器与 Node —
Document、Node、SimpleDirectoryReader、切分 - 索引 Indexes —
VectorStoreIndex.from_documents、其他索引类型 - 查询引擎 —
as_query_engine、合成模式、Chat Engine - 检索 Retrieval — Retriever、top-k、后处理、Agentic RAG
编排与存储
- Workflows 工作流 — 事件驱动
@step、与 LangGraph 的差别 - 向量库集成 — Chroma / pgvector / Qdrant 接入包
实战篇
学习路径
前置知识
- Python 3.10+ 基础(函数、类型注解、
asyncio入门即可) - 了解 LLM Chat API 与「把文档切块再检索」的直觉
- 至少一个 Provider 的 API Key(本课示例用 OpenAI;本地模型见 Ollama)
和本站其他课程的关系
一句话选型: 文档与检索是主战场 → LlamaIndex;要标准 ReAct Agent + 中间件 → LangChain;要「研究员 + 写手 + 审稿」角色班组 → CrewAI。三者可以组合,不必互斥。
学完你能写出什么
- 一个从
data/加载、VectorStoreIndex.from_documents建库、as_query_engine问答的脚本 - 带乘法 / 检索工具的
FunctionAgent,并用Context做多轮 - 把索引
persist到磁盘,或换到 Chroma / pgvector / Qdrant 集成包 - 读懂官方 Workflows 页的
@step+ Event 图,而不把查询引擎误当成图编排
官方另有 LlamaIndex.TS;本课只覆盖 Python。TypeScript 读者请走 framework 文档 里的 TS 入口。
学习建议
- 先建
data/放几份自己的 Markdown / PDF,不要只用空目录 - 示例 LLM 用
gpt-4o-mini;框架历史默认曾是gpt-3.5-turbo,以当前官方文档为准 - 索引建完立刻
persist,避免每次启动都重新 embedding - 查询失败时先打印
response.source_nodes,再调 top-k 与切块