Media > AI活用ユースケース > 品質管理 > 海外の委託先工場の英文の監査報告書を読み取り、指摘事項・重要度・是正期限を是正管理台帳に転記して、前回からの再発と期限切れ間近を拾う

海外の委託先工場の英文の監査報告書を読み取り、指摘事項・重要度・是正期限を是正管理台帳に転記して、前回からの再発と期限切れ間近を拾う

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

海外の委託先工場の監査会社から届く英文の監査報告書を読み取り、指摘事項・重要度・是正期限を是正管理台帳に転記します。前回の監査と照らして再発の候補を示し、期限の近い指摘を拾います。

サマリー
生成AI
ChatGPT/Claude/Gemini
AIサービス
AWS Textract/Azure AI/Google Document AI
連携・自動化
Python
対象業界
EC/商社/小売/製造
対象部門
品質管理/購買
対象業務
データ入力・転記/台帳・マスタ管理
主な課題
入力作業が多い/判断に時間がかかる/期限・対応漏れが起きる
AIで行う処理
抽出
主な効果
判断支援/工数削減/機会損失防止
導入難易度
★★★★☆
実装レベル
本格構成
費用感
API連携(中)
人間の確認
条件付き
現在工数
40h/月
AI導入後
12h/月
想定削減
70%
年間削減
336h
モデル条件による試算値です。実在企業の実績ではありません。

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

導入前(Before)
  1. 共有フォルダに届いた監査報告書のPDFを、担当者が開く
  2. 指摘事項の一覧の表を探し、条項ごとの所見の本文と見比べながら指摘を読む
  3. 指摘ごとに、内容、重要度、是正期限を是正管理台帳に写す
  4. 同じ工場の前回の行を探し、同じ指摘が無いかを見比べる
  5. 是正期限を台帳に入れ、期限の近いものを月末にまとめて工場に催促する
  6. 重い指摘と再発を、課長と取引先の窓口に報告する
導入後(After)
  1. 自動共有フォルダに監査報告書のPDFが保存されると、受付フォルダ(Amazon S3)に複製される
  2. 自動保存をきっかけに処理が動き、形式・ページ数・パスワードの有無を確かめる
  3. 自動OCRが、レイアウト(見出し・本文・表の位置と読み順)、表とセル、質問への答えを、信頼度付きで返す
  4. 自動生成AIが、指摘事項の一覧と所見から、指摘ごとの内容・重要度の表記・是正期限・根拠の頁を原文のまま取り出し、自社の分類に当てる
  5. 自動プログラムが、重要度を対応表で自社の段階に当て、是正期限を日付に直し、前回の指摘と照らして再発の候補を付ける
  6. 人担当者が、取り出された指摘の一覧を報告書と見比べて確定させ、再発の候補を判断する
  7. 自動確定した指摘を是正管理台帳に書き、毎週、期限の近い指摘と過ぎた指摘を一覧にする
  8. 人担当者が、工場への催促と、課長・取引先への報告を行う
各工程の詳しい説明を読む
  1. 共有フォルダに届いた監査報告書のPDFを、担当者が開く
  2. 指摘事項の一覧の表を探し、条項ごとの所見の本文と見比べながら指摘を読む
  3. 指摘ごとに、内容、重要度、是正期限を是正管理台帳に写す
  4. 同じ工場の前回の行を探し、同じ指摘が無いかを見比べる
  5. 是正期限を台帳に入れ、期限の近いものを月末にまとめて工場に催促する
  6. 重い指摘と再発を、課長と取引先の窓口に報告する

(a)指摘を探して写すのに時間がかかる。 1通に指摘が10件前後あり、一覧の表と本文の所見の両方を読まないと、指摘の中身が分かりません。 1通を写し終えるのに1時間を超えます。

(b)再発に気づかない。 前回の報告書は別の監査員が書いていて、同じ問題でも言い回しが違います。 担当者が前回の行を覚えていなければ、再発は新しい指摘として台帳に入ります。

