業界団体の事務局が、官公庁の発表と業界のニュースを Gemini で要約し、会員向けの月次の会報の原稿にまとめる
業界団体の事務局が、ひと月に集めた官公庁の発表と関係団体のお知らせを Gemini で要約し、会員向けの会報の原稿の下書きにします。施行日や締切は原文から写させ、出典の書き方はプログラムが決めます。
- 生成AI
- ChatGPT/Claude/Gemini
- 連携・自動化
- Google Apps Script/Make/n8n
- 対象業界
- その他/建設
- 対象部門
- 総務
- 対象業務
- 書類作成/要約
- 主な課題
- 人手が足りない/属人化している/書類作成に時間がかかる
- AIで行う処理
- 要約
- 主な効果
- 品質標準化/属人化解消/工数削減
- 導入難易度
- ★★☆☆☆
- 実装レベル
- 半自動化
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 担当者が毎日、国土交通省の報道発表の一覧、県のお知らせ、全国団体のウェブサイトを開き、会員に関係しそうなものをブックマークする
- 業界紙は事務局で購読している紙面を読み、関係する記事に付箋を貼る
- 月末に、ブックマークと付箋を見ながら会報に載せる候補を決める
- 候補の1本ずつについて、発表の本文と添付の資料を読み、要点を拾う
- 会報の書き方に合わせて、見出しと3〜5行の本文を書く。施行日・締切・対象を本文から写す
- 出典の行を書き、日付と数字をもう一度原文と見比べる
- 事務局長が原稿を読み、直しを入れてPDFにし、会員へ配信する
- 自動毎朝、国土交通省の報道発表の月別一覧を取り、題名がキーワードに当たるものを候補の一覧に足す
- 人担当者が、県や関係団体の発表のURL、会員の寄稿、業界紙の記事の見出しとURLを候補の一覧に足す。資料の種別(官公庁/団体/寄稿/報道)を選ぶ
- 自動官公庁と団体の資料について、本文を取ってきて文字だけにする
- 自動Gemini API が、会員向けの要約、関係する会員の区分、施行日・締切・開催日、関係の強さを返す
- 自動返ってきた日付と数字の文字列が本文にあるかを突き合わせ、無いものに印を付ける
- 自動出典の行を題名とURLから組み立てる。報道は見出し・媒体名・日付・URLだけを並べる
- 人担当者が候補の一覧を見て、会報に載せるものに印を付け、報道には一言を書く
- 自動印の付いたものを会報のひな形のドキュメントに流し込み、原稿の下書きを作る
- 人担当者が下書きを原文と見比べて直し、事務局長が読んで確定させ、PDFにして配信する
各工程の詳しい説明を読む
- 担当者が毎日、国土交通省の報道発表の一覧、県のお知らせ、全国団体のウェブサイトを開き、会員に関係しそうなものをブックマークする
- 業界紙は事務局で購読している紙面を読み、関係する記事に付箋を貼る
- 月末に、ブックマークと付箋を見ながら会報に載せる候補を決める
- 候補の1本ずつについて、発表の本文と添付の資料を読み、要点を拾う
- 会報の書き方に合わせて、見出しと3〜5行の本文を書く。施行日・締切・対象を本文から写す
- 出典の行を書き、日付と数字をもう一度原文と見比べる
- 事務局長が原稿を読み、直しを入れてPDFにし、会員へ配信する
(a)1本ずつ読む時間が足りない。 4番と5番がこの業務の大半です。月末の数日に詰めて読むので、後半の記事ほど本文が薄くなります。
(b)書き方が担当者ごとに違う。 和暦と西暦が混ざる、出典が書いてある記事と無い記事がある。同じ号の中で読み方が変わります。
(c)日付と数字の写し間違いが出る。 「令和8年10月1日〜5日現在」の調査時点を公表日と取り違えるといった間違いが、年に何度か会員からの指摘で見つかります。多くは、原文と見比べる時間が残っていなかったものです。
(d)業界紙の記事を書き写す。 記事の要点を書き写して載せるのが慣習ですが、本文を要約して会員に配ってよいかを、事務局は確かめたことがありません。
- 【自動】 毎朝、国土交通省の報道発表の月別一覧を取り、題名がキーワードに当たるものを候補の一覧に足す
- 【人】 担当者が、県や関係団体の発表のURL、会員の寄稿、業界紙の記事の見出しとURLを候補の一覧に足す。資料の種別(官公庁/団体/寄稿/報道)を選ぶ
- 【自動】 官公庁と団体の資料について、本文を取ってきて文字だけにする
- 【自動】 Gemini API が、会員向けの要約、関係する会員の区分、施行日・締切・開催日、関係の強さを返す
- 【自動】 返ってきた日付と数字の文字列が本文にあるかを突き合わせ、無いものに印を付ける
- 【自動】 出典の行を題名とURLから組み立てる。報道は見出し・媒体名・日付・URLだけを並べる
- 【人】 担当者が候補の一覧を見て、会報に載せるものに印を付け、報道には一言を書く
- 【自動】 印の付いたものを会報のひな形のドキュメントに流し込み、原稿の下書きを作る
- 【人】 担当者が下書きを原文と見比べて直し、事務局長が読んで確定させ、PDFにして配信する
7番目が、この設計の分かれ目です。 何を会員に知らせるかは事務局の判断で、AIの「関係の強さ」は並べ替えの目安にとどめます。AIが「関係が弱い」とした発表でも、担当者が載せると決めれば載ります。
5番目と6番目を機械で行うのは、原文と一字一句合っているかの問題だからです。
02今回想定するシステム構成
国土交通省の報道発表の月別一覧 / 県・関係団体の発表 / 会員の寄稿 / 業界紙の見出し │ 一覧は毎朝自動で取得、それ以外は担当者が候補の一覧に足す ▼【トリガー】毎朝の定時実行 + 月末の原稿作成の実行 Google Apps Script ├──▶ 候補の一覧(スプレッドシート)に題名・URL・種別を書く ├──▶ 官公庁と団体の資料だけ本文を取得し、文字だけにする ▼ Gemini API(Interactions API、構造化出力、store=false) │ ① 会員向けの要約(会報の書き方に沿う) │ ② 関係する会員の区分、関係の強さ │ ③ 施行日・締切・開催日・数字(原文のまま) ▼ Google Apps Script ── 日付と数字の突き合わせ、出典の行の組み立て ▼ 【担当者が載せるものを選び、報道に一言を書く】 ▼ Google ドキュメント(会報のひな形に流し込んだ原稿の下書き) ▼ 【担当者が原文と見比べて直し、事務局長が確定】 └──▶ PDFにして会員へ配信
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| 処理 | Gemini API(Interactions API。構造化出力で要約と日付の書き出しを返す) | Claude API、OpenAI API |
| 連携 | Google Apps Script(一覧の取得、本文の取得、API の呼び出し、原稿への流し込み) | Make、n8n |
| 記録の置き場 | Google スプレッドシート(候補の一覧と、AIの出力の記録) | - |
| 原稿 | Google ドキュメント(会報のひな形) | - |
スプレッドシートとドキュメントは、新しく足すものではありません。 いまの会報もドキュメントで作っており、新しく足すのは Gemini API の有料の利用と、小さな Apps Script と、会報の書き方を文字にした決まりの一覧です。
国土交通省の報道発表は、report/press/houdou202610.html のように年と月を名前に持つ一覧のページにまとまっています。 毎朝その月の一覧を取り、まだ取り込んでいない題名だけを候補に足します。
国土交通省のウェブサイトの利用ルールが、この構成の前提です。 同省のページでは、コンテンツの著作権は特記が無い限り同省に帰属し、権利表記が無い限り「公共データ利用規約(第1.0版)」(PDL1.0)に準拠した条件で利用できるとされています。利用するときは出典を書き、編集・加工したときはそのことを別に書くこと、加工した情報を国が作成したかのように見せないことが求められています。シンボルマークやロゴ、別のルールを明示したコンテンツは適用外です。会報の要約は加工に当たるので、出典の行に「をもとに〇〇協会作成」と必ず入れます。 県や関係団体のページは、それぞれの利用ルールを最初に確かめます。
要約には Gemini API の Interactions API を使います。 公式のページでは、/v1beta/interactions に model と input を送り、system_instruction はその回の生成にだけ使われるとされています。既定ではやり取りが保存され(store=true)、有料の利用では55日、無料の利用では1日保持されます。 store=false にするとバックグラウンドの実行と previous_interaction_id が使えなくなりますが、1本につき1回呼ぶだけのこの構成ではどちらも使わないので、store=false を付けます。 会員の寄稿には公開前の内容が入りうるためです。
03どうやって実装するのか
処理の起点を決める
起点は2つあります。毎朝の定時実行と、月末に担当者が押す原稿作成の実行です。
毎朝の実行は、Apps Script の時間主導のトリガーで動かします。公式のページでは、時間主導のトリガーは毎分から月1回までの間隔で設定でき、実行の時刻は少しずらされることがある(9時に設定すると9時から10時のあいだのどこか)とされています。朝の出勤までに終わっていればよいので、7時台に設定します。
毎朝の実行で行うのは、一覧の取得と、本文の取得と、要約までです。要約を毎朝少しずつ進めておくと、月末に120本をまとめて読む作業がなくなります。 担当者が手で足したURLも、翌朝に同じように処理されます。
月末の実行は、担当者がスプレッドシートのメニューから押し、載せるものに印が付いた行だけを会報のひな形に流し込みます。
インストール型のトリガーは作った人のアカウントで動くとされています。個人のアカウントで作ると異動で止まるので、事務局の共用のアカウントで作ります。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 候補の一覧 | 題名、URL、種別(官公庁/団体/寄稿/報道)、取得日、利用ルールの確認結果 | スプレッドシート |
| 資料の本文 | 発表のページの文字(HTMLのタグを除いたもの)、公表日 | 各ページ |
| 会報の書き方の決まり | 1本の長さ、見出しの付け方、日付の書き方、避ける言い回し | スプレッドシートの設定のシート |
| 会員の区分 | 管工事、空調、衛生設備、電気工事、設計 など。区分ごとの関心事の短い説明 | スプレッドシートの設定のシート |
| キーワードの一覧 | 建設、設備、技能、資材、下水、建築、労働、安全 など | スプレッドシートの設定のシート |
質を決めるのは、真ん中の2つです。 会報の書き方の決まりが無ければ、AIは毎回それらしい別の書き方をし、担当者ごとの違いがAIごとの違いに置き換わるだけです。 前任者から口頭で伝わっている決まりを、ここで初めて文字にします。
会員の区分の説明は、「誰に関係するか」を決める材料です。 「空調:冷媒の規制、省エネの基準に関心」のように1行で書きます。
報道の行には、本文を入れません。 業界紙の記事は見出し、媒体名、掲載日、URLだけを候補の一覧に書きます。本文を貼り付ける欄そのものを作らないことで、誤って本文がAIに渡る経路をなくします。
データの取得方法を決める
一覧と本文の取得は、Apps Script の UrlFetchApp で行います。 公式のページでは、fetch は HTTP または HTTPS のリクエストを送って応答を返し、muteHttpExceptions を true にすると、失敗を示す応答でも例外を投げずに応答を返すとされています。失敗した行を記録して先へ進むために、muteHttpExceptions を有効にします。
| 取るもの | どこから | 何に使うか |
|---|---|---|
| その月の報道発表の題名とリンク | 国土交通省の報道発表の月別一覧 | キーワードに当たる題名を候補に足す |
| 発表の本文 | 各発表のページ | 要約の材料 |
| 県・関係団体のお知らせの本文 | 担当者が足したURL | 要約の材料 |
| 会員の寄稿 | 担当者がドライブに置いた文書 | 要約ではなく体裁の整えだけ |
一覧からは、題名とリンクだけを取ります。 キーワードに当たらなかった題名も別のシートに残し、担当者が週に一度ながめて、拾い漏らしに気づくたびにキーワードを足します。
発表の本文には、添付のPDFが付いていることが多くあります。 この構成では、まずページの本文だけを要約の材料にします。ページの本文が数行しか無く、中身がPDFにあると分かったものは、needs_attachment の印を付けて担当者に回します。 担当者がPDFの必要な部分の文字を候補の一覧の別の欄に貼ると、次の実行で要約されます。
新しく足された行だけを取りに行き、同じページを何度も取りません。 取得した本文は、取得日時と一緒に別のシートに保存します。
AIへ渡す前に整形する
- 重複の除去 … 同じURL、または同じ題名が前月までの一覧にあれば、新しい行を作りません
- タグの除去 … HTMLのタグ、メニュー、ページの上下の共通部分を取り除き、本文だけにします
- 公表日の取り出し … 一覧のページの日付を、その行の公表日として持たせます。本文の中の日付と混ぜません
- 長さの確認 … 本文がごく短いものは
needs_attachment、非常に長いものは前半だけを渡さず担当者に回します - 種別による振り分け … 報道の行は本文の取得も要約もしません。寄稿は要約せず、体裁の整えだけに回します
- 利用ルールの確認 … 種別が団体で、利用ルールの確認結果が空の行は、要約に進めません
3番目を軽く見ないでください。 報道発表の本文には「令和8年10月1日〜5日現在」の調査時点、会議の開催日、申込の締切など、日付がいくつも出てきます。公表日を本文から拾わせると、どれが公表日かをAIが選ぶことになります。 公表日は一覧のページの日付で決め、AIには本文の中の日付だけを扱わせます。
6番目は、最初に一度だけ手を動かす作業です。 団体ごとに「出典を書けば加工可」「転載は要許諾」のように設定のシートに書いておけば、以後は自動で入ります。
AIに処理させる
させるのは、1本の資料について、会員向けの要約を書き、日付と対象を原文から写し、関係する会員の区分を選ぶことです。
| 項目 | させること | 判断できないときの扱い |
|---|---|---|
| 見出し | 会報の書き方に沿い、内容が分かる見出しを付ける | 題名をそのまま使う |
| 要約 | 会員が知っておくべきことを3〜5文で書く | 本文が足りなければ summary_status を insufficient |
| 日付 | 施行日・締切・開催日・調査時点を、原文の文字列のまま書き出す | 書かれていなければ空のまま |
| 数字 | 金額・件数・割合を、原文の文字列のまま書き出す | 書かれていなければ空のまま |
| 関係する会員の区分 | 会員の区分の一覧から選ぶ | 当てはまらなければ none |
| 関係の強さ | high / medium / low | 迷えば medium |
| 会員がすること | 申請・届出・応募など、会員側の動きが本文に書かれていれば写す | 書かれていなければ空のまま |
右端の列が、この構成でいちばん大事なところです。 本文に書かれていない日付や会員の対応を、AIが常識から補うと、会報が発表に無いことを言い出します。 空のまま返してよいことを、指示の側で何度も伝えます。
| させないこと | 理由 |
|---|---|
| 会報に載せるかの決定 | 何を知らせるかは事務局の判断 |
| 出典の行を書くこと | 題名とURLからプログラムが組み立てる |
| 日付の書き換え(和暦と西暦の変換など) | 変換はプログラムで行い、原文の文字列を残す |
| 本文に無い背景の説明 | 発表に無いことを会報が言うことになる |
| 報道記事の要約 | 本文を渡さない。見出しと一言だけ |
| 会員への助言(「早めに申請を」など) | 書いてあることだけを伝える |
3行目がいちばん起きやすい失敗です。 会報の決まりが「西暦で書く」なら、AIは「令和8年10月26日」を「2026年10月26日」に直して書きます。直した文字列は原文に無いので、突き合わせで本当に正しいかを確かめられなくなります。 AIには原文のまま写させ、会報の表記への変換はプログラムで行います。
指示内容を固定する
あなたは業界団体の事務局で、会員向けの会報の原稿を準備する立場です。
渡された資料の本文だけを読み、決められた形式で返してください。
本文に書かれていないことを、常識や推測で補わないでください。
【会報の書き方の決まり】
{style_rules}
【会員の区分と、それぞれの関心事】
{member_segments}
【返すもの】
1. headline:内容が分かる見出し(「〜について」で終わらせない)
2. summary:会員が知っておくべきことを3〜5文で
3. dates:施行日・締切・開催日・調査時点など。種類と、本文の文字列のまま
4. figures:金額・件数・割合など。本文の文字列のまま
5. segments:関係する会員の区分(一覧から選ぶ。無ければ none)
6. relevance:high / medium / low
7. member_action:申請・届出・応募など、会員がすることが本文に書かれていれば写す
【厳守事項】
- dates と figures の text には、本文の文字列を一字一句そのまま写してください。
和暦を西暦に直す、全角を半角に直す、「〜」を「から」に直すことをしないでください。
- 本文に日付が書かれていなければ dates は空の配列にしてください。
公表日は別に管理しているので、書き出さないでください。
- 施行日・締切が本文に無いときに、「近日中」「今後」などの言葉で補わないでください。
- member_action は本文に書かれていることだけです。
書かれていなければ空にし、「早めの対応を」などの助言を足さないでください。
- 出典、URL、発表した府省の名前を summary の中に書かないでください。
- 本文が短く、要約するだけの中身が無いときは summary_status を insufficient にし、
summary は空にしてください。
- relevance は並べ替えの目安です。迷ったときは medium にしてください。
- 資料が会報の対象と無関係(人事異動の一覧だけ、など)なら relevance を low にし、
その理由を note に1文で書いてください。
【資料の題名】{title}
【資料の本文】{body}
「公表日を書き出さない」を明記しないと、本文の冒頭にある日付を拾います。 報道発表のページには日付が何度も出てきて、そのうちどれが公表日かは本文だけでは決めにくいからです。公表日は一覧のページで決め、AIの仕事から外します。
「助言を足さない」のは、会報が団体の公式の文書だからです。 会員にどう勧めるかは、事務局長が原稿の段階で書き足します。
出力形式を固定する
構造化出力で、次の形のJSONを返させます。 公式のページでは、response_format に type を text、mime_type を application/json とし、schema に JSON Schema を置くとされています。
{
"headline": "",
"summary_status": "ok | insufficient",
"summary": "",
"dates": [
{ "kind": "effective | deadline | event | survey_point | other", "text": "" }
],
"figures": [
{ "label": "", "text": "" }
],
"segments": ["piping | hvac | sanitary | electrical | design | none"],
"relevance": "high | medium | low",
"member_action": "",
"note": ""
}
1つ目の理由は、dates と figures を突き合わせに回せることです。 返ってきた text を本文の中で検索し、見つからなかったものに not_in_source の印を付けます。 文章の中に日付が埋まっていると、この突き合わせができません。
2つ目は、enum で値を縛れることです。 公式のページでは、文字列の enum とオブジェクトの required が使えるとされています。segments と relevance を一覧の中の値に限ることで、会員の区分に無い言葉が混ざりません。 一方で、minLength と maxLength は強制されず黙って取り除かれるとされているので、要約の長さはプログラムの側で数え、長すぎるものに印を付けます。
3つ目は、任意の項目の並べ方です。 公式のページでは、任意の項目が長く続くと 400 INVALID_ARGUMENT になることがあり、必須の項目をあいだに挟むと解消するとされています。この形では headline・summary_status・relevance を必須にし、任意の項目のあいだに置きます。
突き合わせの後、プログラムが出典の行を組み立てます。
| 種別 | 出典の行 |
|---|---|
| 官公庁 | 「題名」(国土交通省)(URL)をもとに〇〇協会作成 |
| 団体 | 設定のシートの書き方に従う。転載が要許諾の団体は題名とURLだけ |
| 報道 | 媒体名、掲載日、見出し、URL。要約は付けない |
| 寄稿 | 寄稿した会員の社名(本人の了解を得た表記) |
1行目の「をもとに〇〇協会作成」は、加工したことを示す一文で、省きません。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 国土交通省の報道発表の月別一覧 | UrlFetchApp による取得 | 題名とリンクを取る |
| 各発表のページ、県・団体のページ | UrlFetchApp による取得 | 本文を取る |
| Gemini API | API呼び出し(store=false) | 要約と日付の書き出し |
| 候補の一覧 | スプレッドシートの読み書き | 題名、種別、AIの出力、突き合わせの結果 |
| 会報のひな形 | ドキュメントの複製と書き込み | 印の付いたものを流し込む |
会員への配信は、この構成から行いません。 原稿の下書きを作るところまでで、PDFにして配信するのは事務局長が確定させた後に人が行います。 配信まで自動にすると、確かめていない要約が会員に届きます。
ひな形は毎月複製して使い、過去の号を上書きしません。 流し込む順は「行政の動き」は公表日の順、「業界の動き」は関係の強さの順にし、担当者が並べ替えます。
人が確認する
人が手を入れるのは2か所です。 候補の一覧で載せるものを選ぶところと、原稿の下書きを原文と見比べるところです。
- 載せるものを選ぶ … 関係の強さで並べた一覧を上から見ます。
lowの行も題名だけは目を通します - 報道に一言を書く … 見出しの横に、会員にとっての意味を1〜2文で書きます。記事の本文を写しません
not_in_sourceの印を先に見る … 日付や数字が原文に見つからなかったものです。原文を開いて正しい文字列に直します- 要約を原文と見比べる … 見出しと要約が発表の中身からずれていないかを読みます
- 事務局長が確定させる … 会員への勧めを書き足すのはこの段階です
3番目を省かないでください。 会員が会報から拾うのは日付です。要約の文章が少し硬いことより、日付が1つ違うことのほうがはるかに重いので、印の付いたものから先に見ます。
目標は、120本をならして1本5分です。 載せないと決めた行は題名と要約を読んで数十秒で終わり、載せる行は原文と見比べるので数分かかります。not_in_source が多い月は、本文の取り方(タグの除去)がうまくいっていない可能性があります。
例外に対処する
| 起きること | 対応 |
|---|---|
| ページが取れない(404・403) | muteHttpExceptions で応答を受け、行に fetch_failed と応答のコードを書く。担当者が開いて確かめる |
| ページの本文が短く、中身が添付のPDFにある | needs_attachment。担当者がPDFの必要な部分の文字を別の欄に貼る |
| 本文が非常に長い | 前半だけを渡さず、担当者に回す。途中で切った要約を作らない |
| 一覧のページの作りが変わり、題名が0件 | その日の取得を失敗として記録し、担当者に知らせる |
400 INVALID_ARGUMENT が返る | スキーマの並びを見直す。任意の項目のあいだに必須の項目を挟む |
| 日付・数字が本文に見つからない | not_in_source。担当者が原文で直す |
| 要約が決まりの長さを超える | プログラムで数えて印を付ける。長さの指定はスキーマで強制されない |
| 同じ発表が二度候補に入る | URLと題名で重複を除く |
| 団体の利用ルールが未確認 | 要約に進めない。担当者が確かめて設定のシートに書く |
| 会員の寄稿に個人名や連絡先が入る | 要約に回さない。寄稿した会員に掲載してよい範囲を確かめる |
上から3行目まで、本文を取る段階の問題が大半を占めます。 取れなかったものを黙って飛ばさず、行に理由を残します。
4行目は、気づかないと月末まで続きます。 一覧のページの作りが変わると、エラーにならずに題名が0件のまま毎朝終わります。0件の日が続いたら止まっていると見なし、担当者に知らせます。
記録を残す
- 候補の一覧の全行(題名、URL、種別、取得日、利用ルールの確認結果)
- 取得した本文と、取得日時。要約したときに見ていた本文がそのまま残るように
- Gemini API の出力のJSONと、突き合わせの結果(
not_in_sourceの有無) - 担当者が直した後の要約と、直した人
- 載せる・載せないの印と、事務局長が確定させた原稿の版
- 配信したPDFと配信日
2つ目で本文を残すのは、発表のページが後から変わるためです。 訂正や差し替えでページが変わると、会報に書いたことの根拠が後から確かめられなくなります。 会員から「会報の日付が違う」と言われたとき、当時のページに何が書かれていたかを示せます。
4つ目は、決まりを育てる材料です。 毎回同じ直しをしているなら、決まりに足します。
04実装レベルの3段階
最小構成では、本文を貼る手間が残ります。 120本を手で貼るのは続かないので、確かめるための段階です。 本記事が想定するのは半自動化で、1本15分が5分になります。 読む・書く・突き合わせる作業が無くなり、候補を足す作業と確認が残ります。一覧の自動取得まで足すかは、国土交通省以外の発表がどれだけあるかで決めてください。自動で取れる一覧が国土交通省だけなら、効果は限られます。 段階を飛ばさないでください。 半自動化を1〜2か月回すと、担当者が毎回直している言い回しが分かります。それを決まりに足してから自動取得に進みます。
05工数削減シミュレーション
導入後 120件 × 5分 ÷ 60 = 10 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 県単位の設備工事業・建設業・運送業などの業界団体で、事務局の数名が毎月の会報(PDFやメールの配信)を作っており、官公庁の発表や関係団体のお知らせを読んで要約する作業に月の何日かを取られている場合。会報の書き方が担当者ごとに違い、異動や退職のたびに作り方が途切れる場合。Google Workspace を使っており、Gemini API の有料の利用を契約できる場合。
- 会報が年に数回で、毎月の作業が発生しない団体。会報の中身が会員からの寄稿や行事の報告だけで、外部の発表を要約する作業が少ない場合。報道記事の本文を会員へそのまま配る運用を続けたい場合(この構成は報道の本文を扱わない)。なお、どの発表を会員に知らせるか、会員にどう対応を勧めるかの判断は、この構成では代替できません。
07最小構成で試す方法
- 先月の会報に載せた記事から20本を選ぶ(うち数本は、日付や対象が複数出てくる発表を入れる)
- 20本の元になった発表のページの本文を、手でコピーしてスプレッドシートに貼る
- 会報の書き方の決まりを、前任者と今の担当者で話し合って10行ほどに書く
- 第7章の指示を置いた短い Apps Script で1行ずつ Gemini API を呼ぶ(試すときも有料の利用と
store=falseで呼ぶ) - 出てきた要約と日付を、先月の会報の記事と並べ、日付の文字列が原文にあるかを確かめる
20本は必ずやってください。 一覧の自動取得を作る前に、「本文を渡せば、会報の書き方で要約し、日付を原文のまま写せるのか」を確かめます。
| 出てきた内容 | 判断 |
|---|---|
| 先月の記事と同じくらい読め、日付がすべて原文にある | 一覧の取得と原稿への流し込みに進む |
| 日付を西暦に直した、本文に無い勧めを足した | 指示の書き方で直る。構成は有効 |
| 書き方が記事ごとにばらつく | 決まりの一覧が足りない。 AIの問題ではない |
3行目が出ることは珍しくありません。 決まりを10行に書けたこと自体が、属人化を解く最初の一歩です。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 日付を西暦に直して書く | 原文のまま写させ、変換はプログラムで行う |
| 公表日と調査時点を取り違える | 公表日は一覧のページの日付で決め、AIに書き出させない |
| 本文に無い勧めや背景を足す | 「書いてあることだけ」を指示に書き、事務局長が勧めを書き足す |
| 出典の行にもっともらしいURLが入る | 出典の行はAIに書かせない。 題名とURLからプログラムが作る |
| 加工したことを示す一文が抜ける | 種別が官公庁の行は、出典の行に必ず入る形にする |
| 業界紙の記事の本文を要約してしまう | 本文を貼る欄を作らない。 見出しと一言だけにする |
| 一覧のページの作りが変わって0件が続く | 0件の日を失敗として知らせる |
| 添付のPDFに中身がある発表が薄い要約になる | ページの本文が短いものは needs_attachment で人に回す |
| 要約の長さがそろわない | maxLength は強制されない。プログラムで数える |
| 時間主導のトリガーが担当者の異動で止まる | 事務局の共用のアカウントで作る |
| 書き方が記事ごとにばらつく | 決まりの一覧を足す。担当者の直しを毎月見直す |
上の2行が、この構成の失敗のほとんどです。 どちらもAIが日付を「親切に」扱った結果で、原文の文字列を残すことと、公表日をAIの仕事から外すことで防ぎます。
6行目は最初に決めておきます。 業界紙の記事を見出しだけにすると会報が薄く感じられるので、事務局の一言の欄を設けています。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 官公庁と関係団体の公開された発表、業界紙の記事の見出しとURL、会員の寄稿(公開前の内容を含みうる)、会報の原稿です。
- 報道の本文をAIに渡さない … 業界紙や新聞の記事は発行元の著作物です。本文を要約して会員に配ってよいかは、発行元との契約や許諾で決まります。 この構成では見出しと媒体名とリンクだけを扱い、本文を貼る欄を作りません
- 官公庁のページの利用ルールに従う … ロゴや、別のルールを明示したコンテンツは適用外とされているので、図や画像を転載するときは個別に確かめます
- 会員の寄稿は有料の利用で扱う … 寄稿には公開前の新製品や行事の情報が入りえます。有料の利用では、プロンプトと応答を製品の改善に使わず、違反の検知のために限った期間だけ記録するとされています。そのうえで
store=falseを付けます - 会報は団体の公式の文書である … 要約に助言や見解が混ざると、それが団体の見解として会員に届きます。会員にどう勧めるかは事務局長が書き足し、AIの出力に含めません
- 使うのは事務局の職員だけにする … Gemini API の追加利用規約は、利用者が18歳以上であることを求めています。会員や外部の人がAIに触れる画面は作りません
- 配信を自動にしない … 原稿の下書きまでで止めます。確かめていない要約が会員300社に一斉に届くことは、取り消せません
誤りが起きた場合のリスクは、日付や対象を間違えて会員の手続きを遅らせることと、許諾の無い記事の本文を配ることの2つです。 前者は日付の突き合わせで、後者は報道の本文を扱わない設計で、仕組みの側で止めます。
10まず何から始めるか
1週目:会報の書き方の決まりを文字にする
前任者と今の担当者で、1本の長さ、見出しの付け方、日付の書き方、出典の書き方を話し合い、10行ほどの決まりの一覧にします。 あわせて、会員の区分と、それぞれの関心事を1行ずつ書きます。
2週目:20本で試す
先月の会報の元になった発表から20本を選び、本文を手でシートに貼って Gemini API で要約させます。日付が原文のまま写されているか、本文に無い勧めが足されていないかを最優先で見ます。
3週目:報道と団体の扱いを決める
業界紙の記事を見出しと一言だけにすることを、事務局長と決めます。 購読している業界紙の契約で、記事の要約を会員に配れるかを確かめ、配れないものは見出しだけにします。よく使う県と関係団体のページの利用ルールも、この週に確かめます。
4週目:候補の一覧から要約までをつなぐ
候補の一覧に足したURLから本文を取り、要約し、日付を突き合わせて出典の行を組み立てるところまで作ります。この時点では原稿への流し込みはせず、一覧を見て担当者が原稿を書きます。
2か月目: 会報のひな形への流し込みを足し、1本15分が何分になったかを実測します。3か月目以降: 報道発表の月別一覧を毎朝取り込み、キーワードを育てます。not_in_source の印が減った時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| 国土交通省のウェブサイトのコンテンツの著作権が特記の無い限り同省に帰属し、権利表記が無い限り「公共データ利用規約(第1.0版)」(PDL1.0)に準拠した条件で利用できること。利用するときは出典を記載し、編集・加工したときはそのことを別に記載すること、加工した情報を国が作成したかのように公表・利用してはならないこと。シンボルマーク・ロゴ・別のルールを明示したコンテンツが適用外であること | 国土交通省: リンク・著作権・免責事項 | 2026-10-26 |
| 報道発表資料が年と月ごとの一覧のページにまとめられ、日付ごとに発表の題名が並んでいること(建設資材の需給動向、建設労働の需給調査、特定技能の試験など) | 国土交通省: 報道発表資料(2026年10月) | 2026-10-26 |
Interactions API の REST の宛先が /v1beta/interactions であること。system_instruction がその回の生成にだけ使われる設定であること。既定でやり取りが保存され、有料の利用で55日、無料の利用で1日保持されること。store=false で保存しない設定にでき、その場合バックグラウンドの実行と previous_interaction_id が使えないこと | Google AI for Developers: Interactions API | 2026-10-26 |
構造化出力で response_format に type: text と mime_type: application/json とスキーマを置くこと。文字列の enum、オブジェクトの required が使え、minLength・maxLength は強制されず取り除かれること。任意の項目が長く続くと 400 INVALID_ARGUMENT になることがあり、必須の項目を挟むと解消すること | Google AI for Developers: Structured output | 2026-10-26 |
| API の利用者が18歳以上であることを求め、18歳未満が使うことが見込まれるサービスでの利用を禁じていること。無料のサービスでは内容が改善に使われ人が読みうること、機密や個人の情報を送らないよう求めていること。有料のサービスではプロンプトと応答を改善に使わず、違反の検知と防止のために限った期間だけ記録すること | Gemini API 追加利用規約 | 2026-10-26 |
UrlFetchApp.fetch が HTTP・HTTPS のリクエストを送り応答を返すこと。muteHttpExceptions を有効にすると失敗を示す応答でも例外を投げないこと | Google Apps Script: UrlFetchApp | 2026-10-26 |
| 時間主導のトリガーが毎分から月1回までの間隔で設定でき、実行の時刻が少しずらされることがあること。インストール型のトリガーが作った人のアカウントで動くこと | Google Apps Script: Installable triggers | 2026-10-26 |
どの発表を会員に知らせるか、会員にどう対応を勧めるかは、事務局が決めてください。 本記事は上記の公開情報で確認できた範囲だけを扱っています。業界紙の記事の扱いは、各発行元との契約を確かめてください。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-1874)についてのご相談はこちらから。
