接待・贈答の事前申請を、社内規程の金額基準と相手方の区分(公務員・外国公務員・取引先)に照らして一次判定し、確認が要る点を申請者とコンプライアンス担当に返す
営業部門から届く接待・贈答の事前申請を読み、相手方が民間の取引先か、国家公務員か、外国公務員等かを見分けます。社内規程の金額基準と回数の条件に照らして確認が要る点を洗い出し、申請者への質問とコンプライアンス担当への申し送りを作ります。
- 生成AI
- ChatGPT/Claude/Gemini
- 連携・自動化
- Make/n8n/Power Automate
- 対象業界
- IT・SaaS/商社/建設/製造
- 対象部門
- 法務/総務
- 対象業務
- 内容確認・チェック/分類・仕分け
- 主な課題
- 判断に時間がかかる/属人化している/確認ミスが多い
- AIで行う処理
- 判定
- 主な効果
- 判断支援/品質標準化/工数削減
- 導入難易度
- ★★☆☆☆
- 実装レベル
- 半自動化
- 費用感
- API連携(中)
- 人間の確認
- 必須
01導入前 / 導入後の業務フロー
- 営業担当が申請フォームに日時、目的、相手方の会社名・所属・役職・人数、自社の参加者、店名、予算、贈答品の内容と金額を書いて出す
- 申請は上長の承認を経て、コンプライアンス課の共有の受付箱に入る
- 担当者が相手方の欄を読み、会社名から取引先マスタを引き、所属から官公庁・政府系機関に当たるかを調べる
- 予算を人数で割って1人あたりの金額を出し、規程の基準と比べる
- 過去の申請一覧を開き、同じ相手との直近12か月の接待の回数を数える
- 区分や人数が分からない申請は、申請者にメールで問い合わせ、返事を待つ
- 結果を申請に書き込み、承認ルートを決めて戻す
- 人営業担当が申請フォームに記入して出す(項目は第7章で見直す)
- 自動申請の提出をきっかけにワークフローが動き、取引先マスタ、官公庁・政府系機関の一覧、過去12か月の申請履歴を引く
- 自動予算と人数から1人あたりの金額を計算し、同じ相手との直近12か月の回数を数える
- 自動AIが相手方の区分の候補と根拠を出し、規程の条件ごとに `ok` / `flag` / `unknown` を付け、申請者に聞くべき点をまとめる
- 自動区分と印の組み合わせから、承認ルート(上長のみ/コンプライアンス課の確認/申請者への差し戻し)を規則で決める
- 自動差し戻しのものは、質問を1通にまとめて申請者に返す
- 人コンプライアンス課が、確認に回った申請を、AIの根拠と照合結果を見ながら判断する
- 人上長のみのルートに回った申請も、週に1回、件数の5%を抜き出してコンプライアンス課が見直す
各工程の詳しい説明を読む
- 営業担当が申請フォームに日時、目的、相手方の会社名・所属・役職・人数、自社の参加者、店名、予算、贈答品の内容と金額を書いて出す
- 申請は上長の承認を経て、コンプライアンス課の共有の受付箱に入る
- 担当者が相手方の欄を読み、会社名から取引先マスタを引き、所属から官公庁・政府系機関に当たるかを調べる
- 予算を人数で割って1人あたりの金額を出し、規程の基準と比べる
- 過去の申請一覧を開き、同じ相手との直近12か月の接待の回数を数える
- 区分や人数が分からない申請は、申請者にメールで問い合わせ、返事を待つ
- 結果を申請に書き込み、承認ルートを決めて戻す
(a)区分の見極めが人による。 「○○公社」が地方公共団体の出資法人なのか民間企業なのか、「××National Oil」が国営企業なのか、名前だけでは分かりません。ベテランの担当者は取引の経緯から知っていますが、新しく配属された担当者は調べるところから始まります。 同じ相手に対する判断が、担当者によって分かれることがあります。
(b)照合が手作業で漏れる。 1人あたりの金額の計算、直近12か月の回数の数え上げは、どちらも機械的な作業なのに、忙しい月ほど省かれます。 予算の欄に「2名で4万円程度」と書かれ、参加人数の欄には自社分を含めた4名と書かれている、というずれも珍しくありません。
(c)申請者との往復が多い。 相手方の所属が略称だけ、人数が「先方数名」、贈答品が「菓子折り」で金額なし。質問を1つ送って返事を待ち、また別の点を聞く、という往復で1件に数日かかります。最初に聞くべきことをまとめて聞けていれば、1往復で済んだ申請です。
(d)見るべき申請に時間が残らない。 300件のうち、本当にコンプライアンス課が考えるべきなのは、公務員や外国公務員等が相手のもの、基準を超えるもの、例外に当たるかの判断が要るもの、の一部です。残りの大半は民間の取引先との基準内の会食ですが、それを確かめるためにも同じ手順を踏んでいます。
- 【人】 営業担当が申請フォームに記入して出す(項目は第7章で見直す)
- 【自動】 申請の提出をきっかけにワークフローが動き、取引先マスタ、官公庁・政府系機関の一覧、過去12か月の申請履歴を引く
- 【自動】 予算と人数から1人あたりの金額を計算し、同じ相手との直近12か月の回数を数える
- 【自動】 AIが相手方の区分の候補と根拠を出し、規程の条件ごとに
ok/flag/unknownを付け、申請者に聞くべき点をまとめる - 【自動】 区分と印の組み合わせから、承認ルート(上長のみ/コンプライアンス課の確認/申請者への差し戻し)を規則で決める
- 【自動】 差し戻しのものは、質問を1通にまとめて申請者に返す
- 【人】 コンプライアンス課が、確認に回った申請を、AIの根拠と照合結果を見ながら判断する
- 【人】 上長のみのルートに回った申請も、週に1回、件数の5%を抜き出してコンプライアンス課が見直す
4番目と5番目を分けているのが、この設計の要です。 AIは「相手方の所属に『公社』とあり、取引先マスタの区分は地方公共団体の出資法人」という事実と根拠を返します。それをどのルートに回すかは、規程に沿って書いた規則が決めます。 規程の金額や回数が改定されても、直すのは規則だけです。
8番目を省かないでください。 上長のみのルートに回ったものは、AIが「民間の取引先」と判定したものです。判定を外れたものが混ざっていないかを確かめる手段が、抜き取りの見直ししかありません。
02今回想定するシステム構成
接待・贈答の事前申請(申請フォーム) ▼【トリガー】申請の提出(上長の承認後) Power Automate(連携) ├──▶ 取引先マスタ(区分:民間/官公庁/政府系機関/海外の国営企業) ├──▶ 官公庁・政府系機関の一覧(許認可・入札・補助金の関係の有無) ├──▶ 過去12か月の申請履歴(同じ相手との回数) └──▶ 1人あたり金額の計算 ▼ Claude API ── 相手方の区分の候補と根拠、規程の条件ごとの印付け │ ① 相手方の区分 ② 金額基準 ③ 回数 ④ 例外の条件 │ ⑤ 公務員の自己負担分 ⑥ 申請者に聞くべき点 ▼ Power Automate ── 規則で承認ルートを決める ├──▶ 上長のみ(民間・基準内) ├──▶ コンプライアンス課の確認(公務員・外国公務員等・基準超・区分不明) └──▶ 申請者への差し戻し(質問を1通にまとめる)
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| 処理 | Claude API(相手方の区分の判定と、規程の条件ごとの印付け) | OpenAI API、Gemini API |
| 連携 | Power Automate(申請の受け取り、マスタと履歴の照合、承認ルートの振り分け) | Make、n8n |
| 保管 | SharePoint リスト(申請、判定結果、承認の記録) | 既存の申請ワークフローのデータベース |
申請フォームと承認ワークフローは、新しく足すものではありません。 既存の申請の流れの途中に、判定を差し込む形です。取引先マスタに「区分」の列があるかが、最初の分かれ目になります。 無ければ、官公庁・独立行政法人・地方公共団体の出資法人・海外の国営企業に当たる取引先から印を付けていきます。
区分の物差しは、国の公開情報に置きます。 人事院は事業者向けのページで、国家公務員倫理法・国家公務員倫理規程が、国家公務員が「許認可の相手方」「立入検査の相手方」「契約の相手方」等の利害関係者から贈与や供応接待を受けることなどを禁止していると説明しています。国家公務員倫理規程の第3条は、禁止される行為として、利害関係者からの金銭・物品の贈与、供応接待、共に遊技やゴルフをすることなどを並べています。
例外も、同じ条に書かれています。 広く一般に配布するための宣伝用物品・記念品の贈与、多数の者が出席する立食パーティーでの飲食物の提供、職務として出席した会議での茶菓や簡素な飲食物の提供は、行うことができるとされています。申請の中に「記念品」「会議の茶菓」とあれば、例外の候補として印を付けるのが、AIの仕事の1つです。
外国の相手は、別の法律で見ます。 不正競争防止法の第18条は、国際的な商取引に関して営業上の不正の利益を得るために、外国公務員等に金銭その他の利益を供与し、またはその申込み・約束をすることを禁じています。外国公務員等には、外国の政府の公務に従事する者だけでなく、外国の政府が議決権の過半数を持つなどの事業者で、特に権益を付与されているものの事務に従事する者も含まれます。 「国営企業の調達担当」は、この区分の候補になります。
AIには Claude API を使い、構造化出力で受け取ります。 構造化出力は応答をJSONスキーマに沿わせる機能で、output_config.format にスキーマを渡します。区分や印の値を列挙型で固定でき、後段の規則がそのまま読めます。
03どうやって実装するのか
処理の起点を決める
申請が上長の承認を通り、コンプライアンス課の受付に入った時点で動かします。 上長の承認より前に動かすと、上長に差し戻されて書き直された申請を二度判定することになります。
1件ずつ、提出のたびに動かします。 1日1回まとめて処理すると、会食の前日に出た申請が翌日の判定になり、間に合わないまま実施される申請が出ます。 接待の申請は、実施日が近いものほど急ぎます。実施日まで3営業日を切った申請は、判定の結果にかかわらず、コンプライアンス課の受付の一覧で先頭に出します。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 申請の内容 | 実施日、種類(接待/贈答/その他の便宜)、目的、相手方の会社名・所属・役職・人数、自社の参加者、店名、予算、贈答品の内容と金額、相手方の費用負担の有無 | 申請フォーム |
| 取引先の情報 | 取引先コード、正式名称、別名・略称、区分、所在国、政府の出資の有無 | 取引先マスタ |
| 官公庁・政府系機関の一覧 | 機関名、許認可・入札・契約・補助金の関係の有無、担当部署 | コンプライアンス課が管理する一覧 |
| 過去の申請 | 直近12か月の、同じ相手方(会社・個人)との申請と実施の記録 | 申請の履歴 |
| 計算結果 | 1人あたりの金額、同じ相手との回数 | ワークフローが計算 |
| 社内規程 | 接待・贈答規程の該当条文(区分ごとの基準、例外、手続き) | 規程の文書 |
質を決めるのは、上から2番目と3番目です。 取引先マスタに区分が無ければ、AIは所属の文字列から推し量るしかありません。官公庁・政府系機関の一覧に「許認可・入札・契約の関係」が書かれていれば、AIはそれを根拠として示せます。 書かれていなければ、「関係があるかは不明」と返すだけです。
申請フォームには「相手方の費用負担の有無」の項目を足します。 国家公務員倫理規程の第8条は、職員が利害関係者の負担によらずに利害関係者と共に飲食をする場合でも、自己の飲食に要する費用が1万円を超えるときは、あらかじめ倫理監督官に届け出なければならないとしています(立食パーティーなどの例外があります)。割り勘であっても、相手の側に手続きが要る場面があるということです。自社の判定に使うのではなく、相手方に一言添えるかを営業担当が考える材料として返します。
データの取得方法を決める
| 取るもの | どこから | 何に使うか |
|---|---|---|
| 申請の各項目 | 申請フォームの送信データ | 判定の対象 |
| 取引先の区分 | 取引先マスタ(会社名・別名で引く) | 区分の第一の根拠 |
| 機関との関係 | 官公庁・政府系機関の一覧(機関名で引く) | 利害関係がありうるかの根拠 |
| 同じ相手との回数 | 申請の履歴(取引先コードと相手方の氏名で数える) | 回数の基準との照合 |
| 規程の条文 | 規程の文書から該当の条を切り出したもの | 判定の物差しと、根拠の引用 |
取引先マスタは、会社名の完全一致ではなく、別名・略称の列も使って引きます。 「△△公社」「△△ Public Corporation」「△△PC」が同じ相手であることは、マスタの別名に書いておかないと分かりません。引けなかったときは「マスタに無い」と記録し、AIの判定を区分の根拠にしません。
回数は、会社単位と個人単位の両方で数えます。 規程が「同じ相手との接待」と書くとき、それが会社なのか個人なのかは規程の解釈です。両方を数えて渡し、どちらで判定するかは規則の側に置きます。
AIへ渡す前に整形する
- 1人あたり金額の計算 … 予算 ÷ 相手方の人数(自社の参加者を含めない)。AIに計算させません。 予算の欄が「4万円程度」のような書き方なら、数値の部分を取り出し、取り出せなければ
unknownとして扱います - 通貨の換算 … 海外拠点の申請は現地通貨で書かれます。社内の月次の換算レートで円にしてから基準と比べます
- 相手方の人数の確認 … 「数名」「先方複数」のような書き方は数値として扱わず、申請者に聞く点に入れます
- 取引先マスタとの照合 … 正式名称と別名で引き、取引先コードと区分を付けます
- 機関の一覧との照合 … 所属の欄に機関名が含まれていれば、一覧の行を付けます
- 履歴の数え上げ … 直近12か月の、同じ取引先コード・同じ相手方の氏名の申請を数えます
- 個人の情報の扱い … 相手方の氏名は回数の数え上げにだけ使い、AIには役職と所属だけを渡します
AIに処理させる
させるのは、相手方の区分の候補を根拠付きで出すことと、規程の条件ごとに確認が要るかを印付けすること、申請者に聞くべき点をまとめることです。
| 見るもの | 判定の仕方 | 判断できないときの扱い |
|---|---|---|
| 相手方の区分 | 取引先マスタの区分を第一に、所属・役職の記述と機関の一覧で補う | マスタに無く、記述からも決められなければ unknown |
| 機関との関係 | 機関の一覧に許認可・入札・契約・補助金の関係が書かれているか | 一覧に無ければ「関係の有無は不明」 |
| 金額の基準 | 計算済みの1人あたり金額と、区分ごとの基準 | 金額が unknown なら印も unknown |
| 回数の基準 | 数え上げ済みの回数と、規程の上限 | 履歴が引けなければ unknown |
| 例外の候補 | 記念品・会議の茶菓・立食パーティーなどの記述があるか | 記述があいまいなら unknown |
| 自己負担の飲食 | 公務員が相手で、相手が自己負担し、1人あたりが1万円を超えるか | 負担の有無が書かれていなければ質問に入れる |
| 申請者に聞く点 | 上の unknown を埋めるのに必要な質問 | - |
区分の候補は、5つから選ばせます。 private(民間の取引先)、domestic_official(国家公務員・地方公務員)、quasi_public(独立行政法人・地方公共団体の出資法人など、公務員に準じた扱いを検討すべき相手)、foreign_official(外国公務員等の候補。外国政府の職員、国際機関の職員、外国政府が支配する事業者の職員を含む)、unknown です。
quasi_public を独立させているのは、ここで判断が割れるからです。 法令によって公務員とみなされる職員がいる法人もあれば、そうでない法人もあります。AIにどちらかを決めさせず、「準じた扱いを検討すべき」という印にとどめ、コンプライアンス課に回します。
| させないこと | 理由 |
|---|---|
| 利害関係者に当たるかの結論 | 相手の公務員の職務によって決まる。自社からは分からないことが多い |
| 贈賄・倫理規程違反に当たるかの結論 | 法的な評価は法務の判断 |
| 承認ルートの決定 | 規程に沿って書いた規則で決める |
| 1人あたり金額の計算 | ワークフローが計算した値だけを使う |
| 相手方の区分の「格下げ」 | 迷ったら厳しい側に倒す。private を選ぶのは根拠があるときだけ |
最後の行がいちばん大事です。 区分を誤って private にすると、公務員が相手の接待が上長の承認だけで通ります。逆に、民間の相手を quasi_public にしても、コンプライアンス課の手間が1件増えるだけです。 誤りの重さがまったく違うので、迷ったときの向きを指示で固定します。
指示内容を固定する
あなたは商社のコンプライアンス課で、接待・贈答の事前申請を一次確認する立場です。
渡された申請、照合結果、規程の条文だけを根拠にしてください。推測で補わないでください。
【相手方の区分(counterparty_category)】
- private ........... 民間の取引先
- domestic_official . 日本の国家公務員・地方公務員
- quasi_public ...... 独立行政法人、地方公共団体の出資法人など、
公務員に準じた扱いを検討すべき相手
- foreign_official .. 外国の政府・地方公共団体の公務に従事する者、国際機関の職員、
外国の政府が支配する事業者の職員の候補
- unknown ........... 上のどれとも決められない
【区分の決め方】
1. 取引先マスタの区分があれば、それを第一の根拠にしてください。
2. マスタに無いときは、所属・役職の記述と、官公庁・政府系機関の一覧で判断してください。
3. 迷ったときは、より厳しい区分を選んでください。
private を選ぶのは、マスタの区分か記述に、民間と判断できる根拠があるときだけです。
4. 「公社」「公団」「機構」「National」「State」などの語だけで区分を決めないでください。
語があることは、根拠ではなく確認のきっかけです。
【規程の条件ごとの印(status)】
- ok ...... 条件を満たしていることが、渡された値から確認できる
- flag .... 条件を超えている、または区分の扱い上コンプライアンス課の確認が要る
- unknown . 値が無い、またはあいまいで確認できない
迷ったときに ok を選ばないでください。
【厳守事項】
- 1人あたり金額と回数は、渡された計算結果をそのまま使ってください。計算し直さないでください。
- 利害関係者に当たるか、贈賄や倫理規程違反に当たるかは書かないでください。
- 承認してよいか、承認ルートをどうするかは書かないでください。
- 例外に当たりうる記述(記念品、会議の茶菓、立食パーティーなど)があれば、
例外の候補として印を付け、該当しうる規程の条を示してください。例外に当たると断定しないでください。
- evidence には、根拠にした申請の記述、マスタの値、規程の条文をそのまま写してください。
- 申請者への質問は、unknown を埋めるのに必要なものだけを、1つの文に1つずつ書いてください。
質問は丁寧語で、申請者が答えやすい選択肢を添えてください。
- 申請に書かれていない事実を、質問の前提にしないでください。
【申請】{application}
【照合結果】{lookup_result}
【規程の条文(区分ごと)】{policy_articles}
「語だけで区分を決めない」を明記しないと、名前に引きずられます。 「○○機構」という名の民間企業もあれば、ありふれた社名の国営企業もあります。語は確認のきっかけにとどめ、根拠はマスタと一覧に置きます。
出力形式を固定する
次の形のJSONで受け取ります。
{
"application_id": "",
"version": 1,
"counterparty_category": "private | domestic_official | quasi_public | foreign_official | unknown",
"category_evidence": [
{ "source": "master | application | agency_list", "text": "" }
],
"agency_relation": "license | procurement | subsidy | none_listed | unknown",
"checks": [
{ "rule": "amount_per_person", "status": "ok | flag | unknown",
"value": "", "policy_ref": "", "evidence": "" }
],
"exception_candidates": [
{ "type": "souvenir | meeting_refreshment | standing_party", "policy_ref": "", "evidence": "" }
],
"self_pay_notice": "applicable | not_applicable | unknown",
"questions_to_applicant": [""],
"note_for_compliance": ""
}
checks には amount_per_person(1人あたり金額)、frequency_12m(直近12か月の回数)、gift_value(贈答品の金額)、counterparty_count(相手方の人数)の4つを並べます。
1つ目の理由は、区分と印を後段の規則がそのまま読めることです。 構造化出力で列挙型を固定しておけば、foreign_official を「外国公務員」「Foreign official」と書き分けられて規則が読めなくなる、ということが起きません。
2つ目は、承認ルートを規則で決められることです。
| 条件 | 承認ルート |
|---|---|
区分が private で、checks がすべて ok | 上長のみ |
区分が private で、flag があるが金額の上位基準内 | 役員承認へ |
区分が domestic_official / quasi_public / foreign_official | コンプライアンス課の確認 |
区分が unknown | コンプライアンス課の確認 |
unknown の印があり、questions_to_applicant がある | 申請者への差し戻し(区分が民間以外なら課にも並行して回す) |
なお、JSONスキーマの定義には個人の情報を入れません。 Claude の公式ドキュメントでは、構造化出力のスキーマはメッセージの内容とは別にキャッシュされると説明されています。列挙型の値に取引先名や機関名を並べず、区分のような抽象的な値にとどめます。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 申請フォーム・承認ワークフロー | Power Automate のトリガー | 上長の承認を通った申請を受け取る |
| 取引先マスタ | 読み取り | 区分、別名、政府の出資の有無を引く |
| 官公庁・政府系機関の一覧 | 読み取り | 機関との関係の有無を引く |
| 申請の履歴 | 読み取り | 直近12か月の回数を数える |
| Claude API | API呼び出し | 区分の候補、条件ごとの印、質問 |
| 承認ワークフロー | 申請への書き込み | 承認ルートと、申請者への質問 |
| SharePoint リスト | 書き込み | 判定結果と根拠の記録 |
取引先マスタは読み取りだけです。 AIが foreign_official と判定した相手も、マスタの区分を自動で書き換えません。 書き換えるかは、コンプライアンス課が確認したうえで決めます。自動で書き換えると、誤った判定が次の申請の「根拠」になってしまいます。
人が確認する
- 区分が民間以外のものは、コンプライアンス課が全件見る …
category_evidenceとagency_relationを読み、規程の扱いに沿って判断します。例外の候補が付いていても、例外に当たるかは担当者が決めます - 区分が
unknownのものは、まず取引先マスタを直す … マスタに無い相手が多ければ、判定より先にマスタの整備が要ります - 民間の申請は、上長の承認に任せる … ただし週に1回、件数の5%を抜き出し、区分の判定を見直します
- 判定を覆したら記録する … どの区分から、どの区分に変えたか、根拠は何かを残します
1番目が、この構成でコンプライアンス課が使う時間のほとんどです。 300件のうち民間以外の区分や unknown が2〜3割と想定すると、課が開くのは60〜90件です。これまで300件に同じ手順を踏んでいた時間を、この60〜90件に集めます。
例外に対処する
| 起きること | 対応 |
|---|---|
| 相手方の会社がマスタに無い | 区分は unknown。AIの判定を区分の根拠にしない。 コンプライアンス課でマスタに足す |
| 相手方の人数が「数名」 | 1人あたり金額が出せないので unknown。申請者に人数を聞く |
| 民間と公務員が同じ席にいる | いちばん厳しい区分で扱う。 相手方を区分ごとに分けて書いてもらう |
| 実施日が過ぎてから出た申請 | 事後申請として印を付け、判定はするが承認ルートに関係なくコンプライアンス課へ |
| 現地通貨の金額 | 月次の換算レートで円にする。レートが無い通貨は unknown |
| 申請が英語や現地語で書かれている | そのまま判定させる。根拠の引用は原文のまま残す |
| 実施日まで3営業日を切っている | 判定の結果にかかわらず、受付の一覧の先頭に出す |
| AIの応答が途中で切れた・拒否された | 結果を使わず、コンプライアンス課の確認に回す |
| 規程が改定された | 規程の版を判定結果に残し、改定日以降の申請は新しい条文で判定する |
3行目は、見落とされやすい型です。 民間の取引先との会食に、取引先が招いた官公庁の職員が同席する、ということがあります。申請書の相手方の欄に会社名だけが書かれていると、同席者の区分は分かりません。 申請フォームに「相手方に公務員・政府系機関の職員が含まれるか」の問いを足し、「分からない」を選べるようにしておきます。
8行目は、構造化出力でも起こります。 公式ドキュメントは、拒否や max_tokens 到達時にスキーマに合わない出力になりうるとしています。stop_reason を見て、正常に終わらなかったものは使いません。
記録を残す
- 申請の全版(書き直しを含む)と、提出・承認の日時
- 照合に使った取引先マスタの区分と、機関の一覧の行(そのときの値)
- 計算した1人あたり金額と回数
- AIの出力の全文(区分、根拠、印、質問)と、使った規程の版
- 承認ルートと、コンプライアンス課の判断の記録
- 判定を覆した記録 … どの区分・印を、どちらに変えたか
2つ目で「そのときの値」を残すのは、マスタの区分が後から変わるためです。 区分を private から foreign_official に直したとき、過去にどの申請がどの区分で通ったかが分からないと、見直す範囲が決まりません。
04実装レベルの3段階
本記事の想定は半自動化です。 照合と質問の作成が自動になり、コンプライアンス課は民間以外と unknown の申請に集中します。承認ルートの振り分けは、半自動化の段階ではAIの印をもとに担当者が決め、規則の妥当性を確かめます。 本格構成に進むのは、規則の振り分けと担当者の判断が数か月そろってからです。 自動にすると private の申請は課の目に触れなくなるため、抜き取りの見直しを先に動かします。
05工数削減シミュレーション
導入後 300件 × 4分 ÷ 60 = 20 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 官公庁・政府系機関・海外の国有企業と取引があり、営業部門から接待・贈答の事前申請が月に数百件届く商社・建設会社・メーカー。申請の一次確認を法務・コンプライアンスの数名で回していて、相手方が公務員に当たるかの見極めが担当者の経験に頼っている場合。申請をフォームで受け付けており、取引先マスタと過去の申請履歴を引ける場合。
- 接待・贈答の申請が月に数件で、担当者が1件ずつ相談に乗れている場合。相手方が民間の取引先に限られ、公務員や外国公務員等と接する場面がない場合。社内規程に金額基準や相手方の区分ごとの扱いが定められておらず、判定の物差しが無い場合。なお、贈賄や倫理規程違反に当たるかどうかの法的な判断は、この構成では代替できません。
07最小構成で試す方法
- 過去3か月の申請から30件を選ぶ(うち10件は、相手方が官公庁・政府系機関・海外の国営企業だったものを入れる)
- その30件について、当時コンプライアンス課がどう判断したかを記録から書き出す
- 規程の区分ごとの条文と、取引先マスタの該当行を用意する
- 手元のAIサービスに、規程の条文と1件ずつの申請(相手方の氏名は伏せる)を貼り、「相手方の区分を5つから選び、根拠を示してください。迷ったら厳しい区分を選んでください。利害関係者に当たるかは書かないでください」と指示する
- 出てきた区分を、当時の判断と突き合わせる
10件の官公庁・政府系の申請が、この試験の本体です。 民間の会食を private と言い当てても、何も確かめたことになりません。
| 出てきた内容 | 判断 |
|---|---|
| 当時の判断と同じか、より厳しい区分が出た | ワークフローへの組み込みに進む |
官公庁・政府系の相手を private にした | 指示とマスタの見直しが先。ここが直らないうちは組み込まない |
| 根拠に申請に無い事実を書いた | 指示の書き方で直る。構成は有効 |
2行目が出たら、必ず理由を見てください。 多くはマスタに区分が無い相手で、AIではなくマスタの問題です。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 名前に「公社」「機構」があるだけで区分を決める | 語は確認のきっかけ。 根拠はマスタと一覧に置く |
迷った申請を private にする | 「迷ったら厳しい区分」を指示に書き、private は根拠があるときだけ |
| 1人あたり金額をAIが計算する | ワークフローで計算し、AIには結果だけを渡す |
| 自社の参加者まで人数に入れて割る | 相手方の人数だけで割る。申請フォームの項目を分ける |
| 同席者に公務員がいることが分からない | 申請フォームに「公務員・政府系機関の職員が含まれるか」を足す |
| 規程の全文を渡して関係の無い条を引く | 区分ごとの条を切り出して渡す |
| 例外に当たると断定する | 「例外の候補」として印を付けるだけ。決めるのは担当者 |
| AIの判定でマスタを書き換える | マスタは読み取りだけ。 更新は担当者が確認してから |
| 質問が何通にも分かれる | questions_to_applicant を1通にまとめて返す |
| 抜き取りの見直しをやめる | private の誤りを見つける手段は抜き取りしかない |
| 規程の改定が判定に反映されない | 規程の版を記録し、改定日で切り替える |
| 利害関係者に当たるかをAIに書かせる | 相手の職務で決まり、自社からは分からない。書かせない |
上の2行が、この構成の失敗のほとんどです。 どちらも区分を「確からしさ」で決めたときに起きます。避けたいのは公務員が相手の接待が民間として通ることで、迷ったときの向きを固定して防ぎます。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 取引先・官公庁・海外の政府系企業との関係、接待・贈答の内容と金額、自社の参加者、相手方の所属と役職です。相手方の氏名は、回数の数え上げにだけ使い、AIには渡しません。
- AIに渡す範囲を、判定に必要な項目に限る … 区分の判定に要るのは所属と役職で、氏名は要りません。自社の参加者の氏名も渡しません
- 承認を自動で確定させない … AIと規則が出すのは承認ルートの振り分けまでです。承認は、これまでどおり人が押します
- この構成は法的な判断を代替しません … 贈賄や倫理規程違反に当たるか、例外に当たるかは、法務とコンプライアンス課が決めることです。この構成が出すのは、区分の候補と根拠、条件ごとの印だけです
- データの保持を確認する … Claude の公式ドキュメントでは、保持されたデータは明示の許可なくモデルの学習に使われないとされ、ゼロデータ保持の取り決めもあります。構造化出力は、プロンプトと出力は保存されず、JSONスキーマだけが最後の利用から最大24時間キャッシュされるとされています。スキーマに取引先名や機関名を入れないでください
- 判定の記録を、説明の材料として残す … 後から「なぜこの申請は上長の承認だけで通ったのか」と問われたとき、そのときのマスタの区分、AIの根拠、規則の版がそろっていれば説明できます
誤りが起きた場合のリスクは、公務員・外国公務員等が相手の接待や贈答が、民間の基準で通ることです。 区分を厳しい側に倒すこと、private の抜き取りを続けること、の2つで守ります。
10まず何から始めるか
1週目:取引先マスタに区分の列を足す
取引先マスタに「区分」と「政府の出資の有無」の列を足し、官公庁・独立行政法人・地方公共団体の出資法人・海外の国営企業に当たる取引先から埋めます。すべての取引先を一度に埋める必要はありません。過去12か月に接待・贈答の申請があった相手から始めます。
2週目:30件で試す
過去の申請から30件を選び、手元のAIサービスで区分の判定をさせます。官公庁・政府系の相手の10件で、private が出ていないかを最優先で見ます。
3週目:申請フォームを直す
「相手方の人数(自社を含めない)」「公務員・政府系機関の職員が含まれるか」「相手方の費用負担の有無」の3項目を足します。ここを直すだけで、申請者との往復が減ります。
4週目:照合と印付けをつなぐ
Power Automate で申請を受け、マスタと履歴を照合し、AIの印と質問を申請に書き込むところまで作ります。この時点では承認ルートを自動で振り分けず、担当者が印を見て決めます。
2か月目: 承認ルートの規則を書き、担当者の判断と規則の振り分けを並べて比べます。3か月目以降: 抜き取りの見直しを毎週回し、1件12分が何分になったかを実測します。private の誤りが続けて出なくなり、マスタの unknown が減った時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| 国家公務員倫理法・倫理規程が、国家公務員が「許認可の相手方」「立入検査の相手方」「契約の相手方」等の利害関係者から贈与や供応接待を受けることなどを禁止していること。倫理審査会が事業者からの照会や具体的な事例の相談を受け付けていること | 人事院: 経済団体、民間企業等の皆様へ | 2026-10-07 |
| 第3条が利害関係者からの金銭・物品等の贈与、供応接待、共に遊技・ゴルフをすること等を禁止し、宣伝用物品・記念品、立食パーティー、会議での茶菓・簡素な飲食物などを例外とすること。第8条が、利害関係者の負担によらずに共に飲食する場合でも、自己の飲食費が1万円を超えるときは倫理監督官への届出を求めること | e-Gov 法令API: 国家公務員倫理規程 | 2026-10-07 |
| 第18条が、国際的な商取引に関して営業上の不正の利益を得るために外国公務員等に利益を供与すること等を禁じ、外国公務員等に外国政府の公務に従事する者、国際機関の職員、外国政府が議決権の過半数を持つ等の事業者で特に権益を付与されているものの事務に従事する者などを含めていること | e-Gov 法令API: 不正競争防止法 | 2026-10-07 |
構造化出力が output_config.format で応答をJSONスキーマに沿わせること。拒否や max_tokens 到達時にはスキーマに合わない出力になりうること | Claude Docs: Structured outputs | 2026-10-07 |
| 保持されたデータが明示の許可なくモデルの学習に使われないこと。ゼロデータ保持の取り決めがあること。構造化出力ではプロンプトと出力が保存されず、JSONスキーマだけが最後の利用から最大24時間キャッシュされること | Claude Docs: API and data retention | 2026-10-07 |
相手方が利害関係者に当たるか、贈賄や倫理規程違反に当たるかの判断は、法務部門と必要に応じて弁護士が行ってください。 本記事は公開の法令と製品の公開仕様で確認できた範囲だけを扱っています。社内規程の金額や回数はモデル条件として置いた例です。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-0654)についてのご相談はこちらから。