(c)期限を追いかけられない。 是正期限が「30日以内」のように日数で書かれ、日付に直して台帳に入れる作業が後回しになります。月末にまとめて見るので、期限を過ぎてから催促することになります。

(d)取引先からの問い合わせに答えられない。 製品を納める取引先から「この工場の前回の指摘は是正されたか」と聞かれても、台帳の行と報告書の頁を探し直すところから始まります。 答えるまでに数日かかることがあります。

  1. 【自動】 共有フォルダに監査報告書のPDFが保存されると、受付フォルダ(Amazon S3)に複製される
  2. 【自動】 保存をきっかけに処理が動き、形式・ページ数・パスワードの有無を確かめる
  3. 【自動】 OCRが、レイアウト(見出し・本文・表の位置と読み順)、表とセル、質問への答えを、信頼度付きで返す
  4. 【自動】 生成AIが、指摘事項の一覧と所見から、指摘ごとの内容・重要度の表記・是正期限・根拠の頁を原文のまま取り出し、自社の分類に当てる
  5. 【自動】 プログラムが、重要度を対応表で自社の段階に当て、是正期限を日付に直し、前回の指摘と照らして再発の候補を付ける
  6. 【人】 担当者が、取り出された指摘の一覧を報告書と見比べて確定させ、再発の候補を判断する
  7. 【自動】 確定した指摘を是正管理台帳に書き、毎週、期限の近い指摘と過ぎた指摘を一覧にする
  8. 【人】 担当者が、工場への催促と、課長・取引先への報告を行う

6番目で全件を人が確かめるのは、監査の指摘が取引の判断に直結するからです。 取り出しの漏れが1件あれば、その指摘は是正の追跡から外れます。human_check を「必須」としているのはこのためです。

5番目をAIにさせないのも意図してのことです。 重要度の読み替え、日数から日付への換算、再発の候補の抽出は、対応表と規則で決まる処理として Python に置きます。

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

構成図
英文の工場監査報告書(PDF。30〜80ページ)
   ▼【トリガー】受付フォルダ(Amazon S3)への保存
AWS Lambda ── 形式・ページ数・パスワードの確認
   ▼
AWS Textract(StartDocumentAnalysis:LAYOUT/TABLES/QUERIES)
   │   見出し・本文・表の位置と読み順、表とセル、質問への答え、信頼度
   ▼
Python ── 指摘事項の章と表のページを切り出す(写真・従業員の名簿は除く)
   ▼
Claude API ── 指摘ごとに原文のまま取り出し、自社の分類に当てる
   │   ① 条項と指摘の内容  ② 重要度の表記  ③ 是正期限の表記
   │   ④ 根拠の頁          ⑤ 自社の分類コード
   ▼
Python ── 重要度の対応表、期限の日付への換算、前回の指摘との照合
   ▼
【担当者が指摘の一覧を確定、再発の候補を判断】
   ▼
是正管理台帳(due_soon / overdue / possible_recurrence / needs_human)
役割想定する製品代替候補
OCRAWS Textract(StartDocumentAnalysis/GetDocumentAnalysis)Azure AI Document Intelligence、Google Document AI
生成AIClaude API(指摘事項の取り出しと分類)OpenAI API、Gemini API
差異計算Python(重要度の読み替え、期限の換算、前回の指摘との照合)サプライヤー管理システムの是正追跡の機能
連携AWS Lambda(保存と完了の通知を起点に処理を動かす)Amazon EventBridge
保管Amazon S3(報告書、読み取り結果、確定した指摘)社内のファイルサーバー

是正管理台帳と工場の一覧は、新しく足すものではありません。 最初の準備は2つの表です。スキームと監査会社ごとの重要度の表記を自社の段階に読み替える対応表と、指摘を分ける自社の分類の一覧(労働時間、賃金、防火・避難、化学品の管理、品質記録など)です。

OCRに AWS Textract を選ぶのは、報告書が英文だからです。 公式の上限の表で、対応言語は英語、フランス語、ドイツ語、イタリア語、ポルトガル語、スペイン語とされています。社会監査の SMETA では、報告書と是正計画の報告書(CAPR)を英語以外で作るときは二か国語とし、英語を含めなければならないとされています。 現地語との併記の報告書でも、英語の部分を読めば足ります。

