自治体の補助金の担当課が、事業者から届く申請書と添付書類を交付要綱の要件に照らして一次審査し、不足書類と確認点を照会の文案にする
事業者から届いた補助金の交付申請書と添付書類を読み、交付要綱から作った要件の一覧と1項目ずつ照らします。不足している書類、要件について確認が要る点、補助額の試算を一次審査の表にまとめ、申請者への照会の文案まで作ります。
- 生成AI
- ChatGPT/Claude/Gemini
- 連携・自動化
- Make/n8n/Power Automate/Python
- 対象業界
- その他/自治体
- 対象部門
- 総務
- 対象業務
- 内容確認・チェック/書類作成
- 主な課題
- 人手が足りない/判断に時間がかかる/確認ミスが多い
- AIで行う処理
- 判定
- 主な効果
- 入力漏れ削減/対応スピード向上/工数削減
- 導入難易度
- ★★★☆☆
- 実装レベル
- 半自動化
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 電子申請で届いた申請書と添付書類を、担当職員が受付台帳に記録する
- 申請の手引きのチェックリストを見ながら、添付書類がそろっているかを確かめる
- 交付要綱の要件(市内に事業所がある、中小企業者である、市税の滞納がない、対象経費に当たる、交付決定前に発注していない)を、書類の記載で1つずつ確かめる
- 見積書から対象経費を拾い、補助率と上限額で補助額を計算する
- 不足と確認点を書き出し、申請者への照会のメールを書く
- 再提出された書類を受け取り、2番から5番をやり直す
- 一次審査の結果を係長に回し、交付決定の決裁へ進める
- 人担当課が、補助金ごとの交付要綱と申請の手引きから要件の一覧を作り、係長が確定する(要綱の改正のときに見直す)
- 人電子申請で届いた書類を、申請番号のフォルダに置く。紙で届いたものはスキャンして置く
- 自動フォルダへの保存をきっかけに、書類の種類と枚数を確かめる
- 自動Claude API が、申請書類を読み、要件の一覧の1項目ずつに `met` / `missing_document` / `not_met_possible` / `needs_judgment` / `unreadable` を付け、根拠の書類とページを添える
- 自動見積書から読み取った金額を使い、対象経費の合計と補助額を計算する
- 自動証明書の発行日と見積書・契約書の日付を、受付日と照らして機械的に確かめる
- 自動`missing_document` と `not_met_possible` から、照会の文案を作る。依頼と確認を分けて書く
- 人担当職員が一次審査の表を見て、判定と照会の文案を直す
- 人`needs_judgment` は担当職員が判断し、必要なら係長に相談する
- 人照会を申請者へ送る
- 人一次審査の結果を係長に回し、交付決定の決裁へ進める
各工程の詳しい説明を読む
- 電子申請で届いた申請書と添付書類を、担当職員が受付台帳に記録する
- 申請の手引きのチェックリストを見ながら、添付書類がそろっているかを確かめる
- 交付要綱の要件(市内に事業所がある、中小企業者である、市税の滞納がない、対象経費に当たる、交付決定前に発注していない)を、書類の記載で1つずつ確かめる
- 見積書から対象経費を拾い、補助率と上限額で補助額を計算する
- 不足と確認点を書き出し、申請者への照会のメールを書く
- 再提出された書類を受け取り、2番から5番をやり直す
- 一次審査の結果を係長に回し、交付決定の決裁へ進める
(a)不足と確認点が混ざった照会になる。 「納税証明書が添付されていません」と「見積書の日付が受付日より前ですが、発注はまだですか」が同じ箇条書きに並ぶ。申請者は両方とも出し直しの依頼と受け取り、見積書を取り直してくることがあります。
(b)証明書の期限と日付の確認が抜ける。 発行から3か月以内とされている証明書や、交付決定前に発注していないことの確認は、書類はそろっているので見落としやすい項目です。 交付決定後に気づくと、取消しの検討まで話が進みます。
(c)補助額の計算を手でやり直す。 見積書に対象外の経費(消費税、送料、既存設備の撤去費など)が混ざっていると、対象経費を拾い直して計算し直します。 再提出のたびに同じ計算をくり返します。
(d)確認の観点が担当者で違う。 要綱の解釈を長く担当してきた職員と、異動してきたばかりの職員では、見る項目の数が違います。4月の異動の直後は、照会の内容が薄くなり、決裁の段での差し戻しが増えます。
- 【人】 担当課が、補助金ごとの交付要綱と申請の手引きから要件の一覧を作り、係長が確定する(要綱の改正のときに見直す)
- 【人】 電子申請で届いた書類を、申請番号のフォルダに置く。紙で届いたものはスキャンして置く
- 【自動】 フォルダへの保存をきっかけに、書類の種類と枚数を確かめる
- 【自動】 Claude API が、申請書類を読み、要件の一覧の1項目ずつに
met/missing_document/not_met_possible/needs_judgment/unreadableを付け、根拠の書類とページを添える - 【自動】 見積書から読み取った金額を使い、対象経費の合計と補助額を計算する
- 【自動】 証明書の発行日と見積書・契約書の日付を、受付日と照らして機械的に確かめる
- 【自動】
missing_documentとnot_met_possibleから、照会の文案を作る。依頼と確認を分けて書く - 【人】 担当職員が一次審査の表を見て、判定と照会の文案を直す
- 【人】
needs_judgmentは担当職員が判断し、必要なら係長に相談する - 【人】 照会を申請者へ送る
- 【人】 一次審査の結果を係長に回し、交付決定の決裁へ進める
1番目が、この設計の分かれ目です。 要件の一覧は、交付要綱を「確かめられる単位」に分けたものです。ここを人が作って確定しておけば、AIは一覧にない基準で判定しません。 要綱の改正のたびに一覧を見直すことを、担当課の手順に入れます。
7番目で依頼と確認を分けるのは、第3章の(a)を防ぐためです。 照会の文案を「提出をお願いする書類」と「確認させていただきたい点」の2つの段に分け、申請者が何を出し直し、何に答えればよいかが一目で分かる形にします。
02今回想定するシステム構成
電子申請で届いた申請書と添付書類(PDF)/紙の申請のスキャン │ ▼【トリガー】申請番号のフォルダへの保存 Power Automate(連携) ├──▶ 書類の種類・枚数・PDFの状態の確認 ▼ Claude API ── 要件の一覧の1項目ずつを判定(根拠の書類とページ付き) │ ① 添付書類の有無 ② 申請者の要件 ③ 対象経費の要件 │ ④ 日付の要件 ⑤ 金額の読み取り ▼ Python ── 対象経費の合計と補助額の計算、日付の照合 ▼ Claude API ── 照会の文案(提出の依頼/確認の依頼を分けて) ▼ 一次審査の表(要件・判定・根拠・補助額の試算)+ 照会の文案 ▼ 【人:担当職員が確認・判断】──▶ 申請者へ照会 / 係長へ回付
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| 処理 | Claude API(申請書類の読み取り、要件ごとの判定、照会の文案) | OpenAI API、Gemini API |
| 集計 | Python(対象経費の合計、補助率と上限額の当てはめ、日付の照合) | 表計算の関数 |
| 連携 | Power Automate(フォルダの監視、APIの呼び出し、一次審査の表の書き出し) | Make、n8n |
| 保管 | 文書管理のシステム(申請番号ごとのフォルダ、一次審査の表、照会の記録) | SharePoint、庁内のファイルサーバー |
電子申請の受付システムと受付台帳は、新しく足すものではありません。 届いた書類をフォルダに置く今の運用をそのまま使い、この構成から受付台帳や交付決定の決裁へは書き込みません。
要件の一覧の元になるのは、交付要綱です。 たとえば堺市の補助金交付規則は、交付の申請に交付申請書と、役員情報届出書(法人の場合)、事業計画書、収支予算書、前年度決算書(法人その他の団体の場合)、工事を伴う場合の実施設計書と工事契約書の写し、その他市長が必要と認める書類を添えるとしています。そのうえで、個別の補助金の対象事業・条件・金額・手続は、要綱で定めるとしています。 一覧は、規則の共通の書類と、要綱の個別の要件の両方から作ります。
中心になるのは、Claude API の PDF の読み取りです。 PDF は各ページが画像に変換され、ページから取り出した文字と一緒に渡されるので、スキャンした書類や、表の形の見積書も読めます。 1回のリクエストは最大32MB、最大600ページ(1回のリクエストのコンテキストが100万トークン未満のときは100)で、パスワード付きや暗号化された PDF は使えません。
結果は構造化出力で受け取ります。 JSON スキーマに沿った出力にでき、項目の型と必須の項目が守られます。一次審査の表にそのまま流し込めるので、担当職員が判定を転記する手間がありません。
03どうやって実装するのか
処理の起点を決める
申請番号のフォルダに書類が置かれたことを起点にします。 電子申請の受付システムから書類を取り出してフォルダに置く作業は、受付の記録とあわせて担当職員が行います。受付台帳への記録を先に済ませることで、受付日が確定してから審査が動きます。 受付日は、証明書の期限や発注の日付を照らす基準になります。
再提出のときも同じフォルダに置きます。 再提出の書類だけを読ませるのではなく、前回の一次審査の表と一緒に、申請の書類一式をもう一度判定させます。 差し替えた書類で別の要件が崩れていないかを、同じ物差しで確かめるためです。
要件の一覧が確定していない補助金の申請は、流しません。 要綱の改正の直後で一覧が見直し中のときは、担当職員に知らせて手で審査します。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 交付申請書 | 申請者の名称・所在地・代表者、補助事業の内容、申請額 | 申請番号のフォルダ |
| 添付書類 | 事業計画書、収支予算書、見積書、カタログ、登記事項証明書、納税証明書、役員情報届出書、誓約書など | 申請番号のフォルダ |
| 受付の情報 | 受付日、補助金の種類、申請番号 | 受付台帳 |
| 要件の一覧 | 補助金ごとに、確かめる要件・確かめる書類・満たす条件 | 担当課で作り、係長が確定したもの |
| 対象経費の区分 | 対象になる経費と、対象外の経費の例(消費税、送料、撤去費など) | 交付要綱と申請の手引き |
| 前回の一次審査の表 | 再提出の場合の前回の判定と照会の内容 | 一次審査の表の履歴 |
質を決めるのは、要件の一覧です。 「中小企業者であること」とだけ書いても、AIはどの書類のどの欄で確かめるかを決められません。「登記事項証明書の資本金の額と、申請書の従業員数で確かめる。業種ごとの基準は別表のとおり」と、確かめ方まで書きます。
対象経費の区分は、補助額の試算のためです。 見積書の1行ずつを対象・対象外に振り分ける基準がないと、AIは見積書の合計をそのまま対象経費にします。
データの取得方法を決める
書類は、フォルダへの保存を検知した Power Automate が取り出し、申請番号ごとに1回の呼び出しで Claude API に渡します。書類の枚数が多い申請は、ページ数とリクエストの大きさの上限を確かめ、超えるときは書類の種類ごとに分けて渡します。
| 取るもの | どこから | 何に使うか |
|---|---|---|
| 要件ごとの判定と根拠 | Claude API の判定(構造化出力) | 一次審査の表 |
| 見積書の明細と金額 | Claude API の判定の一部として書き写させる | Python での対象経費と補助額の計算 |
| 証明書の発行日、見積書・契約書の日付 | 同上 | Python での日付の照合 |
| 受付日 | 受付台帳 | 日付の照合の基準 |
金額と日付は、書類に書かれているとおりに書き写させます。 「令和8年9月15日」と「2026/9/15」の変換や、税込と税抜の判定は、Python の側で行います。 AIに変換させると、どこで誤ったかを追えなくなります。
文字の小さいページや複雑な表が多い PDF は、ページ数の上限より先にコンテキストを使い切ることがあるとされています。カタログを何十ページも添付してくる申請は、対象の機器が載っているページだけを残して渡します。
AIへ渡す前に整形する
- 受付日の確認 … 受付台帳に受付日が記録されていることを確かめます
- PDF の状態の確認 … パスワード付きや暗号化された PDF は使えないので、申請者に解除して出し直してもらいます
- 書類の種類の振り分け … ファイル名と1ページ目から、申請書・見積書・証明書などの種類を付けます。分からないものは「種類不明」として残します
- 大きさの確認 … 上限を超える申請は、書類の種類ごとに分けて渡します
- カタログの絞り込み … 対象の機器が載っていないページを除きます
- 個人の情報の扱い … 個人事業主の申請では、判定に要らない情報(個人の生年月日、家族の情報など)が含まれる書類の扱いを決めておきます
- 要件の一覧の選択 … 補助金の種類と受付日から、適用する一覧の版を選びます
7番目を軽く見ないでください。 要綱を改正した年度は、改正前に受け付けた申請と改正後の申請で、適用する要件が違うことがあります。受付日で版を選ばないと、正しい申請に not_met_possible が並びます。
AIに処理させる
させるのは、要件の一覧の1項目ずつについて、書類の記載から判定し、根拠の書類とページを添えることです。 あわせて、補助額の計算に使う金額と、日付の照合に使う日付を書き写させます。
| 見るもの | 判定の仕方 | 判断できないときの扱い |
|---|---|---|
| 添付書類の有無 | 一覧にある書類が、申請の書類のなかにあるか | 無ければ missing_document |
| 申請者の要件 | 所在地、資本金、従業員数などが、一覧の条件に合うか | 合わない記載があれば not_met_possible、書類から決められなければ needs_judgment |
| 対象経費の要件 | 見積書の1行ずつが、対象経費の区分に当たるか | 区分に無い経費は needs_judgment |
| 日付の要件 | 証明書の発行日、見積書・契約書の日付を書き写す | 日付が読めなければ unreadable |
| 書類どうしの食い違い | 申請書と添付書類で、名称・所在地・金額が違う箇所 | 両方の記載をページ付きで並べる |
右端の列の missing_document と not_met_possible と needs_judgment を分けることが、この構成でいちばん大事です。 missing_document は提出を頼めば済み、not_met_possible は要件を満たさない可能性を申請者に確かめる必要があり、needs_judgment は職員が判断します。照会の文案の段が、この区別で決まります。
not_met_possible は「要件を満たさない」とは書きません。 書類の記載から見て満たさない可能性がある、という事実だけです。資本金が基準を超えていても、従業員数の基準で中小企業者に当たる場合があるように、要綱の当てはめは担当職員が行います。
| させないこと | 理由 |
|---|---|
| 交付すべきかの意見 | 交付の決定は、申請の内容を審査して市長(の委任を受けた者)が行う |
| 補助額の計算 | 読み取った金額を使って機械の計算で出す。AIに計算させると誤りを追えない |
| 暴力団の排除に関する確認 | 申請者が補助事業者となれるかの確認は、庁内の定めた手順で行う |
| 要件の一覧にない基準での判定 | 一覧が物差し。AIが要綱の趣旨から基準を足すと、担当者ごとの差と同じことが起きる |
| 申請者への照会の送信 | 照会は担当職員の名前で送る行政の連絡 |
4行目がいちばん起きやすい失敗です。 生成AIは補助金の一般的な審査の観点を知っているので、「事業計画の実現性に懸念がある」のような、一覧に無い観点を書き足します。一次審査は要件の確認であって、事業の評価ではありません。
指示内容を固定する
あなたは市の補助金の担当課で、交付申請の一次審査を手伝う立場です。
渡す申請書類を読み、要件の一覧の1項目ずつについて判定してください。
要件の一覧にない観点で判定しないでください。
【status の選び方】
- met ................ 書類の記載から、条件を満たしていることが確かめられる
- missing_document ... 確かめるための書類が、申請の書類のなかに無い
- not_met_possible ... 書類はあるが、条件に合わない記載がある
- needs_judgment ..... 書類はあるが、記載だけでは条件に合うか決められない
- unreadable ......... 書類はあるが、該当の箇所が読めない
迷ったときに met を選ばないでください。
【厳守事項】
- すべての判定に、根拠にした書類の種類・ページ・該当の記載を書き写してください。
- 書類が無いことと、書類に条件に合わない記載があることを、混ぜないでください。
- not_met_possible でも、「要件を満たさない」「交付できない」と書かないでください。
書類のどの記載が、一覧のどの条件と合わないかだけを書いてください。
- 金額は、見積書に書かれているとおりに、1行ずつ書き写してください。
合計・税抜の計算・補助額の計算をしないでください。
- 見積書の各行について、対象経費の区分 {cost_rules} のどれに当たるかを書いてください。
区分に無いものは needs_judgment としてください。
- 日付は、書類に書かれているとおりに書き写してください。西暦への変換をしないでください。
- 事業計画の良し悪し、実現性、効果について書かないでください。
- 申請者が補助事業者となれるかどうか(暴力団の排除に関する事項)について書かないでください。
- 種類の分からない書類は、document_type を unknown として残してください。
【補助金】{subsidy_name}(要件の一覧 {checklist_version})
【要件の一覧】{checklist}
【受付日】{received_date}
【申請書類】(PDF)
「書類が無いことと、条件に合わない記載があることを混ぜない」を明記しないと、どちらも「不備」とまとめます。 そうなると、照会の文案の段を分ける材料がなくなります。
「交付できないと書かない」を入れるのは、一次審査の表が決裁の材料として回るからです。 AIの判定の欄に「交付不可」と書かれていると、担当職員が当てはめを確かめる前に、結論が決まったように読めてしまいます。
出力形式を固定する
次の形のJSONで受け取ります。 Claude API の構造化出力で JSON スキーマを渡し、この形を守らせます。
{
"application_id": "",
"subsidy": "",
"checklist_version": "",
"documents": [ { "file": "", "document_type": "application | estimate | certificate | plan | unknown", "pages": 0 } ],
"checks": [
{ "req_id": "A-03", "requirement": "",
"status": "met | missing_document | not_met_possible | needs_judgment | unreadable",
"document": "", "page": 0, "evidence": "", "note": "" }
],
"estimate_lines": [ { "item": "", "amount_text": "", "tax_text": "", "cost_category": "", "page": 0 } ],
"dates": [ { "kind": "certificate_issued | estimate | contract | order", "date_text": "", "document": "", "page": 0 } ],
"mismatches": [ { "field": "", "a": "", "a_page": 0, "b": "", "b_page": 0 } ]
}
1つ目の理由は、AIの判定と機械の計算を分けられることです。 estimate_lines と dates はAIが書き写したもの、補助額と日付の照合は Python が計算したものです。補助率や上限額が改正されても、AIの指示を変える必要はありません。
2つ目は、照会の文案を status から機械的に組めることです。 missing_document の行から「提出をお願いする書類」の段を、not_met_possible の行から「確認させていただきたい点」の段を作ります。needs_judgment は照会に入れず、担当職員の判断に回します。
status | 一次審査の表での扱い | 照会の文案 |
|---|---|---|
met | 根拠のページを添えて残す | 入れない |
missing_document | 不足書類として残す | 「提出をお願いする書類」の段 |
not_met_possible | 確認点として残す | 「確認させていただきたい点」の段 |
needs_judgment | 担当職員の判断の欄を空けて残す | 職員が判断してから入れるか決める |
unreadable | 読めなかった箇所として残す | 読める書類の再提出の依頼として入れる |
3つ目は、page で書類に戻れることです。 担当職員は、判定の根拠のページだけを開けば確かめられます。第4章の②の18分が短くなるのは、ここです。
構造化出力は、型と必須の項目を守らせる仕組みです。拒否の応答や max_tokens に達した場合はスキーマに合わない出力になりうるとされているので、stop_reason を見てから表に流します。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 申請番号のフォルダ | Power Automate のトリガー | 書類の保存を検知する |
| Claude API | API呼び出し(構造化出力) | 要件ごとの判定、金額と日付の書き写し、照会の文案 |
| Python | Power Automate から呼ぶ処理 | 対象経費の合計、補助率と上限額の当てはめ、日付の照合 |
| 一次審査の表 | 文書管理のシステムへの書き出し | 要件・判定・根拠・補助額の試算 |
| 担当職員への通知 | メールまたはチャット | 一次審査の完了と、needs_judgment の件数 |
受付台帳と決裁のシステムへは書き込みません。 一次審査の表は担当職員が確かめてから、係長への回付の資料にします。確かめる前の判定が決裁の材料として残ると、誤りが正式な審査の記録になります。
照会もこの構成からは送りません。 文案は担当職員が直し、担当課の名前で送ります。申請者から見れば、照会は市からの正式な連絡です。
人が確認する
人の確認は3か所です。 要件の一覧の確定、一次審査の表の確認、そして needs_judgment の判断です。
- 要件の一覧を確定する(要綱の改正のとき) … 係長が、要綱の条文と一覧の項目を突き合わせて確定します
not_met_possibleを先に見る … 根拠のページを開き、要綱の当てはめを確かめます。照会に入れるか、職員の判断で済むかを決めますneeds_judgmentを判断する … 対象経費の区分に無い経費や、記載だけでは決められない要件を判断し、必要なら係長に相談します- 補助額の試算を確かめる … 対象経費に振り分けられた行を見て、試算を確かめます
- 照会の文案を直して送る … 依頼の段と確認の段が混ざっていないかを見て、送ります
- 判定を覆したら記録する … どの項目を、なぜ覆したかを残します
2番目と3番目は職員にしかできません。 要綱の当てはめは、条文の解釈と過去の取扱いに基づく判断です。AIの判定は、その判断を始める位置を示すものにとどめます。
目標は、60件をならして1件18分です。 書類がそろった申請は数分、not_met_possible や needs_judgment がある申請は20分を超えます。18分を大きく超える月は、要件の一覧の確かめ方の書き方が足りていないか、申請の手引きが分かりにくくなっています。
例外に対処する
| 起きること | 対応 |
|---|---|
| 受付日が記録されていない | 判定を始めず、担当職員に知らせる |
| 要件の一覧が見直し中 | 判定を始めず、手で審査する |
| パスワード付き・暗号化された PDF | 使えない。申請者に解除して出し直してもらう |
| リクエストの上限を超える | 書類の種類ごとに分け、カタログは対象のページに絞る |
| 種類の分からない書類 | unknown として残し、担当職員が見る |
| スキャンが粗くて読めない | unreadable。読める書類の再提出を照会に入れる |
| 判定が途中で切れる | stop_reason を見て、max_tokens なら書類を分けて再実行 |
| 見積書に対象経費の区分に無い経費がある | needs_judgment として職員へ。区分を足すかは担当課で決める |
| 再提出の書類だけが届く | 前回の申請一式と合わせて、もう一度全体を判定する |
上から2行目までが一番効きます。 受付日と要件の一覧は、判定の基準そのものです。基準が無いまま判定を出すくらいなら、出さないほうが担当職員の手間が少なくて済みます。
記録を残す
- 申請番号、補助金の種類、受付日と、判定に使った要件の一覧の版
- Claude API が返したJSONの全文
- Python で計算した対象経費の合計、補助額の試算、日付の照合の結果
- 担当職員が覆した判定とその理由、
needs_judgmentの判断の結果 - 送った照会の内容と、再提出された書類との対応
- 補助金ごと・要件ごとの
missing_documentとnot_met_possibleの件数
4つ目で判断の結果を残すのは、要件の一覧を育てるためです。 同じ種類の経費が毎回 needs_judgment になり、毎回同じ判断になるなら、その経費を対象経費の区分に書き足せます。 担当者ごとの判断の差も、ここで見えます。
最後の行は、申請の手引きを直す材料になります。
04実装レベルの3段階
最小構成では件数がさばけません。 1件ずつ手で渡すので、月60件には使えません。確かめるための段階です。 半自動化で、1件48分が18分になります。この段階が本記事の想定です。 判定と計算と文案が自動になり、職員は not_met_possible と needs_judgment の判断に時間を使います。本格構成で減るのは、再提出と実績報告の確認の手間です。 交付決定のあとに届く実績報告書も、同じ考え方で交付決定の内容と照らせます。 段階を飛ばさないでください。 半自動化を1か月回すと、どの要件で needs_judgment が多いかが分かります。
05工数削減シミュレーション
導入後 60件 × 18分 ÷ 60 = 18 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 中小企業向けの設備導入・販路開拓・創業などの補助金を随時受付で運用し、月に数十件の交付申請を少人数の職員で審査している市区町村の担当課。補助金ごとに交付要綱があり、添付書類の種類と要件の確認点が多い場合。申請の不足が多く、照会と再提出の往復で交付決定までの日数が延びている場合。申請を電子で受け付けているか、紙の申請をスキャンして扱える場合。
- 申請が年に数件で、担当者が1件ずつ読めば足りる場合。公募の締切に申請が集中し、審査委員会で事業の内容を採点する競争的な補助金(この構成は要件の一次確認までで、採点はしません)。交付の可否の判断そのものを自動化したい場合。庁内の情報の扱いの定めで、申請書類を外部の生成AIのサービスで扱えない場合。
07最小構成で試す方法
- 過去の交付申請から10件を選ぶ(うち数件は、照会をして再提出になったものを入れる)
- その10件について、当時どの不足と確認点で照会をしたかを集める
- 1つの補助金について、交付要綱から要件の一覧を手で作る
- 庁内で利用が認められている環境で、申請書類のPDFと要件の一覧を Claude に渡し、第7章の指示で判定させる
- 判定を、当時の照会の内容と突き合わせる
10件は必ずやってください。 仕組みを組む前に、「書類が無いことと、記載が要件に合わないことを分けられるか」を確かめます。
| 出てきた内容 | 判断 |
|---|---|
| 当時の照会と同じ不足と確認点が、区別されて出ている | フォルダとの連携と補助額の計算に進む |
| 要件の一覧に無い観点(事業の実現性など)を書き足す | 指示の書き方で直る。構成は有効 |
どの書類で確かめればよいか決められず needs_judgment が並ぶ | 要件の一覧の確かめ方が先。 AIの問題ではない |
3行目が出ることは珍しくありません。 失敗ではなく、担当者の頭のなかにあった確かめ方が、文書になっていなかったということです。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 書類が無いことと記載が合わないことが混ざる | missing_document と not_met_possible を分けると指示に明記する |
| 照会の文案で依頼と確認が混ざる | status から段を機械的に分けて組む |
| 要件の一覧に無い観点を書き足す | 一覧が物差し。 事業の評価をしないことを明記する |
| 見積書の合計をそのまま対象経費にする | 1行ずつ区分に振り分けさせ、計算は Python で行う |
| 和暦と西暦の変換で日付を誤る | 書き写させ、変換は Python で行う |
| 要綱の改正前後で基準がずれる | 受付日で要件の一覧の版を選ぶ |
| カタログが多くて上限を超える | 対象の機器のページに絞る |
not_met_possible が「交付不可」と読まれる | 結論を書かせない。当てはめは職員が行う |
| 再提出の書類だけで判定する | 申請一式でもう一度判定する |
| 照会を自動で送る | 文案までにする。 送るのは担当職員 |
上の2行が、この構成の失敗のほとんどです。 どちらも「不備」という1つの言葉にまとめてしまう失敗です。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 申請者の名称・所在地・代表者、法人の登記事項、納税の状況、事業計画と見積の金額、個人事業主の場合は個人の氏名・住所と収入に関わる情報です。
- 利用目的の範囲で必要最小限にする … 個人情報保護委員会の注意喚起では、行政機関等(地方公共団体の機関を含む)が生成AIサービスに個人情報を含むプロンプトを入力する場合、利用目的のための必要最小限であることを十分に確認するよう求めています。判定に要らない書類の部分は渡しません
- 機械学習に使われないことを確かめる … 同じ注意喚起では、保有個人情報が応答の出力以外の目的で扱われる場合は法の規定に違反する可能性があるとして、提供する事業者が機械学習に利用しないこと等を十分に確認するよう求めています。Claude API については、保持されたデータは明示の許可なくモデルの学習に使われないとされています。契約と利用規約で確かめ、記録に残します
- この構成は交付の可否を判断しない … 交付の決定は、申請の内容を審査して行う市の判断です。この構成が出すのは、書類の記載と要件の一覧を照らした事実だけです
- 暴力団の排除に関する確認を混ぜない … 補助事業者となれない者の確認は、庁内で定めた手順で行います。AIの判定の対象に入れません
- 庁内のネットワークの区分を確かめる … 申請書類を扱う環境から外部のAPIを呼べるかは、庁内の情報セキュリティの定めによります。情報政策の担当と、どの環境で動かすかを先に決めます
- 一次審査の表を申請者に出さない … 表はAIの判定を含む内部の資料です。申請者への連絡は、職員が直した照会だけにします
誤りが起きた場合のリスクは、要件を満たさない申請を見落として交付を進めることと、要件を満たす申請に不要な照会をして交付を遅らせることの2つです。 前者は met に寄せた判定で起き、後者は missing_document と not_met_possible を混ぜると起きます。前者は「迷ったら met にしない」指示で、後者は区別で防ぎます。
10まず何から始めるか
1週目:要件の一覧を1つ作る
申請の多い補助金を1つ選び、交付要綱と申請の手引きから、確かめる要件・確かめる書類・満たす条件を一覧にします。 確かめ方は、その補助金を長く担当してきた職員に聞き取って書きます。
2週目:10件で試す
過去の申請から10件を選び、庁内で利用が認められている環境で第7章の指示を試します。書類が無いことと記載が合わないことが分かれているか、一覧に無い観点を書き足していないかを最優先で見ます。
3週目:庁内の整理を進める
申請書類を外部のAPIで扱うことについて、個人情報の扱いと情報セキュリティの定めに照らして整理します。 ここが終わらないうちに仕組みを組んでも、本番の申請には使えません。あわせて、対象経費の区分を一覧にします。
4週目:フォルダから一次審査の表までをつなぐ
Power Automate でフォルダを見張り、判定を一次審査の表に書き出すところまで組みます。この時点では照会の文案を作らず、missing_document と not_met_possible の件数だけを見ます。
2か月目: 補助額の計算と日付の照合、照会の文案を足します。担当職員が覆した判定を毎週数えます。3か月目以降: ほかの2つの補助金の要件の一覧を作り、1件48分が何分になったかを実測します。照会のあとの再提出が1回で済む申請が増え、異動の直後でも照会の内容が薄くならなくなった時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| 交付の申請に交付申請書と、役員情報届出書(法人の場合)、事業計画書、収支予算書、前年度決算書(法人その他の団体の場合)、工事を伴う場合の実施設計書と工事契約書の写し、その他市長が必要と認める書類を添えること。市長が申請の書類等により内容を審査して交付の決定をすること。交付が適当でないと認めたときは申請者に連絡すること。個別の補助金の対象事業・条件・金額・手続を要綱で定めること。暴力団員等は補助事業者となれないこと(令和7年4月1日施行の版) | 堺市: 堺市補助金交付規則 | 2026-10-06 |
| 行政機関等(地方公共団体の機関を含む)が生成AIサービスに個人情報を含むプロンプトを入力する場合、利用目的のための必要最小限であることを十分に確認すること。保有個人情報が応答の出力以外の目的で扱われる場合は法の規定に違反する可能性があり、提供事業者が機械学習に利用しないこと等を十分に確認すること(令和5年6月2日、別添1の資料で確認) | 個人情報保護委員会: 生成AIサービスの利用に関する注意喚起等について | 2026-10-06 |
| PDF の各ページが画像に変換され、取り出した文字と一緒に渡されること。1回のリクエストが最大32MB、最大600ページ(コンテキストが100万トークン未満のときは100)で、パスワード付き・暗号化された PDF は使えないこと。密度の高い PDF はページ数の上限より先にコンテキストを使い切ることがあること。文字の分が1ページあたり1,500〜3,000トークン程度であること | Claude Docs: PDF support | 2026-10-06 |
構造化出力が応答を JSON スキーマに沿わせ、型と必須の項目を守ること。拒否の応答や max_tokens に達した場合はスキーマに合わない出力になりうること | Claude Docs: Structured outputs | 2026-10-06 |
| 保持されたデータが明示の許可なくモデルの学習に使われないこと | Claude Docs: API and data retention | 2026-10-06 |
交付の要件と審査の手順は、各自治体の補助金交付規則と交付要綱で確かめてください。 本記事は堺市の補助金交付規則を例にとり、個人情報保護委員会の資料と製品の公開仕様で確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-0497)についてのご相談はこちらから。
