Upgrade to Pro — share decks privately, control downloads, hide ads and more …

コロッケそばAgentが名古屋の猛暑からあなたを守る機能仕様

 コロッケそばAgentが名古屋の猛暑からあなたを守る機能仕様

名古屋市の気温を自律監視し、ロボホンと LINE を通じてユーザーへ通知する見守り AI エージェントの機能仕様書です。ローカル LLM(Ollama+Google Gema4:26b)& Hermes Agentを中核に、Human-in-the-Loop / Human-on-the-Loop による人間の関与と、エージェント自身による自己進化(skill 自動生成)を組み合わせた構成になっています。

Avatar for コロッケそば

コロッケそば

June 19, 2026

More Decks by コロッケそば

Other Decks in Technology

Transcript

  1. コロッケそば 名古屋の猛暑対応Agent 機能仕様書 名古屋市の気温を自律監視し、ロボホンと LINE を通じてユーザーへ通知する見守り AI エージェントの機能 仕様書です。ローカル LLM

    (Ollama )を中核に、Human-in-the-Loop / Human-on-the-Loop による人間の関 与と、エージェント自身による自己進化(skill 自動生成)を組み合わせた構成になっています。 1. システム全体構成 通知先 人間(ダッシュボード) 知識ファイル ローカル LLM (Ollama ) Hermes Agent (Python ) 外部データソース Open-Meteo API 名古屋市の気温・湿度 自律監視ループ 既定60 分間隔 ツール群 fetch / check / notify / graph skills 管理 読み込み・保存 判断エンジン gemma4:26b soul.md 人格定義 skills/*.md 通知ノウハウ Web ダッシュボード SSE ライブ表示 承認・編集・却下 ロボホン LINE 2. LLM がやっていること ローカル LLM (Ollama 上の gemma4:26b-a4b-it-q4_K_M )は、Hermes Agent の「判断する脳」として機能 します。Python コードは LLM にツールを提供するだけで、いつどのツールをどんな引数で呼ぶか、ユーザー へ何をどう伝えるかはすべて LLM が決定します。 LLM が担う具体的な判断は次のとおりです。気温データを取得すべきか、前回との変化に意味があるか、ユ ーザーに通知する価値があるか、通知するなら緊急度は alert か info か、グラフを見せるべきか、といっ た一連の意思決定を行います。さらに、通知メッセージの文面そのものを、人格定義(soul.md )と蓄積され たノウハウ(skills/ )に従って日本語で生成します。 1 / 9
  2. ツール群 ローカル LLM Hermes Agent ツール群 ローカル LLM Hermes Agent

    通知すべきか自分で判断 学ぶことがあれば skill 更新を返答に含める soul.md + skills/ + 行動手順を渡す fetch_weather を呼ぶ 気温・湿度データ check_alert を呼ぶ 前回との差分・閾値判定 notify (level と message を生成) 送信結果+人間の反応 最終返答(update_skill タグ) LLM のもう一つの重要な役割は自己改善です。通知ツールの戻り値には、人間が文面を編集したか (was_edited ) 、却下したか(hitl_b )といった結果が含まれます。LLM はこの結果を読み取り、学ぶべき 点があれば自分の言葉で skill ファイルの内容を書き、最終返答の末尾に <update_skill filename='...'> タグとして出力します。 3. Hermes Agent がやっていること Hermes Agent (Python 本体)は、LLM が判断を下すための「身体」と「環境」を提供します。LLM が抽象 的な意思決定を担うのに対し、Agent は外部システムとの実際のやり取り、状態管理、永続化、人間とのイ ンターフェースといった具体的な処理を引き受けます。 Agent の責務は大きく次の領域に分かれます。第一に外部 I/O で、Open-Meteo API からの気象データ取得、 ロボホンと LINE への通知送信、matplotlib によるグラフ描画を行います。第二に自律ループの維持で、既定 60 分間隔で監視サイクルを回し続けます。第三に知識ファイルの管理で、soul.md と skills/ の読み込み、お よび LLM が生成した skill 更新内容の保存を行います。第四に可視化で、Web ダッシュボードを内蔵 HTTP サ ーバーと SSE で配信し、エージェントの内部状態をリアルタイムにカンバン形式(運用状況の可視化)で見 せます。 2 / 9
  3. Hermes Agent の責務 外部 I/O API ・通知・グラフ 自律ループ 60 分間隔の監視

    知識管理 soul / skills 読み書き 可視化 カンバン・ログ・通知履歴 永続化 気象履歴 JSON ・ログ Agent は LLM の判断に踏み込みません。たとえば「気温が上がったから通知する」という判断は一切せず、 LLM が notify を呼んだときに初めて送信処理を実行します。この責務分離により、エージェントの振る舞 いを変えたいときはコードではなく soul.md や skills/ を編集すればよい構造になっています。 4. Human-in-the-Loop の効果 Human-in-the-Loop (HiTL )は、人間がエージェントの意思決定ループの内部に入り、重要な行為の前に承 認・編集・却下を行う仕組みです。本システムでは 3 つの介入ポイントが用意されています。 3 / 9
  4. 承認 却下 承認 / 編集して送信 却下 check_alert 気温変化を検出 Point A

    アラート送信の承認 Point B 発話メッセージの確認・編 集 ロボホン・LINE 送信 スキップ キャンセル Point C 待機ループ割り込み 今すぐチェック / 間隔変更 介入ポイント A は、緊急度の高い alert レベルの通知を送る前に人間の承認を求めます。誤った警報や過剰 な警告が送られるのを防ぎます。介入ポイント B は、LLM が生成した発話メッセージそのものを人間が確認 し、必要なら文面を直接編集してから送信します。ロボホンが口にする言葉の最終的な品質を人間が保証で きます。介入ポイント C は待機中のループへの割り込みで、人間が任意のタイミングで「今すぐチェック」 を実行したり監視間隔を変更したりできます。 HiTL の効果は、安全性と品質保証にあります。エージェントが自律的に判断した内容を、実害が出る前に人 間が止められること、そして人間の編集がそのまま skill 学習の教師データになることが本質的な価値です。 タイムアウト(120 秒)を設けてあるため、人間が不在でもシステムは停止せず自動承認で前進します。 4 / 9
  5. 5. Human-on-the-Loop の効果 Human-on-the-Loop (HoTL )は、人間がループの外側からエージェント全体の動作を俯瞰的に監視し、必要 に応じて介入する関与のかたちです。本システムでは Web ダッシュボードがこの役割を担います。 SSE

    ライブ配信 必要なら介入 Web ダッシュボード(人間が俯瞰) カンバン 各タスクの状態 ログ 動作の流れ 通知履歴 送信内容 気温ゲージ 現在の状況 エージェントの自律ループ 気象取得 変化判定 メッセージ生成 送信 skill 学習 ダッシュボードは SSE (Server-Sent Events )でエージェントの内部状態をリアルタイム配信します。人間は 各タスク(fetch / check / notify / graph / skill / save / wait )がいまどの段階にあるかをカンバンで一目で把 握でき、ログ・通知履歴・気温ゲージから全体の健全性を継続的に監視できます。 HoTL の効果は、常時監視と即応性にあります。HiTL が「個々の行為の承認」であるのに対し、HoTL は「シ ステム全体が正しく動いているかの監視」です。人間はすべての判断に逐一関与する必要はなく、ダッシュ ボードを眺めながら異常を察知したときだけ介入ポイント C などを通じて関与すればよい。これにより、自 律性と人間の制御を両立させ、人間の負担を抑えながら安全な運用を実現します。本システムでは、承認ボ タンを押す行為(HiTL )を、エージェント全体の動作を俯瞰しながら行える(HoTL )構造になっており、両 者が一体として機能します。 6. soul.md の効果 soul.md は、ロボホンの「人格・キャラクター」を定義するファイルです。何を伝えるか(skills/ )とは独立 に、どんな存在として話すかを規定します。 5 / 9
  6. 定義内容 名前・一人称 口調・語尾 感情表現 禁止事項 敬語・専門用語 soul.md 人格定義 生成される メッセージの性格

    soul.md は初回起動時に、既存の RoBoHoN_SpeechRules.md を元に自動生成されます。子どもっぽく明るい 口調、一人称「ぼく」 、語尾「〜だよ!」 、率直な感情表現といったキャラクター設定が記述されます。 soul.md の効果は、一貫した人格の維持にあります。LLM は毎回の通知メッセージ生成時に soul.md を参照 するため、気温が何度であろうと、どんな skill を学習しようと、ロボホンらしい話し方が崩れません。skills/ が経験を通じて変化していく可変の知識であるのに対し、soul.md は人格の基盤として安定的に振る舞いを 支えます。人間が手動で編集することもでき、キャラクターの方向性を直接コントロールできます。 7. Hermes Agent が自律的に skill を作成する効果 本システムの最大の特徴は、エージェントが経験から学び、自分のノウハウ(skill ファイル)を自律的に作 成・更新していく点です。skill は Python コードではなく、人間が読める普通の Markdown テキストとして skills/ ディレクトリに蓄積されます。 6 / 9
  7. あり なし 学習が次の判断を改善 notify 実行 ツール戻り値 was_edited / hitl_b など

    LLM が判断 学ぶことがあるか 最終返答に update_skill タグ Agent が skills/ に保存 次サイクルで system_prompt に反映 何もしない 学習のトリガーは HiTL の結果です。人間が通知文を編集した場合、LLM は元の文と編集後の文を比較して 「何が改善されたか」を学びます。却下された場合は「避けるべきパターン」として記録します。LLM はテ ーマごとに適切なファイル名(alert-message.md 、tone-correction.md など)を自分で決め、その内容 7 / 9
  8. を <update_skill filename='...'> タグで出力します。Agent はタグを抽出して skills/ に保存するだ けです。 この自律 skill

    作成の効果は、継続的な品質向上と透明性にあります。第一に、人間のフィードバックが次回 以降の通知に自動的に反映されるため、使うほどロボホンの通知が洗練されていきます。第二に、学習結果 が Markdown という人間可読な形式で残るため、エージェントが「何を学んだか」を人間がいつでも読んで 確認・修正できます。学習がブラックボックスにならず、人間とエージェントが同じノウハウファイルを共 有する協調的な進化が実現します。 skills/ ディレクトリ overview.md 目次・基準 alert-message.md tone-correction.md hot-weather.md ... 必要に応じ増加 8. まとめ:各要素の関係 8 / 9
  9. ツール提供 人格 ノウハウ 通知 教師データ 監視 自己更新 LLM 判断・文面生成・自己反省 Hermes

    Agent 外部 I/O ・ループ・知識管 理 Human-in-the-Loop 承認・編集・却下 Human-on-the-Loop 俯瞰監視 soul.md 安定した人格 skills/ 進化する知識 Hermes Weather Agent は、LLM の自律的判断、人間による二段階の関与(in / on the loop ) 、人格 (soul.md )と知識(skills/ )の分離、そして経験からの自己進化を組み合わせることで、自律性・安全性・ 継続的改善を同時に成立させたエージェントです。 9 / 9