mcpField
L
llamaindex

llamaindex

github.com/magnus919开发16163 次安装1 天前更新
代码仓库

关于 llamaindex

llamaindex 是面向 Python 开发者的 LLM 应用框架技能指南,覆盖数据摄取、RAG、Agent 编排、事件驱动工作流和部署。它以七种核心原语组织开发流程,并提供评估、可观测性及故障排查参考。

主要功能

  1. 01数据加载、分块与索引
  2. 02混合检索和重排
  3. 03Agent 与工作流编排
  4. 04知识图谱构建与检索
  5. 05评估、追踪和部署指导
  6. 06模板与故障排查指南

适用场景

  1. 01基于文档构建 RAG 应用
  2. 02编排多 Agent 协作
  3. 03从非结构化文档构建知识图谱
  4. 04评估并部署生产 LLM 应用

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/magnus919/agent-skills --skill llamaindex

安装后在 Claude Code 中输入/llamaindex确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

README.md
evals/
evals.json
references/
agent-patterns.md
architecture.md
evaluation-observability.md
evaluation-workflow.md
example-rag-pipeline.md
faq-and-troubleshooting.md
integration-ecosystem.md
production-deployment.md
property-graph-index.md
rag-strategies.md
workflows.md
scripts/
check-setup.py
templates/
agentic-rag.py
basic-rag.py
custom-workflow.py
production-deploy.py

详细介绍

LlamaIndex 专家技能

LlamaIndex 是一个采用 MIT 许可证的 Python 框架,用于基于你的数据构建大模型应用。到 2026 年,它已从 RAG 索引库发展为事件驱动型工作流框架,并集成了生产运行时(llama-deploy)、Agent 编排(AgentWorkflow)、知识图谱构建(PropertyGraphIndex)和原生支持 OpenTelemetry 的可观测性。

该框架围绕七个核心原语构建:Reader(数据加载器)、Document/Node(分块内容模型)、Index(基于 Node 的数据结构)、Retriever(相关 Node 选择器)、Query Engine(检索器 + 合成)、Agent(带工具的大模型)和 Workflow(事件驱动编排)。

核心原则

在使用 LlamaIndex 构建时,每个决策都应遵循这些原则。请先阅读,再查看参考指南。

  1. 将检索分块与合成分块解耦。 适合检索的嵌入表示与适合生成的上下文表示并不相同。使用 SentenceWindowNodeParser + MetadataReplacementNodePostProcessor 实现这种模式。
  2. 先重排,再生成。 混合检索 + 重排器是生产级 RAG 的最低可行配置。
  3. Agent 就是工作流。 FunctionAgent 和 AgentWorkflow 是预配置的工作流。需要自定义控制流时,可直接使用原始 Workflow。
  4. 图不只是向量存储。 PropertyGraphIndex 增加了向量相似度无法提供的结构化路径遍历能力——结合两者可获得最高的检索质量。
  5. 在同一进程中评估。 附加到 Span 的评估可保留输出与生成该输出的检索上下文之间的关联。

从哪里开始

该流水线从 Ingest 到 Deploy 共分为 9 个阶段。如果你加入时已有正在进行的工作,请找到合适的切入点:

你已有……从哪个阶段开始要做什么
什么都没有——空项目Ingest设置数据加载,然后按完整流水线逐步推进
某个目录中的文档Chunk选择分块策略,构建索引
可用的向量索引Retrieve添加混合搜索、重排和元数据过滤器
需要加固的现有 RAG 流水线Deploy添加可观测性、llama-deploy 和生产环境调试
需要衡量并提升质量Evaluate设置评估器、ParamTuner 和附加到 Span 的评分
什么都没有——正在比较框架查看 Framework Routing Guide不要启动流水线——先选对工具

流水线模式

不同任务需要不同程度的严谨性。请根据任务范围选择模式:

模式适用场景要运行的阶段跳过
Quick单次查询、单个来源、探索Ingest → Chunk → Index → Retrieve重排、元数据过滤器、可观测性、评估
Full生产级 RAG、多个来源、合规性Ingest → Chunk → Index → Retrieve → Agent/Workflow → Deploy → Evaluate不跳过——运行所有阶段
Evaluate基准测试、回归测试Ingest → Chunk → Index → EvaluateRetrieve、Agent、Workflow、Deploy(离线运行)
Graph构建知识图谱Ingest → Chunk → Graph → RetrieveAgent、Workflow、Deploy(直接通过图索引查询)

经验法则:如果要交付给用户,请运行 Full 模式;如果正在探索,请运行 Quick;如果正在衡量,请运行 Evaluate。

快速参考

阶段任务方法参考
摄取加载数据SimpleDirectoryReader("./data").load_data()references/architecture.md
分块将文档解析为节点SentenceSplitter(chunk_size=1024)references/rag-strategies.md
索引构建向量索引VectorStoreIndex.from_documents(docs)references/rag-strategies.md
检索混合搜索 + 重排序BM25Retriever + CohereRerankreferences/rag-strategies.md
Agent多 Agent 编排AgentWorkflow(agents=[...])references/agent-patterns.md
工作流事件驱动的管道class MyFlow(Workflow): @stepreferences/workflows.md
图谱知识图谱PropertyGraphIndex.from_documents(docs)references/property-graph-index.md
评估RAG 评估FaithfulnessEvaluator().evaluate_response(...)references/evaluation-observability.md
部署生产环境部署deploy_workflow(workflow=MyFlow())references/production-deployment.md

何时使用此技能

在以下情况下使用此技能:

  • 基于企业或个人数据构建 RAG 管道
  • 对比 LlamaIndex 与 LangChain、Haystack 或 DSPy
  • 设计由专业 Agent 之间交接任务的多 Agent 系统
  • 部署具备可观测性的生产级大模型应用
  • 从非结构化文档构建知识图谱
  • 调试常见的 LlamaIndex 故障(检索未命中、交接错误、异步问题)

