Media > AI活用ユースケース > 総務 > 工場の総務が来訪者・工事業者の入構申請を Power Automate で受け、作業の危険と入る区域から教育の受講と保護具の要否を確かめて、入構証の発行と当日の連絡を回す

工場の総務が来訪者・工事業者の入構申請を Power Automate で受け、作業の危険と入る区域から教育の受講と保護具の要否を確かめて、入構証の発行と当日の連絡を回す

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

工場の入構申請に書かれた作業の内容から、来訪の種別と、火気・高所・電気などの作業の危険を判定します。入構者教育の受講と保護具の要否は台帳と表で確かめ、入構証の番号と当日の連絡を守衛所と職場へ回します。

サマリー
生成AI
Azure OpenAI Service
連携・自動化
Make/n8n/Power Automate/Zapier
対象業界
建設/物流/製造
対象部門
総務
対象業務
内容確認・チェック/分類・仕分け
主な課題
人手が足りない/属人化している/確認ミスが多い
AIで行う処理
判定
主な効果
入力漏れ削減/品質標準化/工数削減
導入難易度
★★☆☆☆
実装レベル
半自動化
費用感
ノーコード連携(中)
人間の確認
条件付き
現在工数
90h/月
AI導入後
30h/月
想定削減
67%
年間削減
720h
モデル条件による試算値です。実在企業の実績ではありません。

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

導入前(Before)
  1. 受入担当が紙の入構申請を書き、総務へ回す
  2. 総務が作業の内容を読み、来訪の種別と、火気・高所などの作業が含まれるかを見る
  3. 入構者教育の受講の記録を開き、入構する人の名前と受講日を探す
  4. 安全衛生の規程を見て、入る区域と作業に要る保護具を書き込む
  5. 火気・高所の作業があれば、安全衛生の担当へ回して作業の許可の手続きを頼む
  6. 入構証の番号を振り、守衛所の入構予定表に書く
  7. 受入担当と、作業が行われる職場へ、当日の作業を電話かメールで伝える
導入後(After)
  1. 人受入担当が Microsoft Forms の入構申請に、会社名、入構する人、来訪日、入る区域、作業の内容、車両を書いて送る
  2. 自動Power Automate のフローが動き、回答の中身を取る
  3. 自動AI Builder のプロンプトが、来訪の種別と作業の危険を判定し、根拠の言葉を返す
  4. 自動入構者教育の受講の記録を、入構する人ごとに会社名と名前で引き、受講日が1年以内かを式で確かめる
  5. 自動入る区域と作業の危険の組合せで、保護具の表から要る保護具を引く
  6. 自動火気・高所・酸素欠乏のおそれのある場所などの作業があれば、安全衛生の担当へ承認を求める
  7. 人安全衛生の担当が作業の内容を確かめ、承認するか差し戻す
  8. 自動承認された(または承認の要らない)申請に入構証の番号を振り、入構予定のリストに書く
  9. 自動受入担当へ、受講が要る人と保護具を書いた連絡を送る
  10. 自動来訪日の朝、守衛所と作業が行われる職場の Teams に、その日の入構と作業の一覧を流す
各工程の詳しい説明を読む
  1. 受入担当が紙の入構申請を書き、総務へ回す
  2. 総務が作業の内容を読み、来訪の種別と、火気・高所などの作業が含まれるかを見る
  3. 入構者教育の受講の記録を開き、入構する人の名前と受講日を探す
  4. 安全衛生の規程を見て、入る区域と作業に要る保護具を書き込む
  5. 火気・高所の作業があれば、安全衛生の担当へ回して作業の許可の手続きを頼む
  6. 入構証の番号を振り、守衛所の入構予定表に書く
  7. 受入担当と、作業が行われる職場へ、当日の作業を電話かメールで伝える

(a)短い言葉から危険を見落とす。 「屋根の配管の補修」に溶接が含まれるのか、「分電盤の更新」で停電の作業があるのか。書かれた言葉からは読み取れないことが多く、 総務の担当ごとに、受入担当へ聞き返すかどうかが分かれます。