この題材で効くのは、レイアウトの分析(LAYOUT)です。 見出し、節の見出し、本文、表、図の位置が、左から右、上から下の読み順で返ります。 節の見出しで「指摘事項」の章を見つけ、その範囲だけを生成AIに渡せます。80ページを丸ごと渡さずに済み、従業員の名簿や写真のページを外せます。

重要度を判定しない理由も、スキームの性格にあります。 Sedex は SMETA を合否を出す認証ではなく、継続的な改善のための方法としています。報告書に合否が書かれていないのに、台帳に合否らしい評価を入れると、報告書の意味を変えてしまいます。

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

Step1

処理の起点を決める

起点は、受付フォルダ(Amazon S3)に報告書のPDFが保存されたことです。 監査会社からメールで届くものは共有受信箱のルールで、スキームのプラットフォームから担当者がダウンロードしたものは共有フォルダの同期で、それぞれS3へ入れます。保存の通知で AWS Lambda が動きます。

是正の報告や再監査の報告書も、同じ経路で入れます。 ファイル名と表紙の見出しで「初回の監査」「フォローアップ」を見分け、フォローアップなら新しい指摘ではなく、前回の指摘の是正の状況として台帳に書きます。

報告書と是正計画が別のファイルで届くこともあります。 是正計画のファイルは工場が書き込んだ是正の内容と予定日を含むので、同じ工場・同じ監査日の報告書に結びつけ、指摘の番号で是正の予定日を台帳に足します。 結びつく報告書がまだ無ければ、報告書が届くまで「待ち」にします。

毎週月曜の朝8時にも動かします。 台帳の全指摘について、是正期限まで14日を切ったものと過ぎたものを一覧にして担当者に送ります。月末にまとめて見ていた期限の確認を、週に1回に変えるのがこの起点の役目です。

Step2

入力データを集める

データ中身取得元
監査報告書PDF。工場名、監査日、スキーム、監査の範囲、指摘事項の一覧の表、条項ごとの所見、是正の計画の欄受付フォルダ(Amazon S3)
読み取り結果レイアウトの要素と読み順、表とセル(列の見出し・表の題・結合セル)、質問への答え、それぞれの信頼度AWS Textract
前回の指摘同じ工場の過去の指摘(分類、条項、内容、是正の状況)是正管理台帳
重要度の対応表スキームと監査会社ごとの表記と、自社の段階の対応品質・サプライヤー管理課が作る表
自社の分類の一覧分類コード、名前、含める指摘の例品質・サプライヤー管理課が作る表
工場の一覧工場コード、正式名称、報告書に書かれうる別名、所在地、担当者委託先工場の一覧

質を決めるのは、2つの表です。 対応表に無い表記の重要度は読み替えずに人に回し、分類の一覧が粗すぎると再発の候補が多すぎ、細かすぎると漏れます。 30前後の分類から始めます。

工場の一覧に別名を持たせるのは、報告書の工場名が登記の名称で書かれるからです。 自社が呼んでいる通称や、工場のある工業団地の名前とは違うことが多く、名称だけで引くと、前回の指摘が見つからず、再発の候補が1件も出ません。 工場コードは JobTag で受け渡し、表紙から読んだ名称は照合の確認にだけ使います。

Step3

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

読み取りは StartDocumentAnalysis にS3の場所と FeatureTypes を渡して始めます。完了は NotificationChannel に指定した Amazon SNS のトピックに通知され、状態が SUCCEEDED なら GetDocumentAnalysis で結果を取ります。

指定するもの値理由
FeatureTypesLAYOUT、TABLES、QUERIES章の位置と読み順、指摘事項の表、表紙の項目
QueriesConfig表紙の項目の質問(1ページ目だけを Pages で指定)工場名、監査日、スキーム、監査会社
ClientRequestTokenファイルのハッシュ同じ報告書で二重に読み取りを始めない
JobTag工場コード完了の通知から工場を引く
Alias質問の文
SITE_NAMEWhat is the name of the audited site or factory?
AUDIT_DATEWhat is the audit date?
AUDIT_TYPEIs this a full audit or a follow-up audit?
AUDIT_FIRMWhat is the name of the audit company?

