2026.10.27
毎朝 AI にニュースを集めさせるときに、先に決めておく 1 つのルール
毎朝、業界のニュースをスタッフに共有したい。でも誰かが時間を使って集めるのはしんどい。AI にやらせれば、という話はよく出る。
ぼくが働く Onbit では、ある事業所で毎朝 AI が業界ニュースを集めて配信する仕組みを組んだことがある。動かしてみると、集める作業そのものは AI が得意な部分だと分かった。問題は「正確性」のほうだった。
AI にニュースを要約させると、記事に書いていない因果関係や評価を自動で補う。「A という出来事があった — だから B になる」という一文が出てきても、その「だから」が記事に書いてあったのか、AI が推測で足したのかは受け取る側には判別できない。それが毎朝続くと、配信の信頼は少しずつ崩れる。
守らせる 1 つのルール: 記事に書いていないことを書かない
これだけ、守らせる。
具体的には:
- 要約に因果関係・評価を「足さない」(記事にある事実だけを抜く)
- 数字は転記のみ。単位も変えない (「約 100 件」を「100 件以上」に変えない)
- 記事の見出しが煽り気味でも、要約は事実の部分だけを取る
AI への指示文の中に「記事に書いていないことを推測で補わない。不明確な部分は省く」という行を 1 本追加するだけで、出力の質が変わる。
取得できなかったソースを黙って飛ばさない
AI が特定のサイトにアクセスできない日がある。そのとき AI は、黙って次のソースに移ったり、前日の記事を使ったり、似たサイトを自分で探したりしようとすることがある。
これは止めたほうがいい。
取得できなかったことが伝わらないまま配信されると、「いつも来ていたカテゴリが今日は空だ」という状態でも何が起きたか分からない。後から「あの件、今日のニュースに出ていたよ」と言われて初めて気づく。そういう経験をした人は、少なくないんじゃないかと思っている。
配信文の中に「○○(ソース名)は本日取得できませんでした」という 1 行を機械的に入れさせる。これがあると受け取る側は「ソースが取れなかった日」と「記事がなかった日」を区別できる。
もう 1 点。AI がアクセスに失敗したとき、勝手に代替ソースへ差し替えないようにする。どのソースを使うかは運用者が判断することで、AI が自分で決めることではない。
しくみ — 技術的にはこうなっている
使ったもの
- 指定ソース — RSS フィード (ウェブサイトが新着情報を自動で配信する仕組み) か当日取得できる Web ページ。導入時に実測が必要で、大手ニュースサイトは Bot 検出で自動取得を弾くことが多い。取れないまま設定すると毎日「本日取得できず」になる
- Claude (要約・整形担当)
- 配信経路: LINE Messaging API / メール / Slack のいずれか
データの流れ
ソースを巡回 → 当日付きの記事だけを抽出 (日付が確認できない記事は採用しない) → カテゴリ分けして 1 記事 = 見出し 1 行 + 要約 1〜2 行 に整形 → 配信文の型 (カテゴリ見出し・文字数上限) に流し込み → 配信先に送信
つなぎ方
ソース取得は RSS の XML を HTTP GET で引いてくるか、指定 URL の本文を日付でフィルタする。Claude との接続は Claude API か Claude.ai のスケジュール実行。LINE 配信は Messaging API (LINE 公式から提供されているメッセージ送信の仕組み) のプッシュメッセージ機能を使う。
失敗した時の挙動と制約
- ソースにアクセスできない → 「本日取得できず」を配信文に自動で入れる
- Bot 検出に弾かれる → 取得可能な同等ソースに導入時に差し替える。この判断は運用者が行う (AI が自動で代替ソースを選ばないようにする)
- 日付フィルタが弾く → 記事 0 件 = そのカテゴリの見出しに「本日記事なし」を入れる
費用の形
Claude との接続が API 従量課金の場合、1 日の配信あたりのトークン量が費用に比例する (配信する記事数・要約の長さによる)。LINE Messaging API は月 200 通まで無料のプランがある (2026 年 10 月時点。変わる可能性があるので公式サイトで確認してほしい)。
明日やれること
まず、今読んでいる業界ニュースのサイトに RSS フィードがあるかを調べてみてほしい。「サイト名 RSS」で検索すると出てくることが多い。取れるソースが 1〜2 本見つかれば、そこから設計を始められる。