Media > AI活用ユースケース > 営業 > 新聞・雑誌の掲載紙をスキャンして読み取り、掲載日・掲載面・広告サイズ・原稿番号を発注と照らして、掲載の誤りと掲載紙の未着を広告主への報告の前に拾う

新聞・雑誌の掲載紙をスキャンして読み取り、掲載日・掲載面・広告サイズ・原稿番号を発注と照らして、掲載の誤りと掲載紙の未着を広告主への報告の前に拾う

実装ステータス:構成例 技術的に実現可能な構成として設計したもの。自社未検証

媒体社から届く新聞・雑誌の掲載紙をスキャンして読み取り、掲載日・掲載面・広告サイズ・原稿の版を発注の内容と照らします。誤りのある掲載と、掲載日を過ぎても届かない掲載紙を、広告主へ報告する前に担当へ返します。

サマリー
生成AI
Azure OpenAI Service/Claude/Gemini
AIサービス
Azure AI/Google Document AI
連携・自動化
Make/n8n/Power Automate/Python
対象業界
不動産/小売/広告
対象部門
営業
対象業務
内容確認・チェック/比較検討
主な課題
入力作業が多い/期限・対応漏れが起きる/確認ミスが多い
AIで行う処理
読み取り(OCR)
主な効果
入力漏れ削減/対応スピード向上/工数削減
導入難易度
★★★☆☆
実装レベル
本格構成
費用感
API連携(中)
人間の確認
条件付き
現在工数
80h/月
AI導入後
20h/月
想定削減
75%
年間削減
720h
モデル条件による試算値です。実在企業の実績ではありません。

01導入前 / 導入後の業務フロー

導入前(Before)
  1. 届いた掲載紙を開封し、発注の管理の仕組みでどの掲載の分かを探す
  2. 新聞なら面をめくって、自社が発注した広告を探す
  3. 紙面の上の日付と面の番号を見て、発注の掲載日・面と合っているかを確かめる
  4. 広告の大きさを見て、発注のサイズ(新聞なら段、雑誌ならページの割合)と合っているかを確かめる
  5. 入稿した原稿のPDFを開き、広告の中の価格・日付・電話番号を見比べて、版が合っているかを確かめる
  6. 合っていれば掲載紙の該当面をスキャンし、広告主への報告に添える
  7. 掲載日から日がたっても届かない掲載紙は、気づいたときに媒体社へ問い合わせる
導入後(After)
  1. 人営業アシスタントが届いた掲載紙の該当する号をスキャンし、PDFで届いたものとあわせて受領フォルダに入れる
  2. 自動ファイルの保存をきっかけに連携の処理が動き、形式と大きさを確かめる
  3. 自動OCRが紙面ごとの文字・段落の役割・図の位置と、文字ごとの信頼度を返す
  4. 自動生成AIが、紙面の媒体名・発行日・面の番号と、広告らしい領域の位置・中の文字を取り出す
  5. 自動処理が発注の管理の仕組みの掲載と照らし、掲載日・面・サイズ・原稿の版の項目ごとに `match` / `mismatch` / `not_found` / `unreadable` を付ける
  6. 自動処理が掲載日から決まった日数を過ぎても掲載紙が届いていない掲載を、毎朝の一覧に出す
  7. 人営業アシスタントが、`mismatch` / `not_found` / `unreadable` のあるものだけ紙面を開いて確かめる
  8. 人誤りが確かなものは営業が媒体社に問い合わせ、広告主への報告をどうするかを決める
  9. 【人/自動】 すべての項目が `match` のものは、該当面の画像を添えた報告の下書きを作り、営業が確かめて送る
各工程の詳しい説明を読む
  1. 届いた掲載紙を開封し、発注の管理の仕組みでどの掲載の分かを探す
  2. 新聞なら面をめくって、自社が発注した広告を探す
  3. 紙面の上の日付と面の番号を見て、発注の掲載日・面と合っているかを確かめる
  4. 広告の大きさを見て、発注のサイズ(新聞なら段、雑誌ならページの割合)と合っているかを確かめる
  5. 入稿した原稿のPDFを開き、広告の中の価格・日付・電話番号を見比べて、版が合っているかを確かめる
  6. 合っていれば掲載紙の該当面をスキャンし、広告主への報告に添える
  7. 掲載日から日がたっても届かない掲載紙は、気づいたときに媒体社へ問い合わせる

