PageIndex 完整教程:让 Claude 和 Cursor 不靠向量库读懂数百页 PDF
PageIndex 完整教程让 Claude 和 Cursor 不靠向量库读懂数百页 PDF【免费下载链接】PageIndex PageIndex: Document Index for Vectorless, Reasoning-based RAG项目地址: https://gitcode.com/GitHub_Trending/pa/PageIndexPageIndex MCP 接入是让 Claude 与 Cursor 处理长文档的常用做法。PageIndex 是一个开源文档索引框架采用推理式 RAG它为长 PDF 生成目录式树状索引由大模型沿树检索无需向量数据库、不做文本分块。本教程带你完成安装、调优与接入 Claude/Cursor。长文档问答的痛点相似不等于相关想象你手里有一份 200 多页的财报或监管文件想直接问 AI这个季度的现金流为什么下降用传统向量 RAG 时常见的翻车方式是切块切断上下文一个完整论证被拆成几个碎片模型只看到其中一块答非所问相似 ≠ 相关向量检索返回的是字面相近的段落而答案往往在语义相关但用词不同的位置结果不可追溯回答从哪来、为什么选这几段说不清楚专业场景不敢用。PageIndex 的思路是模仿人类专家查书的方式先看目录定位章节再翻页细读。它把检索从相似度计算变成了模型的一次次推理判断。PageIndex 的原理两步完成推理式 RAG整个流程分两步核心索引逻辑在 pageindex/page_index_classic.py生成树状索引把整份 PDF 组织成类似目录的结构每个节点带标题、起止页码、摘要和子节点树搜索检索把问题连同索引交给 LLM让它逐步推理答案可能在哪个节点再读取对应页面内容作答。生成的索引长这样真实示例见 examples/documents/results/q1-fy25-earnings_structure.json{ title: Financial Stability, node_id: 0006, start_index: 21, end_index: 22, summary: The Federal Reserve ..., nodes: [ { title: Monitoring Financial Vulnerabilities, start_index: 22, end_index: 28 } ] }对比项传统向量 RAGPageIndex依赖组件向量数据库 分块一棵树 LLM 推理检索单位人工切出的 chunk文档的自然章节可追溯性低近似匹配高每步推理有据可查上下文注入需微调嵌入模型直接把专家知识写进检索提示词最后一行是它做专家化检索的关键想让它查 10-K 财报时优先看 Item 7MDA只需在树搜索提示词里加一句专家经验即可方法见 examples/tutorials/tree-search/。三步安装并生成第一个文档索引环境要求 Python 3.8。克隆并安装依赖只需一条命令git clone https://gitcode.com/GitHub_Trending/pa/PageIndex cd PageIndex pip3 install --upgrade -r requirements.txt第 2 步配置模型密钥。在根目录建一个.env文件写入OPENAI_API_KEY你的密钥。通过 LiteLLM 也支持其他厂商比如把 pageindex/config.yaml 里的模型改为anthropic/claude-sonnet-4-6。第 3 步运行索引生成。python3 run_pageindex.py --pdf_path /path/to/your/document.pdf输出就是上述格式的*_structure.json。常用可选参数与默认值如下按需调整即可参数默认值作用与调优建议--modelgpt-4o-2024-11-20建树所用 LLM--toc-check-pages20在文档前多少页内查找目录页--max-pages-per-node10章节粒度粗的文档可调大内容密集则调小--max-tokens-per-node20000单个节点容纳的 token 上限--if-add-node-summaryyes是否为每个节点生成摘要检索质量关键两点提醒如果 Markdown 文件的标题层级#、##是可靠的也可以用--md_path直接对 md 建树但从 PDF/HTML 转换来的 md 大多丢失层级不建议走这条路。用 PageIndex Flash 快速生成树索引标准模式靠 LLM 逐段判断结构长文档要花不少时间。pageindex/flash/ 提供的 Flash 模式基于版面统计规则提取结构生成树的过程完全不需要 LLM摘要仍会调用一次模型千页级文档也能在秒级出结构python3 run_pageindex.py --flash --pdf_path document.pdf加--optimize可让 LLM 再对树做一轮合并/展开得到更适合检索的结构。下图是官方基准中耗时 vs 文档页数的关系可见 585 页、1098 页的长文档依旧在可接受范围内最快接入 Claude 和 Cursor 的方法PageIndex 通过 MCP 协议对外提供服务仓库内置了 MCP 桥接pageindex/mcp_bridge.py与各 SDK 适配器pageindex/integrations/同一个索引能力可以接到不同工作环境里。Claude 桌面版在 Claude 桌面版设置的 MCP Servers 中添加 PageIndex MCP 服务器条目即可。之后可以直接把 PDF 交给对话让它基于树索引检索作答回答会落到具体章节与页码。Cursor在 Cursor 的 MCP 设置里添加同一套 PageIndex 服务器配置。适合边写代码边查技术手册把 API 文档或规格书索引好后在聊天窗口提问模型沿树定位到相关小节再回答不用你手动翻文档。以 SDK 方式接入自己的程序如果要做自动化流水线pageindex/client.py 的PageIndexClient提供了一组现成入口as_claude_mcp()/claude_agent_config()直接产出 Claude Agent SDK 可用的mcp_servers配置as_openai_tools()对接 OpenAI Agents SDKagent_tools()任意 Agent 框架LangChain、PydanticAI 等都能用的普通函数工具。本地模式不传 API key会用你自己的 LLM 密钥在本地建索引和检索云端模式则上传 PDF 由服务端完成增强 OCR 与建树接口一致。三个典型使用场景附适用人群财报与监管文档分析适用人群金融分析师、合规人员、投研团队。SEC 文件、财报、监管披露是这套方法最被验证的场景基于 PageIndex 构建的 Mafin 2.5 系统在 FinanceBench 金融文档问答基准上取得了98.7% 的准确率大幅领先传统向量 RAG 方案。树搜索提示词还可以注入领域规则例如问到 EBITDA 调整时优先查 Item 7 和 Item 8 脚注。技术手册与 API 文档查询适用人群研发工程师、技术文档维护者。几百页的产品手册索引后某个参数的取值范围是什么这类问题可以秒级定位到章节。需要跨多份文档检索时examples/tutorials/doc-search/ 给出了按元数据、按语义、按描述三种轻量策略按文档数量选择即可。学术论文与长教材适用人群科研人员、研究生。examples/documents/ 里就放了 PRML758 页等论文和教材的样例索引Flash 基准也覆盖了 15 页的 Attention 论文到 1098 页的机器学习教材如果想跳过 OCR、直接对页面图像做视觉推理可以看 cookbook/vision_RAG_pageindex.ipynb。从这些材料继续深入材料路径适合谁快速上手聊天cookbook/pageIndex_chat_quickstart.ipynb第一次跑通流程最小推理式 RAG 示例cookbook/pageindex_RAG_simple.ipynb想理解原理Agentic 无向量 RAG 完整示例examples/agentic_vectorless_rag_demo.py想自建 Agent 管线树搜索 / 多文档检索教程examples/tutorials/想调优检索策略真实文档与生成的树examples/documents/results/想看索引长什么样团队还在持续扩展文档格式支持、更强的推理检索与更大规模的语料索引。建议就从手头那份总也读不完的 PDF 开始先跑一遍索引再把目录树喂给 Claude 或 Cursor 问一个问题感受下推理式检索和向量检索的差距。【免费下载链接】PageIndex PageIndex: Document Index for Vectorless, Reasoning-based RAG项目地址: https://gitcode.com/GitHub_Trending/pa/PageIndex创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考