表は TABLES で、行と列の位置と、列の見出し(COLUMN_HEADER)、表の題(TABLE_TITLE)、表の中の節の題(TABLE_SECTION_TITLE)が返ります。 複数の行や列にまたがるセルは MERGED_CELL として返るので、指摘の番号が結合セルになっている表でも、行の対応を崩さずに読めます。

使うブロック何に使うか
LAYOUT_SECTION_HEADER指摘事項の章と、除外する章の範囲を決める
LAYOUT_TABLE と TABLE・CELL指摘事項の一覧の表を行と列で読む
LAYOUT_TEXT条項ごとの所見の本文を、読み順のまま取る
LAYOUT_FIGURE写真だけのページを見分けて外す
QUERY_RESULT表紙の工場名・監査日・監査の種類

ページをまたぐ表は、Python がつなぎます。 次のページの表の列の見出しが前のページと同じなら、同じ表の続きとして行を足します。結果は1回最大1,000ブロックで区切られ、NextToken が返る限り呼び直します。80ページの報告書では呼び直しが何十回にもなります。

Step4

AIへ渡す前に整形する

  1. 形式の確認 … JPEG、PNG、PDF、TIFF であることを確かめます
  2. パスワードの確認 … PDFはパスワードで保護されていてはいけないとされています。保護されたものは監査会社に解除したものを頼みます
  3. サイズとページ数の確認 … 非同期の処理で、PDFとTIFFは500MB・3,000ページまでです。写真の多い報告書はサイズに注意します
  4. 章の切り出し … LAYOUT_SECTION_HEADER の見出しの語(Non-Compliance、Findings、Corrective Action)で、指摘事項の章のページの範囲を決めます
  5. 渡さないページの除外 … Worker Interview、Employee List、写真だけのページ(LAYOUT_FIGURE のみ)を外します
  6. 言語の確認 … 6言語に入らない部分は読み取り結果から外し、英語の部分だけを渡します

5番目は、精度ではなく情報の扱いのための処理です。 社会監査の報告書には従業員への聞き取りの内容が載ることがあり、台帳の作成に要らない情報を生成AIに渡さないために外します。

Step5

AIに処理させる

させるのは、指摘ごとに原文を取り出し、自社の分類の一覧から1つを選ぶことです。 重要度の読み替えと期限の換算はさせません。

見るもの取り出し方判断できないときの扱い
指摘の番号と条項原文のまま(例:条項の番号、基準の節)書かれていなければ空
指摘の内容一覧の表の記載と、本文の所見の該当箇所を分けて本文に対応が無ければ表の記載だけ
重要度の表記原文のまま書かれていなければ missing
是正期限の表記日付か日数かを原文のまま書かれていなければ missing
根拠の頁表と本文のページ番号決まらなければ空
自社の分類分類の一覧から1つ当てはまらなければ other
前回の是正の状況フォローアップの報告書なら、指摘ごとの是正の状況の表記書かれていなければ missing

指摘の内容を「表の記載」と「本文の所見」に分けるのが、いちばん大事な区別です。 一覧の表は1行に短く書かれ、何が起きていたかは本文にしかないことが多いからです。台帳には表の記載を、確認の画面には本文の所見を出します。

させないこと理由
重要度の判断や読み替え報告書の表記を対応表で Python が当てる
是正期限の日付への換算監査日と日数から Python が計算する
再発かどうかの判断候補は Python が出し、担当者が決める
指摘の要約や言い換え原文から離れると、工場への問い合わせで根拠を示せない
取引の継続についての意見購買の責任者が判断する

4行目も見落とされがちです。 指摘を短く言い換えると読みやすくなりますが、工場に是正を求めるときに「報告書のどこにそう書いてあるか」を示せなくなります。

Step6

指示内容を固定する