(a)広告を探すのに時間がかかる。 新聞は数十面あり、自社の広告がどの面にあるかを1面ずつめくって探します。発注の面と違う面に載っていると、探す時間がさらに延びます。

(b)古い版の原稿に気づかない。 毎週の出稿で見た目がほとんど同じ広告は、価格や日付の数字まで見比べないと版の違いが分かりません。 忙しいときは見た目で合っていると判断してしまいます。

(c)届かない掲載紙を追えていない。 届いたものを確かめる流れはあっても、届いていないものを数える流れがありません。 広告主から「掲載紙はまだか」と聞かれて、初めて届いていないことに気づきます。

(d)確かめた記録が残らない。 どの項目を見て合っていると判断したかが残らないので、後から誤りが分かったときに、見落としたのか、見たのに気づかなかったのかが分かりません。

(e)担当者によって確かめる項目が違う。 日付と面だけを見る人、サイズまで見る人、原稿の数字まで見る人がいます。同じ広告主の掲載でも、担当した営業アシスタントによって誤りが見つかるかどうかが変わります。

  1. 【人】 営業アシスタントが届いた掲載紙の該当する号をスキャンし、PDFで届いたものとあわせて受領フォルダに入れる
  2. 【自動】 ファイルの保存をきっかけに連携の処理が動き、形式と大きさを確かめる
  3. 【自動】 OCRが紙面ごとの文字・段落の役割・図の位置と、文字ごとの信頼度を返す
  4. 【自動】 生成AIが、紙面の媒体名・発行日・面の番号と、広告らしい領域の位置・中の文字を取り出す
  5. 【自動】 処理が発注の管理の仕組みの掲載と照らし、掲載日・面・サイズ・原稿の版の項目ごとに match / mismatch / not_found / unreadable を付ける
  6. 【自動】 処理が掲載日から決まった日数を過ぎても掲載紙が届いていない掲載を、毎朝の一覧に出す
  7. 【人】 営業アシスタントが、mismatch / not_found / unreadable のあるものだけ紙面を開いて確かめる
  8. 【人】 誤りが確かなものは営業が媒体社に問い合わせ、広告主への報告をどうするかを決める
  9. 【人/自動】 すべての項目が match のものは、該当面の画像を添えた報告の下書きを作り、営業が確かめて送る

7番目が、この設計の分かれ目です。人が開くのは全件ではありません。 すべて合っているものは一覧で流し見て、合わないものと見つからなかったものだけに時間を使います。

6番目は、これまで無かった流れです。 届いた掲載紙を確かめる仕組みと、届いていない掲載紙を数える仕組みは、同じ発注の一覧から作れます。 照合の結果が書き込まれていない掲載が、そのまま未着の候補になります。

02今回想定するシステム構成

構成図
掲載紙(新聞・雑誌をスキャン、媒体社からのPDF)
   │  受領フォルダへ保存
   ▼【トリガー】ファイルの保存
連携の処理(Power Automate)
   ├──▶ 形式・大きさの確認
   ▼
Azure AI Document Intelligence(レイアウトモデル+高解像度の読み取り)
   │   文字・段落の役割・図の位置・信頼度
   ▼
Azure OpenAI(Microsoft Foundry) ── 構造化出力
   │   媒体名・発行日・面の番号、広告の領域と中の文字
   ▼
Azure Functions ── 発注との照合(日付・面・サイズ・版)/未着の検出
   ▼
確認の一覧 ──【営業アシスタントが合わないものだけ確認】
   ▼
広告主への掲載の報告の下書き
役割想定する製品代替候補
OCRAzure AI Document Intelligence(レイアウトモデル、高解像度の読み取り)Google Document AI(Enterprise Document OCR)
生成AIAzure OpenAI(Microsoft Foundry)(構造化出力で紙面と広告の項目を取り出す)Claude API、Gemini API
連携Power Automate(フォルダの監視と発注の管理の仕組みとのやり取り)Make、n8n
差異計算Azure Functions(発注との照合と未着の検出)Python
保管SharePoint の文書ライブラリ(掲載紙の画像と照合の記録)社内のファイルサーバー

