LlamaIndex 中级

索引全景:不止向量索引

VectorStoreIndex 之外还有 SummaryIndex、TreeIndex、KeywordTableIndex——不同索引适配不同查询形态。

索引 = 数据的组织方式

同样一批 Node,组织方式不同,检索形态就不同。LlamaIndex 把"组织方式"抽象成了多种索引:

  • VectorStoreIndex(最常用):每个 Node 嵌入成向量,按语义相似度检索 —— 标准 RAG 首选;
  • SummaryIndex(原 ListIndex):顺序保存全部 Node,查询时遍历所有块让模型总结 —— 适合"全文总结"类任务,与查询内容无关;
  • TreeIndex:自底向上把 Node 逐层摘要成树,查询时沿树下行 —— 适合长文档的层次化概览;
  • KeywordTableIndex:从每个 Node 抽取关键词建倒排表 —— 关键词匹配型查询;
  • KnowledgeGraphIndex:抽取实体关系构建知识图谱索引 —— 多跳关系推理场景(成本较高)。

组合玩法:多索引协作

同一份文档可以同时建 VectorStoreIndex(细粒度问答)与 SummaryIndex(整体摘要),再用路由器(Router)按问题类型分发:问细节走向量、要总结走向量列表 —— 这是 LlamaIndex 处理复杂知识库的惯用招式。

选型口诀

默认向量索引;要全文总结用 Summary;文档极长且要结构化概览试 Tree;实体关系密集再上图 —— 不要为了炫技上图。

📝 课后练习

quiz-1 要对一份数据库文档做"全文总结",最合适的 LlamaIndex 索引是?