LlamaIndex学习路径

1 阅读8分钟

LlamaIndex 全面学习提纲

依据 LlamaIndex 官方文档(developers.llamaindex.ai/python/framework)整理,按「认知 → 核心组件 → 高级能力 → 生产落地 → 生态扩展」递进编排。每个模块标注官方文档路径,可对照原文学习。

学习主线:先用 5 行代码跑通 RAG → 逐层拆解六大核心组件 → 进阶 Agent/Workflow → 学会评估与部署 → 扩展到 LlamaCloud 与生态。

exported_image.png

阶段 0|入门准备(Getting Started)

文档路径:developers.llamaindex.ai/python/fram…

  • 0.1 理解 LlamaIndex 定位
    • Context-Augmented LLM Applications(上下文增强)框架:把「你的数据」通过索引/检索交给 LLM
    • 三大核心概念:Agents(LLM 驱动的知识助手)、Workflows(事件驱动多步骤流程)、Context Augmentation(RAG 是其中最流行的一种)
    • 官网给出的能力清单:Data Connectors、Data Indexes、Engines(Query/Chat)、Agents、Observability/Evaluation、Workflows
  • 0.2 高层概念(High-Level Concepts)
  • 0.3 安装与配置
    • pip install llama-index(核心包)、按需安装 llama-index-llms-openai 等集成包
    • 环境变量:OPENAI_API_KEY 等
  • 0.4 5 行代码入门(Starter Tutorial)
    • 用 OpenAI 的快速入门:加载文档 → 建索引 → 查询
    • 用本地 LLM(Ollama / llama.cpp)的快速入门
  • 0.5 阅读文档的方法与 FAQ
    • 先看「Building an LLM application」系列,再看 Component Guides 查细节
    • 常见问题速查
  • 0.6 Python 异步编程基础(Async Programming)
    • LlamaIndex 大量使用 async/await,需掌握事件循环与并发写法

阶段 1|核心概念与整体架构(Understanding)

文档路径:developers.llamaindex.ai/python/fram…

  • 1.1 RAG 五阶段全景(Introduction to RAG)
    • Loading(加载):从文件/API/数据库把数据取进系统
    • Indexing(索引):构建便于 LLM 查询的数据结构
    • Storing(存储):向量库/文档库/索引元数据持久化
    • Querying(查询):检索 + 合成答案
    • Evaluating(评估):衡量准确率/相关性/忠实度
  • 1.2 使用 LLM(Using LLMs)
    • 远程 API 与本地模型两种路线
    • 数十种受支持 LLM 一览
  • 1.3 构建 Agent(Building Agents)
    • 单 Agent:FunctionAgent 快速上手
    • 使用现成工具(Tools)
    • 状态维护(State)
    • 流式输出与事件(Streaming)
    • 人在回路(Human-in-the-loop)
    • 多智能体协作(AgentWorkflow / Multi-agent)
  • 1.4 构建 Workflow(Building Workflows)
    • 简单 Workflow:Workflow 类 + @step + StartEvent/StopEvent
    • 循环与分支(Looping and Branching)
    • 并发执行(Concurrent Execution)
    • 流式事件(Streaming Events)
    • 有状态 Workflow(Stateful Workflows)
    • 可观测性(Observability)
  • 1.5 给 Agent 加 RAG
    • 加载与摄入(Ingestion)、索引与嵌入(Embedding)、存储、查询
    • 与阶段 3/4/5 联动理解
  • 1.6 结构化数据抽取(Structured Data Extraction)
    • 使用结构化 LLM、结构化预测、底层抽取
  • 1.7 追踪调试与评估
    • Tracing and Debugging、Evaluating、Cost Analysis
  • 1.8 组装完整应用(Putting It All Together)
    • Full-Stack Web App、Chatbot、Q&A、Structured Data
  • 1.9 隐私与安全(Privacy and Security)

阶段 2|模型层:LLM / Embeddings / Prompts(Models)

文档路径:developers.llamaindex.ai/python/fram…

  • 2.1 LLM 使用
    • 独立使用 LLM(llm.complete() / llm.chat())
    • 在 LlamaIndex 抽象中自定义/切换 LLM(Settings.llm)
    • 本地模型:Ollama、LlamaCPP、llamafile、LM Studio 等
    • 主流集成:OpenAI、Anthropic、Gemini、Azure OpenAI、Bedrock、Groq、DeepSeek、Mistral、LiteLLM、OpenRouter 等
  • 2.2 Embeddings
    • 概念与使用(Settings.embed_model)
    • 集成:OpenAI、HuggingFace、Ollama、VoyageAI、Cohere、Jina 等
    • 自定义 Embedding
  • 2.3 多模态模型(Multi-modal Models)
    • 图像/音频等非文本输入处理
  • 2.4 Prompts
  • 2.5 Rerankers(重排序模型)
    • 用于查询后精排检索结果,提升精度