発注の管理の仕組みと入稿原稿のPDFは、新しく足すものではありません。 足すのは読み取りと照合の処理です。最初の準備は、原稿ごとに「その版にしか無い文字列」を発注の管理の仕組みに持たせることです。 価格、キャンペーンの期間、問い合わせの電話番号などで、版を見分ける手がかりにします。

読み取りには、Azure AI Document Intelligence のレイアウトモデルを使います。 文字に加えて、表・選択マーク・文書の構造を取り出すモデルで、段落ごとに見出しやページの上端の文字(pageHeader)、ページ番号(pageNumber)といった役割を付けます。新聞の紙面の上の日付や面の番号、雑誌のページ番号は、この役割から拾えます。 日本語の印刷の文字に対応しています。

図(figures)の位置も使います。 レイアウトモデルは図や画像を figures として検出し、ページの番号と輪郭の座標を返します。写真や図版を含む広告は、図として検出されることが多く、 その座標から広告の大きさを見積もれます。検出されなかった広告は、広告主の名前の位置から領域を探します。

新聞の紙面は大きいので、高解像度の読み取りの追加機能(features=ocrHighResolution)を付けます。 大きな文書の小さな文字を読むための機能で、A1・A2・A3 の文書で読み取りの質が上がるとされています。追加料金のかかる機能です。

03どうやって実装するのか

Step1

処理の起点を決める

受領フォルダに、掲載紙のファイルが保存されたことを起点にします。 届いた掲載紙は、その日のうちにスキャンしてフォルダに入れる決まりにします。束で届いた掲載紙をまとめてスキャンする必要はありません。 1部ずつ入れれば、1部ずつ照合されます。

新聞は、全部の面をスキャンします。 発注の面だけをスキャンすると、違う面に載っていたときに not_found になり、本当に載っていないのか、違う面にあったのかが分かりません。全面を読むから、「違う面に載っていた」と言えます。 スキャナーに入らない大きさの紙面は、折った半分ずつを読み込み、ファイル名に面と上下を付けます。

媒体社からPDFで届く掲載面は、メールの添付を受領フォルダへ移すところまでを連携の処理で行います。 差出人のアドレスを媒体の一覧と照らし、知らない差出人からの添付は移さずに担当へ知らせます。紙とPDFが同じ掲載について両方届いた場合は、先に届いたほうで照合し、後から届いたほうは控えとして残します。

未着の確認は、毎朝の決まった時刻に動かします。 掲載日から媒体ごとに決めた日数(新聞は数日、月刊誌は発売から2週間など)を過ぎても照合の結果が無い掲載を一覧にします。

Step2

入力データを集める

データ中身取得元
掲載紙紙面の画像またはPDF。全面受領フォルダ
発注の内容媒体名、掲載日、面(第何面・何面・表4など)、サイズ、色、原稿番号、広告主名発注の管理の仕組み
版の手がかり原稿番号ごとの、その版にしか無い文字列(価格・期間・電話番号)発注の管理の仕組み(入稿のときに登録)
媒体の情報紙面の大きさ、1段の高さ、段の数、面の呼び方、掲載紙が届くまでの日数本部が作る媒体の一覧

質を決めるのは、3行目です。 版の手がかりが無ければ、広告の中の文字を読んでも、どの版が載ったかを決められません。 入稿の担当が原稿を入稿するときに、前の版との違いになる文字列を2〜3個登録する決まりにします。

2行目の面は、発注のときの書き方をそろえます。 「15面」「第15面」「社会面」「テレビ欄の下」のように、同じ面でも担当者によって書き方が違うと、紙面の面の番号と照らせません。媒体の一覧に面の呼び方の対応を持たせ、発注の管理の仕組みの面の欄は一覧から選ぶ形にします。

4行目の1段の高さは、媒体ごとに持たせます。 新聞の段の数と高さは媒体によって違うことがあり、同じ「5段」でも紙面の上での高さが違います。 サイズの照合は、この値で割って段の数を見積もります。

Step3

データの取得方法を決める

読み取りは、連携の処理からレイアウトモデル(prebuilt-layout)を呼びます。features=ocrHighResolution と outputContentFormat=markdown を付けます。

取るものどこから何に使うか
ページの大きさpages(幅・高さ・単位・向きの角度)広告の大きさの割合の計算
段落と役割paragraphs(pageHeader・pageNumber など)紙面の日付・面の番号・媒体名
図の位置figures(boundingRegions)広告の領域とその大きさ
文字と信頼度pages の words(confidence と座標)広告の中の文字と、その読み取りの確かさ

