开发者生态
evening
根据阅读者的不同而变化的 PDF
2026-06-12
1 阅读
SarthakGaud
← 所有文本 自适应 PDF 2026 年 3 月 22 日 926 字 PDF 是一种视觉格式。它存储在页面上何处绘制字形的指令。该规范确实支持标记 PDF,这是一种标记标题、段落、列表的结构树。有些领域使用它,例如政府可访问性指令、企业发布管道。但您实际遇到的大多数 PDF 都没有标记。 LaTeX,Chrome 的打印到 PDF,大多数导出工具不生成标签。所以你得到的是坐标和字体大小。文本提取器从左到右、从上到下读取绘制命令,并希望得到最好的结果。当人类是唯一的读者时,这并不重要。但现在大多数 PDF 最终都获得了法学硕士学位。我们将它们上传到 ChatGPT,要求 Claude 总结它们,并通过解析器将它们传递出去。这些工具中的每一个都在解决同样的问题:从从未携带过结构的格式中重建结构。一位法学硕士看到 Project Alpha\n领导了一个由 5 名工程师组成的团队\n交付了该内容,并且必须猜测标题在哪里结束以及句子在哪里继续。有时它是对的。通常情况并非如此。我想制作一个 PDF,人们可以看到格式化文档,但机器可以提取干净的 Markdown。相同的文件,没有新的扩展名。只是一个 .pdf 。工作原理 PDF 规范(自 2001 年 PDF 1.4 起)中有一个属性,可让您定义标记内容的替换文本。渲染器会忽略它,他们会绘制内容流所说的任何内容。但支持它的文本提取器会返回替换内容而不是视觉文本。在我的测试中,PyMuPDF 和 Poppler 都尊重它。不同工具和版本的支持各不相同,但主要的开源提取器都可以处理它。它是为诸如连字和字符之类不能自然映射到 Unicode 的内容而设计的。视觉字形“fi”应该提取为两个字符“f”和“i”,它从未被用于更大的字符。我们在文档级别使用它。我们通过标记内容序列将替换文本附加到内容流,因此支持该属性的提取器返回结构化标记而不是原始视觉文本。 PDF 呈现相同的一个文件,两种完全不同的输出,具体取决于阅读它的人。提取器实际看到的内容相同的 PDF、相同的视觉外观。以下是 PyMuPDF 从每个内容中提取的内容。普通 PDF:季度基础设施报告概述 云迁移提前完成。三个关键服务已转移到新集群。关键指标 正常运行时间:99.97% 延迟:平均 42 毫秒(从 68 毫秒下降) 成本:12,400 美元/月(下降 34%) 行动项目 在第三季度之前迁移剩余的批处理作业 为 db-west 设置自动故障转移 查看每个团队的成本分配 智能 PDF:# 季度基础设施报告 ## 概述 云迁移提前完成。三个关键服务已转移到新集群。 ## 关键指标 |公制|价值| |--------|----------------------------------------| |正常运行时间 | 99.97% | |延迟|平均 42 毫秒(低于 68 毫秒)| |成本| 12,400 美元/月(下降 34%)| ## 行动项目 - 在第三季度之前迁移剩余的批处理作业 - 为 db-west 设置自动故障转移 - 检查每个团队的成本分配 两个文件在预览版、Adobe 和任何 PDF 查看器中看起来都相同。但正常的提取没有层次结构,断线包裹在句子中间,项目符号与段落无法区分,表格被扁平化为线条。智能提取具有 # 标题、Markdown 表、项目符号和不会在单词中间中断的句子。法学硕士不必猜测“关键指标”是节标题或这三行是列表。这是明确的。基准测试 使用我们的工具将多个 PDF 转换为智能 PDF,然后使用 PyMuPDF 的 get_text() 和 https://www.pdf2go.com/ 分别从两个版本中提取文本,均返回 markdown。通过 tiktoken (cl100k_base) 进行代币计数。基准脚本位于存储库中。文档页数 Δ 普通代币 智能代币简历 1 +15.7% 650 668 教科书 417 -8.5% 193,064 195,858 小说第 38 章 +4.7% 16,472 15,958 研究论文 18 +2.5% 8,082 7,897 代币数量大致相同。优点并不是更少的代币。现在相同的令牌具有结构。 ## 概览和概览的成本相同,但前者告诉机器它正在查看什么。每个令牌的信息密度在令牌数量不增加的情况下增加。大多数文件的大小开销是个位数百分比。教科书缩小了,因为 PyMuPDF 的垃圾保存= 3 删除了未使用的 PDF 对象,这是一般优化,而不是特定于该技术。已将智能 PDF 上传至 ChatGPT 和 Claude。要求他们逐个字符地复制粘贴他们看到的确切原始文本。两者都返回 markdown : # , ## , - 项目符号。这本身并不完全是结论性的,因为法学硕士会进行结构推理,而像 Docling 这样的工具可以通过布局分析从普通 PDF 中生成 Markdown。但输出与我们的嵌入层完全匹配,包括格式选择,任何布局启发式都不会完全相同地再现。自适应文档您最终得到的是一个适合其读者的文档。人类打开它并看到