あなたはメーカーの購買部で、委託先工場の英文の監査報告書から
指摘事項を記録する担当です。OCRの読み取り結果だけを使ってください。
推測で埋めないでください。

【取り出す項目(指摘ごと)】
finding_no、clause_raw、table_text、narrative_text、
severity_raw、due_raw、pages(配列)、category_code、
prior_status_raw(フォローアップの報告書のときだけ)

【category_code の選び方】
{category_list} の中から1つを選んでください。
当てはまるものが無ければ other にしてください。

【厳守事項】
- table_text と narrative_text には、報告書の文をそのまま写してください。
  要約したり言い換えたりしないでください。
- severity_raw には報告書に書かれた重要度の表記をそのまま入れてください。
  書かれていなければ空にしてください。重要度を自分で判断しないでください。
- due_raw には是正期限の表記をそのまま入れてください
  (例:「30 days」「2026-11-15」)。日付に換算しないでください。
- 一覧の表に無く、本文の所見にだけ書かれた指摘も取り出し、
  table_text を空にしてください。
- 良好な取り組み(good practice)として書かれたものは、
  指摘として取り出さないでください。
- 再発かどうか、是正が十分か、取引を続けるべきかを書かないでください。
- 個人の名前が出てきても写さず、「[氏名]」に置き換えてください。

【報告書の種類】{audit_type}
【読み取り結果(指摘事項の章)】{textract_layout_tables}

「良好な取り組みを指摘として取り出さない」を明記しないと、混ざります。 報告書には指摘と並んで良い取り組みが同じ形式で書かれることがあり、台帳に是正の要らない行が入ります。

Step7

出力形式を固定する

Claude API の構造化出力(output_config.format に json_schema を指定)で、次の形のJSONを受け取ります。

{
  "file": "",
  "site_name_raw": "",
  "audit_date_raw": "",
  "audit_type": "full | follow_up",
  "findings": [
    {
      "finding_no": "NC-03",
      "clause_raw": "",
      "table_text": "",
      "narrative_text": "",
      "severity_raw": "Major",
      "due_raw": "30 days",
      "pages": [41, 12],
      "category_code": "FIRE_EXIT",
      "status": "ok"
    }
  ]
}

1つ目の理由は、読み替えと照合をプログラムの側に置けることです。 Python が対応表で重要度を当て、監査日と due_raw から期限を計算し、前回の指摘と照らします。

印付ける条件
due_soon是正期限まで14日を切り、是正の状況が完了でない
overdue是正期限を過ぎ、是正の状況が完了でない
possible_recurrence同じ工場の前回の監査に、同じ分類コードか同じ条項の指摘がある
needs_human重要度の表記が対応表に無い、期限が日付にも日数にも読めない、監査日が決まらない、または分類が other

2つ目は、再発の候補を広めに出せることです。 分類コードか条項のどちらかが一致すれば候補にし、確認の画面で前回と今回の本文の所見を並べて見せます。 再発かどうかの判断は担当者が行い、結果を台帳に残します。

3つ目は、根拠の頁を残せることです。 pages に表と本文のページ番号があれば、工場に是正を求めるときも、取引先に説明するときも、報告書のどこに書かれているかをすぐ示せます。 確認の画面では、この頁の画像を指摘の横に出します。

Step8

システムへ連携する

つなぎ先方式内容
受付フォルダ(Amazon S3)保存の通知報告書の保存を検知して AWS Lambda を動かす
AWS TextractAPI呼び出し(非同期)読み取りを始め、完了の通知で結果を取る
Claude APIAPI呼び出し指摘の取り出しと分類
是正管理台帳読み取りと書き込み前回の指摘を読み、確定した指摘を書く
確認の画面一覧と原文の表示指摘の一覧、本文の所見、再発の候補を並べる
通知メール毎週の期限の一覧を担当者に送る

工場への催促と取引先への報告は、この構成からは送りません。 送るのは担当者で、催促の文面に添える根拠として、指摘の番号と報告書の頁を一覧から引けるようにします。

Step9