発注の管理の仕組みからは、媒体名と掲載日の前後数日で、照合の候補の掲載を引きます。 掲載紙の発行日を読み違えていても、候補の範囲に入るようにするためです。

Step4

AIへ渡す前に整形する

  1. 形式の確認 … PDF、画像(JPEG/JPG、PNG、BMP、TIFF、HEIF)であることを確かめます
  2. ページ数とサイズの確認 … PDF と TIFF は2,000ページまで、ファイルは有料(S0)で500MBまでです。雑誌をまるごとスキャンしても収まります
  3. 画像の寸法の確認 … 50×50ピクセルから10,000×10,000ピクセルの間に収めます。新聞の全面を高い解像度でスキャンすると、この上限に近づきます。 上限を超える場合は、解像度を下げるか、半分ずつに分けます
  4. 文字の大きさの確認 … 1024×768の画像で12ピクセルが読み取れる最小の高さで、150dpiで約8ポイントの文字にあたります。広告の中の注記の小さな文字は、この下限を下回ることがあります
  5. 向きの確認 … 雑誌の見開きの広告は横向きにスキャンされることがあるので、向きの角度で確かめます
  6. 面とファイルの対応 … 新聞を半分ずつ読んだファイルは、ファイル名の面と上下で1面に束ねます

3番目と4番目は、両方を同時に満たす必要があります。 新聞の全面を寸法の上限に収めると、広告の注記の小さな文字が読み取りの下限を下回ります。版の手がかりには、注記ではなく価格や電話番号のような大きな文字を選んで登録するのは、このためです。

Step5

AIに処理させる

させるのは、紙面1面ごとに、紙面の情報と広告らしい領域を取り出し、根拠にした文字列と座標を書き出すことだけです。

取り出すもの取り出し方判断できないときの扱い
媒体名・発行日pageHeader などの文字をそのまま読めなければ null と理由
面の番号・面の名前「15面」「社会」「表4」などをそのまま読めなければ null
広告の領域図の座標か、広告主の名前を含む文字のまとまりの座標広告と記事の区別がつかなければ ambiguous
広告の中の文字領域の中の文字を、座標の順に信頼度が低い文字は low_confidence
原稿番号広告の中に印刷されていればそのまま印刷されていなければ null

広告主の名前は、発注の候補から渡します。 紙面には多くの広告があり、どれが自社の発注した広告かを紙面だけから決めることはできません。候補の広告主名と版の手がかりを渡し、それを含む領域を探させます。

させないこと理由
発注と合っているかの結論照合は処理の側で、項目ごとに規則で行う
サイズの段の数を答える座標と媒体の1段の高さから処理が計算する
読めない数字を前後から補う版の照合が成り立たなくなる
見つからない広告を「掲載なし」とする見つからないことと、載っていないことは別
媒体社への問い合わせ文の作成誤りを確かめてから人が書く

広告と記事の区別は、紙面によっては難しくなります。 記事のように組まれた広告や、記事の下に並ぶ小さな広告は、図として検出されず、周りの記事の文字とつながって返ることがあります。この場合に広告の範囲を無理に決めさせると、記事の文字を広告の中の文字として照合してしまうので、 ambiguous として人に回します。

4行目が、この構成でいちばん大事な区別です。 紙面のどこにも見つからなかったとき、AIは「掲載されていない」と書きがちです。本当は、スキャンしていない面にあるのかもしれません。 AIには「見つからなかった」までを書かせ、載っていないと判断するのは人です。

Step6

指示内容を固定する

あなたは広告会社で、新聞・雑誌の掲載紙を確かめる担当です。
OCRが返した紙面1面分の読み取り結果だけを見て、項目を取り出してください。

【探す広告の候補】
{candidates}  … 広告主名、原稿番号、版の手がかりの文字列

【取り出すもの】
1. 媒体名、発行日、面の番号または面の名前(紙面の上端・下端の文字から)
2. 候補の広告主名を含む広告の領域の座標と、その中の文字
3. 広告の中に印刷された原稿番号(あれば)
4. 版の手がかりの文字列のうち、広告の中に見つかったもの

【厳守事項】
- 書かれていない値は null にしてください。推測で埋めないでください。
- 候補の広告が紙面に見つからない場合は found を false にしてください。
  「掲載されていない」とは書かないでください。