何时不使用 LlamaIndex —— 框架选择指南

此技能属于一系列框架技能。选择合适的框架时,请使用以下路由表:

场景优先选择原因
我有需要查询的文档LlamaIndex数据摄取、混合检索、重排序和知识图谱都是一等功能
我有需要编排的 AgentLangGraph状态机语义、时间回溯调试和人工介入暂停是其核心设计
我有需要封装为 Agent 的工具PydanticAI具备依赖注入的类型安全 Agent 定义,对大模型调用的抽象最少
基于 PDF、SQL、Slack 和 200 多种数据源进行数据密集型 RAGLlamaIndexLlamaHub 连接器、用于文档的 LlamaParse,以及开箱即用的混合检索
带检查点的复杂多 Agent 状态机LangGraph图拓扑控制——监督者、子图、分层团队、内置检查点机制
注重 Agent 的应用,类型安全比数据管道更重要PydanticAI将 Agent 定义为 Pydantic 模型,支持 DI 和结构化输出——数据层由你的代码负责
文档解析质量很重要(表格、图表、手写内容)LlamaIndexLlamaParse 专为此类场景打造
生产级 NLP 搜索管道Haystack对于特定于搜索的工作负载,其管道组合模型更成熟
以优化为导向的提示词编程DSPy编译后的提示词程序,而非检索管道

参考文件

参考内容何时加载文件
核心架构了解 7 个原语、Settings、数据流references/architecture.md
RAG 策略构建从基础到高级的 RAG 流水线references/rag-strategies.md
Agent 模式使用 AgentWorkflow 进行多 Agent 编排references/agent-patterns.md
工作流事件驱动的步骤组合与持久化执行references/workflows.md
生产与部署llama-deploy、调试、故障模式references/production-deployment.md
属性图索引知识图谱构建与混合检索references/property-graph-index.md
评估与可观测性指标、追踪、附加到 span 的评分references/evaluation-observability.md
集成生态系统向量存储、LlamaHub、LlamaParse、生态系统references/integration-ecosystem.md
常见问题与故障排除常见错误及其修复方法references/faq-and-troubleshooting.md
完整 RAG 示例从摄取到部署的完整端到端流水线references/example-rag-pipeline.md
评估工作流ParamTuner、评估器、批量评分、最佳实践references/evaluation-workflow.md

模板文件

模板使用时机文件
基础 RAG单一来源查询、入门templates/basic-rag.py
Agentic RAG带有 Agent 路由的多源数据templates/agentic-rag.py
自定义工作流自定义控制流、分支逻辑templates/custom-workflow.py
生产部署将工作流封装为微服务templates/production-deploy.py

脚本

脚本用途文件
check-setup验证 LlamaIndex 安装与配置scripts/check-setup.py

故障排除 — 结构化恢复指南

出现问题时,请找到对应症状并遵循恢复路径:

检索与回答质量
症状可能原因立即修复永久修复参考
回答质量差或出现幻觉混合检索未配置重排器将 CohereRerank(top_n=5) 添加为 node_postprocessor生产环境中的任何 RAG 都必须进行重排references/rag-strategies.md
检索遗漏显而易见的内容默认分块破坏了语义改用 SemanticSplitterNodeParser(breakpoint_percentile_threshold=95)使用 ParamTuner 调整分块大小references/rag-strategies.md
返回了错误租户的数据缺少元数据筛选器添加 MetadataFilters(filters=[ExactMatchFilter(key="tenant_id", ...)])始终在检索器级别配置元数据筛选器references/rag-strategies.md
只有一种类型的查询效果良好仅使用单一检索策略通过混合检索器组合 BM25 与向量检索添加 RouterQueryEngine,根据查询类型进行路由references/rag-strategies.md
Agent 与工作流故障
症状可能原因立即修复永久修复参考
交接后 Agent 静默等待AgentWorkflow 交接错误扩展 FunctionAgent.take_step,重新定位最后一条用户消息在所有生产环境中的 Agent 上应用交接修复references/agent-patterns.md
工作流未运行忘记使用 await在 w.run(...) 和所有步骤调用前添加 await所有步骤方法都是异步协程references/workflows.md
步骤已执行,但结果丢失状态未持久化使用 ctx.store.edit_state() 保存共享状态只有 ctx.store 会在各步骤间保留references/workflows.md
崩溃导致所有进度丢失没有检查点快照在步骤完成时添加 Context.to_dict() 保存操作持久化工作流需要显式设置检查点references/workflows.md
部署与可观测性
症状可能原因立即修复永久修复参考资料
llama-deploy 已部署,但请求超时Redis 未运行启动 redis-serverRedis 是必需的 — 没有它,控制平面将无法路由references/production-deployment.md
可观测性 UI 中缺少 Spans调用 Instrumentation 太晚将 instrument() 调用移到工作流实例化之前始终在创建任何 Workflow 对象之前进行 Instrumentationreferences/production-deployment.md
返回的数据错误(跨租户)缺少元数据筛选器为所有检索器添加租户筛选器在检索器层级进行筛选,而不是在后处理阶段references/production-deployment.md
恢复工作流

发生任何故障时,请遵循以下流程:

  1. 从上表中识别症状
  2. 应用立即修复 — 让系统恢复运行
  3. 实施永久修复 — 防止问题再次发生
  4. 通过评估进行验证 — 对保留的查询集运行 FaithfulnessEvaluator
  5. 记录修复方法 — 将根本原因添加到 references/faq-and-troubleshooting.md

评论

支持 Markdown