人が確認する

担当者は、すべての報告書の指摘の一覧を確かめてから台帳に確定させます。

  1. 指摘の数を報告書と合わせる … 一覧の表の行数と、取り出された指摘の数が合うかを見ます。合わなければ、ページをまたぐ表のつなぎを疑います
  2. needs_human を片付ける … 対応表に無い重要度の表記は、対応表に足してから当てます
  3. possible_recurrence を判断する … 前回と今回の所見を読み、再発か別の問題かを決めて台帳に残します
  4. 重い指摘と再発を報告する … 課長と取引先の窓口に、指摘の番号と頁を添えて伝えます

1番目を省かないでください。 取り出された指摘を1件ずつ読むより先に、数が合うかを見るほうが速く、漏れを確実に拾えます。 数が合えば、中身の確認は本文の所見と見比べて流し読みで済みます。

3番目の判断は、迷ったら「再発」に寄せます。 別の問題と判断して外した指摘が実は同じ問題だった場合、次の監査でまた新しい指摘として扱われ、工場に同じ説明を繰り返すことになります。

Step10

例外に対処する

起きること対応
パスワードで保護されたPDF読めない。監査会社に解除したものを頼む
指摘事項の章の見出しが見つからない全ページの表を対象にし、needs_human で人が範囲を決める
ページをまたぐ表の列の見出しが変わる別の表として扱い、指摘の数の照合で人が確かめる
重要度の表記が対応表に無い読み替えずに needs_human。対応表に足す
是正期限が書かれていないmissing。スキームや社内の取り決めの日数を人が入れる
監査日が決まらず期限を計算できないneeds_human。表紙の画像で人が確定する
フォローアップの報告書で前回の指摘が台帳に無い前回の報告書が未登録かを確かめる
ジョブが FAILED または PARTIAL_SUCCESSStatusMessage と Warnings のページ番号を記録し、そのページを人へ

上から2行目と3行目が、指摘の取りこぼしのほとんどを生みます。 表の読み取りが崩れると、指摘が丸ごと台帳から消えるため、指摘の数を報告書と合わせる確認を省かないでください。

Step11

記録を残す

  • 元の報告書と、受け取った日時、経路、工場コード
  • AWS Textract が返したJSONの全文と、切り出した章のページの範囲
  • Claude API が返したJSONと、担当者が確定させた指摘の一覧
  • 重要度の読み替えと期限の計算の結果と、そのとき参照した対応表の版
  • 再発の候補と、担当者の判断(再発か別の問題か)
  • 催促と報告の日時と相手

5つ目の判断の記録は、分類の一覧を直す材料になります。 候補にしたが別の問題だった組み合わせが多い分類は、分け方が粗すぎることが分かります。

04実装レベルの3段階

最小構成:指摘事項の章を手でAIの画面に貼り、指摘を表にさせる / 1通ごとの指摘の書き出し
半自動化:上記+受付フォルダを起点に AWS Textract で読み、指摘の一覧を作って台帳に書く / 読み取り、指摘の一覧、台帳への転記
本格構成:上記+重要度の読み替え、期限の換算、前回の指摘との照合、毎週の期限の一覧 / 是正の追跡と再発の候補の提示まで

本記事の想定は本格構成です。 読み取りと転記に加えて、期限と再発の候補が自動で出ます。1通120分が36分になるのはこの段階です。 半自動化で止めると、③の見比べと④の期限の確認が残ります。 前回の指摘の見比べと期限の換算が手作業のまま残り、再発と期限切れという、この業務でいちばん困っていたところが変わりません。

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

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

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

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

AI活用について相談する

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

向いている
  1. アジアなどの委託先工場を数百か所持ち、品質監査や社会監査(労働・安全衛生・環境・倫理)を監査会社に委託しているメーカー・小売・商社。工場ごとに監査の月をずらしているため、英文の監査報告書が毎月十数〜数十通届き、購買や品質管理の担当者が指摘事項を是正管理台帳に手で写している場合。前回と同じ指摘の再発や、是正期限の過ぎた指摘に気づくのが遅れている場合。
