DEV Community

Cover image for DeepSeek-OCR: AI・APIワークフロー向け 画期的なコンテキストOCR
Akira
Akira

Posted on • Originally published at apidog.com

DeepSeek-OCR: AI・APIワークフロー向け 画期的なコンテキストOCR

開発者やAIエンジニアは、画像・スキャン文書・図表などの視覚データを、LLMで扱いやすいテキスト表現に変換する必要があります。DeepSeek-OCRは、この課題に対して「コンテキスト光学的圧縮」を用いるOCRモデルです。複雑な視覚情報を、LLMが処理しやすいコンパクトで文脈を含んだテキストトークンへ圧縮します。

今すぐApidogを試す

DeepSeek-OCRは2025年10月にリリースされ、ドキュメント自動化、画像からテキストへの変換、視覚データ分析を扱うチームに向けたOCRモデルです。LLM統合を前提に設計されており、高精度な抽出、計算オーバーヘッドの削減、大規模ワークロードへの対応を狙っています。

「コンテキスト光学的圧縮」とは?

コンテキスト光学的圧縮とは、画像を単なるプレーンテキストではなく、構造や文脈を保持したテキストトークンへ変換する処理です。

従来のOCRでは、文字列の抽出はできても、次のような情報が失われることがあります。

  • 見出しと本文の関係
  • 表の行・列構造
  • 図表と説明文の対応
  • ページ内の空間的な位置関係
  • 多言語文書や歪んだスキャンの文脈

DeepSeek-OCRは、これらをLLMが扱いやすい形に圧縮することを目的としています。

主な利点は次のとおりです。

  • コンテキスト保持: 見出し、表、レイアウト、空間参照を維持しやすい
  • 解像度モードの選択: tiny / small / base / large など、用途に応じて精度とコストを調整できる
  • グラウンディング: 画像内の特定領域や要素への参照を扱える
  • LLM連携向け: 抽出結果を後続の要約、検索、QA、分類処理に渡しやすい

Tesseractのような従来型OCRは、シンプルな文書では有効ですが、複雑なレイアウト、手書き、歪み、多言語コンテンツでは扱いが難しくなる場合があります。DeepSeek-OCRは、深層ニューラルアーキテクチャを使って、より文脈を意識したOCR処理を行います。

DeepSeek-OCRの仕組み

DeepSeek-OCRは、視覚データを最小限かつ情報量の多いトークンに圧縮する、LLM中心のビジョンエンコーダとして設計されています。

基本的な処理フローは次のとおりです。

  1. 画像分析

    ネイティブ解像度の画像をエンコードし、テキスト、レイアウト、図、表などを識別します。

  2. トークン生成

    視覚的特徴を圧縮表現に変換します。見出し、本文、表などの構造を区別しやすくします。

  3. 動的解像度処理

    「Gundam」モードでは、密度の高い文書や大きな画像に対して複数の画像セグメントを結合します。

  4. グラウンディングタグ

    画像内の要素を参照するために、次のような特殊タグを使用します。

<|ref|>xxxx<|/ref|>
Enter fullscreen mode Exit fullscreen mode

これは、AR、インタラクティブドキュメント、視覚的な質問応答などのユースケースに向いています。

トークンモードの選び方

DeepSeek-OCRでは、解像度とトークン数のバランスを選択できます。

モード 解像度 トークン数 向いている用途
Tiny 512×512 px 64 プレビュー、低コスト処理
Small 640×640 px 100 軽量なOCR処理
Base 1024×1024 px 256 多くの本番ワークロード
Large 1280×1280 px 400 高詳細な文書解析

実装時は、まず baseモード を基準にし、要件に応じて調整するのが現実的です。

  • レイテンシを優先する: tiny / small
  • 精度とコストのバランスを取る: base
  • 細かい表や図を扱う: large
  • 大きなスキャン文書を扱う: Gundamモード

DeepSeek-OCRの開発者向け機能

