我做了一个测试:把一份 6 页的中文合同扫描成 PDF,先后丢给传统 OCR 和 Mistral OCR 4.1。传统 OCR 返回的是一整段「文字流」,标题、正文、页眉、签名区全部混在一起;Mistral OCR 4.1 返回的则是按块组织的 markdown——每个段落、每张表格、每个标题都附带像素坐标和置信度分数。
这份差异,正是 8 月 15 日 Hacker News 上那条 370+ points 热帖的核心:OCR 终于不只是「把图变成字」,而是开始理解版面结构了。
一、Mistral OCR 4.1 到底多了什么
Mistral 把 OCR 4.1 定位为 “Document AI stack” 的 OCR 层。相比常见的通用多模态模型(让 LLM 直接读图),它是一个专门的文档理解模型,输出的是结构化的版面信息,而不是一段自由文本。
三个新增能力最值得关注:
1. 段落级边界框(BBox)
每个文本块都返回 top_left_x、top_left_y、bottom_right_x、bottom_right_y 四个坐标,单位是像素,映射到原图尺寸。这意味着你可以在原 PDF 上高亮「这段话来自哪里」,而不是只告诉读者「在第 3 页」。
2. 结构块标签(Block Labels)
模型会自动判断一块内容是 text、title、heading、list、table、equation、figure、caption、header、footer、signature 还是 aside_text。做 RAG 时,你可以按类型决定怎么切分、怎么向量化。
3. 块级置信度(Block-level Confidence)
通过 confidence_scores_granularity="block" 开启。返回值包括该块的平均置信度和最低置信度。低置信度块可以直接路由给人工复核,而不是整份文档重扫。
定价方面,标准 OCR 是 $4 / 1000 页,带结构化注释的 Document AI 模式 $5 / 1000 页;走 Batch 异步接口可以降到大约 $2 / 1000 页。作为对比,AWS Textract 的表单+表格解析大约 $50–70 / 1000 页,Google Document AI Form Parser 大约 $10–30 / 1000 页。Mistral 在「结构化」这个档位上,价格明显更低。
二、5 分钟跑通第一条 OCR 请求
环境要求:Python 3.10+,安装官方客户端即可。
pip install mistralai
export MISTRAL_API_KEY="your-api-key"完整调用流程分三步:上传文件 → 获取 signed URL → 调用 OCR。下面这段代码可以直接复制运行:
import os
from mistralai import Mistral
client = Mistral(api_key=os.environ["MISTRAL_API_KEY"])
# 1. 上传文件
uploaded = client.files.upload(
file={"file_name": "contract.pdf", "content": open("contract.pdf", "rb")},
purpose="ocr"
)
# 2. 获取临时访问链接
signed = client.files.get_signed_url(file_id=uploaded.id)
# 3. 调用 OCR 4.1,要求返回 blocks 和块级置信度
result = client.ocr.process(
model="mistral-ocr-4-1", # 生产环境建议固定版本号
document={
"type": "document_url",
"document_url": signed.url
},
include_blocks=True,
confidence_scores_granularity="block",
extract_header=True,
extract_footer=True,
)
for page in result.pages:
print(f"\n--- Page {page.index} ---")
print(page.markdown)
for block in page.blocks:
bbox = block.bbox
print(f"[{block.type}] 置信度: {block.confidence}")
print(f"坐标: ({bbox.top_left_x}, {bbox.top_left_y}) -> ({bbox.bottom_right_x}, {bbox.bottom_right_y})")如果不想上传文件,也可以直接传公开可访问的 URL 或 base64 图片。注意:Mistral 服务器必须能访问到这个 URL,私有 bucket 需要签章链接。
三、响应结构长什么样
每个 page 对象主要包含:
index: 页码markdown: 整页的阅读顺序 markdownblocks: 结构块数组confidence_scores: 页面级置信度(如果开启)
每个 block 包含:
type: 块类型标签content: 该块的文本/markdownbbox: 像素坐标confidence_scores: 块级置信度
这个结构解决了一个长期痛点:传统 OCR 把「表格」拆成零散的文字行,导致后续解析非常困难;Mistral OCR 4.1 会把整张表格识别成一个 table 块,并保留 markdown 表格格式。你可以直接把它喂给下游的 SQL、向量库或 Excel 导出脚本。
四、三个我打算长期用的场景
场景 1:RAG 知识库的分块策略升级
以前做 RAG,最常见的做法是按固定 token 长度切文档。问题是表格会被拦腰斩断,公式和代码块也会被打乱。现在可以按 title → paragraph → list → table 的块类型来切:标题和正文一起嵌入,表格单独作为结构化单元,公式块保留 LaTeX。配合 bbox,还能在检索结果里高亮原图对应区域。
场景 2:发票 / 报销单的自动审核
发票通常包含页眉、表格、印章、手写签名等混排内容。用块级置信度,可以把低置信度区域(比如被印章压住的金额、手写日期)自动标出来,转给财务复核;高置信度区域直接入账。这比「全信」或「全人工」都更省时间。
场景 3:合同关键条款定位
把合同扫描件 OCR 后,先按 heading 块切出目录结构,再定位「违约责任」「保密条款」「争议解决」等章节。后续可以用 LLM 只对定位到的区块做问答,而不是把整份合同上下文都塞进去,既省 token 又降低幻觉。
五、和同类方案怎么选
| 方案 | 适合谁 | 优势 | 劣势 |
|---|---|---|---|
| Mistral OCR 4.1 | 需要结构化输出、预算中等 | 一次调用返回 markdown + bbox + 置信度;价格低于 Textract 结构化模式 | 按页计费,量大时成本仍显著;中文手写体效果待验证 |
| 腾讯混元 HyOCR-1.5 | 需要本地化、处理中文文档 | 1B 参数,笔记本可跑;端到端 OCR;支持 vLLM/Transformers/llama.cpp | 需要自己部署和运维 |
| AWS Textract | 已有 AWS 生态、大批量 | 经典 OCR 价格便宜;表单+表格解析成熟 | 结构化功能贵($50–70/千页);需要 AWS 账号和信用卡 |
| Google Document AI | GCP 用户 | 与 Google Workspace 集成好 | 按文档类型选处理器,配置较复杂 |
如果你主要处理中文、且数据不能出内网,HyOCR-1.5 仍是更稳妥的选择。如果你处理的是多语言扫描件、发票、论文,且希望快速上线,Mistral OCR 4.1 的性价比更高。
六、两个不建议使用的场景
1. 把 OCR 结果直接当作唯一真相源
Hacker News 上有开发者反馈,Mistral OCR 4.0 在复杂排版下会「发明」原图中不存在的句子。4.1 的更新说明主要围绕布局、复选框、RTL(从右到左)语言,并没有明确承诺消除幻觉。对于法律、医疗、金融等高风险场景,建议把低置信度块路由给人工复核,或者用第二家 OCR 做交叉校验。
2. 追求极致低成本的海量扫描
虽然 $4/千页比 Textract 结构化模式便宜,但如果你只是要把扫描件变成纯文本,Google Cloud Vision 的 $1.5/千页或 OCR.space 的免费额度会更划算。Mistral OCR 4.1 的价值在于「结构化」,而不是「 cheapest text extraction」。
七、我的上手建议
- 固定模型版本号:生产环境用
mistral-ocr-4-1,不要用mistral-ocr-latest。后者会静默升级,可能导致账单和输出格式变化。 - 先跑 Batch 做成本测试:非实时场景用
/v1/batch,价格减半,还能避开实时速率限制。 - 把置信度当作过滤阀:建议从 0.85 开始设阈值,低于阈值的块进人工队列;跑一段时间后根据业务准确率再调整。
- 中文文档先做测试:官方文档没有明确给出中文排版优化说明,建议先用几份真实中文 PDF 验证效果再决定投入。
八、相关阅读与参考
- 站内相关:如果你需要本地化 OCR,可以看 OCR 终于不用搭流水线了:腾讯混元 HyOCR-1.5 开源,1B 参数笔记本就能跑。
- 模型选择参考:国内模型调用可以走 OpenRouter 怎么用、选哪个 里的聚合思路。
- API Key 管理:如果已经在用多个模型平台,阿里千问 AI 平台 提供了一种「一个 Key 管多个模型」的替代方案。
- 官方文档:Mistral OCR 4.1 模型页
- 社区讨论:Hacker News 上关于 Mistral OCR 4.1 的发布讨论曾获得数百赞,核心关注点集中在结构化输出与文档 AI 工作流。




发表回复