- 広告か記事か区別がつかない領域は ambiguous にしてください。
- 価格・日付・電話番号は、書かれた文字をそのまま写してください。
  読めない桁を補ったり、候補の文字列に合わせて直したりしないでください。
- 信頼度が 0.8 未満の文字を含む値は low_confidence に項目名を入れてください。
- 広告の大きさ(段の数やページの割合)は答えないでください。座標だけを返してください。
- 発注どおりに載っているかの結論は書かないでください。
- evidence には、値を取った元の文字列をそのまま写してください。

【読み取り結果】{layout_markdown}
【図と文字の座標】{figures_and_words}

「候補の文字列に合わせて直さない」を明記しないと、版の照合が意味を失います。 版の手がかりとして「3,980円」を渡すと、紙面の「3,480円」の「4」がかすれているとき、AIは候補に合わせて「3,980円」と読みたがります。 古い版が載っているのを、正しい版として通してしまう失敗です。手がかりを渡すのは探す場所を絞るためで、答えを渡すためではありません。

Step7

出力形式を固定する

構造化出力で、次の形のJSONを受け取ります。 スキーマのすべての項目を必須にし、additionalProperties: false を付けます。値の無い項目は null を許す型にします。

{
  "page": {
    "media_name": "", "issue_date": "", "page_label": "",
    "evidence": "", "low_confidence": []
  },
  "ads": [
    {
      "advertiser": "", "found": true, "ambiguous": false,
      "polygon": [], "text": "", "ad_code": null,
      "version_keys_found": [], "low_confidence": [], "evidence": ""
    }
  ]
}

処理はこれを発注と照らし、項目ごとの結果を出します。

項目発注掲載紙結果
掲載日2026-10-052026年10月5日match
面第15面第17面mismatch
サイズ5段約5段(高さの割合から)match
原稿の版原稿番号 R-0412(手がかり「10月12日まで」)「10月5日まで」mismatch

1つ目の理由は、項目ごとに結果を分けられることです。 面の違いは媒体社の都合で起きることがあり、広告主によっては問題にならないこともあります。版の違いは、ほぼ必ず問題になります。 項目ごとに分かれていれば、重さの違いを人がすぐに見分けられます。

2つ目は、座標をサイズの計算に使えることです。 polygon の高さをページの高さと媒体の1段の高さで割れば、段の数の見積もりになります。AIに段の数を答えさせると、見た目の印象で答えが揺れます。 計算は処理に置き、誤差の幅を超えたら mismatch ではなく unreadable として人に回します。

Step8

システムへ連携する

つなぎ先方式内容
受領フォルダPower Automate のトリガーファイルの保存を検知する
発注の管理の仕組みコネクタまたは API(読み取り)照合の候補の掲載と版の手がかりを引く
Azure AI Document IntelligenceAPI呼び出し紙面の文字・役割・図・信頼度を返す
Azure OpenAIAPI呼び出し(構造化出力)紙面の情報と広告の領域を返す
Azure FunctionsHTTPで呼ぶ照合、サイズの計算、未着の検出
発注の管理の仕組み書き込み照合の結果と、掲載紙を受け取った日
広告主への報告下書きの作成送るのは営業

発注の管理の仕組みへ書き込むのは、照合の結果と受け取った日だけです。 発注の内容そのものは書き換えません。掲載紙が発注と違っていたとき、直すべきは掲載の側か発注の記録の側かは、人が確かめてから決めます。

Step9

人が確認する

営業アシスタントが開くのは、match 以外の項目があるものだけです。 すべての項目が match なら、一覧で媒体と広告主を流し見て、報告の下書きに進みます。

  1. 版の mismatch を先に見る … 広告の中の文字と、発注した版の原稿のPDFを見比べます。一番重い誤りなので、最初に確かめます
  2. not_found を見る … スキャンした面が全部そろっているかを先に確かめ、そろっていれば紙面をめくって探します
  3. 面・サイズの mismatch を見る … 面の違いが媒体社から事前に連絡されていたかを、やり取りの記録で確かめます
  4. unreadable を見る … 紙面の画像で該当の箇所を見ます
  5. 誤りが確かなものを営業に渡す … 媒体社への問い合わせと、広告主への説明は営業が決めます

