
News Observation Lab for Future
AIインシデント対応エージェントに永続メモリ層を組み込んだ設計と実装

背景と課題
インシデントが発生した際、アラートだけでは十分なコンテキストが得られません。過去の事後分析や同様のインシデント情報が存在することが多く、エージェントが現在のアラートだけを見ると重要な情報が見逃されます。この問題を解決するために、過去のインシデント履歴を活用できるAIインシデント対応エージェントの設計を目指しました。
永続メモリ層として Hindsight を採用
過去のインシデントを効果的に参照できるように、永続メモリ層として Hindsight を導入しました。これにより、エージェントは現在の調査だけでなく、過去の有益なインシデントを振り返ることが可能になります。
基本アーキテクチャ
全体の流れは次の通りです。
- セキュリティインシデント
- インシデント処理
- AI捜査エージェント
- 関連するインシデントのリコール
- 現在の証拠+歴史的背景
- 調査・決定
- 死後の保存
このフローは「過去→現在」の方向と「現在→未来」の方向の二つに分かれ、過去の経験が将来のインシデント対応に活かされる点が特徴です。
記憶と検索の実装
LLM とメモリ層を分離し、HindsightMemoryClient を介してインシデントを保存・呼び出します。保存時には format_incident_as_memory() で意味のある形に変換し、サービス名、重大度、根本原因、Runbook などのメタデータを付与します。また、各インシデントに予測可能なドキュメントID(例:インシデント_1234)を付けます。
検索では、現在のインシデントの症状、エラーログ、デプロイ情報からセマンティッククエリを生成し、関連性の高い過去インシデントを取得します。取得した結果はスコアやタグ、メタデータと共にアプリケーションへ渡され、調査フローに組み込まれます。
フォールバックと継続的学習
過去のインシデントが有用でない場合や履歴が不足している場合でも、エージェントは現在のエビデンスのみで調査を続行します。メモリ層は補助的な役割に留まり、必須ではありません。
調査が完了したら、有益な知見を永続メモリに保存し、次回以降のインシデントで再利用できるようにします。これにより「調査→学習→保持→思い出し→再調査」というループが形成され、エージェントに継続性が生まれます。
まとめ
本稿で紹介した最大の設計判断は、LLM 本体ではなく、調査後に得られた知識をどのように保持し、次の調査に活かすかという点です。Hindsight を永続メモリ層として組み込むことで、過去のインシデントが単なるアーカイブではなく、将来の調査に直接貢献する資産となります。
元記事: https://dev.to/guru06ashish/how-i-designed-an-ai-incident-response-agent-with-hindsight-1k45