ARTICLE · 1164504
实操指南:采购文档解析服务前,用自家合同建一套 50 问的测试,测出各配置的真实差距
企业手里的合同与单据,相当一部分带 Word 修订痕迹,还有不少是扫描件;厂商演示与公开样张通常是干净的文本 PDF,自家文档的表现需要另行测试。
采购文档解析或文档问答服务之前,负责选型的工程师和技术负责人可以用自家真实文档搭建一个小型对比测试。
2026 年 10 月 5 日,Reddit 的 r/legaltech(法律科技版块)有用户发布了一组实验:固定同一个下游智能体(agent),只更换文档解析环节,在 94 份带修订痕迹(redline,Word 修订模式留下的删除线与插入标记)的合同与 1,500 个问题上测试了 10 种解析配置。
发帖人同时在帖中链接了基准站 openbenchmarks.com。该站由发帖一方运营,基准属于关联方发布的内容;数据集、运行脚本、判分脚本与全部运行数字公开,方法可以独立复核。
测试的单一变量:智能体固定,只换解析环节
这套基准的核心规则只有一条:智能体一侧的模型、提示词与读题脚本在全部配置中保持一致,配置之间唯一的差异是送进智能体的那份解析结果。删掉与保留修订痕迹的两个极端给出了测试的上下界:删除全部修订标记后,智能体答对率 28.8%;完整保留删除痕迹后,答对率 91.9%(同一批文档、同一组问题,解析环节这一项就造成 63.1 个百分点的差距)。
修订痕迹的处理难在格式转换上。在 Word 文件里,被删除的内容带有结构标记;打印成 PDF 后结构标记消失,剩下的只是横穿字符的一条线。
基准的样例任务是一份 38 页服务级别协议:维护通知期从十天谈成三天,再谈成五天,前两个数字带删除线留在页面上。解析器保留删除线,智能体答出五天;解析器丢掉删除线,三个数字都成了有效文本,智能体无从判断哪一个生效。
第一步:文档选择
选取 20 份文档,包括文本与扫描件两类。
从自己的文档库选取 20 份上下的真实合同或单据,每份对应两到三个问题,合计约 50 问。文档必须覆盖两类:
带修订痕迹的文本 PDF。先把 Word 文件里的批注全部删除:基准流程特意去掉了律师的页边批注,因为若干批注直接写出答案,留着会把测试变成比拼谁捕获了批注。再用 LibreOffice(开源办公软件)转成 PDF:
soffice --headless --convert-to pdf 合同.docx无文本层的图像 PDF。把每页转成 200 dpi 的 JPEG 再合并回 PDF。基准正是用这个做法把 94 份合同重渲染成图像 PDF,然后把全部问题重新测试了一遍;打印再扫描、手机拍照的页面属于同一类。
按基准的 9 种修订形态检查问题的覆盖面,每类至少一问:数字内部的删除;词内部的删除;整条条款删除且无替换;新旧条款并列;定义条款中的术语被删除;表格单元格被删除;同页混合出现插入与删除;一个条款在两稿之间的演变;重新编号后指向错误条款的交叉引用。
第二步:设定问题
从源文件编写 50 问,答案键与厂商输出隔离。
答案(answer key)只从源 Word 文件的修订记录读出,制作过程不让任何厂商的解析结果参与,答案因此不会偏向任何一家。
每个修订点写一问,问:合同现在要求什么,不问:页面上写了什么;
写完做一遍自动检查,剔除两类坏问题:正确答案与错误答案相同的、只问文本不问合同要求的。
每个问题同时写下正确答案与常见错误答案(例如把已删除的数字当答案),判分时多数回答可以直接按对错分拣。
第三步:降低测试成本
同一个模型、同一个系统提示词、同一组问题,贯穿全部配置。每份文档在每个配置下只解析一次,解析结果放在提示词的最前面,同一文档的全部问题复用同一份结果。基准的成本核算说明,只有第一问产生缓存写入,后续各问读取缓存;通过 API 调用的读者可以打开提示词缓存(prompt caching)。读题、对照、判分的完整脚本在基准的公开仓库 openbenchmarks-labs/document-processing 里。Hugging Face 上的公开样本数据集 openbenchmarks/OB-LegalQA 附带合同 PDF 与上下界两版渲染,先用它复现两端的数字,再切换到自家文档。
第四步:独立运行
候选配置各运行一遍,同厂商的不同 endpoint 分开登记。
每个候选配置登记一行;同一家厂商的不同端点、不同开关,各自列为独立的一行。依据是 Datalab(一家文档解析 API 厂商)的两个端点:convert 端点答对率 62.4%,track changes 端点 78.6%,同一家厂商,换一个端点相差 16.2 个百分点;track changes 端点每千页定价 6 美元,还低于 convert 端点的 10 美元。修订痕迹的处理在各家产品里形态不同:Reducto、Extend、Pulse(三家文档解析 API 厂商)做成开关,Datalab 做成单独端点,LlamaParse(LlamaIndex 的文档解析服务)默认开启。登记配置时把这个差异记入备注列。
通用大模型直读 PDF 的配置,使用基准公开的共享提示词,对每个模型一字不改:
Convert this document to clean, well-structured markdown. Reproduce the page faithfully, preserving headings, paragraphs, lists, tables and inline formatting. Output only the document content, with no commentary, preamble or code fences.这条提示词刻意不提删除线。对通用模型来说提示词就是配置项,提示词里提了删除线,模型对修订痕迹的处理能力就测不出来了。
再补充两行参照,从源文件直接生成、不经任何解析器:下界是删掉全部修订标记的同一文本,上界是保留删除线并加 ~~删除线~~ 标记的文本。各配置的成绩按(配置 − 下界)÷(上界 − 下界)折算,基准把这项称为差距弥补比例(gap closed)。
第五步:判分与对比
多数回答按答案键直接分拣;措辞与答案键不一致的(答案键写「第 2.2 条」、回答写「标注 2.2 的条款」这类),交给一个模型裁判(model judge)判定,裁判不知道回答来自哪个配置。
对比表按基准结果表的列登记五项:
答对率
每千页解析成本
每千次正确回答的解析开销
p95 解析延迟(95% 的解析在该时长内完成)
智能体每千次正确回答消耗的 token 数
最后一项用来识别每页成本低但输出冗长的配置:解析输出越长,智能体在每个问题上读得越多。
基准的全部数字可以作为自家测试的参照系:
(来源:openbenchmarks.com 文档解析基准页,2026 年 9 月 27 日更新的那次运行;94 份合同、1,500 个问题、固定同一个下游智能体。)
把两个反直觉结果用于自家测试
第一,配置与端点的影响可能大于厂商选择。Datalab 的 track changes 端点答对率 78.6%,与专用解析器里靠前的 Reducto(78.7%)几乎持平;同一家厂商的 convert 端点 62.4%,落到与通用模型 GPT-6 Astra(63.3%)同一档。「换厂商」与「换端点、换开关」在采购测试里是同一层级的变量,只比厂商不比配置,最终用上的未必是该厂商表现最好的用法。
第二,扫描件与文本层 PDF 分别下结论。换成图像 PDF 后,GPT-6 Astra 从 63.3% 升到 91.3%,LlamaParse agentic 从 80.0% 降到 67.5%,两者名次对调;两轮之间参照行最多移动 0.4 个百分点,说明翻转来自解析配置,不是测量误差。
自家的 50 问要两套并行:文本层 PDF 一套、图像 PDF 一套,分别出结论;主要接收扫描件的业务,以图像 PDF 那套的成绩为准。发帖人的提醒原文是:只测干净的 PDF,多半得不出生产文档的真实表现("Testing only clean PDFs probably won't tell you how your production documents will behave")。
限制
下界不是零:基准里约三分之一的问题不依赖修订痕迹也能从上下文答对,这是删除全部标记后仍有 28.8% 的原因;原始答对率会系统性偏高,读数要对照自家测试的上下界。
上界也不是满分:完整保留痕迹的参照在 1,500 问中仍答错 121 问,这部分错误来自固定智能体自身,换任何解析配置都无法消除。
答对率最高的配置未必合适。Claude Fable 5.1(Anthropic 的模型)以 89.1% 居首,同时是基准里最贵的一档(每千页 109.39 美元),基准的常见问题一节也说明它并非理所当然的选择。企业常用的三个平台没有成绩:Amazon Textract(AWS 的文档识别服务)、Azure Document Intelligence(微软的文档识别服务)与 Google Document AI(谷歌的文档处理服务)的返回结构里,字符级别的数据没有可以承载删除线的字段;Azure 在被排除前做过一次端到端实测,返回了合同全文,没有标出任何删除。
采购决策以自家文档的复测结果为准。
协议、数字与判分方式取自公开基准站 openbenchmarks.com 的文档解析基准页,页面标注最后更新于 2026 年 9 月 27 日;运行脚本与判分脚本在 GitHub 仓库 openbenchmarks-labs/document-processing 公开,源数据集与公开样本数据集在 Hugging Face 发布。实验首发于 Reddit r/legaltech 版块 2026 年 10 月 5 日的帖子;发帖人链接的基准站由发帖一方运营,基准属于关联方发布的内容,方法与数据公开,可以独立复核。