(b)教育の受講の確認が抜ける。 業者が10人で来ると、10人分の名前を表計算で探します。名前の表記ゆれ(髙と高、会社名の略し方)で見つからない人がいると、 忙しい日は「前にも来ている」と見なして通すことがあります。

(c)保護具の決まりが担当の記憶に頼る。 製造棟の中は安全靴と保護メガネ、危険物倉庫は静電気の対策、屋根は墜落制止用器具。規程を開かずに覚えている担当と、毎回開く担当で、書き込みが違います。

(d)当日の連絡が職場に届かない。 受入担当には伝わっても、作業が行われる隣の職場には伝わらず、 自分の職場の上で業者が作業していることを当日知る、ということが起きます。

  1. 【人】 受入担当が Microsoft Forms の入構申請に、会社名、入構する人、来訪日、入る区域、作業の内容、車両を書いて送る
  2. 【自動】 Power Automate のフローが動き、回答の中身を取る
  3. 【自動】 AI Builder のプロンプトが、来訪の種別と作業の危険を判定し、根拠の言葉を返す
  4. 【自動】 入構者教育の受講の記録を、入構する人ごとに会社名と名前で引き、受講日が1年以内かを式で確かめる
  5. 【自動】 入る区域と作業の危険の組合せで、保護具の表から要る保護具を引く
  6. 【自動】 火気・高所・酸素欠乏のおそれのある場所などの作業があれば、安全衛生の担当へ承認を求める
  7. 【人】 安全衛生の担当が作業の内容を確かめ、承認するか差し戻す
  8. 【自動】 承認された(または承認の要らない)申請に入構証の番号を振り、入構予定のリストに書く
  9. 【自動】 受入担当へ、受講が要る人と保護具を書いた連絡を送る
  10. 【自動】 来訪日の朝、守衛所と作業が行われる職場の Teams に、その日の入構と作業の一覧を流す

7番目は省けません。 AIが「火気なし」と判定しても、安全衛生の担当は承認の要らない申請の一覧も毎朝流し見ます。 判定の取りこぼしを、人の目でもう一度拾います。

4番目と5番目は、AIを使いません。 受講日は台帳の値、保護具は表の値で決まります。AIに受講が有効かを言わせると、名前が見つからない人を「前にも来ている」と見なすことになります。

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

構成図
社内の受入担当
   ▼ Microsoft Forms(入構申請)
   ▼【トリガー】When a new response is submitted
Power Automate(申請のフロー)
   ├──▶ Get response details
   ├──▶ AI Builder:Run a prompt(来訪の種別と作業の危険の判定。JSON 出力)
   ├──▶ SharePoint:Get items(受講の記録。会社名と名前で引く)
   ├──▶ SharePoint:Get items(保護具の表。区域と危険で引く)
   ├──▶ 条件:火気・高所・酸素欠乏・電気の作業がある
   │      └ Approvals:Start and wait for an approval of text(安全衛生の担当)
   ├──▶ SharePoint:Create item(入構予定のリスト。入構証の番号)
   └──▶ Office 365 Outlook:Send an email from a shared mailbox (V2)(受入担当へ)

Power Automate(当日のフロー)
   ▼【トリガー】Recurrence(毎日 7:00)
   ├──▶ SharePoint:Get items(その日の入構予定)
   └──▶ Teams:Post message in a chat or channel(守衛所・職場ごとのチャネル)
役割想定する製品代替候補
ワークフローPower Automate(クラウドフロー、Approvals)Make、n8n、Zapier
生成AIAI Builder のプロンプト(Run a prompt、JSON 出力)Azure OpenAI(Microsoft Foundry)
連携SharePoint リスト(受講の記録、保護具の表、入構予定)Microsoft Lists
入力Microsoft Forms(入構申請)Power Apps のキャンバスアプリ
通知Microsoft Teams(守衛所・職場のチャネル)Outlook のメール

