PageIndex 无分块文档索引与推理检索指南
PageIndex 是一款专为基于推理的 RAG(检索增强生成)设计的文档索引系统。在传统向量检索面临'相似性≠相关性'困境时,PageIndex 通过树状索引和推理搜索,实现了人类专家级别的文档分析能力。
为什么选择 PageIndex?
传统向量 RAG 依赖语义相似性而非真正相关性,在处理专业长文档时常常表现不佳。PageIndex 采用无向量数据库、无分块的创新架构,让 AI 能够像人类专家一样思考和推理,精准定位文档中最相关的内容。
PageIndex 是一种基于推理的 RAG 文档索引系统,采用树状结构和 LLM 推理解决传统向量检索相似性不等于相关性的问题。它无需向量数据库和分块处理,支持 PDF 和 Markdown 文档,能像人类专家一样定位内容。配置 OpenAI API 后,可通过命令行运行脚本生成语义树结构。在 FinanceBench 基准测试中准确率达 98.7%,适用于财务报表、法律文件等长文档分析。
PageIndex 是一款专为基于推理的 RAG(检索增强生成)设计的文档索引系统。在传统向量检索面临'相似性≠相关性'困境时,PageIndex 通过树状索引和推理搜索,实现了人类专家级别的文档分析能力。
传统向量 RAG 依赖语义相似性而非真正相关性,在处理专业长文档时常常表现不佳。PageIndex 采用无向量数据库、无分块的创新架构,让 AI 能够像人类专家一样思考和推理,精准定位文档中最相关的内容。
PageIndex 能够将冗长的 PDF 文档转换为语义树状结构,类似于'目录'但为大型语言模型优化。这种结构特别适合财务报表、监管文件、学术教材、法律或技术手册等超出 LLM 上下文限制的文档。
示例结构:
{
"title": "Financial Stability",
"node_id": "0006",
"start_index": 21,
"end_index": 22,
"summary": "The Federal Reserve ...",
"nodes": [
{
"title": "Monitoring Financial Vulnerabilities",
"node_id": "0007"
}
]
}
首先安装项目依赖:
pip3 install --upgrade -r requirements.txt
在根目录创建 .env 文件,添加您的 OpenAI API 密钥:
OPENAI_API_KEY=your_openai_key_here
处理您的 PDF 文档:
python3 run_pageindex.py --pdf_path /path/to/your/document.pdf
您可以通过可选参数优化处理效果:
--model:使用的 OpenAI 模型(默认:gpt-4o-2024-11-20)--toc-check-pages:检查目录的页数(默认:20)--max-pages-per-node:每个节点的最大页数(默认:10)提供了一个最小化的推理式 RAG 实现,无需向量数据库即可完成高效检索。
展示了无 OCR 的文档理解能力,直接在页面图像上进行检索和推理。
PageIndex 驱动的推理式 RAG 系统在 FinanceBench 基准测试中达到了 98.7% 的准确率,显著优于传统基于向量的 RAG 系统。在复杂财务报告(如 SEC 文件和收益披露)的分析中,PageIndex 的层次索引实现了精确导航和相关内容的提取。
根据您的文档类型调整 pageindex/config.yaml 中的参数:
model: "gpt-4o-2024-11-20"
toc_check_page_num: 20
max_page_num_each_node: 10
pageindex/page_index.py:核心处理逻辑pageindex/utils.py:工具函数集合run_pageindex.py:主要运行脚本PageIndex 不仅适用于 PDF 文档,还支持 Markdown 文件的树状结构生成。使用 --md_path 参数即可处理 Markdown 格式的文档。
您可以选择:

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online