一个 PDF,打开看是普通报告。丢给抽取器,却吐出带 # 标题、列表、表格的 Markdown。
这不是 PDF 发布了新标准。它只是把 PDF 1.4 起已有的 replacement text 机制用到了一个更大胆的地方:视觉层给人看,替代文本给机器读。
这事有意思,不在炫技。今天 PDF 已经被大量扔进 ChatGPT、Claude 和 RAG 管线。人类要版式,机器要结构。PDF 偏偏最擅长前者,最不擅长后者。
同一个 PDF,为什么人和机器读到两份文本
PDF 的底层更像页面绘制指令:某个字画在某个坐标,某条线画在某个位置。它先保证“看起来对”,不天然保证“结构清楚”。
Tagged PDF 可以标出标题、段落、列表。但现实里的很多 PDF 没有这些标签。LaTeX、浏览器打印、办公软件导出、各种扫描和转换流程,经常只留下坐标、字号和换行。
抽取器只能猜。标题是不是标题,表格是不是表格,脚注是不是正文,全靠规则和模型补脑。
这次实验用的是 marked-content 的 replacement text。它原本常见于连字和特殊字形处理。比如页面上显示一个“fi”连字,复制或抽取时返回“f”和“i”。
作者把这个能力放大了:渲染器照常显示视觉内容;支持该机制的抽取器返回预先嵌入的 Markdown。
| 维度 | 普通 PDF | 这类自适应 PDF |
|---|---|---|
| 人眼看到 | 正常排版 | 正常排版 |
| 机器抽取 | 依赖坐标、字号猜结构 | 读取嵌入的 Markdown |
| 常见结果 | 断行、表格拍平、层级丢失 | 标题、列表、表格关系更明确 |
| 已验证范围 | 常规抽取路径 | PyMuPDF、Poppler 可识别 |
| 现实限制 | 结构经常缺失 | 工具支持不统一 |
作者还把文件上传到 ChatGPT 和 Claude,让它们复制“看到的原始文本”。测试结果里,两者返回了嵌入的 Markdown,包括 #、## 和项目符号。
这只能说明部分主流工作流会吃到这层文本。不能推成所有模型、所有版本、所有 PDF 解析器都稳定支持。
价值不在省 token,而在少猜结构
原文做了简历、教材、小说章节、论文等测试。token 数量大体相近,有的多一点,有的少一点。
所以别把它卖成省钱技巧。证据不支持。
真正的收益是同样一批 token 携带了更多结构信息。“Overview”和“## Overview”差不了多少 token,但后者直接告诉机器:这是标题,不是一句普通正文。
表格也是一样。普通抽取常把表格压成几行碎文本。Markdown 至少能保住行列关系。对 RAG 来说,这会影响切块、召回和回答。
最该关心的不是普通读者,而是两类人。
| 对象 | 现在的痛点 | 可以怎么做 |
|---|---|---|
| RAG / 文档解析开发者 | 每次都要从版面里猜标题、表格、列表 | 把这类 PDF 加进测试集,对比 PyMuPDF、Poppler 和线上模型上传结果 |
| 企业文档团队 | 制度、报告、合同进 AI 流程后容易抽歪 | 先做小范围验收,不要直接当成稳定标准采购或迁移 |
我的判断很简单:它把“结构”塞回了文件本身,而不是让每个解析器都在废墟里考古。
这很实用。尤其是内部报告、教材、简历、产品手册这类文档。版式给人看,结构给机器用,双方各取所需。
但落地时要克制。团队不能只测“能不能读出 Markdown”。还要测三件事:不同解析器是否一致,上传到不同模型是否一致,人工审阅看到的内容和机器抽取内容是否可比对。
少做一步审计,便利就会变成暗门。
接下来盯兼容性和信任边界
这件事最容易被讲歪。它不是 PDF 的官方新路线,也不是行业已经采用的方案。它更像一次实验性实现:借用既有规范,给 AI 工作流补一块语义板。
补丁好不好,得看三个变量。
| 变量 | 为什么重要 | 现在能下的判断 |
|---|---|---|
| 工具兼容性 | PyMuPDF、Poppler 可识别,不代表所有解析器都识别 | 只能按管线逐个测试 |
| 生成链路 | 文档作者是否愿意、是否方便嵌入结构化文本 | 没有写入工具配合,就难规模化 |
| 审计机制 | 人看到 A,机器读到 B,会带来投毒和合规风险 | 企业流程必须留差异检查 |
我更在意第三个变量。
同一文件对人和机器呈现不同内容,天然会制造信任缝隙。招聘筛选、合同审查、合规检查、知识库问答,都不能只问“模型读到了什么”。还要问:它读到的那层文本,和人看到的页面是不是同一回事。
“明修栈道,暗度陈仓”放在这里不算重。技术本身可以中性,但双层文本一旦进入自动化决策,就会被激励系统重新定价。有人会用它修复结构,也有人可能用它藏提示、塞偏见、绕审计。
这和早年的网页 SEO 有点像,但不完全一样。搜索引擎时代,网页会给爬虫准备更容易理解的结构。LLM 时代,文档也开始给机器准备另一层文本。区别是,PDF 常进入企业决策和知识系统,后果更靠近业务流程。
所以接下来不该只看“哪些模型能读”。更该看哪些工具会显示、导出、比对 replacement text。没有可见性,就没有治理。
RAG 团队可以试,但别急着押注。企业文档团队可以关注,但采购和迁移要延后到兼容性、审计、权限控制都能讲清楚之后。
这份 PDF 最刺眼的地方,不是它让 AI 读到了 Markdown。是它提醒我们:我们还在拿给打印机设计的文件格式,喂给越来越严肃的机器系统。