2番目で、スキャンの不足を先に疑ってください。 not_found の多くは、面のスキャン漏れか、半分ずつ読んだ紙面の片方が抜けていることで起きます。媒体社に問い合わせる前に、自社の側を確かめます。

3番目の面の違いは、媒体社からの連絡で事前に分かっていることがあります。 紙面の都合で面が移る場合、媒体社から担当の営業に連絡が入っていることが多いので、やり取りの記録に連絡があれば、mismatch を「連絡済み」として閉じます。 連絡が無い面の違いだけを、営業に渡します。

目標は、400件をならして1件3分です。 match 以外の項目が出るのは2割前後という想定で、それより多い月は、版の手がかりの登録か、スキャンのしかたを見直します。

Step10

例外に対処する

起きること対応
発行日が読めない受け取った日と媒体名から候補を絞り、unreadable で人へ
版(地域版・早版など)が違う紙面が届いた面の番号が版で変わることがある。面の違いを版の違いと区別して人へ
広告が見開きで2面にまたがる2面の座標をつなげて1つの広告として扱う
原稿番号が広告に印刷されていない版の手がかりの文字列だけで照合する
版の手がかりが登録されていない版の照合を飛ばし、unreadable として人へ
画像の寸法が上限を超える解像度を下げるか、半分ずつに分けて読み直す
掲載日を過ぎても掲載紙が届かない毎朝の一覧に出し、営業アシスタントが媒体社に問い合わせる
PDFの掲載面だけが届き、全面が無い面の照合はPDFの面の表示で行い、他の面にあった可能性は確かめられないと記録する
OCRが応答しないフォルダに残し、30分後にやり直す。3回続けば担当へ知らせる

2行目は、新聞で必ず起きます。 同じ日付の新聞でも、地域や刷りの時刻によって版が分かれ、面の番号がずれることがあります。 発注した版と届いた版が違うだけなら、掲載の誤りではありません。

Step11

記録を残す

  • 掲載紙の画像と、受け取った日・媒体名・号
  • OCRが返したJSONの全文と、AIが返した紙面ごとのJSON
  • 照合の結果(項目ごと)と、そのとき参照した発注の内容と版の手がかり
  • 人が結果を覆した記録と、その理由
  • 媒体社への問い合わせの日と回答
  • 広告主へ報告した日と、添えた紙面の画像

3つ目で、参照した版の手がかりを残すのは、原稿は掲載の直前まで差し替わるからです。 入稿の後に差し替えがあったのに手がかりが古いままだと、正しい版の掲載を mismatch と判定します。 どの手がかりで照らしたかが残っていれば、誤った判定の理由がすぐに分かります。

5つ目の媒体社への問い合わせの記録は、媒体ごとに集計します。 同じ媒体で面の違いや掲載紙の遅れが続くなら、1件ずつ問い合わせるより、媒体社の担当と運用を相談したほうが早く片づきます。 問い合わせの件数は、その相談の材料になります。

04実装レベルの3段階

最小構成:掲載面の画像をAIの画面に貼り、日付・面・広告の中の文字を読ませる / 1面ごとの読み取り
半自動化:上記+レイアウトモデルのAPIと構造化出力で読み取り結果を一覧に書き出す / 読み取りの一覧化
本格構成:上記+受領フォルダを起点に全面を読み、発注と照らし、サイズを計算し、未着を毎朝出す / 照合と未着の検出の全体

最小構成では件数がさばけません。 1面ずつ貼り付けるので、確かめるための段階です。 半自動化で、①の探す時間がほぼ無くなります。 ただし、発注との照らし合わせは人が行うので、②と③が残ります。本格構成で照合と未着の検出が処理に移り、本記事の想定の3分になります。 差が大きいのは③で、版の見比べは原稿のPDFを開いて数字を1つずつ見る作業だったものが、手がかりの文字列の有無を見るだけになるからです。 段階を飛ばさないでください。 半自動化の1か月で、どの媒体で日付や面の番号を読み違えるかと、版の手がかりの登録がどれだけ抜けているかが分かります。そこを直してから照合に進むほうが、unreadable が減ります。

05工数削減シミュレーション