新しく足すのは、入構申請のフォームと、3つのリストと、2本のフローです。 受講の記録の表計算と、安全衛生の規程の保護具の決まりを、SharePoint のリストに移します。 保護具の表は、行を「入る区域」、列を「作業の危険」にした形にします。

入口は Microsoft Forms の When a new response is submitted です。 公式のページでは、このトリガーは回答の番号を返し、中身は Get response details で取ります。 フォームを出すのは社内の受入担当で、業者が直接フォームに書く形にはしません。 受入担当が作業の中身を聞き取り、責任を持って申請します。

AIは AI Builder のプロンプトを Run a prompt で呼びます。 公式のページでは、プロンプトの入力に前の手順の内容を入れられ、AIの出力の後に「Start and wait for an approval of text」で人の確認を挟む手順が案内されています。この構成では、承認を求める先を安全衛生の担当にします。

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

Step1

処理の起点を決める

申請のフローは、入構申請のフォームが送られたときに動きます。 受入担当が申請を出したその時に判定し、作業の許可が要るものは、すぐに安全衛生の担当へ承認を求めます。 来訪日の前日にまとめて見ると、許可の手続きが間に合わず、業者の作業が延びます。

当日のフローは、Recurrence で毎朝7時に動きます。 守衛所の交代と、製造の職場の朝礼の前に、その日の入構と作業の一覧が届くようにします。朝礼で「今日は屋根で溶接がある」と伝えられれば、職場の側も上を通る動線と換気を前もって決められます。

来訪日の変更は、新しい申請として出し直してもらいます。 申請の番号を書く欄を置き、出し直しの申請は前の申請を「取消」にしてから判定します。 同じ業者の同じ作業が2行並ぶと、守衛所の一覧が混乱します。

Step2

入力データを集める

データ中身取得元
入構申請受入担当、会社名、入構する人の名前(複数)、来訪日と時間帯、入る区域(選択、複数可)、作業の内容(自由記述)、車両の番号、持ち込む機材Microsoft Forms
受講の記録会社名、名前、名前の読み、受講日SharePoint リスト
保護具の表区域ごと・作業の危険ごとの保護具(ヘルメット、安全靴、保護メガネ、墜落制止用器具、静電気の対策の作業服など)SharePoint リスト
区域と職場の表区域と、そこを受け持つ職場、職場の Teams のチャネルSharePoint リスト

質を決めるのは、作業の内容の書き方と、保護具の表です。 作業の内容の欄には、「何を、どこで、どうやって」を書くよう説明を付けます。「ポンプの点検」だけでなく「2号棟の屋上のポンプの分解点検。グラインダーを使う」のような書き方の見本を、フォームに載せます。

受講の記録は、名前の読みの列を持たせます。 漢字の表記ゆれ(髙と高、﨑と崎)で引けないことを防ぐため、会社名と名前の読みでも引けるようにします。 読みはフォームの入構する人の欄にも書いてもらいます。

Step3

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

取るものどこから何に使うか
申請の中身Get response details判定の材料
受講日SharePoint の Get items(Filter Query で会社名と名前の読み)受講が有効かの確認
要る保護具SharePoint の Get items(Filter Query で区域)区域と危険の組合せの保護具
その日の入構予定SharePoint の Get items(Filter Query で来訪日)当日の一覧

受講日の有効の確認は、フローの式で行います。 受講日に1年を足した日が来訪日より後かを、式で比べます。見つからない人と、受講日が1年より前の人は、「受講が要る」として受入担当へ返します。

保護具は、区域ごとに引いてから、作業の危険の列を合わせます。 公式のページでは、Get items の Filter Query は OData の書き方で返す行を絞れます。区域の行を引き、AIの判定で true になった危険の列の保護具を足し合わせます。区域が複数なら、区域ごとの保護具をすべて合わせます。