DeepSeek-OCRは、AIアプリケーションやAPIベースのワークフローに組み込みやすい機能を備えています。

  • ネイティブ解像度の柔軟性

    プレビュー用途から詳細スキャンまで、処理モードを切り替えられます。

  • 動的「Gundam」モード

    複数セグメントを結合し、超高解像度または密度の高い文書を処理します。

  • Markdown出力

    表、リスト、階層構造を維持したMarkdownとして扱いやすくなります。

  • 図表解析

    チャートやグラフから、データや説明文を抽出できます。

  • 画像キャプション生成

    アクセシビリティや画像検索向けに、文脈を考慮した説明を生成できます。

  • 位置参照

    特定要素に対する問い合わせや抽出を行いやすくします。

  • 高速推論

    A100-40G GPUで最大2500トークン/秒を達成します。vLLMおよびTransformersと互換性があります。

  • 軽量デプロイメント

    安全でスケーラブルな統合を行うため、依存関係を最小限に抑えた構成を目指しています。

Image

代表的なユースケースは次のとおりです。

  • 金融・法務ワークフローでの文書自動処理
  • 視覚的な質問応答システム
  • アクセシビリティ向けの画像説明生成
  • デジタルアーカイブ向けのバッチOCRパイプライン
  • API経由でのOCRサービス化

内部構造:DeepSeek-OCRアーキテクチャ

DeepSeek-OCRのアーキテクチャは、効率、精度、文脈保持を重視して設計されています。

主な構成要素は次のとおりです。

  1. 画像前処理

    入力画像をリサイズし、正規化します。

  2. ビジョントランスフォーマーバックボーン

    画像をパッチに分割し、それぞれを埋め込みに変換します。

  3. 圧縮トークン化

    マルチヘッドアテンションとフィードフォワードネットワークにより、視覚的コンテキストを簡潔なトークンへ集約します。

  4. LLM統合

    視覚トークンをテキストプロンプトの先頭に追加し、コンテキスト長とメモリ使用量を抑えます。

  5. 空間グラウンディング

    特殊トークンにより、クエリを画像内の座標や領域へマッピングします。

  6. 最適化されたトレーニング

    画像とテキストのペアデータセットでファインチューニングされ、圧縮率と精度のバランスを取ります。

Image

ダイナミックモードでは、複数パスから得られた埋め込みを動的に結合します。これにより、サイズや密度が異なる文書でも一貫した処理を行いやすくなります。

Image

インストール手順

DeepSeek-OCRは、CUDAをサポートするPython環境でセットアップします。

1. Conda環境を作成する

conda create -n deepseek-ocr python=3.12.9 -y
conda activate deepseek-ocr
Enter fullscreen mode Exit fullscreen mode

2. リポジトリをクローンする

git clone https://github.com/deepseek-ai/DeepSeek-OCR.git
cd DeepSeek-OCR
Enter fullscreen mode Exit fullscreen mode

3. 必要なパッケージをインストールする

pip install -r requirements.txt
pip install flash-attn==2.7.3 --no-build-isolation
Enter fullscreen mode Exit fullscreen mode

4. PyTorchをインストールする

CUDA 11.8向けの例です。

pip install torch==2.6.0 torchvision==0.21.0 torchaudio==2.6.0 --index-url https://download.pytorch.org/whl/cu118
Enter fullscreen mode Exit fullscreen mode

5. vLLMをインストールする

公式リリースから vLLM-0.8.5 のwheelを取得し、次のようにインストールします。

pip install vllm-0.8.5+cu118-cp38-abi3-manylinux1_x86_64.whl
Enter fullscreen mode Exit fullscreen mode

注意: ドキュメントに記載されているように、vLLMおよびTransformersに関連する一部のエラーは無視できる場合があります。

実装時のチェックリスト

DeepSeek-OCRをアプリケーションに組み込む場合は、次の順序で検証すると進めやすくなります。

1. 入力画像の条件を固定する

まずは、扱う画像の種類を決めます。

  • PDFから変換したページ画像
  • スキャン済み請求書
  • 契約書
  • 表を含むレポート
  • 図表やグラフ
  • 手書きメモ

入力のばらつきが大きい場合、OCR品質の評価が難しくなります。最初は代表的な文書セットを用意し、モードごとの出力差を比較します。

2. モードごとに出力を比較する

tiny / small / base / large で、次の観点を確認します。

  • テキスト抽出精度
  • 表構造の保持
  • Markdownとしての再利用性
  • 推論時間
  • GPUメモリ使用量
  • 後続LLM処理での回答品質

