Q23.エージェントのメモリ設計(短期・長期)は、どう分けるべきですか?
回答
短期メモリは現在のセッション文脈、長期メモリはユーザー属性・過去の確定事実・業務ナレッジを担います。すべてを1つのコンテキストに詰め込むとコストと幻覚が増えるため、参照タイミングと保存条件を分けて設計します。
短期メモリ(ワーキングメモリ)は、直近の会話ターン、進行中タスクの状態、一時的な変数を保持します。長期メモリは、ベクトルDBや構造化DBに保存し、必要なときだけ検索して注入する方式が一般的です。設計時の論点は、①何を「事実」として保存するか(ユーザー申告 vs システム確定)、②いつ忘却・更新するか、③個人情報の保持期間と削除要求への対応、④複数エージェント間でメモリを共有するかです。よくある失敗は、古い指示が長期メモリに残り、新しいポリシーと矛盾することです。版管理と有効期限、監査可能な削除ログをセットにすると、運用が安定します。
- ●短期: セッション文脈・進行中タスク
- ●長期: 確定事実・属性・ナレッジ(検索注入)
- ●保存条件・更新・削除・版管理を明示