かすれたFAXも読み取るAI
弊社がお客様の受発注業務の自動化を担当した際、当初はOCRベースで構築しました。しかし手書きやかすれた業務書類で精度が頭打ちになり、Vision LLMへ置き換えたところ、精度が上がりました。
この記事では、そのとき分かったことをもとに、OCRとVision LLMの仕組みの違いと、ノイズの多い業務書類で精度に差が出る理由を書きます。
OCRとVision LLMの違い
OCR(光学文字認識)は古くからある技術です。1970年代から実用化され、現在ではGoogle Cloud Vision、AWS Textract、Azure Document Intelligence など、企業向けのサービスが揃っています。きれいに印字された定型帳票なら、高い精度で文字を読み取れます。
ところが、業務で実際に届く書類はきれいなものばかりではありません。手書き、縦書き、何度もコピーされてかすれた紙、罫線が潰れた表などが混じります。こうした書類では、従来のOCRは精度が頭打ちになることがあります。
近年登場したVision LLM(画像を直接読み取れる大規模言語モデル)は、まったく違う方法で書類を読みます。
2つのアプローチを並べてみる
書類の画像を構造化データに変換する処理には、大きく分けて2つの設計があります。
(1) 従来パイプライン: OCR → テキスト → LLM
書類画像 → OCR(テキスト化)→ LLM(構造化)→ JSON
OCRが文字列を抽出し、後段のLLMが「これは商品名」「これは数量」と意味づけして構造化します。役割がはっきり分かれていて、各段階を個別に入れ替えられる利点があります。
(2) Vision LLM 直結: 画像 → 構造化データ
書類画像 → Vision LLM → JSON
Vision LLMが画像をそのまま読み、文字の読み取りと意味の判断を同時に行って、構造化データを直接出力します。
PNG画像を渡す場合は、次のように書きます。
const result = await anthropic.messages.create({
model: "claude-sonnet-4-6",
max_tokens: 2048,
messages: [{
role: "user",
content: [
{ type: "image", source: { type: "base64", media_type: "image/png", data: imageBase64 } },
{ type: "text", text: "この発注書から商品コード・数量・単価をJSONで抽出してください。空欄はnullで返してください。" }
]
}]
});
一見、構成図は片方が短いだけに見えますが、両者の精度は大きく変わります。(1)では途中で一度テキストに変換するため、その時点で情報が抜け落ちるからです。
業務書類で従来のOCRが崩れる4つのパターン
業務書類で起きる失敗は、おおむね次の4つに分けられます。
パターンA: 縦書きの表で列の対応がずれる
商品名・商品コード・数量・単価が縦に並ぶ典型的な発注表では、OCRが文字を読み順に出力するときに、列ごとのセルの順番が入り混じって崩れることがあります。後段のLLMは崩れたテキストから元の列を復元できず、商品コードを数量と取り違えることがあります。
パターンB: 手書きの数字を別の文字と読み違える
手書きで雑に書かれた「2」が「Z」に、「1」が「7」や「/」に読み取られることがあります。OCRは文字や単語の単位で結果を確定するので、「数量の列だから数字のはず」という表の中の文脈までは使いません。後段のLLMには「Z」が渡るので、それを元の「2」に戻すのは困難です。
パターンC: 空欄と読めない欄を区別できない
表の一部のセルが空欄のとき、OCRはそれを単に「文字がなかった」として飛ばすか、ノイズを拾って何かの文字として返します。後段のLLMには「文字が無い」か「よく分からない文字がある」のどちらかが渡るだけで、「ここは空欄である」という情報が伝わりません。その結果、LLMが「たぶん前の行と同じ値だろう」と推測で埋めてしまうことがあります。
パターンD: かすれた罫線を文字として拾う
何度もコピーやスキャンをした書類では、罫線の一部が破線や点線のように見えます。これをOCRが「・」「ー」「I」などの文字として拾い、表の中に意味のないノイズが混じります。後段のLLMでこのノイズを取り除くのは難しくなります。
Vision LLMが同じ書類を読み取れる理由
上の失敗パターンに対して、Vision LLMが強い理由は4つあります。
① 文字の読み取りと意味の判断を同時に行う
Vision LLMは「字の形を見分ける」と「意味を判断する」を分けていません。手書きの「2」が潰れて「Z」のようにも見えるとき、
- 列の見出しに「数量」と書かれている
- 上下の行には数字が並んでいる
- 字の形は「2」「Z」のどちらにも近い
という材料を合わせて判断します。1文字ずつ先に決めてしまわないので、文脈から判断する余地が残ります。
② 2次元のレイアウトをそのまま使える
表の構造を返すOCRサービスもありますが、OCRの結果を文字列だけにして後段へ渡すと、表の構造(どのセルがどの列に属するか)はそこで失われます。
Vision LLMは画像をそのまま読み込むため、画像上の位置関係を直接使えます。文字列に変換する段階で縦書きの表の列がずれる、という問題は起きません(読み取りの誤りが無くなるわけではありません)。
③ 空欄を空欄として扱える
Vision LLMに「空欄はnullで返してください」と指示すると、空欄を空欄として認識してnullを返します。書類全体を見て判断するので、「読めなかった」と「書いてなかった」を見分けやすくなります。
読めなかった欄は別の値で返すように指示しておけば、「空欄だった項目」と「読み取れなかった項目」を後段で分けて扱えます。業務ではこの区別が役に立ちます。ただし、この判定も誤ることがあるので、実際の帳票で確かめてから使います。
④ 整合性のチェックも一緒にできる
「合計金額が単価×数量と合っていない」「数量の列なのにアルファベットがある」といった書類の中の食い違いに、Vision LLMは読み取りと同時に気づけます。
ただし、辻褄の合う値が原本に書かれた値とは限りません。受発注のデータでは、食い違いのある項目を自動で直さず、人が原本を確認する対象として返すのが安全です。
OCRには整合性という考え方が無いため、読み違えた文字は後段のLLMでチェックするしかありません。しかし後段のLLMはOCRが返した文字列しか見ていないので、字の形に戻って判断し直すことはできません。
実運用での数値
ここまでは考え方の話でした。参考までに、弊社がOCRからVision LLM(Claude Sonnet 4.6、PDFを直接入力)に置き換えた、お客様の受発注自動化システムでの実測値を紹介します。
トークン使用量
新しい構成の1件あたりのトークン消費は次のとおりです(A4で1〜3ページのFAXで実測)。
- 入力トークン: 約3,000(PDFの画像をそのまま渡す)
- 出力トークン: 約800(構造化JSON)
Vision LLMはOCRを使う構成と比べてAPIの単価が高めです。弊社の案件では、後述の手戻りの減少も含めて考え、業務全体では見合うと判断しました。
手戻りが減るかの検証
切り替えを決める前に、過去1週間の運用で発生した手戻り6件を取り出し、新しい構成で再処理しました。
| 件数 | 結果 |
|---|---|
| 5件 | 正しく抽出できた(手戻りなし) |
| 1件 | 原本のスキャンが極端に粗く、人が見ても判読が難しいケース |
この6件では、OCRが原因だった手戻りは新しい構成で起きませんでした。ただし、この検証だけで運用全体の手戻りがどれだけ減るかまでは分かりません。
処理時間
新しい構成は1件あたり5〜15秒かかります(Claude Sonnet 4.6 のVision APIの応答時間、実測)。
FAXの受注は、その場での応答が求められない処理(受信 → 裏で処理 → 担当者が後で確認)なので、処理時間が延びても業務上の問題にはなりません。
どちらを選ぶか
Vision LLMも万能ではありません。OCRに比べて費用が高く、処理にも時間がかかります(1件あたり数円〜十数円、応答に5〜15秒)。一方、きれいに印字された書類を大量にまとめて処理するなら、費用と速さの面でOCRが有利なことが多く、精度も足ります。
判断の基準は、「書類のノイズの多さ」と「読み取りの誤りを直す手間」のバランスです。
| 状況 | 向いている方法 |
|---|---|
| きれいに印字された定型帳票を大量に処理する | OCR |
| 手書き・縦書き・かすれが混じる、さまざまな書類 | Vision LLM |
| 読み取りの誤りを後で直す手間が大きい業務 | Vision LLM |
| 結果を最後に人が確認し、直す量も少ない業務 | OCR |
業務FAXのように、ノイズの多い書類で手戻りを減らしたい場合は、Vision LLMが有力な選択肢です。どちらにするかは、実際の帳票で精度・費用・確認の手間を比べて決めます。
まとめ
OCRとVision LLMは、向いている用途が違う技術です。OCRが数十年かけて積み上げた精度・速度・費用の面での強みは今でも有効で、用途によってはOCRのほうが適しています。
一方で、手書き・縦書き・かすれ・空欄が混じる実際の業務書類では、Vision LLMが有利な場面が多くあります。テキストに変換せず、書類の画像をそのまま読み取れるからです。
OCRでうまく読めない書類があれば、Vision LLMへの置き換えを検討してみてください。