地域コミュニティLINEボットに「PDF回覧板を学習させる」仕組みを作った(S著)
地域コミュニティLINEボットに「PDF回覧板を学習させる」仕組みを作った(S著)
出典: note.com / 2026-05-01
地域コミュニティLINEボットに「PDF回覧板を学習させる」仕組みを作った
はじめに
以前Cloudflare Workers と Google Gemini API を使った地域コミュニティ向けLINEボットを作成しました。
今回は、そのボットに**「毎月届く回覧板(PDF)の内容を読み込ませて、住民の質問に答えられる」仕組みを追加**した取り組みをご紹介します。
課題:「定期的に届くPDFの情報をボットに覚えさせたい」
地域のコミュニティでは、毎月さまざまな回覧板(PDF)が配布されます。
-
ごみ出しルールの変更
-
移動販売のスケジュール
-
防犯・防災に関するお知らせ
-
地域行事やクラブ活動の案内
「こういった内容をLINEで質問できたら便利なのでは?」という声から、PDFの内容をボットに学習させる機能の実装を検討しました。
方針の検討:3つの選択肢
PDFをボットに読み込ませる方法として、以下の3つを比較しました。
| 方法 | 概要 | 向いているケース |
|---|---|---|
| ①プロンプト埋め込み | テキストをAIへの指示文に直接書く | PDF数枚・更新頻度低い |
| ②Gemini Files API | PDFをGoogleに一時アップロード | 都度更新・枚数多い(48時間で期限切れ) |
| ③KVストア蓄積型 | テキストをクラウドDBに永続保存 | 毎月蓄積・長期運用 |
毎月届いてどんどん蓄積していく回覧板という用途には、③の「Cloudflare KV」を使った永続保存型が最適と判断しました。
実装した仕組みの全体像
【毎月の登録作業フロー】
① PDFが届く(メール添付)
↓
② GoogleドライブにPDFを保存
↓
③ Googleドキュメントで開く(テキスト自動抽出)
↓
④ テキストをコピーしてスクリプトに貼り付け
↓
⑤ コマンド1行で Cloudflare KV に保存
↓
⑥ 即座にボットが回答に使えるようになる(再デプロイ不要)
【住民からの質問フロー】
住民がLINEでメッセージ送信
↓
Cloudflare Worker が受信
↓
KVストアに保存された全回覧板データを取得
↓
Gemini AI に「このデータを参考に答えて」と渡す
↓
AIが関連する回覧板を自動で判断して回答
↓
住民のLINEに返信が届く
技術構成のポイント
Cloudflare KV とは
Cloudflare が提供するシンプルなKey-Valueデータベースです。
無料プランで 1GB の永続ストレージが利用でき、Cloudflare Workers から直接読み書きできます。
回覧板の内容を "2025年6月-ごみ出し変更" のようなキー名で保存していくことで、月ごとに積み重なるアーカイブとして機能します。
テキスト抽出の方法(ノーコード)
PDFからテキストを抽出するのに、専用ツールは一切不要です。
-
PDFをGoogleドライブに保存
-
右クリック →「アプリで開く」→「Googleドキュメント」を選択
-
Googleドキュメントが自動でテキストを認識・表示
-
全選択(Ctrl+A)→ コピー(Ctrl+C)で完了
これにより、非エンジニアのスタッフでも毎月の登録作業が行えるフローになっています。
管理者用エンドポイントの設計
ボットのプログラム(Cloudflare Worker)に、管理者専用の登録APIを内蔵しました。
POST /admin/knowledge?key=ファイル名&secret=パスワード
Body: テキスト内容
パスワード認証により、一般ユーザーがアクセスしても登録できない仕組みになっています。
今回登録したデータの種類
-
ごみ出しに関するルール変更のお知らせ
-
防犯・犯罪発生状況の報告
-
移動販売のスケジュール
-
感震ブレーカーなど防災に関する情報
-
移動支援サービスの案内
-
市民向け説明会のお知らせ
-
地域福祉活動のスケジュール
-
地域イベントの案内(複数)
実際の使用感
登録後、LINEから試しに質問してみると、AIが複数のPDFをまたいで関連情報を自動的に組み合わせて回答することを確認できました。
「今月のイベントは何がある?」という質問に対して、登録した複数の回覧板から行事情報をまとめて答えてくれる、といった動作が実現できています。
まとめ
| 項目 | 内容 |
|---|---|
| 追加コスト | 完全無料(Cloudflare KV 無料枠内) |
| 毎月の作業時間 | 約5〜10分(PDF数枚の場合) |
| 技術的難易度 | 初回設定のみ要支援・以降はノーコード運用 |
| 情報の鮮度 | 登録した瞬間からボットに反映 |
「回覧板がLINEで聞ける」 というシンプルな体験が、地域の情報格差を埋めるひとつの手段になるかもしれない、という手ごたえを感じた取り組みでした。
#地域DX #LINE #AI #コミュニティ #Cloudflare #ChatBot
この記事は note.com から KTBLOG に移行されました。元記事: https://note.com/famous_prawn2009/n/n60564b244489