入構する人が複数なら、受講の確認は1人ずつ回します。 フローの繰り返しで名前と読みの組ごとに Get items を呼び、受講が要る人だけを集めた一覧を作ります。10人のうち1人だけが未受講なら、受入担当にはその1人の名前だけが届きます。全員分の結果を並べて送ると、受講が要る人が埋もれます。

Step4

AIへ渡す前に整形する

  1. 入構する人の分割 … 名前の欄を1人ずつに分け、名前の読みと組にします
  2. 来訪日の確認 … 来訪日が過去、または申請の日から翌日までのものは「急ぎ」の印を付けます
  3. 区域の確認 … 区域の選択が空なら、AIを呼ばずに受入担当へ聞き返します
  4. 作業の内容の長さの確認 … 数文字(「点検」「打合せ」)なら、見本の書き方で書き直してもらう連絡を送ります
  5. 重複の確認 … 同じ会社・同じ来訪日・同じ区域の申請があれば、二重の申請として印を付けます

4番目は、AIの判定の質を決めます。 「点検」だけでは、AIは危険を判定できず、判定できないことを「危険なし」と返しがちです。 短すぎる作業の内容は、AIに渡す前に止めます。

見学と商談の来訪は、区域が事務所棟だけなら判定を簡単にします。 入る区域の選択で事務所棟だけが選ばれ、作業の内容が「打合せ」なら、AIを呼ばずに「来客」として保護具なしで進めます。

Step5

AIに処理させる

させるのは、作業の内容と区域から、来訪の種別を1つ選び、作業に含まれる危険を真偽で返し、根拠の言葉を書き出すことだけです。

来訪の種別中身
meeting見学、商談、打合せ。作業をしない
delivery納品、引取り。荷の積み下ろしだけ
maintenance設備の点検、保守、修理
construction建屋・配管・電気の工事、設備の据付け、解体
other上のどれとも決められない
作業の危険立てる手がかりの例
hot_work溶接、溶断、グラインダー、バーナー、はんだ付け
work_at_height屋根、屋上、足場、高所作業車、脚立での天井の作業
electrical分電盤、受電設備、停電、配線の切替え
confined_spaceタンクの内部、槽、ピット、マンホール
chemicals薬品、溶剤、塗装、配管の内容物の抜き取り
craneクレーン、ホイスト、玉掛け、重量物のつり上げ
させないこと理由
作業を許可する安全衛生の担当と職場の責任者が決める
要る保護具を書く区域と危険の組合せの表で決める
受講が有効かを答える受講の記録と受講日で決める
書かれていない危険を「無い」と言い切る書かれていないことは分からない
安全の措置を提案する措置は安全衛生の担当が決める

4行目がいちばん大事な線です。 「ポンプの分解点検」と書かれていると、AIは溶接の言葉が無いので hot_work を false にします。それ自体は正しい判定ですが、「火気は無い」と言い切っているわけではありません。 そこで、危険ごとに true/false に加えて、作業の内容からは分からないことを示す unclear_hazards を返させます。

Step6

指示内容を固定する

あなたは工場の総務で、入構申請の作業の内容から、作業に含まれる危険を判定します。
申請に書かれた言葉だけを根拠にしてください。

【入力】
- 来訪の目的と作業の内容:{work_description}
- 入る区域:{areas}
- 持ち込む機材:{equipment}

【来訪の種別】visit_type を1つ選ぶ:meeting, delivery, maintenance, construction, other

【作業の危険】次を true / false で返す。
- hot_work:溶接、溶断、グラインダー、バーナーなど火花や炎を出す作業
- work_at_height:屋根、屋上、足場、高所作業車、脚立での天井の作業
- electrical:分電盤、受電設備、停電、配線の切替え
- confined_space:タンク・槽・ピット・マンホールの内部に入る作業
- chemicals:薬品・溶剤・塗料を使う、配管の内容物を抜く
- crane:クレーン、ホイスト、玉掛け、重量物のつり上げ
それぞれ true にした根拠の言葉を evidence に写す。