阶段 3|数据加载与摄入(Loading / Ingestion)

文档路径:developers.llamaindex.ai/python/fram…

  • 3.1 Documents 与 Nodes
  • 3.2 SimpleDirectoryReader
    • 最常用的本地文件加载器(txt/md/pdf/docx 等)
  • 3.3 Data Connectors(数据连接器)
    • LlamaHub 数百个连接器:数据库、API、云存储、SaaS 等
    • 使用 LlamaParse 解析复杂文档
  • 3.4 Node Parsers / Text Splitters(切分器)
  • 3.5 Ingestion Pipeline(摄入管道)
    • Transformations:加载 → 解析 → 切分 → 嵌入 → 入库的端到端流水线
    • 增量摄入与缓存
  • 3.6 从 LlamaCloud 加载(Loading from LlamaCloud)

阶段 4|索引与存储(Indexing & Storing)

文档路径:

  • 4.1 Index 类型与原理(How Each Index Works)
    • VectorStoreIndex(向量索引,最常用,重点掌握)
    • SummaryIndex(摘要索引)
    • TreeIndex(树索引)
    • KeywordTableIndex(关键词索引)
    • PropertyGraphIndex(属性图索引 / GraphRAG)
    • KnowledgeGraphIndex(知识图谱索引)
  • 4.2 文档管理(Document Management)
    • 插入、删除、更新文档;增量索引维护
  • 4.3 元数据抽取(Metadata Extraction)
    • 用 LLM 自动抽取文档元数据(标题、实体、关键词等)
  • 4.4 Vector Stores(向量数据库)
  • 4.5 其他存储
    • Document Stores(文档存储)、Index Stores(索引元数据)、Key-Value Stores、Chat Stores(聊天记忆)
  • 4.6 持久化与加载(Persisting & Loading)
    • index.storage_context.persist() 与重建索引

阶段 5|查询与检索(Querying)

文档路径:developers.llamaindex.ai/python/fram…

  • 5.1 Retriever(检索器)
    • 概念与 Retriever Modes(不同索引对应的检索模式)
    • 常用模块:VectorIndexRetriever、SummaryRetriever、BM25Retriever、GraphRetriever 等
  • 5.2 Query Engine(查询引擎)
    • RetrieverQueryEngine 基础用法
    • 高级引擎:RouterQueryEngine(路由)、SubQuestionQueryEngine(子问题)、SQLQueryEngine(SQL)、JSONQueryEngine 等
    • Response Modes(refine / compact / tree_summarize 等)
    • Streaming(流式输出)
  • 5.3 Node Postprocessors(后处理器)
    • 相似度过滤、TopK 截断、Rerank(CohereRerank、LLMRerank 等)
  • 5.4 Response Synthesizers(响应合成器)
    • 如何把检索结果 + 提示词合成最终答案
  • 5.5 Chat Engine(聊天引擎)
    • 多轮对话、上下文记忆
    • Chat Store 与 Memory
  • 5.6 Structured Outputs(结构化输出)
    • Pydantic Program 定义输出 Schema
    • Output Parsing 模块
    • 使查询结果可直接进 API/数据库
  • 5.7 Text-to-SQL 与表格查询
    • 用自然语言查数据库 / CSV / Excel

阶段 6|Agent 智能体(核心进阶)

文档路径:

  • 6.1 Agent 类型与选择
    • FunctionAgent:函数/工具调用型单 Agent
    • AgentWorkflow:多 Agent 编排器(handoff 机制)
    • 底层 AgentRunner(可选深挖)
  • 6.2 Tools(工具)
    • FunctionTool:把任意 Python 函数变成工具
    • QueryEngineTool:把 RAG/查询引擎封装成工具
    • 内置工具集与自定义工具
    • 模块指南:developers.llamaindex.ai/python/fram…
  • 6.3 Memory(记忆)
    • 对话记忆管理:ChatMemoryBuffer、向量记忆等
  • 6.4 状态与流式
    • Agent 状态维护、Streaming 输出与事件
  • 6.5 人在回路(Human-in-the-loop)
    • InputRequiredEvent 等机制让 Agent 向用户请求输入
  • 6.6 多智能体模式(Multi-agent)
    • 多 Agent 协作、任务分发、结果汇聚
    • 官方示例:多 Agent 报告生成、Weaviate QueryAgent 等

