研究所が各実験室から届く実験廃液の回収の依頼を Make で受け、種類・量・容器を抜き出して回収の一覧と業者への依頼を作る
各実験室から届く実験廃液の回収の依頼メールを読み、容器ごとに区分・主な成分・pH・量・容器を抜き出して回収の一覧に入れます。あわせて、処理業者へ送る回収の依頼の下書きを作ります。
- 生成AI
- ChatGPT/Claude/Gemini
- 連携・自動化
- Make/n8n/Power Automate/Zapier
- 対象業界
- 医療/教育/製造
- 対象部門
- 研究開発/総務
- 対象業務
- データ入力・転記/書類作成
- 主な課題
- 入力作業が多い/属人化している/確認ミスが多い
- AIで行う処理
- 抽出
- 主な効果
- 入力漏れ削減/品質標準化/工数削減
- 導入難易度
- ★★☆☆☆
- 実装レベル
- 本格構成
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 実験室の担当者が、回収の依頼を環境安全グループのアドレスにメールで送る。書き方の決まりは無い
- 環境安全の担当者がメールを開き、容器ごとに区分・成分・量・容器を読み取る
- 回収の一覧のスプレッドシートを開き、1容器1行で写す。区分の名前を研究所の表の言葉に直す
- pH・容器の大きさ・混ぜたものが書かれていなければ、実験室へ電話かメールで聞き返す
- 回収日の前日に、一覧を区分ごとに並べ直し、本数と量を数える
- 処理業者への回収の依頼と、種類・数量・性状・荷姿・注意事項をまとめた通知の文書を作る
- 回収日に保管庫で容器のラベルと一覧を突き合わせ、業者へ引き渡す
- 人実験室の担当者が、これまでどおり回収の依頼を専用のアドレスにメールで送る
- 自動Make がメールの到着をきっかけに動き、送り主のアドレスで実験室の一覧を引く
- 自動Claude API が本文から容器ごとに区分・主な成分・pH・量・容器・混ぜたものを抜き出す
- 自動Make が区分の候補を分別区分の表と照らし、量と本数を容器の表の上限と突き合わせる
- 自動pH が書かれていれば、規則で特別管理産業廃棄物の可能性の印を付ける。書かれていなければ「要確認」にする
- 自動回収の一覧に1容器1行で入れる
- 自動「要確認」の容器があれば、実験室への聞き返しのメールの下書きを作る
- 人環境安全の担当者が「要確認」の行と聞き返しの下書きを確かめて送る
- 自動回収日の前日、一覧を区分ごとに集計し、業者への依頼と通知の下書きを作る
- 人担当者が通知の下書きを確かめ、業者へ送る。回収日に保管庫で容器と一覧を突き合わせる
各工程の詳しい説明を読む
- 実験室の担当者が、回収の依頼を環境安全グループのアドレスにメールで送る。書き方の決まりは無い
- 環境安全の担当者がメールを開き、容器ごとに区分・成分・量・容器を読み取る
- 回収の一覧のスプレッドシートを開き、1容器1行で写す。区分の名前を研究所の表の言葉に直す
- pH・容器の大きさ・混ぜたものが書かれていなければ、実験室へ電話かメールで聞き返す
- 回収日の前日に、一覧を区分ごとに並べ直し、本数と量を数える
- 処理業者への回収の依頼と、種類・数量・性状・荷姿・注意事項をまとめた通知の文書を作る
- 回収日に保管庫で容器のラベルと一覧を突き合わせ、業者へ引き渡す
(a)書き方がばらばらで、読むところから時間がかかる。 「いつものやつ」と書かれた依頼は、その実験室が前回どの区分で出したかを一覧で探してから、それでも分からなければ聞き返します。 1通の中に区分の違う容器が並んでいると、どの量がどの容器の話なのかを読み分けるのにも時間がかかります。
(b)写し間違いが、回収日に見つかる。 20Lを10Lと写した、2本を1本と写した、区分の名前を隣の行と取り違えた。一覧の誤りは、保管庫で容器を前にしたときに初めて見つかります。 そこで業者への通知と数が合わなくなり、引き渡しが止まります。
(c)聞き返す基準が、担当者によって違う。 pH が書かれていない酸の廃液を、ベテランの担当者は必ず聞き返し、もう1名は区分の名前で済ませることがあります。特別管理産業廃棄物に当たるかどうかに関わる項目なのに、確かめるかどうかが人で変わります。
(d)業者への通知を、毎回ゼロから作っている。 一覧の列と通知の項目の並びが違うので、回収日の前日に一覧から通知の文書へもう一度写しています。
- 【人】 実験室の担当者が、これまでどおり回収の依頼を専用のアドレスにメールで送る
- 【自動】 Make がメールの到着をきっかけに動き、送り主のアドレスで実験室の一覧を引く
- 【自動】 Claude API が本文から容器ごとに区分・主な成分・pH・量・容器・混ぜたものを抜き出す
- 【自動】 Make が区分の候補を分別区分の表と照らし、量と本数を容器の表の上限と突き合わせる
- 【自動】 pH が書かれていれば、規則で特別管理産業廃棄物の可能性の印を付ける。書かれていなければ「要確認」にする
- 【自動】 回収の一覧に1容器1行で入れる
- 【自動】 「要確認」の容器があれば、実験室への聞き返しのメールの下書きを作る
- 【人】 環境安全の担当者が「要確認」の行と聞き返しの下書きを確かめて送る
- 【自動】 回収日の前日、一覧を区分ごとに集計し、業者への依頼と通知の下書きを作る
- 【人】 担当者が通知の下書きを確かめ、業者へ送る。回収日に保管庫で容器と一覧を突き合わせる
8番目が、この設計の分かれ目です。 人が開くのは「要確認」の付いた行と、その聞き返しの下書きだけです。書かれていることがそろっている依頼は、一覧に入った行を流し見て終わりにします。 全件を開き直す設計にすると、32.0時間はほとんど減りません。
5番目を規則に置いているのも、意図してのことです。 AIが返すのは「pH 1 と書かれていた」という事実までで、pH 2.0 以下だから廃酸として特別管理産業廃棄物の可能性がある、という判定はスプレッドシートの式で行います。 基準は法令で決まっていて、AIに毎回考えさせる理由がありません。
02今回想定するシステム構成
各実験室(回収の依頼メール。本文に区分・成分・量・容器) ▼【トリガー】Gmail の Watch emails(専用アドレスのラベル) Make(シナリオ) ├──▶ Google スプレッドシート:実験室の一覧を Search Rows で引く ▼ Claude API(Make an API Call で Messages API、構造化出力) │ 容器ごとの区分の候補・主な成分・pH・量・容器・本数・混ぜたもの ▼ Iterator ── 容器ごとの束に分ける ▼ Make ── 分別区分の表・容器の表と照合、pH の規則で印を付ける ▼ ルーター ├── そろっている ──── 回収の一覧に Add a Row ├── 要確認 ────────── 回収の一覧に Add a Row + 聞き返しの下書き └── フォールバック ── 担当者の確認の一覧 ▼ 【回収日の前日】一覧を区分ごとに集計 → 業者への依頼と通知の下書き(Create a draft email) ▼ 【人】担当者が確かめて送る
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| ワークフロー | Make(シナリオ。Gmail、Google Sheets、Iterator、ルーター) | Zapier、n8n、Power Automate |
| 生成AI | Claude API(Messages API、構造化出力) | OpenAI API、Gemini API |
| 保管 | Google スプレッドシート(回収の一覧・分別区分の表・容器の表・実験室の一覧) | Airtable |
| メール | Gmail(回収の依頼の専用アドレス) | Microsoft Outlook |
新しく作るのは、分別区分の表と容器の表です。 分別区分の表は、研究所の12区分それぞれに、法令上の種類(廃油・廃酸・廃アルカリなど)、特別管理産業廃棄物の可能性の見方、混ぜてはいけない区分、業者への通知に書く注意事項の定型文を1行で持たせます。容器の表は、20Lのポリ容器、10Lのポリ容器、4Lのガラス瓶など、研究所で使う容器ごとの容量の上限を持たせます。
受け口は Gmail の Watch emails です。 監視するフォルダやラベル、未読だけを取るかを選べ、1回に取る件数の上限は500以下とされています。専用アドレスに届いたメールに Gmail のフィルタでラベルを付け、そのラベルだけを見ます。
AI の部品は Claude API です。 Make の Anthropic Claude アプリには Create a Prompt などのモジュールがありますが、そのページに構造化出力の記載が見当たりません。そこで Make an API Call で Messages API を呼び、output_config.format に JSON Schema を渡します。 構造化出力は数値の範囲の制約(minimum や maximum)に対応しないとされているので、量の上限の確かめは Make の側で容器の表と照らして行います。
03どうやって実装するのか
処理の起点を決める
専用アドレスにメールが届いたことを起点にします。 研究所の各実験室には、回収の依頼を waste-request@ のような専用アドレスに送ってもらいます。Gmail のフィルタで、このアドレス宛てのメールに「廃液回収依頼」のラベルを付け、Make の Watch emails はこのラベルと「未読のみ」を条件に見ます。
取り込んだメールは既読にする設定にします。 Watch emails には取り込んだときに既読にするかの設定があり、これを有効にすると、同じメールを次の回で二度取り込むことを防げます。 失敗したときは担当者が未読に戻せば、次の回で取り直されます。
実行の間隔は15分ごとにします。回収日は週に2回で、依頼は回収日の前日に集中します。 1日1回にまとめると、聞き返しの返事が回収日に間に合わなくなります。聞き返しの返事も同じアドレスに返してもらい、件名の受付番号で元の依頼に結び付けます。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 依頼メール | 送り主、件名、本文、届いた日時 | Gmail |
| 実験室の一覧 | 送り主のアドレス、実験室の番号、所属の部、責任者、よく出す区分 | スプレッドシート |
| 分別区分の表 | 区分の名前、言い換えの例、法令上の種類、混ぜてはいけない区分、注意事項の定型文 | スプレッドシート |
| 容器の表 | 容器の種類、容量の上限、ラベルの色 | スプレッドシート |
質を決めるのは、分別区分の表の「言い換えの例」の列です。 実験室は「ハロ系」「塩素系」「DCM」など、区分の名前を自分たちの言葉で書いてきます。この列にその言い方を集めておくほど、AIが区分の候補を表の中から選べるようになります。 最初の1か月は、AIが「要確認」にした言い方をこの列に足していきます。
添付の写真は、この構成ではAIに読ませません。 容器のラベルの写真が付いてくることがありますが、手書きのラベルは読み違いが起きやすく、写真から量や成分を拾うと、本文と食い違ったときにどちらを信じるかの判断が増えます。 写真は List email attachments and media でファイルとして取り出し、一覧の行にリンクを付けて担当者が見られるようにします。
データの取得方法を決める
| 取るもの | どこから | 何に使うか |
|---|---|---|
| 本文、送り主、件名 | Watch emails の出力 | AI に渡す本文と、実験室を引く鍵 |
| 実験室の行 | Google Sheets の Search Rows(送り主のアドレスで絞る) | 実験室の番号と、よく出す区分 |
| 分別区分の表の全行 | Google Sheets の Search Rows | AI に渡す区分の候補の一覧 |
| 容器の表の全行 | Google Sheets の Search Rows | 量の上限の照合 |
| 添付のファイル | List email attachments and media | 担当者が見るためのリンク |
スプレッドシートの列は、見出しを列の ID として使う設定にします。 Google Sheets のモジュールには、見出しの名前を列の ID として扱う設定があり、列を足したり並べ替えたりしても書き込み先がずれません。 一覧の列は運用しながら増えるので、最初からこの設定にしておきます。
実験室の一覧に送り主のアドレスが無いときは、AIに渡す前に止めて、担当者の確認の一覧に回します。 外部のアドレスや、異動で一覧から外れた人からの依頼を、そのまま回収の一覧に入れないためです。
AIへ渡す前に整形する
- 引用部分の除去 … 返信のメールでは、過去のやり取りが本文の下に続きます。
>で始まる行と、「-----Original Message-----」以降を落とします - 署名の除去 … 署名の電話番号や部屋番号を、容器の情報と取り違えないように落とします
- 全角と半角の統一 … 「20L」「20ℓ」「20リットル」を同じ書き方にそろえます。AIに渡す前に置き換えておくと、量の読み違いが減ります
- 受付番号の付与 … メールごとに受付番号を振り、件名に「【受付 W-1029-012】」の形で付けて、聞き返しと返事を結び付けます
- 返事のメールの判定 … 件名に受付番号があるメールは新しい依頼ではなく、聞き返しへの返事として扱います
- 本文の長さの確認 … 本文が極端に長いもの(実験ノートの貼り付けなど)は、AIに渡さず担当者へ回します
3番目を軽く見ないでください。 量の数字は、このあと容器の表の上限と突き合わせます。「20L」を20と読めずに空けると、量の欄が全部「要確認」になり、人の確認が減りません。
AIに処理させる
させるのは、本文を容器ごとに分け、それぞれの項目を書かれているとおりに抜き出すことです。 区分の名前だけは、渡した分別区分の表の中から選ばせます。
| 抜き出すもの | 抜き出し方 | 書かれていないときの扱い |
|---|---|---|
| 区分の候補 | 分別区分の表の名前から1つ選ぶ。言い換えの例も見る | 当てはまらなければ 不明 |
| 主な成分 | 書かれている物質の名前をそのまま写す | 空にする |
| pH | 書かれている数字をそのまま写す。「酸性」とだけあれば文字のまま写す | 空にする |
| 量 | リットルの数に直す。「半分くらい」は容器の容量と合わせて文字のまま写す | 空にする |
| 容器の種類と本数 | 容器の表の名前から選び、本数を数える | 不明 |
| 混ぜたもの | 「〜と〜を混合」とあれば写す | 空にする |
| 根拠の文字列 | その容器の判断に使った本文の箇所を写す | 必ず入れる |
右端の列が、この構成でいちばん大事なところです。 書かれていないものを空けたまま返させるから、どの項目を聞き返せばよいかが機械で決まります。 空けずに埋めさせると、聞き返すべき依頼が「そろっている」側に紛れ込みます。
| させないこと | 理由 |
|---|---|
| 特別管理産業廃棄物に当たるかの判定 | 法令の基準で決まる。pH の値から規則で判定する |
| 成分の名前からの pH の推定 | 「塩酸」と書いてあっても、薄めた濃度は依頼からは分からない |
| 区分の表に無い区分を作ること | 業者との契約は表の区分ごと。新しい区分は人が決める |
| 「いつもの」の中身の補完 | 前回と同じとは限らない。実験室の一覧の「よく出す区分」は人が見る |
| 混ぜてよいかの判断 | 混ぜてはいけない区分の組み合わせは、表の列で機械的に見る |
2行目がいちばん起きやすい失敗です。 「塩酸の廃液」と書かれていると、AIは pH をそれらしい値で埋めようとします。その瞬間、聞き返すべきだった依頼が、確かめたように見える依頼に変わります。
指示内容を固定する
あなたは研究所の環境安全の担当として、各実験室から届いた実験廃液の
回収の依頼メールを読み、容器ごとの項目に分ける立場です。
本文に書かれていることだけを使ってください。推測で埋めないでください。
【やること】
1. 本文を容器ごとに分け、containers の配列に1容器1要素で入れる。
「20L 2本」は2要素に分ける。
2. category には、下の【分別区分の表】の name から1つを選んで入れる。
言い換えの例(aliases)も見てよい。当てはまらなければ「不明」とする。
3. components には、本文に書かれている物質の名前をそのまま写す。
4. ph_text には、本文に書かれている pH の数字や言葉をそのまま写す。
書かれていなければ空文字にする。
5. volume_l には、リットルの数を数字の文字列で入れる。
「半分くらい」のように数字で書かれていないときは空文字にし、
volume_text に本文の言葉をそのまま写す。
6. container には、下の【容器の表】の name から1つを選ぶ。
分からなければ「不明」とする。
7. evidence には、その容器の判断に使った本文の箇所をそのまま写す。
【厳守事項】
- pH が書かれていないときに、成分の名前から pH を推し量って
入れないでください。「塩酸」「水酸化ナトリウム」とあっても空文字です。
- 特別管理産業廃棄物に当たるかどうかを書かないでください。
- 分別区分の表に無い区分の名前を作らないでください。
- 「いつものもの」「前回と同じ」とだけ書かれているときは、
category を「不明」にし、note にそのまま写してください。
- 量の単位を勝手に変えないでください。mL と書かれていれば
リットルに直してよいですが、「1缶」「1瓶」は volume_text に写すだけです。
- 1通の中に回収以外の相談(容器が足りない、ラベルが無い等)があれば、
other_requests に写してください。容器の項目に混ぜないでください。
【分別区分の表】{category_table}
【容器の表】{container_table}
【実験室】{lab_info}
【依頼メールの本文】{mail_body}
「成分の名前から pH を推し量らない」を、例の物質の名前まで挙げて書いています。 禁じるだけでは、AIは「一般に塩酸は強酸性」と考えて埋めます。埋めた値が当たっているかではなく、書かれていなかったという事実が消えることが問題です。
「いつもの」を note に写させるのも同じ理由です。 実験室の一覧には「よく出す区分」の列がありますが、それをAIに使わせて埋めると、その月だけ違う廃液を出した実験室の依頼が、前回と同じ区分で通ってしまいます。
出力形式を固定する
次の形のJSONで受け取ります。
{
"request_id": "W-1029-012",
"lab_no": "B-214",
"containers": [
{
"category": "有機系(ハロゲンを含む) | 無機系(酸) | ... | 不明",
"components": "",
"ph_text": "",
"volume_l": "",
"volume_text": "",
"container": "20Lポリ容器 | 10Lポリ容器 | 4Lガラス瓶 | 不明",
"mixed_with": "",
"evidence": "",
"note": ""
}
],
"other_requests": ""
}
1つ目の理由は、容器を配列で返させることで、1容器1行に分けられることです。 Make の Iterator は配列を1要素ずつの束に分け、そのあとのモジュールが要素ごとに動きます。containers を Iterator に渡せば、容器の数だけ回収の一覧に行が足されます。
2つ目は、volume_l を文字列にしていることです。 構造化出力は数値の範囲の制約に対応しないとされているので、範囲はスキーマで縛れません。文字列で受けて Make の側で数に直し、容器の表の容量の上限と比べます。 上限を超えた量、数に直せない量は「要確認」にします。
3つ目は、AIの出力と規則の判定を別の列に置けることです。 回収の一覧には、AIが埋めた列の右に、Make とスプレッドシートの式が埋める列を並べます。
| 規則で埋める列 | 埋め方 |
|---|---|
| 法令上の種類 | 分別区分の表から引く |
| 特別管理の可能性 | 廃酸の区分で ph_text が数で2.0以下、廃アルカリの区分で12.5以上なら「可能性あり」。pH が空なら「要確認」 |
| 混合の確認 | mixed_with に、混ぜてはいけない区分の言い換えが含まれていれば「要確認」 |
| 量の確認 | volume_l が空、または容器の容量の上限を超えていれば「要確認」 |
| 状態 | 上の列に「要確認」が1つでもあれば「要確認」、無ければ「そろっている」 |
要は、AIの出力を規則で書き換えないことです。 pH が空なら空のまま一覧に残し、判断は右側の列だけで行います。 規則の基準を変えても、AIの列を読み直すだけで判定をやり直せます。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| Gmail | Watch emails(ラベル・未読) | 依頼と聞き返しへの返事を受ける |
| 実験室の一覧・分別区分の表・容器の表 | Google Sheets の Search Rows | 照合に使う行を引く |
| Claude API | Anthropic Claude アプリの Make an API Call | 容器ごとの項目を抜き出す |
| 回収の一覧 | Google Sheets の Add a Row(Iterator のあと) | 1容器1行で入れる |
| 聞き返しと業者への依頼 | Gmail の Create a draft email | 下書きまでを作る |
ルーターは、そろっている・要確認・フォールバックの3つの道にします。 ルーターの道は1本ずつ順に処理され、どの道の条件にも当たらないものはフォールバックの道に入ります。 想定していない形の出力が来たときに、黙って捨てられずに担当者の確認の一覧に残ります。
業者への依頼は、回収日の前日の夕方に動く別のシナリオで作ります。 そのシナリオが回収の一覧から「そろっている」と、担当者が確かめ終えた行を区分ごとに集め、区分ごとの本数と量の合計、性状、荷姿、注意事項の定型文を並べた通知の下書きを作ります。並びは、特別管理産業廃棄物の通知に要る、種類・数量・性状・荷姿・取り扱う際に注意すべき事項の順にそろえます。
メールは下書きまでで、送るのは人です。 実験室への聞き返しも、業者への通知も、送信のモジュールは置きません。
人が確認する
人が開くのは、状態が「要確認」の行と、その聞き返しの下書き、そして業者への通知の下書きです。 「そろっている」の行は、一覧で件数と区分を流し見ます。
- 「要確認」の行を先に見る … どの列が「要確認」かで、聞き返す中身が決まります。下書きの質問が、その列の中身と合っているかを確かめます
- 「特別管理の可能性あり」の行を見る … pH の値と区分を本文の
evidenceで確かめます。数字の読み違いがここに出ると、委託の扱いが変わります - 聞き返しを送る … 下書きを直して送ります。返事が来たら、一覧の行を人が直します
- 業者への通知を確かめる … 回収日の前日、区分ごとの本数と量が一覧と合っているかを見てから送ります
- 保管庫で突き合わせる … 回収日に、容器のラベルと一覧を1本ずつ照らします。この確認はこれまでどおり人が行います
2番目を省かないでください。 「特別管理の可能性あり」は、業者の選び方と通知の中身に直結します。AIが「pH 1.5」を「pH 15」と写していないかは、本文を見れば数秒で確かめられます。
目標は、160件をならして1件3分です。 「要確認」が3割前後という想定で、それより多い月は、分別区分の表の言い換えの例が足りていないか、特定の実験室の書き方が崩れています。
例外に対処する
| 起きること | 対応 |
|---|---|
| 送り主が実験室の一覧に無い | AIに渡さず、担当者の確認の一覧へ。外部や異動者からの依頼をそのまま入れない |
| 区分が「不明」 | 一覧に入れ、状態を「要確認」に。言い換えの例を表に足す候補として印を付ける |
| 混ぜてはいけない区分が1つの容器に書かれている | 「要確認」に。聞き返しの下書きに、容器を分けて出し直すお願いを入れる |
| 量が容器の容量の上限を超える | 「要確認」に。本数の書き違いか、容量の書き違いかを聞き返す |
| 本文に容器の情報が1つも無い | containers が空。担当者の確認の一覧へ |
| AIの出力がスキーマに合わない、応答が無い | メールを未読に戻し、次の回で取り直す。3回続けば担当者へ知らせる |
| 感染性・放射性と読める言葉がある | 回収の一覧に入れず、担当者へすぐ知らせる。この構成の対象外 |
| 回収日の前日を過ぎて届いた依頼 | 一覧に入れ、次の回収日の分として印を付ける |
| 同じ依頼が二度届く | 実験室・区分・量・届いた日で照合し、二重に行を足さない |
上から4行目までが大半を占めます。 どれもAIの問題ではなく、依頼の書き方と表の整備の問題です。 言い換えの例を足し、依頼の書き方の見本を実験室に配るほうが、指示を工夫するより効きます。
7行目は、最初から決めておきます。 感染性の廃棄物や放射性の廃棄物は、扱いの決まりも委託先も別です。この構成で受けず、言葉を見つけたら止めることだけを規則にしておきます。
記録を残す
- 元の依頼メールと受付番号、届いた日時、送り主
- AIに渡した本文(前処理の後)と、AIが返したJSONの全文
- 回収の一覧の行と、規則で埋めた列の値。そのとき参照した分別区分の表の版
- 人が直した記録 … どの行の、どの列を、何から何に直したか
- 聞き返しの送信日時と、返事のメールとの対応
- 業者への通知の下書きと、実際に送った文面
- 実験室ごとの「要確認」の発生率
3つ目で表の版を残すのは、区分の決め方が後から変わるためです。 区分を分けたり言い換えの例を足したりすると、過去の判定の意味が変わり、当時の表が残っていないと、どの依頼をどの基準で見たかが分からなくなります。
04実装レベルの3段階
最小構成では件数がさばけません。 1通ずつ貼り付けるので、月160件には使えません。確かめるための段階です。 半自動化で、1件12分が6分程度になります。 読み取りと一覧への記入は自動になりますが、どの行を聞き返すかの判断と、業者への通知への写しが残ります。本格構成で3分になり、この段階が本記事の想定です。 差が大きいのは、聞き返す行が規則で決まり、通知の下書きが一覧から作られるからです。 段階を飛ばさないでください。 半自動化の一覧を1か月見ると、「不明」になりやすい言い方が先に分かります。 そこを表に足してから規則の印を足します。
05工数削減シミュレーション
導入後 160件 × 3分 ÷ 60 = 8 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 化学・製薬・素材のメーカーの研究所、大学の研究科、病院の検査部門など、数十の実験室から実験廃液を集めて処理業者へまとめて委託している事業所。回収の依頼がメールや紙のメモでばらばらに届き、環境安全の担当が読み直して回収の一覧と業者への連絡に写している場合。廃液の分別区分の表と容器の種類の表を研究所で決めている場合。
- 実験室が数室で、回収の依頼が月に数件の場合。依頼をすでに専用の管理システムの画面で項目ごとに受けている場合。感染性の廃棄物や放射性の廃棄物が混ざる施設で、その区分の判断を担当者の経験に頼っている場合。なお、廃液が特別管理産業廃棄物に当たるか、どの処理業者にどう委託するかの判断は、研究所の特別管理産業廃棄物管理責任者と担当者が行うもので、この構成は代替しません。
07最小構成で試す方法
- 先月届いた回収の依頼メールから30通を選ぶ(「いつもの」とだけ書かれたもの、pH の無い酸の廃液、1通に複数の区分があるものを必ず入れる)
- その30通について、当時の担当者が回収の一覧にどう写したか、どれを聞き返したかを並べておく
- 分別区分の表と容器の表を、言い換えの例の列も含めて1枚のテキストにする
- 手元のAIサービスの画面に表と本文を貼り、「容器ごとに区分・成分・pH・量・容器を抜き出してください。書かれていない項目は空けてください。pH を推し量らないでください」と指示する
- 出てきた結果を、当時の一覧と聞き返しの記録に突き合わせる
30通は必ずやってください。 シナリオを組む前に、「表の言葉で区分を選べるか」と「書かれていないものを空けたまま返すか」を確かめます。
| 出てきた内容 | 判断 |
|---|---|
| 当時の一覧と同じ区分・量になり、聞き返した項目が空になっている | Make とのつなぎに進む |
| pH や区分を推し量って埋めた | 指示の書き方で直る。構成は有効 |
| 区分の多くが「不明」になる | 言い換えの例が先。 AIの問題ではない |
3行目が出ることは珍しくありません。 不明になった言い方を表に足し、同じ30通で取り直してください。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 成分の名前から pH を埋める | 例の物質の名前まで挙げて禁じ、ph_text が本文の evidence に含まれるかを後段で確かめる |
| 「いつもの」が前回の区分で埋まる | note に写させ、区分は「不明」に。実験室の一覧の列はAIに渡さない |
| 「20L」が数に直らない | 前処理で全角と半角をそろえる |
| 1通の区分の違う容器が1行にまとまる | 配列で返させ、Iterator で分ける。「20L 2本」は2要素と指示に書く |
| スキーマに数値の範囲を書いて400になる | 構造化出力は minimum・maximum に非対応。量は文字列で受け、Make で比べる |
| 区分の表に無い区分をAIが作る | 選択肢を enum にし、「不明」を必ず含める |
| 想定外の出力が黙って捨てられる | ルーターにフォールバックの道を置き、担当者の一覧に残す |
| 聞き返しのメールが自動で飛ぶ | 下書きまでにする。 送信は人が行う |
| 感染性・放射性の廃棄物の依頼が混ざる | 言葉を見つけたら止める規則を置き、この構成で受けない |
上の2行が、この構成の失敗のほとんどです。 どちらも、書かれていない情報を「それらしいもの」で埋める同じ型の失敗です。書かれていないものを空けたまま返させる設計が守られているかで、聞き返しが機能するかが決まります。
下から2行目も、同じくらい早く効いてきます。 送信を自動にすると、AIの読み違いがそのまま実験室や業者への連絡になります。最初から送信のモジュールを置かないでください。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 実験室の番号と担当者の名前・アドレス、廃液の成分と量、そして本文に書かれることのある研究テーマや開発中の物質の名前です。
- 研究の情報を外部へ渡す範囲を考える … 廃液の成分の名前から、開発中の化合物や研究の中身が推し量れることがあります。AIに渡すのは前処理の後の本文だけにし、研究テーマの名前を書かないよう実験室に周知します
- 連絡を自動で送らない … 出すのは下書きまでです。業者への通知の誤りは、委託の扱いの誤りにつながります
- この構成は法令上の判断を代替しません … 廃液が特別管理産業廃棄物に当たるか、どの業者にどう委託するかは、特別管理産業廃棄物管理責任者と担当者が決めることです。 この構成が出すのは、依頼に書かれていたことと、規則による印だけです
- 委託の契約とマニフェストは別に管理する … 産業廃棄物の委託契約は書面で行い、種類・数量などの条項を含めることとされています。回収の一覧は契約書でもマニフェストでもありません。 一覧はそれらを作るための材料として扱います
- 分別区分の表を勝手に増やさない … 区分は業者との契約の区分と対応しています。新しい区分は、契約を確かめてから人が足します
誤りが起きた場合のリスクは、特別管理産業廃棄物の可能性がある廃液を普通の区分で依頼することと、量や本数を取り違えて業者への通知と現物が合わなくなることの2つです。 前者は pH を推し量らせると起き、後者は容器を1行にまとめると起きます。
10まず何から始めるか
1週目:分別区分の表に3つの列を足す
分別区分の表に、言い換えの例、混ぜてはいけない区分、業者への通知に書く注意事項の定型文の列を足します。言い換えの例は、過去3か月の依頼メールから集めます。12区分すべてを一度に埋める必要はありません。依頼の多い上位5区分から埋めます。
2週目:30通で試す
先月の依頼から30通を選び、手元のAIサービスに表と本文を貼って容器ごとの項目を出させます。当時の一覧と突き合わせ、pH や区分を推し量って埋めていないかを最優先で見ます。
3週目:聞き返す基準を決める
どの列が空なら聞き返すのかを、特別管理産業廃棄物管理責任者と決めます。 pH、量、容器、混ぜたものの4つを基準にし、規則の列の式を作ります。あわせて、実験室に配る依頼の書き方の見本を作ります。
4週目:メールから一覧までをつなぐ
Make で専用アドレスのラベルを見張り、Claude API を呼び、回収の一覧に1容器1行で入れるところまで作ります。この時点では聞き返しの下書きを作らず、一覧だけを見ます。
2か月目: 規則の列とルーター、聞き返しの下書きを足し、「要確認」の件数を毎週数えます。3か月目以降: 回収日の前日の業者への通知の下書きを足し、1件12分が何分になったかを実測します。実験室ごとの「要確認」の発生率を見て、依頼の書き方の見本を配り直した時点で、この構成は完成です。
11関連ユースケース
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| Gmail の Watch emails がフォルダ・ラベル・未読の条件で監視でき、取り込み時に既読にする設定があり、1回の上限が500以下であること。添付を List email attachments and media で取り出せること。Create a draft email で下書きを作れること | Make: Gmail modules | 2026-10-29 |
| Anthropic Claude アプリに Create a Prompt や Make an API Call などのモジュールがあり、API キーで接続すること。ページに構造化出力の記載が見当たらないこと | Make: Anthropic Claude | 2026-10-29 |
| Google Sheets の Search Rows・Add a Row があり、見出しを列の ID として使う設定で列の並べ替えに強くなること | Make: Google Sheets modules | 2026-10-29 |
| Iterator が配列を1要素ずつの束に分け、後続のモジュールが要素ごとに動くこと | Make Help: Iterator | 2026-10-29 |
| ルーターの道が1本ずつ順に処理され、どの条件にも当たらないものをフォールバックの道が受けること | Make Help: Router | 2026-10-29 |
構造化出力を output_config.format に JSON Schema で渡すこと。数値の範囲の制約(minimum・maximum)と文字列の長さの制約に対応せず、使うと400になること | Claude Docs: Structured outputs | 2026-10-29 |
| 特別管理産業廃棄物に廃油・廃酸・廃アルカリなどが含まれること(第2条の4)。産業廃棄物の委託契約を書面で行い、種類・数量などの条項を含めること(第6条の2)。特別管理産業廃棄物の委託の前に、種類・数量・性状その他の事項を文書で通知すること(第6条の6)。2026-09-16 施行の版 | e-Gov 法令API: 廃棄物の処理及び清掃に関する法律施行令 | 2026-10-29 |
| 廃酸の基準が pH 2.0 以下、廃アルカリの基準が pH 12.5 以上であること(第1条の2)。通知の事項が、種類・数量・性状・荷姿と取り扱う際に注意すべき事項であること(第8条の16) | e-Gov 法令API: 廃棄物の処理及び清掃に関する法律施行規則 | 2026-10-29 |
廃液が特別管理産業廃棄物に当たるか、委託の契約とマニフェストをどう扱うかは、特別管理産業廃棄物管理責任者と、必要に応じて自治体の窓口に確かめてください。 本記事は上の公開情報で確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-2278)についてのご相談はこちらから。