【分からないこと】
作業の内容から、ある危険が含まれるかどうか判断できないときは、
その危険の名前を unclear_hazards に入れる(例:「配管の補修」は溶接の有無が分からない)。

【厳守事項】
- 作業を許可してよいか、どの保護具が要るか、どの安全の措置を取るかを書かないでください。
- 書かれていない危険を推し量って true にしないでください。代わりに unclear_hazards に入れてください。
- 持ち込む機材に危険を示す機材(溶接機、高所作業車など)があれば、その危険を true にしてください。
- Don't include JSON markdown in your answer.

「推し量って true にせず、unclear_hazards に入れる」が、この指示の要です。 推し量って true にさせると、承認の依頼が増えすぎて安全衛生の担当が流し見るようになります。逆に false で済ませると、溶接を含む補修が承認を通らずに入ります。 分からないことを分からないと返させ、unclear_hazards が空でなければ受入担当に聞き返す分岐を置きます。

持ち込む機材を入力に入れるのは、作業の内容より機材のほうが正直だからです。 「配管の補修」と書かれていても、持ち込む機材の欄に「溶接機」とあれば、火気の作業です。

Step7

出力形式を固定する

プロンプトの出力を JSON にし、形を Custom で固定します。

{
  "visit_type": "construction",
  "hazards": {
    "hot_work": true,
    "work_at_height": true,
    "electrical": false,
    "confined_space": false,
    "chemicals": false,
    "crane": false
  },
  "evidence": [
    {"hazard": "hot_work", "text": "持ち込む機材:アーク溶接機"},
    {"hazard": "work_at_height", "text": "3号棟の屋根の配管の補修"}
  ],
  "unclear_hazards": [{"hazard": "electrical"}]
}

1つ目の理由は、hazards の真偽を承認の条件と保護具の表の列にそのまま使えることです。 フローの条件で、hot_work・work_at_height・confined_space・electrical のどれかが true なら承認へ。保護具の表の列の名前を hazards の名前とそろえておけば、 true の列の保護具を足すだけで済みます。

2つ目は、形が実行のたびに変わらないことです。 公式のページでは、JSON の例を書き換えると形が Custom になり、保存したときの形がフローで使われ、変わりません。 evidence と unclear_hazards は、キーを持つ要素の配列で例を書きます。キーの無い配列の形は定義できないとされています。

3つ目は、evidence を承認の依頼に載せられることです。 安全衛生の担当は、申請の全文を開かずに、なぜ火気と判定されたかを読めます。

Step8

システムへ連携する

つなぎ先方式内容
Microsoft FormsWhen a new response is submitted、Get response details入構申請を拾う
AI BuilderRun a prompt来訪の種別と作業の危険の判定
SharePointGet items、Create item、Update item受講の記録と保護具の表を引き、入構予定を書く
ApprovalsStart and wait for an approval of text火気・高所などの作業の承認
Office 365 OutlookSend an email from a shared mailbox (V2)受入担当への連絡
Microsoft TeamsPost message in a chat or channel当日の一覧を守衛所と職場へ

受入担当への連絡は、総務の共有メールボックスから送ります。 公式のページでは、Send an email from a shared mailbox (V2) はフローのアカウントにそのメールボックスへのアクセス権が要ります。 本文には、入構証の番号、受講が要る人、要る保護具、承認の結果を決まった形で書きます。業者への連絡は受入担当が行い、 フローから業者へは送りません。

当日の一覧は、区域を受け持つ職場のチャネルに分けて流します。 区域と職場の表から職場のチャネルを引き、その職場の区域で行われる作業だけを流します。公式のページでは、Teams の投稿は約28KBまで、プライベートチャネルには投稿できないとされています。第3章の(d)の「隣の職場に伝わらない」は、ここで止めます。

Step9

