「AI OCRで帳票処理を自動化しましょう」という提案を受けて導入したものの、実は対象の書類がテキストレイヤー付きのPDFで、OCRもLLMも要らずにテキスト抽出だけで済んでいた——という話は珍しくありません。この記事では、導入前に確認すべき1つのことを書きます。
「PDF」は1種類ではない
ひとくちにPDFと言っても、中身は大きく2種類に分かれます。
テキストPDFは、WordやExcel、会計ソフトなどから直接書き出されたPDFです。文字情報がデータとして埋め込まれているため、pdfplumber や pdf.js のようなライブラリで、画像認識なしにそのままテキストを取り出せます。
画像PDFは、紙の書類をスキャンしたり写真を撮ったりして作られたPDFです。中身はただの画像なので、文字を読み取るにはOCR、崩れた文字やレイアウトを理解するにはLLMが必要になります。
AI OCRが本領を発揮するのは後者です。前者にAI OCRを使うのは、電卓で済む計算のためにわざわざ人を雇うようなものです。
見分け方は難しくない
判定は簡単です。PDFを開いて、文字をドラッグして選択できるかどうか。 選択してコピーできればテキストPDF、できなければ(選択しても文字が拾えない、または画像として選択されるだけなら)画像PDFです。数十秒でできる確認ですが、意外とここを検証せずに導入が決まっているケースを見かけます。
書類の枚数が多くて目視では追いきれない場合は、機械的に判定できます。Pythonなら数行です。
import pdfplumber
def is_text_pdf(path: str) -> bool:
with pdfplumber.open(path) as pdf:
text = "".join((page.extract_text() or "") for page in pdf.pages)
# 文字がほとんど取れなければスキャン画像とみなす
return len(text.strip()) > 50
対象書類のフォルダをこの関数で一巡させれば、「何割が画像PDFなのか」が数分でわかります。この数字がないまま見積もりを取ると、必要な処理量を判断できません。
テキストPDFと画像PDFの違い
| テキストPDF | 画像PDF | |
|---|---|---|
| 主な出どころ | 会計ソフト・Excel・Wordからの書き出し、電子請求書 | 紙のスキャン、FAX、スマホ撮影 |
| 文字の取り出し方 | ライブラリでそのまま抽出 | OCR + LLMで認識 |
| 精度 | 元データそのままなので誤りが出ない | 読み取り精度に依存する |
| 処理コスト | ほぼゼロ | 枚数に比例してAPI課金 |
| 処理時間 | 1枚あたり数ミリ秒 | 1枚あたり数秒 |
電子帳簿保存法への対応が進んだ結果、取引先から届く請求書が紙からPDFメール添付に切り替わり、いつの間にか対象書類の大半がテキストPDFになっていた、というケースも増えています。導入検討時の前提が、運用開始時にはもう古くなっていることがあります。
なぜ見過ごされるのか
理由の一つは、提案する側にとってAI OCRの方が売りやすい、という単純な構造です。API従量課金は継続収益になりますが、「そのままテキスト抽出すれば終わりです」という提案は、案件としての規模が小さくなります。悪意があるというより、対象書類の実態を精査する動機が売る側にはあまりない、というだけの話です。
もう一つは、発注する側も「PDF=読み取りにくいもの」という漠然としたイメージで発注してしまい、テキストPDFと画像PDFを区別する発想自体がないことです。バイブコーディングで作られたシステムの認証周りが見過ごされるのと同じ構図で、「知らないから確認する発想がない」というのが根本の原因です。
払い続けているコスト
テキストPDFにAI OCRを使うと、実際には要らないコストを継続的に払うことになります。API課金はもちろん、OCR・LLMを経由する分レイテンシも余分にかかり、テキスト抽出なら発生しないはずの誤読・誤認識のリスクまで抱え込みます。月数百件・数千件を処理しているなら、この差は無視できない金額になります。
混ざっている場合はどうするか
実務でよくあるのは、テキストPDFと画像PDFが同じフォルダに混在しているパターンです。この場合、どちらかに寄せる必要はありません。入口で判定して処理を振り分ければいいだけです。
- PDFを受け取ったら、まずテキスト抽出を試す
- 十分な文字が取れたらそのまま構造化して終了
- 取れなければAI OCRに回す
この分岐を入れるだけで、テキストPDFの割合ぶんだけAPIコストと処理時間が減ります。実装量としては半日程度の話で、月に数千枚を処理しているなら十分に回収できます。
なお、テキストが取れる場合でも、抽出できるのは「文字の並び」であって「どれが金額でどれが取引先か」ではありません。項目の意味づけが必要ならLLMを使う価値はありますが、その場合も画像ではなくテキストを渡すほうが安く、速く、正確です。AIを使うかどうかと、OCRが要るかどうかは別の判断です。
AI OCRを使うべきなのはどんなときか
逆に、次のようなケースは迷わずAI OCRの出番です。
- 紙で届く注文書・検収書をスキャンして取り込んでいる
- 手書きの申請書や日報が対象に含まれる
- 取引先ごとに様式がバラバラで、レイアウトが固定できない
- 表の罫線が崩れていたり、押印や訂正線が重なっている
このあたりの実務はAI OCRで帳票の手入力をなくすに詳しく書きました。
導入前にできること
新しく帳票処理の自動化を検討している、あるいはすでにAI OCRを導入して運用しているなら、まず対象書類のサンプルを何枚か開いて、文字が選択できるかを確認してみてください。全部が画像PDFならAI OCRの出番ですが、テキストPDFが混ざっているなら、そこだけ処理を分岐させるだけで無駄なコストを削れます。
まとめ
AI OCRは強力な技術ですが、それが必要な書類かどうかを見極めるところから導入は始まります。提案されるがまま契約する前に、一度対象書類を自分の目で確認してみてください。判断に迷う場合や、既存の運用を点検してほしい場合はお問い合わせからご相談ください。