3. Markdown出力を後続処理に渡す

DeepSeek-OCRの強みは、LLMで扱いやすい形式へ変換できる点です。抽出したMarkdownは、次のような処理に接続できます。

  • 要約
  • 質問応答
  • RAG用のチャンク化
  • メタデータ抽出
  • JSON化
  • 検索インデックス化

4. APIとしてラップする

本番運用では、DeepSeek-OCRを直接呼び出すだけでなく、APIとして分離すると管理しやすくなります。

例:

POST /ocr
Content-Type: multipart/form-data

file: document.png
mode: base
output_format: markdown
Enter fullscreen mode Exit fullscreen mode

レスポンス例:

{
  "mode": "base",
  "output_format": "markdown",
  "content": "# 請求書\n\n| 項目 | 金額 |\n|---|---:|\n| ... | ... |"
}
Enter fullscreen mode Exit fullscreen mode

このようにAPI化しておくと、フロントエンド、バッチ処理、RAGパイプライン、QAツールから再利用しやすくなります。

パフォーマンスとベンチマーク

DeepSeek-OCRは、高スループットと高精度を目標に設計されています。

  • 速度: A100-40G GPUで最大2500トークン/秒
  • ベンチマーク:
    • Fox、OmniDocBenchでOCR精度、レイアウト保持、図表解析に優れる
  • 圧縮:
    • 95%以上の抽出精度を維持しながら、トークンを50%削減
  • 解像度スケーリング:
    • 高解像度モードほど詳細な情報を保持しやすい一方、トークン数は増える
    • 多くの本番シナリオでは、baseモードがバランスを取りやすい

Image

DeepSeek-OCRと他のOCRソリューションの比較

機能 DeepSeek-OCR PaddleOCR GOT-OCR2.0 MinerU Tesseract
LLM統合 はい いいえ 部分的 いいえ いいえ
文脈を考慮した出力 はい いいえ 部分的 いいえ いいえ
動的解像度 はい いいえ いいえ いいえ いいえ
グラウンディングサポート はい いいえ いいえ いいえ いいえ
トークン圧縮
Markdown出力 はい いいえ いいえ いいえ いいえ

DeepSeek-OCRは、LLM互換性、コンテキスト保持、視覚トークン圧縮を重視するケースに向いています。特に、OCR結果をそのままLLM処理へ渡すアプリケーションでは使いやすい選択肢です。

Image

DeepSeek-OCR API統合でApidogを使う理由

DeepSeek-OCRをプロジェクトに組み込む場合、OCRモデルそのものだけでなく、APIの管理も重要になります。

たとえば次の作業が発生します。

  • OCRエンドポイントの設計
  • リクエストペイロードの検証
  • 画像アップロードのテスト
  • OCRレスポンスの確認
  • エラーケースの再現
  • レイテンシの確認
  • チーム内でのAPI仕様共有

Apidogを使うと、DeepSeek-OCRのAPI開発を次のように進めやすくなります。

  • APIテスト

    OCRエンドポイント、ペイロード、レスポンスをリアルタイムで検証できます。

  • モックと自動化

    本番環境に依存せず、統合テストやQA向けにOCR APIをシミュレートできます。

  • パフォーマンス確認

    応答時間やエラーを追跡し、OCRワークフローのボトルネックを見つけやすくなります。

  • チームコラボレーション

    APIコレクションを共有し、仕様確認、デバッグ、反復開発を進めやすくなります。

DeepSeek-OCRをAPIスタックに組み込む場合は、モデルの精度検証だけでなく、APIとしての安定性、再現性、運用性も確認することが重要です。

結論

DeepSeek-OCRは、画像や文書をLLMで扱いやすいテキスト表現へ変換するためのOCRモデルです。コンテキスト光学的圧縮、Markdown出力、動的解像度、グラウンディングにより、単なる文字起こしを超えたドキュメント処理に活用できます。

実装時は、まず代表的な文書セットで base モードを検証し、精度、レイテンシ、トークン数、後続LLM処理の品質を確認します。そのうえでAPI化し、Apidogのようなツールでテスト、モック、監視、チーム共有を整えると、本番導入までの流れを安定させやすくなります。

Top comments (0)