人が確認する

  1. 安全衛生の担当が承認する … 火気・高所・酸素欠乏・電気の作業の申請を、evidence と作業の内容で確かめ、作業の許可の手続き(火気の使用の届けなど)と合わせて承認するか差し戻します
  2. unclear_hazards を受入担当が答える … 聞き返しの連絡に、溶接の有無などを書いて返します。返事で申請を直し、判定をやり直します
  3. 受講が要る人を受入担当が手配する … 来訪日までに入構者教育を受けてもらうか、当日の入構の前に受けてもらいます
  4. 毎朝、安全衛生の担当が承認の要らなかった申請を流し見る … AIの取りこぼしを拾います
  5. 守衛所が入構のときに保護具を確かめる … 一覧の保護具と、業者が着けているものを見比べます

承認の依頼には、判定の材料をすべて載せます。 作業の内容、持ち込む機材、入る区域、evidence、unclear_hazards を並べ、安全衛生の担当が申請の画面を開かずに決められるようにします。差し戻すときは理由を書いてもらい、その理由をそのまま受入担当への連絡に入れます。承認を待つあいだはフローが止まるので、来訪日の前日の夕方までに承認が無いものは、守衛所の一覧に「承認待ち」と出します。

4番目を省かないでください。 AIが false を返した申請の中に、「天井の照明の交換」のような高所の作業が混ざります。一覧で区域と作業の内容を流し見るだけで、数分で済みます。

目標は、600件をならして1件3分です。 来客と納品はほぼ確かめるだけ、工事と保守は承認と聞き返しに時間がかかります。

Step10

例外に対処する

起きること対応
受講の記録に名前が見つからない「受講が要る」として受入担当へ。「前にも来ている」と見なさない
作業の内容が短すぎるAIを呼ばず、書き直しを頼む
unclear_hazards が空でない受入担当に聞き返し、返事で判定をやり直す
承認が差し戻される入構予定に書かず、差し戻しの理由を受入担当へ
承認が来訪日までに来ない入構予定に「承認待ち」と書き、守衛所の一覧に載せる。作業は始めない
来訪日の当日の申請「急ぎ」の印で、安全衛生の担当に電話でも知らせる
プロンプトが JSON を返さないすべての危険を「分からない」として受入担当と安全衛生の担当へ
AI Builder が利用の上限で止まる同じく「分からない」として扱い、総務が手で見る

AIが止まったときは、承認へ倒します。 公式のページでは、プロンプトは利用の上限や混み合いによる制限を受けることがあるとされています。止まった申請を承認の要らない側に流すと、危険のある作業が素通りします。

Step11

記録を残す

  • 入構申請の回答(受入担当、会社、入構する人、来訪日、区域、作業の内容、機材)
  • AIの判定(来訪の種別、危険ごとの真偽、根拠の言葉、分からない危険)
  • 受講の確認の結果と、引いた受講日
  • 引いた保護具と、そのときの保護具の表の内容
  • 承認した人、承認の日時、差し戻しの理由
  • 入構証の番号、当日の一覧を流した日時と宛先

4つ目で「そのときの表の内容」を残すのは、表を後から直すためです。 保護具の決まりを変えた後で、過去の作業でどの保護具を求めていたかを確かめられます。

04実装レベルの3段階

最小構成:作業の内容を手でAIの画面に貼り、危険を判定させる / 1件ごとの判定
半自動化:上記+フォームとフローで判定・受講の確認・保護具・承認・入構証の番号・当日の一覧まで回す / 判定、確認、承認、連絡
本格構成:上記+入構者教育をオンラインの受講にし、受講の記録をリストに自動で書く / 受講の記録の更新まで

最小構成は、確かめるための段階です。 月600件には使えません。 半自動化で、1件9分が3分になり、この段階が本記事の想定です。 受講の記録を探す時間、規程を見る時間、連絡を回す時間が減ります。承認と聞き返しの時間は残ります。 本格構成は、受講の記録が安定してからです。 教育の内容の更新と、受け直しの時期の決まりがそろってから進めます。

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

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

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

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

AI活用について相談する

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