阶段 7|Workflow 工作流(底层编排)

文档路径:

  • 7.1 Workflow 核心机制
    • Event(事件)、Step(步骤)、Context(上下文)
    • StartEvent / StopEvent、@step 装饰器、类型注解驱动路由
  • 7.2 控制流模式
    • 循环(Reflection 反思模式)、分支、条件路由
    • 并行执行(多个事件同时触发多个 step)
  • 7.3 状态管理
    • Context 与 ctx.store 共享数据
  • 7.4 流式事件与可观测性
    • 向用户推送流式事件;Workflow 的 tracing/debugging
  • 7.5 实战 Workflow 示例
    • Function Calling Agent Workflow、RAG with Reranking Workflow、Workflows Cookbook
  • 7.6 为什么用 Workflow 而非 DAG
    • 对比理解:循环/分支/数据传递的天然表达

阶段 8|评估、成本与可观测性(Evaluation & Observability)

文档路径:

  • 8.1 评估体系
    • 评估维度:Correctness(正确性)、Relevancy(相关性)、Faithfulness(忠实度)等
    • Evaluators 使用(LLM 作为裁判)
    • 检索评估(Retrieval Evaluation)与响应评估(Response Evaluation)
  • 8.2 LlamaDatasets(标准化数据集)
    • LabelledRagDataset / LabelledEvaluatorDataset
    • 用开源数据集做基准测试
  • 8.3 成本分析(Cost Analysis)
    • Token 用量统计、调用成本估算、Usage Pattern
  • 8.4 追踪与调试(Tracing & Debugging)
    • 集成:Arize Phoenix、OpenTelemetry、AgentOps、Langfuse 等
  • 8.5 Instrumentation 与 Callbacks
    • 埋点、事件回调、Token 计数迁移指南

阶段 9|实战用例与生产落地(Use Cases / Production)

文档路径:

  • 9.1 典型用例逐个实现
    • 问答(RAG)系统、Chatbot、Agents
    • 结构化数据抽取、多模态应用
    • 图查询(Querying Graphs)、Text-to-SQL、CSV 查询、表格图表解析
    • 微调(Fine-tuning)提升效果、Prompting 优化
  • 9.2 全栈 Web 应用
    • create-llama 脚手架
    • FastAPI/后端 + 前端集成
  • 9.3 部署(Deploying)
    • Agentic Workflow 部署为微服务
    • 生产环境注意事项(安全、隐私、性能)
  • 9.4 隐私与安全
    • 数据隔离、权限控制、合规处理

阶段 10|LlamaCloud 托管服务

文档路径:developers.llamaindex.ai/python/clou…

  • 10.1 LlamaParse(文档解析)
    • 企业级文档解析:复杂表格、图表、扫描件 → Markdown/结构化数据
  • 10.2 LlamaExtract(结构化抽取)
    • 按 Schema 从任意文档抽取结构化数据
  • 10.3 LlamaClassify(文档分类)
  • 10.4 LlamaCloud Index(托管 RAG)
    • 免运维摄入管道、可扩展检索;LlamaCloudIndex + LlamaCloudRetriever 接入开源框架
  • 10.5 LlamaAgents(托管 Agent)
    • 云端部署与运行 Agentic 应用

阶段 11|高级主题与生态(Advanced & Ecosystem)

  • 11.1 Settings 全局配置
  • 11.2 MCP(Model Context Protocol)
  • 11.3 Llama Packs(即用模板包)
  • 11.4 自定义组件
    • 自定义 Reader / Retriever / LLM / Embedding / Node Parser
  • 11.5 社区资源
    • Full-Stack Projects、Integrations 目录、GitHub 开源仓库
  • 11.6 版本与迁移
    • 关注 Release Notes 与 Deprecation(如 ServiceContext → Settings、旧 Agent API 迁移)

建议学习路线(速查)

阶段主题目标产出
0-1概念 + 5 行代码跑通第一个 RAG 问答
2模型层能自由切换 LLM/Embedding
3-4加载 + 索引 + 存储建出可复用的知识库
5查询掌握检索→重排→合成全链路
6Agent做出能调用工具的助手
7Workflow编排多步骤复杂应用
8评估学会量化改进效果
9-10实战 + LlamaCloud交付生产级应用
11生态扩展按需深入

学习提示:每个阶段配一个最小可运行示例,先「照着跑通」再「拆开理解」,最后「改造成自己的场景」。