前提値(モデル条件)
対象人数
6 名
月間件数
400 件
1件あたり現在時間
12 分
1件あたり導入後時間
3 分
現在  400件 × 12分 ÷ 60 = 80 時間/月
導入後 400件 × 3分 ÷ 60 = 20 時間/月
月間削減時間
60h
削減率
75%
年間削減時間
720h
年間金額換算(時間単価3,000円)
216万円
モデル条件による試算であり、実際の効果は業務内容・運用方法によって異なります。

自社条件で導入効果を整理したい方へ

このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。

AI活用について相談する

06向いている企業・向いていない企業

向いている
  1. 新聞・雑誌の広告を毎月数百件扱い、掲載の後に媒体社から届く掲載紙を営業や営業アシスタントが1部ずつめくって確かめている広告会社。地方紙・業界紙・フリーペーパーなど媒体の数が多く、掲載紙の届き方がまちまちな場合。広告主へ掲載紙を添えて掲載を報告しており、報告の前に掲載の誤りを見つけたい場合。発注の内容(媒体・掲載日・面・サイズ・原稿番号)をデータで持っている場合。
向いていない
  1. 印刷の媒体の出稿が月に数件の会社。媒体社から掲載の証明をデータで受け取れており、掲載紙をめくる作業が無い場合。発注の内容が紙の申込書にしか無い場合。なお、掲載の誤りについて媒体社とどう交渉するか、広告主にどう説明するかの判断はこの構成では行いません。

07最小構成で試す方法

  1. 先月の掲載から20件を選ぶ(うち数件は、毎週の出稿で版が細かく変わる広告にする)
  2. その20件の掲載面を撮影かスキャンし、手元のAIサービスの画面に1面ずつ貼り付ける
  3. 「この紙面の発行日と面の番号を読み、○○(広告主名)の広告を探して、中の価格と日付を書かれたとおりに写してください。見つからなければ『見つからない』と書き、読めない数字は補わないでください」と指示する
  4. 出てきた結果を、発注の内容と入稿した原稿と照らす

版の違う広告を必ず混ぜてください。 毎週の出稿で価格や日付だけが違う広告は、この構成がいちばん効く場面であり、いちばん失敗しやすい場面でもあります。読み取りが候補に引きずられるかどうかは、版の違う広告でしか確かめられません。

面を絞って試してください。 最小構成では、新聞の全面ではなく、発注の面1面だけで構いません。確かめたいのは、日付と面の番号と、広告の中の数字が読めるかです。

出てきた内容判断
日付・面・広告の数字が読めたフォルダの監視と照合の処理に進む
広告の数字を候補に合わせて読んだ指示の書き方で直る。構成は有効
注記の小さな文字が読めない版の手がかりを大きな文字から選ぶ。 AIの問題ではない

08実装時につまずきやすいポイント

問題対策
見つからない広告を「掲載なし」と判定するfound: false までにし、スキャンの不足を先に疑う
広告の数字を版の手がかりに合わせて読む手がかりに合わせて直すことを禁じる
注記の小さな文字で版を見分けようとする価格や電話番号のような大きな文字を手がかりにする
新聞の全面が寸法の上限を超える解像度を下げるか、半分ずつに分ける
版(地域版など)の違いを掲載の誤りとする面の番号のずれは版の違いを先に確かめる
段の数をAIに答えさせて揺れる座標から処理が計算し、誤差の幅を超えたら人へ
発注の面だけをスキャンする全面を読む決まりにする
版の手がかりが古い差し替えのたびに入稿の担当が登録し直す
未着の一覧が誰にも見られない毎朝、媒体の担当ごとに送る
照合の結果をそのまま広告主へ送る報告は下書きまで。送るのは営業

上の2行が、この構成の失敗のほとんどです。 どちらも「AIが、無いものを有るように、違うものを同じように読む」失敗です。見つからないことと、載っていないことを分ける。読めない数字を補わない。 この2つを設計で守れば、残りは運用で直せます。

09セキュリティ・AIガバナンス上の注意点

