PageIndex:扔掉向量数据库,RAG 准确率飙到 98.7%
- URL: https://mp.weixin.qq.com/s/OkNToMF9X836hAIdWhknoA
- Date Saved: 2026-07-03
- Source: WeChat (李轻水)
- Tags: ai-engineering
Summary
PageIndex 是 VectifyAI 团队 2025年9月开源的项目(GitHub 23,000+ stars),灵感来自 AlphaGo 的树搜索策略。在 FinanceBench 基准上达到 98.7% 准确率,传统向量 RAG 只有 30-50%。
核心思路
完全不用向量数据库、不做文档分块、不用 embedding 模型。用 LLM 推理替代向量搜索,用树状结构替代 chunk,让 LLM「像人一样翻目录找答案」。
向量 RAG 的五个结构性缺陷
- 查询文本不像答案文本(意图 ≠ 内容)
- 同一个词出现60次,向量排名几乎相同
- 分块切碎表格(标题和数据行分属不同 chunk)
- 跨页引用完全丢失(「详见附录G」向量搜不到)
- 多轮对话无记忆
两步架构
- 构建层次树索引:分析 PDF 结构生成 JSON 树(标题/摘要/页码/子节点),不存向量库,放在 LLM 上下文窗口里
- 基于推理的树搜索:LLM 读取树结构 → 推理哪些章节相关 → 获取原始页面 → 判断是否足够 → 生成答案
自修正目录提取(三层 fallback)
- 路径A:有页码的 TOC → 验证+修正
- 路径B:无页码的 TOC → 内容匹配推断页码
- 路径C:无 TOC → LLM 从零生成层次结构
代码极简
- 6个 Python 文件,~2900 行
- 无 PyTorch/FAISS/向量库依赖
- 核心依赖:LiteLLM、PyMuPDF、tiktoken、PyYAML
FinanceBench 数据
| 系统 | 准确率 |
|---|---|
| Mafin 2.5 (PageIndex) | 98.7% |
| Dewey Agentic RAG | ~91% |
| 开源标准 RAG | ~76% |
| 传统向量 RAG | 30-50% |
| GPT-4o(无RAG) | ~31% |
局限
- 速度慢:每次检索多轮 LLM 调用,数秒级(向量 RAG 毫秒级)
- 成本高:多轮推理 vs 单次 embedding
- 深度工具非广度工具:擅长单份长文档深度提取,不适合搜索10,000份短文档
- 只在 FinanceBench 验证过,杂乱/多领域场景未独立验证
- 树索引质量依赖文档结构(格式混乱的扫描 PDF 效果差)
最佳实践:混合方案
向量搜索快速定位相关文档 → PageIndex 对单份文档做深度提取
最新进展
- Agentic Vectorless RAG(OpenAI Agents SDK 集成)
- 视觉无向量 RAG(跳过 OCR,视觉 LLM 直接看 PDF 图像)
- TypeScript SDK(2026年初)
- MCP 桌面扩展(Claude Desktop 一键安装)
- ChatIndex(树索引应用于长对话历史)
适用场景
适合:长篇结构化专业文档(年报/法律/监管/技术手册)、准确率优先、需要审计追踪 不适合:高并发亚秒响应、大规模短文档库、成本敏感