采用视觉因果流技术的先进OCR模型,实现类人文档理解和文本识别

Apache-2.0PythonDeepSeek-OCR-2deepseek-ai 1.3k Last Updated: January 27, 2026

DeepSeek-OCR-2: 视觉因果流

概述

DeepSeek-OCR-2 是一款革命性的光学字符识别 (OCR) 模型,它引入了开创性的 视觉因果流 概念。该项目由 DeepSeek AI 于 2026 年 1 月 27 日发布,标志着从传统的固定光栅扫描处理到语义驱动的视觉理解的范式转变。

主要特点

🚀 视觉因果流技术

  • 动态令牌重排序: 模型不再机械地从左到右、从上到下扫描图像,而是根据语义内容动态地重新排序视觉令牌。
  • 类人处理: 通过遵循逻辑信息流,模仿人类自然阅读和理解文档的方式。
  • 内容感知排序: 理解视觉元素之间的语义关系,而不仅仅是空间位置。

🔧 技术架构

DeepEncoder V2 架构

  • 视觉编码器升级: 用轻量级的 Qwen2-0.5B 语言模型取代了基于 CLIP 的编码器。
  • 因果注意力机制: 实现“因果流查询”,用于语义驱动的视觉令牌重组。
  • 两阶段处理:
    1. 具有语义理解的视觉编码。
    2. LLM 解码器对排序后的序列执行自回归推理。

性能提升

  • 比之前的 OCR 模型准确率提高 3.7%
  • 对复杂文档具有更好的阅读顺序理解能力
  • 减少幻觉和文本重复错误。
  • 提高生产可靠性

📊 功能

文档处理

  • 将文档转换为 Markdown 格式。
  • 免费 OCR,支持各种图像类型。
  • 高并发 PDF 处理。
  • 图形和图表解析。
  • 布局感知文本提取。

支持的格式

  • 图像 (JPG, PNG 等)。
  • PDF 文档。
  • 复杂布局和表格。
  • 多栏文档。
  • 科研论文和报告。

安装和使用

要求

  • Python 3.12.9
  • CUDA 11.8
  • PyTorch 2.6.0
  • Flash Attention 2.7.3

快速入门

使用 Transformers

from transformers import AutoModel, AutoTokenizer
import torch
import os

os.environ["CUDA_VISIBLE_DEVICES"] = '0'
model_name = 'deepseek-ai/DeepSeek-OCR-2'

tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True)
model = AutoModel.from_pretrained(
    model_name,
    _attn_implementation='flash_attention_2',
    trust_remote_code=True,
    use_safetensors=True
)
model = model.eval().cuda().to(torch.bfloat16)

# 文档转 Markdown 转换
prompt = "<image>\n<|grounding|>Convert the document to markdown."
image_file = 'your_image.jpg'
output_path = 'your/output/dir'

result = model.infer(
    tokenizer,
    prompt=prompt,
    image_file=image_file,
    output_path=output_path,
    base_size=1024,
    image_size=768,
    crop_mode=True,
    save_results=True
)

使用 vLLM (用于高性能)

该项目包含 vLLM 支持,可实现更快的推理和批量处理,这对于 PDF 处理和基准测试评估特别有用。

提示示例

  • 文档转换: <image>\n<|grounding|>Convert the document to markdown.
  • 通用 OCR: <image>\nFree OCR.
  • 图形解析: <image>\nParse the figure.
  • 图像描述: <image>\nDescribe this image in detail.

技术创新

传统 OCR 的问题

传统 OCR 系统存在三个关键限制:

  1. 由于固定的扫描模式,在复杂文档上的准确率较低
  2. 当相关信息分散时,阅读顺序解释不正确。
  3. 生产中错误率较高,包括文本重复和幻觉。

视觉因果流解决方案

DeepSeek-OCR-2 通过以下方式解决这些问题:

  • 理解视觉元素之间的语义关系
  • 遵循逻辑信息流,而不是空间位置。
  • 推理视觉顺序,类似于人类文档理解。

架构优势

  • 语言模型作为视觉编码器: 使用 Qwen2-0.5B 可实现对视觉内容的语义理解。
  • 因果注意力: 使模型能够推理哪些视觉元素在逻辑上先于其他元素。
  • 效率: 平衡了语义理解能力与计算效率。

性能和基准测试

准确率提升

  • 与之前的 OCR 模型相比,性能提高 3.7%
  • 对复杂布局具有卓越的阅读顺序理解能力
  • 在生产环境中降低了错误率
  • 更好地处理表格、图形和多栏布局。

用例

  • 学术论文处理。
  • 商业文档数字化。
  • 法律文件分析。
  • 技术手册转换。
  • 科研出版物解析。

项目结构

DeepSeek-OCR-2/
├── DeepSeek-OCR2-master/          # 核心实现
│   ├── DeepSeek-OCR2-vllm/       # vLLM 推理脚本
│   └── DeepSeek-OCR2-hf/         # Hugging Face transformers 脚本
├── assets/                        # 项目资产和图示
├── DeepSeek_OCR2_paper.pdf       # 研究论文
├── requirements.txt               # Python 依赖项
└── README.md                      # 项目文档

研究与开发

学术贡献

  • 研究论文: "DeepSeek-OCR 2: Visual Causal Flow"
  • 开源: 在 GitHub 和 Hugging Face 上可用。
  • 许可证: Apache 2.0。

未来发展

  • 2D 图像理解: 计划通过级联的 1D 因果推理器实现真正的 2D 推理。
  • 更广泛的 VLM 应用: 视觉因果流概念可应用于其他视觉语言任务。
  • 增强的空间推理: 提高对复杂视觉布局的理解能力。

与先前模型的比较

特征 传统 OCR DeepSeek-OCR DeepSeek-OCR-2
扫描方法 固定光栅扫描 压缩视觉令牌 语义因果流
阅读顺序 仅空间 改进的空间 语义理解
视觉编码器 基于 CLIP 基于 CLIP Qwen2-0.5B LM
准确率 基线 改进 +3.7% 提升
语义理解 有限 更好 类人

社区和资源

链接

致谢

该项目建立在以下贡献的基础上,并对其表示感谢:

  • DeepSeek-OCR
  • Vary
  • GOT-OCR2.0
  • MinerU
  • PaddleOCR
  • OmniDocBench (用于基准测试)

结论

DeepSeek-OCR-2 通过引入视觉因果流,在 OCR 技术方面取得了重大进展,实现了更类人的文档理解能力。这项创新解决了传统 OCR 系统的根本性局限性,并为各行业的文档处理应用开辟了新的可能性。

该项目的开源性质、全面的文档以及强大的性能提升,使其成为需要先进文档处理能力的 शोधकर्ता、开发人员和组织的宝贵工具。

Star History Chart