この構成で扱うデータ: 広告主の名前、出稿の媒体・日付・サイズ、入稿した原稿の内容です。掲載前の原稿の情報(価格やキャンペーンの期間)は、広告主にとって公開前の情報です。

  1. 版の手がかりは掲載前の情報として扱う … 次の週の価格やキャンペーンは、掲載の前に外へ出てはいけない情報です。照合の処理の外で、手がかりの一覧を共有しないでください
  2. Azure の中で処理を閉じる … OCR・生成AI・照合の処理を同じ Azure の契約の中に置き、生成AIのデプロイは処理する地域を選べる種類にします
  3. 媒体社への問い合わせを自動で送らない … 誤りを確かめてから営業が送ります。誤った問い合わせは、媒体社との関係に直接ひびきます
  4. 広告主への報告を自動で送らない … 報告は下書きまでにします。掲載の誤りがあったときの説明は、営業が広告主との関係を見て決めます
  5. 掲載紙の紙面の他の部分を使わない … 紙面には他社の広告や記事も載っています。照合に使うのは自社の広告の領域と、紙面の日付・面の番号だけです
  6. 掲載紙の画像の保存期間を決める … 広告主への報告と、媒体社への請求の確認に要る期間とし、それを過ぎたら消します
  7. 求人や不動産の広告の個人の情報に注意する … 広告の中に担当者の氏名や携帯電話の番号が載っていることがあります。照合に使うのは版の手がかりの文字列だけにし、広告の中の文字の全文を長く残さないようにします

誤りが起きた場合のリスクは、誤った掲載を見逃して広告主へ報告することと、正しい掲載について媒体社に問い合わせることの2つです。 前者は読めない数字を補うと起き、後者は見つからないことを掲載なしとすると起きます。どちらも設計で防げるので、そこだけは崩さないでください。

10まず何から始めるか

1週目:版の手がかりの登録を始める

入稿の担当が原稿を入稿するときに、前の版との違いになる文字列を2〜3個、発注の管理の仕組みに登録する決まりを作ります。今月以降の入稿から始めます。

2週目:20件で試す

先月の掲載から20件を選び、掲載面を手元のAIサービスに貼って、日付・面・広告の中の数字を読ませます。候補に合わせて数字を読み替えていないかを、最優先で見ます。

3週目:媒体の一覧と、新聞の読み込み方を決める

出稿の多い媒体から、紙面の大きさ・1段の高さ・面の呼び方・掲載紙が届くまでの日数の一覧を作ります。新聞の全面をどのスキャナーで、どの解像度で読むかを決めます。

4週目:受領フォルダから読み取りまでをつなぐ

Power Automate で受領フォルダを見張り、レイアウトモデルを呼び、紙面ごとの日付・面・広告の領域を一覧に書き出すところまで作ります。この時点では照合をせず、読み取りの精度だけを見ます。

2か月目: 発注との照合とサイズの計算を Azure Functions に書き、項目ごとの結果を出します。未着の一覧を毎朝送り始めます。3か月目以降: 1件12分が何分になったかを実測し、unreadable の多い媒体を把握します。広告主へ報告する前に、版の違いをすべて自社で見つけられるようになった時点で、この構成は完成です。


11関連ユースケース

12この仕組みを理解するための記事

13技術仕様の確認日・参考情報

技術仕様確認日:2026-10-07/最終更新:2026-10-07
確認した内容情報源確認日
レイアウトモデルが文字・表・選択マーク・構造を取り出すこと。段落に title・sectionHeading・pageHeader・pageFooter・pageNumber などの役割が付くこと。figures がページの番号と輪郭の座標を返すこと。ページの幅・高さ・単位・向きの角度を返すこと。入力形式、PDF・TIFFが2,000ページまで、S0で500MB、画像が50×50〜10,000×10,000ピクセル、文字の最小高さが1024×768で12ピクセルであること。文字ごとの信頼度が返ることMicrosoft Learn: Document layout analysis2026-10-07
高解像度の読み取り(ocrHighResolution)が大きな文書の小さな文字を読むための追加機能で、A1・A2・A3 の文書で読み取りの質が上がること。追加料金のかかる機能であることMicrosoft Learn: Add-on capabilities2026-10-07
レイアウトモデルが日本語の印刷の文字に対応していることMicrosoft Learn: Language support for Read and Layout2026-10-07
構造化出力でスキーマのすべての項目を必須にし、additionalProperties: false を付けることMicrosoft Learn: Azure OpenAI で構造化出力を使用する方法2026-10-07

掲載の誤りをどう扱うかは、媒体社との取り決めと広告主との契約によります。 本記事は公開仕様で確認できた範囲だけを扱っています。

実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。

自社の業務に使えるAI活用候補を整理します

このユースケース(UC-0801)についてのご相談はこちらから。

AI活用について相談する
目次