向いていない
  1. 委託先工場が数か所で、監査報告書が年に数通しか届かない場合。監査のプラットフォームで指摘事項と是正の状況をデータとして受け取れており、PDFを読む工程が無い場合。監査報告書が英語以外(中国語・ベトナム語・日本語など)だけで届く場合(この構成のOCRは英語、フランス語、ドイツ語、イタリア語、ポルトガル語、スペイン語しか読めません)。なお、取引の継続や停止、是正の十分さの判断は購買と品質管理の責任者が行うもので、この構成では代替できません。

07最小構成で試す方法

  1. 先月までの報告書から10通を選ぶ(監査会社の違うもの、指摘事項の表がページをまたぐもの、フォローアップの報告書、前回の監査と同じ工場のものを必ず入れる)
  2. 手元の生成AIの画面に、指摘事項の章のページだけを1通ずつ貼り付け、「指摘ごとに、番号、条項、一覧の表の記載、本文の所見、重要度の表記、是正期限の表記、頁を、書かれたとおりに表にしてください。要約や言い換えをしないでください。重要度を判断しないでください」と指示する
  3. 出てきた表を、当時の台帳の行と見比べ、指摘の数が合うかを数える

10通は必ずやってください。 仕組みを組む前に、指摘の数が合うか、原文のまま写せるか、良い取り組みが混ざらないかを確かめます。

出てきた内容判断
指摘の数が合い、原文のまま写したOCRのAPIと台帳の照合に進む
指摘を要約し、重要度を自分で付けた原文を写させ、判断を禁じる指示を足す。直るまで先に進まない
ページをまたぐ表で指摘が抜けた表の読み取りとつなぎの処理で補う。構成は有効

3行目は、画面に貼り付ける試し方ではよく起きます。 ページの区切りで表が切れたまま渡るためで、仕組みの側では表の読み取りと列の見出しでつなげます。 ここで抜けた指摘の数を数えておくと、3週目に作るつなぎの処理の出来を測る目安になります。

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

問題対策
ページをまたぐ表で指摘が抜ける列の見出しで表をつなぎ、指摘の数を報告書と合わせる
AIが重要度を自分で付ける表記をそのまま写させ、読み替えは対応表で行う
指摘が要約されて根拠を示せない原文を写させ、言い換えを禁じる
良い取り組みが指摘として入る指示で除外し、確認の画面で見分ける
「30 days」を日付に直さない監査日と日数から Python が計算する
再発の候補が多すぎる分類の一覧を細かくし、担当者の判断の記録で見直す
従業員の名簿まで生成AIに渡るレイアウトの見出しで章を切り出し、名簿のページを外す
フォローアップの報告書を新しい指摘として登録する表紙で監査の種類を見分け、是正の状況として書く

上の2行が、この構成の失敗のほとんどです。 指摘が抜ければ追跡から外れ、重要度が変われば報告の優先順位が狂います。どちらも報告書の原文から離れることで起きます。

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

この構成で扱うデータ: 委託先工場の名称と所在地、監査の指摘、是正の計画、そして社会監査では従業員への聞き取りの内容や労働時間・賃金の記録です。工場との取引の情報と、従業員に関わる情報を含むため、security_level を3としています。

  1. 生成AIに渡す範囲を、指摘事項の章に限る … 従業員の名簿、聞き取りの記録、写真のページは渡しません。指示でも、個人の名前を写さないよう求めます
  2. 重要度と取引の判断を出さない … 台帳に入るのは報告書の表記と、対応表で当てた自社の段階だけです。取引の継続や停止は、責任者が報告書を読んで判断します
  3. 報告書の共有範囲を守る … 監査の報告書は工場と自社のあいだで共有されたものです。台帳を取引先に見せるときは、その取引先の製品を作る工場の行だけにします
  4. 工場への連絡を自動で送らない … 催促と問い合わせは担当者が行います

誤りが起きた場合のリスクは、指摘の取りこぼしで是正の追跡が漏れることと、重要度の誤りで報告の優先順位が狂うことです。 指摘の数の照合と、原文のままの記録を崩さないでください。