向いている
  1. 従業員数百人規模の工場で、設備の保守、建屋の修繕、配管や電気の工事、納品、見学・商談の来訪者が毎月数百件入構し、総務が入構申請を読んで入構者教育の受講と保護具の要否を確かめ、入構証と当日の連絡を手で回している場合。作業の内容が「屋根の配管の補修」のような短い言葉で書かれ、火気や高所の作業の見落としが心配な場合。Microsoft 365 を使っていて、SharePoint のリストと Teams を置ける場合。
向いていない
  1. 入構の管理を専用の入退場管理のシステムで行い、教育の受講と作業の許可がその中で済んでいる場合。入構が月に数十件で、総務の担当が毎回の作業を把握できている場合。なお、作業を許可するか、どの安全の措置を取るか、請負の作業の連絡と調整をどう行うかの判断は、この構成では代替できません。

07最小構成で試す方法

  1. 先月の入構申請から30件を選ぶ(溶接を含む補修、屋根の作業、分電盤、タンクの内部、来客、納品、作業の内容が短いものを混ぜる)
  2. 作業の危険の定義と手がかりの言葉を1枚に書く
  3. 手元のAIサービスに定義と申請1件の作業の内容と機材を貼り、「来訪の種別と危険を判定し、根拠の言葉を写して。分からない危険は分からないと返して。保護具と許可は書かないで」と指示する
  4. 出てきた判定を、当時の安全衛生の担当の判断と並べて読む

30件は必ずやってください。 フローを組む前に、「短い作業の内容から、火気と高所を拾えるのか」を確かめます。

出てきた内容判断
当時の許可の手続きがあった作業がすべて拾えたフローを組む段階に進む
保護具や許可まで書く指示の書き方で直る。構成は有効
作業の内容が短く「分からない」ばかりになるフォームの書き方の見本が先。 AIの問題ではない

3行目は珍しくありません。 分からないと返すのは正しい動きで、書き方の見本を足せば減ります。

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

問題対策
書かれていない危険を「無い」と返すunclear_hazards を返させ、聞き返す
保護具や許可まで書く出力に項目を置かず、指示で禁じる
AIが止まった申請が素通りする止まったら承認へ倒す
受講の記録が名前の表記ゆれで引けない名前の読みでも引けるようにする
見つからない人を通してしまう見つからなければ「受講が要る」と返す
作業の内容が短すぎるフォームに見本を載せ、短いものはAIに渡さない
JSON が作れない「Don't include JSON markdown in your answer」を足す
当日の一覧が職場に届かない区域と職場の表から職場のチャネルを引く
プライベートチャネルに投稿できない標準のチャネルに置く
来訪日の変更で申請が二重になる出し直しの申請で前の申請を取消にする

上の3行が、この構成の失敗のほとんどです。 どれも、AIの「無い」をそのまま通すことから起きます。分からないものは分からない、止まったものは承認へ。判定の空白を、人の確認に倒します。

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

この構成で扱うデータ: 業者の会社名、作業員の名前と名前の読み、来訪日、車両の番号、工場の区域と作業の内容です。工場の設備の配置や停止の予定が、作業の内容から読み取れます。

  1. データを処理する地域を確かめる … 公式のページでは、日本で GPT-4.1 mini などが GA (cross-geo) とされ、cross-geo のモデルは地域の外でデータを処理する場合があるとされています。AIに渡すのは作業の内容と区域と機材だけにし、 作業員の名前と車両の番号は渡しません
  2. 作業の許可をAIに出させない … 承認は安全衛生の担当が行い、承認の記録を残します
  3. 受講の確認をAIに任せない … 受講の記録と受講日で決め、見つからない人は通しません
  4. 業者への連絡は受入担当が行う … フローから社外へは送らず、受入担当が作業の中身を聞き取った責任を持ちます
  5. 受講の記録の保存の期間を決める … 作業員の名前の記録を、最後の入構から何年残すかを総務で決めます

