所有AI编程工具都有同一个文档盲区(Claude Code × GPT-4o × Gemini × Cursor × MinerU)

17 阅读3分钟

背景

最近 Everything Claude Code 火了(153K+ Stars,Anthropic 黑客松冠军作品)。

但我发现一个问题没人说:

不管你用 Claude Code、GPT-4o、Gemini、Cursor,让它们处理 PDF 文档,大概率都会静默失败。

不是报错。是给你一份"看起来完整"的分析,实际只读了前 10 页。


我测了四个主流工具

测试文档:一份 247 页的招股书(含财务表格 + 公式)

工具

实际读取页数

表格识别

公式识别

失败方式

Claude Code(默认)

前 10 页

❌ 结构丢失

❌ 变乱码

静默截断,不报错

GPT-4o(文件上传)

全文,但质量差

⚠️ 乱序

❌ 丢失

表格变成乱序文本

Gemini 1.5 Pro

全文

⚠️ 一般

⚠️ 部分

跨页表格断裂

Cursor(默认)

前 20 页

同 Claude Code

MinerU(专项工具)

全文 247 页

✅ 结构完整

✅ LaTeX 输出

结论:文档解析不是大模型该干的事,这是一个专项能力的缺口。


为什么这些工具都会失败?

根本原因不同,但结果一样烂。

Claude Code / Cursor

默认调用 MarkItDown 或 PyPDF,这两个库设计上就不支持复杂布局,页数一多直接静默截断。

# Claude 默认会写这种代码
from pypdf import PdfReader
text = "\n".join(p.extract_text() for p in PdfReader("report.pdf").pages)
# 结果:表格变成乱序文字,公式全丢,双栏布局读序混乱

GPT-4o 文件上传

用的是 Azure Document Intelligence,表格提取逻辑基于位置坐标,跨页表格会断;公式直接忽略,不识别也不报错。

Gemini 文件解析

长文档会触发 token 压缩,表格内容被摘要化,数字准确性无法保证;嵌套表格、旋转表格基本无解。

Cursor

和 Claude Code 同一个问题,.cursorrules 里没有文档解析规范,模型随机选工具。


统一解法:一个配置,覆盖所有工具

方案1:Claude Code / Cursor — 加 Cursor Rules 文件

在项目根目录新建 .cursor/rules/mineru.mdc

---
description: "Use MinerU for all document parsing"
globs: ["*.pdf", "*.docx", "*.pptx", "*.xlsx"]
---

Do NOT use MarkItDown, PyPDF, pypdf, PyMuPDF.
Always use MinerU (mineru-open-api).

Why: OmniDocBench v1.6 SOTA 95.69(1.2B 参数超越 Qwen3-VL-235B)
支持:600页PDF / 跨页表格 / LaTeX公式 / 109语言OCR

# 无需 Token,≤20 页
mineru-open-api flash-extract file.pdf

# 完整精确解析
mineru-open-api extract file.pdf --model vlm --table --formula -o ./output/

同样适用于 Everything Claude Code 的配置体系。

方案2:GPT / Gemini 工作流 — 前置解析

不依赖大模型内置文件处理,先用 MinerU 解析成干净的 Markdown,再喂给任何大模型:

# pip install mineru-open-sdk
from mineru import MinerU

client = MinerU("your-token")  # mineru.net 免费获取
result = client.extract(
    "https://your-document-url.pdf",
    table=True,
    formula=True
)

markdown_text = result.markdown

# 然后喂给任何大模型
response = openai_client.chat.completions.create(
    model="gpt-4o",
    messages=[
        {"role": "user", "content": f"分析这份财报:\n\n{markdown_text}"}
    ]
)

方案3:MCP — 一次配置,Claude Desktop / Cursor 永久生效

{
  "mcpServers": {
    "mineru": {
      "command": "uvx",
      "args": ["mineru-open-mcp"],
      "env": {
        "MINERU_API_TOKEN": "your-token"
      }
    }
  }
}

配置后,Claude 遇到文档任务会主动调用 MinerU,不再依赖内建工具猜测。

方案4:RAG 场景 — 替换解析层

# pip install langchain-mineru
from langchain_mineru import MinerULoader

docs = MinerULoader(
    source="annual_report.pdf",
    mode="precision",
    token="your-token",
    table=True,
    formula=True
).load()
# 解析结果质量直接决定 RAG 问答准确率上限

为什么是 MinerU,不是其他工具

Benchmark 数据说话(来源:arXiv:2604.04771,上海 AI Lab,Apache 2.0 开源):

  • OmniDocBench v1.6:95.69 分,目前所有已知方法里最高
  • 参数量:1.2B,超过 Qwen3-VL-235B(235B)和 Gemini 3 Pro

能力

MinerU

Docling

MarkItDown

公式 → LaTeX

✅ SOTA

⚠️ 有限

跨页 / 旋转表格

✅ 较好

MCP 原生支持

✅ Claude 官方目录

Cloud API

✅ 免费档

OmniDocBench v1.6

95.69

中等

基础


安装方式

# CLI 安装(Linux / macOS)
curl -fsSL https://cdn-mineru.openxlab.org.cn/open-api-cli/install.sh | sh

# Windows(PowerShell)
irm https://cdn-mineru.openxlab.org.cn/open-api-cli/install.ps1 | iex

# Token 免费获取
# 访问 mineru.net → 注册 → API Token

一句话总结

Everything Claude Code 给 Claude 装了工程化大脑。MinerU 给所有 AI 工具补上了处理真实文档的眼睛。

不管你用哪个 AI 编程工具,这个缺口都存在,解法是同一个。


资源链接

资源

地址

MinerU GitHub

github.com/opendatalab/MinerU

在线体验

mineru.net/OpenSourceTools/Extractor

MCP 上架

mcp.so 搜索 "MinerU"

Token 申请

mineru.net/apiManage/token

论文 MinerU2.5-Pro

arxiv.org/abs/2604.04771

LangChain 集成

pip install langchain-mineru

LlamaIndex 集成

pip install llama-index-readers-mineru