10まず何から始めるか

1週目:対応表と分類の一覧を作る

いま届いている報告書のスキームと監査会社ごとに、重要度の表記と自社の段階の対応を表にします。あわせて、過去1年の台帳の指摘から30前後の分類の一覧を作ります。

2週目:10通で試す

指摘事項の章を手元の生成AIの画面に貼り、指摘を表にさせます。指摘の数が合うか、原文のまま写せるか、良い取り組みが混ざらないかを最優先で見ます。

3週目:章の切り出しと表のつなぎを作る

レイアウトの結果から指摘事項の章を切り出し、ページをまたぐ表をつなぐ処理を作ります。報告書の多い2社の監査会社の書式から始めます。

4週目:受付フォルダから確認の画面までをつなぐ

S3、Lambda、Textract、Claude API をつなぎ、指摘の一覧を確認の画面に出すところまで作ります。この時点では台帳へは書かず、担当者が確定させた一覧を手で台帳に入れます。

2か月目: 重要度の読み替えと期限の換算を足し、確定した指摘を台帳に自動で書きます。3か月目以降: 前回の指摘との照合と毎週の期限の一覧を足し、1通120分が何分になったかを実測します。再発の候補と期限切れ間近の指摘が、毎週の一覧で漏れなく拾われるようになった時点で、この構成は完成です。


11関連ユースケース

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

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

技術仕様確認日:2026-10-08/最終更新:2026-10-08
確認した内容情報源確認日
SMETA が労働基準・安全衛生・環境・ビジネス倫理を評価する社会監査で、2ピラーと4ピラーの範囲があること。監査の後に是正計画が提供されること。英語以外で報告書と是正計画の報告書(CAPR)を作るときは二か国語とし英語を含めなければならないこと。SMETA が合否を出す認証ではなく継続的な改善の方法とされていること。フォローアップの監査があること。最新版が SMETA 7(2024年)であることSedex: SMETA Audit2026-10-08
対応する形式がJPEG、PNG、PDF、TIFFであること。非同期はPDFとTIFFで500MB・3,000ページであること。PDFはパスワードで保護できないこと。対応言語が英語、フランス語、ドイツ語、イタリア語、ポルトガル語、スペイン語であること。質問の検出は英語の文書だけで、非同期で1ページ30個までであることAWS: Set Quotas in Amazon Textract2026-10-08
StartDocumentAnalysis の FeatureTypes(TABLES/FORMS/QUERIES/SIGNATURES/LAYOUT)、QueriesConfig(Pages の指定を含む)、ClientRequestToken、JobTag、NotificationChannel で Amazon SNS に完了を通知することAWS: StartDocumentAnalysis2026-10-08
GetDocumentAnalysis が表とセル、質問と答えのブロックを返すこと。JobStatus(SUCCEEDED/FAILED/PARTIAL_SUCCESS ほか)、MaxResults(最大1,000)と NextToken、StatusMessage、WarningsAWS: GetDocumentAnalysis2026-10-08
レイアウトの要素(LAYOUT_TITLE、LAYOUT_SECTION_HEADER、LAYOUT_TEXT、LAYOUT_TABLE、LAYOUT_FIGURE ほか)が、左から右・上から下の読み順で返ることAWS: Layout Response Objects2026-10-08
ブロックの種類に MERGED_CELL、TABLE_TITLE、TABLE_FOOTER があること。表のセルの EntityTypes に COLUMN_HEADER、TABLE_TITLE、TABLE_SECTION_TITLE、TABLE_SUMMARY などがあること。信頼度が0〜100であることAWS: Block2026-10-08
構造化出力を output_config.format に json_schema を指定して受け取れることClaude Docs: Structured outputs2026-10-08

重要度の段階と是正期限の決め方は、スキームと監査会社ごとに異なります。 本記事は Sedex の公開ページで確認できた範囲だけを扱っており、詳しい指摘の扱いは各スキームの会員向けの資料と監査会社に確かめてください。

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

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

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

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