社内AI推進のためのAIニュース自動収集の取り組み

はじめに

こんにちは!プラットフォーム開発グループのナリヅカです。
普段はプラットフォームの開発を担当していますが、それ以外にも最新AI技術をいかにプロダクトや組織の力に変えるか、AI活用に向けた試行錯誤を続けています。
そこで今回は、社内向けの最新AI情報を取得するため、AIを活用して情報収集から配信までを自動化した取り組みについてご紹介します。

課題と背景

アクセルラボでは現在、エンジニアのAIへの興味関心を測るため、Slackチャンネルに最新ニュースを流し、スタンプで反応をもらう取り組みを行っています。
しかし、AI界隈は情報の移り変わりが激しく、毎日手動でニュースを検索・選別する運用は、情報のスピードに追いつけず、エンジニアに届けるべき内容の抜け漏れが発生するようになりました。
そこで、日々更新される膨大なAI関連ニュースを自動でピックアップし、要約してSlackに届ける仕組みを考えました。

自動化の構成

構成は非常にシンプルかつAIエージェントに丸投げするアプローチとなっており、使用したツールは以下の通りです。

  • Devin ... 自律型のAIエージェント、チャットで質問に答えるだけでなく、自らブラウザを立ち上げて情報を検索したり、スクリプトを実行したりと、エンジニアのようなタスクを自律的にこなすことができます
  • Slack App ... Slackの機能を拡張し、外部サービスと連携させるためのアプリケーション、指定したチャンネルへのメッセージ自動投稿やbotとの対話、独自のショートカット作成などができます

Devinの機能をフル活用した3つのステップ

① Slack Appの作成及びWebhook URLの取得

Devinで収集した情報を投稿してもらうSlack Appを作成します。
新規でSlack Appを作成し、Incoming WebhooksからWebhook URLを発行します。
参考: Incoming Webhooks | Slack Developer Docs

② Devin Secretsへの登録

発行したWebhook URLをDevin Secretsへ登録します。
Devinを開き、サイドバーからSecretsを選択します。「Add secret」で新しいシークレットとして登録します。
これでどのDevin Sessionsでも$を先頭につければアクセスできるようになります。
参考: Secrets とサイト Cookie - Devin Docs

③ Devin Schedulesへの登録

DevinのScheduleを設定して、繰り返しAI関連の情報取得、Slackへの配信を実行できるようにします。
Devinを開き、サイドバーからSchedulesを選択します。「Create schedule」で新規のスケジュールを登録します。
参考: スケジュールされたセッション - Devin Docs
 

  • Schedule type ... スケジュールのタイプの指定
    • Recurring(定期実行)を設定します
  • Agent ... タスクを担当するAIのモデル
    • 高度な依頼ではないのでDevinを設定します
  • Frequency ... 実行頻度の指定
    • 毎日10時に実行する場合: At 10:00 AM, only on Monday, Tuesday, Wednesday, Thursday, and Friday (Asia/Tokyo)
  • Email notifications ... 実行結果のメール通知設定
    • 実行成否のログ用なので、不要であればNeverで問題ありません
  • Slack channel ... 実行結果のSlack通知設定
    • 実行成否のログ用なので、不要であればNoneで問題ありません
  • Repositories ... 対象のソースコードリポジトリ
    • 指定は不要です(何かしらの指定が必要な場合はPromptでリポジトリ調査不要の旨を記載)
  • Prompt ... Devinに具体的に何をさせるかを記述するメインの入力欄(一部抜粋)

▼ 検索・選定の条件の期間

### 期間
- 24時間以内に発生したニュース
  - 前日のAM10時からのニュース全て対象
- 今日が月曜日の場合は、土曜日・日曜日を含む過去72時間分を対象にする

▼ Slack出力する場合のフォーマット

## 出力フォーマット
- 以下の装飾ルールと構成を厳守して出力する
- 参考リンクがある場合、要約したタイトルに対してリンクを貼る
  - 内容に関してはリンクは不要
  - Slackで表示することを踏まえて対応する

<!here>
yyyy/mm/dd

エンジニア向けの最新AIニュースをまとめました ✉️

*⚡️ TOPICS*

1. *[要約したタイトル]* — [1行で簡潔な内容を記述]

▼ Slack投稿処理

- 作成した文章を、環境変数`登録したシークレット名`に格納されたURLへHTTP POSTで送信する
curl -X POST -H 'Content-type: application/json' --data '{"text":${作成した文章}}' ${登録したシークレット名}


この3つの設定のみで、Devinが毎朝10時に、自律的にAIニュースをまとめて届けてくれます。
難しい構築なしでサクッと導入できるので、まずは動かしてみて、チームの反応を観察することから始めてみるのがおすすめです。
このスピード感こそが、AI時代の開発の醍醐味だと感じています。

おわりに

今回はAIニュースを例に挙げましたが、競合サービスのアップデート調査や定型レポートの集計など、定期的にWebを巡回して報告する系のあらゆる地味な作業にこの仕組みは応用可能です。
アクセルラボでは、これからもAI技術を貪欲に取り入れ、プロダクトと組織の可能性を最大限に引き出すための挑戦を続けていきます。

最後までお読みいただき、ありがとうございました。

📩 お問い合わせ・採用情報

本ブログを読んでいただきありがとうございます。 もし内容にご興味を持っていただけましたら、以下よりお気軽にお問い合わせ・ご応募ください。

スマートホームの導入をご検討中の企業様へ:

👉お問い合わせ - SpaceCore(スペースコア)

技術にご興味を持たれたエンジニアへ:

アクセルラボではエンジニア採用を強化しています。 私たちの技術やビジョンに共感し、スマートホームの未来を共に創っていきたい方のご応募をお待ちしています。

👉 https://recruit.accel-lab.com/