Chandra:复杂文档OCR模型
上周,我偶然发现了一个令人惊喜的东西。Datalab 开发了一款名为 Chandra 的开源 OCR 模型。它在社交媒体上几乎无人问津,但在独立基准测试中,它悄然超越了所有主流 OCR 系统——甚至包括dots OCR。
更不可思议的是?它是完全开源的。
1、我为什么还要费心测试它
我用过各种各样的 OCR 工具——从 Tesseract 到 GPT-4 的视觉 API——它们都有各自的局限性。它们经常会识别错误手写文本,或者在解析包含表格和公式的 PDF 文件时破坏布局。
所以,当我看到 Chandra 声称能够处理手写文本、表格、数学公式,甚至是多栏布局,同时还能保持原始结构时,我决定试一试。
2、我用拉马努金 1913 年的手写信测试了它
为了评估它的真实质量,我用 Chandra 测试了拉马努金 1913 年的一封手写信。
大多数 OCR 工具……都束手无策。
但 Chandra 却能清晰地识别这封信。它保留了布局、数学符号,甚至连淡淡的墨迹细节都清晰可见。这感觉不像是在进行 OCR 识别——而更像是文档重建。
3、Chandra 的独特之处
以下是开箱即用的功能:
- 支持 40 多种语言
- 识别手写体、表格和数学公式
- 重构表单和复选框
- 输出 Markdown、HTML 或 JSON 格式
- 提取图像和标题
- 可在本地(Hugging Face)或远程(vLLM)运行
它是一款真正了解真实文档复杂性的工具。
4、我的使用方法
您可以直接通过 pip 安装:
pip install chandra-ocr然后将其指向任何 PDF 或图像:
chandra input.pdf ./output如果您想在本地运行(不使用 vLLM),请添加:
chandra input.pdf ./output --method hf它会输出:
- Markdown 版本
- HTML 版本
- JSON 格式的元数据
- 以及一个包含提取图像的文件夹
就是这样——无需复杂的设置,无需登录。
5、更喜欢用户界面?这里有 Streamlit 应用
如果您觉得命令行工具太复杂,只需运行:
chandra_app它会打开一个简单的 Web 应用,您可以在其中拖放 PDF 文件,并在浏览器中预览所有内容。
6、在生产环境中运行
对于繁重的工作负载或批量处理,您可以启动一个 vLLM 服务器:
chandra_vllm您可以使用环境变量调整 GPU ID 或令牌限制等设置:
VLLM_API_BASE=http://localhost:8000/v1
VLLM_MODEL_NAME=chandra
VLLM_GPUS=0Datalab 就是这样针对高吞吐量 OCR 任务进行了优化。
7、数据不会说谎
我并非唯一一个印象深刻的人。在 olmocr 基准测试中,Chandra v0.1.0 的总分为 83.1 分,超过了所有其他测试模型——包括 dots-ocr (79.1)、olmOCR (78.5) 甚至 GPT-4o (69.9)。
| Model | Overall | Source |
| ---------------| -------------- | ------------- |
| Chandra v0.1.0 | 83.1 ± 0.9 | Datalab |
| dots.ocr | 79.1 ± 1.0 | dots.ocr repo |
| olmOCR v0.3.0 | 78.5 ± 1.1 | olmocr repo |
| GPT-4o (Anchored)| 69.9 ± 1.1 | olmocr repo |它在数学运算和表格识别方面也表现出色——而这两个领域恰恰是大多数模型的弱项。
8、面向爱好者和研究人员
如果您不想安装任何软件,官方提供了一个免费的在线测试平台,您可以上传文件并立即进行测试。
该模型采用 Apache 2.0 许可,而权重采用 OpenRAIL-M 许可,适用于研究、个人项目和小型创业公司。如果您打算将其用于竞争产品,则需要商业许可。
9、结束语
说实话,我认为大多数人都错过了这次发布。
OCR 技术多年来一直乏善可陈,但 Chandra 改变了这一切。它准确、快速,并且真正尊重文档的结构。
如果您处理研究论文、扫描表格或任何涉及数学的内容,不妨一试。
原文链接:New OCR Model — Chandra by Datalab — I tested Ramanujan's handwritten letter from 1913.
汇智网翻译整理,转载请标明出处