誤りが起きた場合のリスクは、火気や高所の作業が、承認と保護具の確認を経ずに始まることです。 構内の火災や墜落につながります。分からない危険を聞き返し、AIが止まったら承認へ倒し、毎朝の流し見で取りこぼしを拾うことが、その止めになります。

10まず何から始めるか

1週目:保護具の表と区域の表を作る

安全衛生の規程から、区域ごと・作業の危険ごとの保護具を1つの表に直します。区域と職場とその Teams のチャネルの表も作ります。

2週目:30件で試す

先月の入構申請30件を手元のAIサービスで判定させ、許可の手続きがあった作業が拾えているか、分からないものを分からないと返しているかを最優先で見ます。

3週目:受講の記録を移す

受講の記録の表計算を SharePoint のリストに移し、名前の読みの列を足します。 入構申請のフォームを作り、作業の内容の書き方の見本を載せます。

4週目:申請のフローをつなぐ

判定、受講の確認、保護具、承認までを作ります。この1か月は紙の申請と併用し、 判定と安全衛生の担当の判断を見比べます。

2か月目: 入構証の番号と、当日の一覧のフローを足します。3か月目以降: 承認で差し戻された理由と、毎朝の流し見で拾った取りこぼしを見て、危険の手がかりの言葉を足し、1件9分が何分になったかを実測します。火気と高所の作業が承認なしに始まることが無くなり、職場が当日の作業を朝に知れるようになった時点で、この構成は完成です。


11関連ユースケース

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

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

技術仕様確認日:2026-10-26/最終更新:2026-10-27
確認した内容情報源確認日
製造業などの元方事業者が、自社と関係請負人の作業従事者の作業が同一の場所で行われることによる労働災害を防ぐため、作業間の連絡及び調整を行うことに関する措置その他必要な措置を講じなければならないこと(労働安全衛生法第30条の2)e-Gov 法令API: 労働安全衛生法2026-10-26
法第30条の2第1項の元方事業者に、随時の作業間の連絡及び調整の規定(第636条)が準用されること(労働安全衛生規則第643条の2)。元方事業者が火災の発生などの警報を統一的に定め関係請負人に周知させること(同第643条の6)e-Gov 法令API: 労働安全衛生規則2026-10-26
When a new response is submitted のトリガーが回答の番号を返し、Get response details で中身を取ること。組織のアカウントでのみ使えることMicrosoft Learn: Microsoft Forms connector2026-10-26
Run a prompt(2025年5月に Create text with GPT using a prompt から改称)で入力に前の手順の内容を入れられること。出力の後に Start and wait for an approval of text で人の確認を挟む手順。プロンプトが利用の上限や混み合いによる制限を受けうることMicrosoft Learn: Use your prompt in Power Automate2026-10-26
出力に JSON を選べ、Custom の形が保存時に固定され実行時に使われること。キーの無い配列の形を定義できないこと。「Don't include JSON markdown in your answer」の案内Microsoft Learn: JSON output2026-10-26
日本で GPT-4.1 mini などが GA (cross-geo) であり、地域の外でデータを処理する場合があることMicrosoft Learn: Prompt model availability by region2026-10-26
Get items(OData の Filter Query)、Create item、Update item があることMicrosoft Learn: SharePoint connector2026-10-26
Send an email from a shared mailbox (V2) があり、メールボックスへのアクセス権が要ることMicrosoft Learn: Office 365 Outlook connector2026-10-26
Post message in a chat or channel があり、投稿の大きさが約28KBまでであること。プライベートチャネルへの投稿にまだ対応していないことMicrosoft Learn: Microsoft Teams connector2026-10-26

作業を許可するか、どの安全の措置を取るか、請負の作業の連絡と調整をどう行うかは、安全衛生の担当と製造の職場の責任者が決めてください。 本記事は労働安全衛生法・労働安全衛生規則と Microsoft の公式ページで確認できた範囲だけを扱っています。

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

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

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

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