開発者やAIエンジニアは、画像・スキャン文書・図表などの視覚データを、LLMで扱いやすいテキスト表現に変換する必要があります。DeepSeek-OCRは、この課題に対して「コンテキスト光学的圧縮」を用いるOCRモデルです。複雑な視覚情報を、LLMが処理しやすいコンパクトで文脈を含んだテキストトークンへ圧縮します。
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中心のビジョンエンコーダとして設計されています。
基本的な処理フローは次のとおりです。
画像分析
ネイティブ解像度の画像をエンコードし、テキスト、レイアウト、図、表などを識別します。トークン生成
視覚的特徴を圧縮表現に変換します。見出し、本文、表などの構造を区別しやすくします。動的解像度処理
「Gundam」モードでは、密度の高い文書や大きな画像に対して複数の画像セグメントを結合します。グラウンディングタグ
画像内の要素を参照するために、次のような特殊タグを使用します。
<|ref|>xxxx<|/ref|>
これは、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と互換性があります。軽量デプロイメント
安全でスケーラブルな統合を行うため、依存関係を最小限に抑えた構成を目指しています。
代表的なユースケースは次のとおりです。
- 金融・法務ワークフローでの文書自動処理
- 視覚的な質問応答システム
- アクセシビリティ向けの画像説明生成
- デジタルアーカイブ向けのバッチOCRパイプライン
- API経由でのOCRサービス化
内部構造:DeepSeek-OCRアーキテクチャ
DeepSeek-OCRのアーキテクチャは、効率、精度、文脈保持を重視して設計されています。
主な構成要素は次のとおりです。
画像前処理
入力画像をリサイズし、正規化します。ビジョントランスフォーマーバックボーン
画像をパッチに分割し、それぞれを埋め込みに変換します。圧縮トークン化
マルチヘッドアテンションとフィードフォワードネットワークにより、視覚的コンテキストを簡潔なトークンへ集約します。LLM統合
視覚トークンをテキストプロンプトの先頭に追加し、コンテキスト長とメモリ使用量を抑えます。空間グラウンディング
特殊トークンにより、クエリを画像内の座標や領域へマッピングします。最適化されたトレーニング
画像とテキストのペアデータセットでファインチューニングされ、圧縮率と精度のバランスを取ります。
ダイナミックモードでは、複数パスから得られた埋め込みを動的に結合します。これにより、サイズや密度が異なる文書でも一貫した処理を行いやすくなります。
インストール手順
DeepSeek-OCRは、CUDAをサポートするPython環境でセットアップします。
1. Conda環境を作成する
conda create -n deepseek-ocr python=3.12.9 -y
conda activate deepseek-ocr
2. リポジトリをクローンする
git clone https://github.com/deepseek-ai/DeepSeek-OCR.git
cd DeepSeek-OCR
3. 必要なパッケージをインストールする
pip install -r requirements.txt
pip install flash-attn==2.7.3 --no-build-isolation
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
5. vLLMをインストールする
公式リリースから vLLM-0.8.5 のwheelを取得し、次のようにインストールします。
pip install vllm-0.8.5+cu118-cp38-abi3-manylinux1_x86_64.whl
注意: ドキュメントに記載されているように、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
レスポンス例:
{
"mode": "base",
"output_format": "markdown",
"content": "# 請求書\n\n| 項目 | 金額 |\n|---|---:|\n| ... | ... |"
}
このようにAPI化しておくと、フロントエンド、バッチ処理、RAGパイプライン、QAツールから再利用しやすくなります。
パフォーマンスとベンチマーク
DeepSeek-OCRは、高スループットと高精度を目標に設計されています。
- 速度: A100-40G GPUで最大2500トークン/秒
-
ベンチマーク:
- Fox、OmniDocBenchでOCR精度、レイアウト保持、図表解析に優れる
-
圧縮:
- 95%以上の抽出精度を維持しながら、トークンを50%削減
-
解像度スケーリング:
- 高解像度モードほど詳細な情報を保持しやすい一方、トークン数は増える
- 多くの本番シナリオでは、baseモードがバランスを取りやすい
DeepSeek-OCRと他のOCRソリューションの比較
| 機能 | DeepSeek-OCR | PaddleOCR | GOT-OCR2.0 | MinerU | Tesseract |
|---|---|---|---|---|---|
| LLM統合 | はい | いいえ | 部分的 | いいえ | いいえ |
| 文脈を考慮した出力 | はい | いいえ | 部分的 | いいえ | いいえ |
| 動的解像度 | はい | いいえ | いいえ | いいえ | いいえ |
| グラウンディングサポート | はい | いいえ | いいえ | いいえ | いいえ |
| トークン圧縮 | 高 | 中 | 中 | 低 | 低 |
| Markdown出力 | はい | いいえ | いいえ | いいえ | いいえ |
DeepSeek-OCRは、LLM互換性、コンテキスト保持、視覚トークン圧縮を重視するケースに向いています。特に、OCR結果をそのままLLM処理へ渡すアプリケーションでは使いやすい選択肢です。
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)