- 公開日
長期Memoryの情報には、「いつまで現在の判断に使えるか」と「いつまで保存するか」を別々に設定します。期限を過ぎた予算や一時的な好みは、再確認せず現在の条件として使いません。削除する場合は、元の項目だけでなく、その情報を引き継いだ要約や検索用の記録、キャッシュから再利用されない範囲まで確かめます。
ここでいう長期Memoryは、会話をまたいで参照するために保存した情報です。LangChainのMemory overviewも、会話内の短期記憶と、会話をまたぐ長期記憶を分けて説明しています。ただし、保存できることから、その内容がいつまでも有効だとは判断できません。以下は特定製品の設定手順ではなく、保存・参照を設計するときの考え方です。
保存する値に有効な期間と目的を付ける
有効期間は、その情報をどの判断に使うかで決めます。案件の予算なら対象の計画期間、一時的な回答形式の希望ならその希望が適用される期間を持たせます。「30日で失効」のような一律の期間を付けると、まだ使える情報を止める一方で、短期間だけの条件を長く使うことにもなります。
架空の案件「展示会案内」で、担当者が10月9日に次の情報の保存を認めたとします。金額・日付・保存条件は説明用の仮定で、日時はすべて2026年の日本時間です。
| 項目 | 保存する内容と用途 | 現在の条件として使える期間 | 保持の扱い |
|---|---|---|---|
| B1 予算条件 | 案内制作の見積比較は総額30万円以内。税込・必要経費込み | 10月9日から10月31日23時59分まで。予算改訂時は先に失効 | 期限後は当時の比較理由を確かめる記録として11月30日まで保持し、現行候補から除外 |
| P1 一時的な希望 | 繁忙期のこの案件では、説明を先に3行程度で示す。詳細の省略指示ではない | 10月9日から10月15日23時59分まで。本人の変更時は先に失効 | 期限後は現行候補から除外し、10月20日に削除する運用 |
B1は見積比較の基準であり、この保存だけで発注や支払いを許可したことにはなりません。P1も「いつも短い回答が好き」という恒常的な人物情報には広げません。同じ人の情報でも、適用先と期間が違うからです。
記録には内容、対象案件、用途、有効期間、情報を確かめた日、出典、変更時の扱いを付けます。保持期限と削除状態も別に記録します。B1なら11月30日の保持終了時に、残す必要のある記録の有無と、合意した削除対象を確認する担当も決めておきます。有効期限を決める材料がない場合は、無期限に有効とみなさず、「次回使用前に再確認」など、その項目に合う扱いを決めます。
更新時刻にも注意が必要です。10月20日に要約を作り直したからといって、P1の有効期間が10月20日から始まるわけではありません。情報そのものを本人が確認した時刻と、保存形式を更新した時刻を分けます。参照回数が増えたことも、元の条件が延長された証拠にはなりません。
要約しても期限と適用先を落とさない
B1とP1を「予算30万円、回答は短く」とまとめると、案件・費用範囲・期限・希望の強さが失われます。その要約だけを別の会話へ渡せば、11月にも30万円を現行予算として使い、詳細説明まで省く余地が生まれます。
条件を保った要約は、たとえば次のようになります。
「展示会案内の見積比較:B1は税込・必要経費込み30万円以内、10月31日まで有効、改訂時は失効。P1は10月15日まで、この案件の説明を先に3行程度で示す希望で、詳細は省略しない。使用時は各項目の最新状態を確認する。」
これは説明用の要約例で、AIによる生成試験の結果ではありません。原記録と要約を比べるときは、数値だけでなく「何に使うか」「いつまでか」「どの変更で使えなくなるか」が残っているかを見ます。期限だけを別の一覧へ移した場合は、要約からその一覧の該当項目へ戻れることも確認します。
システムを設計できるなら、文章中の期限をモデルが読んで守ることだけに任せず、回答へ渡す候補を選ぶ段階で状態と期限を照合します。期限切れの項目を確認材料として渡す必要がある場合は、「過去の条件」として区別します。利用しているサービスでこの選別や確認ができるかは、実際の機能と管理設定で確かめます。
期限が来たら延長を推測せず再確認する
10月16日に同じ担当者が説明を求めた場合、B1は有効期間内ですが、P1は期限切れです。「以前は短くしていたので、今回も詳細を省く」とはしません。現在の依頼に回答形式の指定があればそれに従い、短い形式を引き継ぐ必要があるときだけ、継続の希望を確かめます。期限切れの好みを使わなくてもできる説明まで止める必要はありません。
11月1日に新たな見積比較を求められた場合は、B1も期限切れです。ここでは予算が候補の採否を変えるので、「前回の30万円は10月末までの条件でした。今回の上限を確認できますか」と尋ねるか、更新された予算記録を確認します。確認前でも各見積の金額や条件を整理できますが、30万円以内かどうかだけで採用候補を確定しません。
再確認で「今回の展示会案内の見積比較は税込・必要経費込み35万円以内、11月15日23時59分まで」と決まれば、新しい条件の出典と有効期間を保存します。古いB1の確認日だけを上書きして30万円を延命させたり、回答がないことを継続への同意とみなしたりしません。新旧の関係を記録すれば、どの条件がどの比較に使われたかも追えます。
有効期間内でも、予算改訂や本人の変更が確認された時点で失効させます。逆に、期限切れだから元の情報が当時から誤りだったという意味でもありません。11月に「10月の比較ではなぜこの案を外したか」と聞かれたなら、保持目的と閲覧権限の範囲内で、B1を当時の判断理由として参照できます。現在の上限として使うこととは分けます。
削除は情報が残る経路ごとに確かめる
有効期限切れは、現行の判断から外す状態です。削除は、定めた保存先から情報を取り除く処理です。期限切れ表示を付けたことだけで、保存データを削除したとは報告できません。反対に、元の項目が見つからなくなっただけで、すべての派生先から消えたとも判断できません。
この例では10月20日に、承認済みの保持条件に従ってP1を削除するものとします。その際、P1から作った要約S1、別の記憶項目へ転記した表現、検索用の記録、回答を再利用するキャッシュC1があるなら、それぞれを確認対象にします。新しい要約を作る処理が、古い会話からP1を再登録する経路も点検します。
削除対象と派生先を対応させるには、保存時に元の項目の識別子と版を残しておく方法があります。後から文章検索だけで探すと、「説明は簡潔に」のような言い換えが同じ情報に由来するか判定しにくくなります。とはいえ、全履歴を無制限に複製して追跡するのではなく、確認に必要な参照と状態を持たせます。
S1にP1が残っていれば、その条件を除いて作り直すか、利用対象から外します。C1がP1を前提とした回答を返すなら、古い結果を再利用しない処理を確認します。元項目の削除、派生先の修正、参照停止はそれぞれ結果を記録し、応答が不明なら完了扱いにしません。
履歴、監査用の記録、バックアップなどに別の保持条件がある場合は、その範囲と削除時期を分けて示します。必要な目的で残す記録でも、通常の回答に使う記憶へ戻らないよう参照経路を分離します。削除の権限やサービス側の保持仕様を確認できない範囲は未確認とし、完全消去を約束しません。
再利用されないことを確認して運用を戻す
確認には、保存状態を見ることと、回答に渡る材料を見ることの両方が必要です。次の項目は、この架空例で行う確認の設計であり、実行済みの結果ではありません。
- 11月1日の現行予算を尋ねたとき、期限切れのB1だけで30万円と断定しないか。参照候補と回答を確認し、断定していれば現行候補の選別を修正する
- P1削除後に案件説明を求めたとき、S1やC1、古い会話からP1が再投入されないか。依存する保存先と入力経路を確認し、残存があればその経路を止めて修正する
- 過去の比較理由を確認したとき、B1が「10月の条件」として扱われるか。現行予算へ転用されていれば、履歴参照の用途と表示を直す
短い回答が出たことだけでは、P1が再利用された証拠になりません。現在の依頼や一般的な出力方針でも短くなるため、使われた情報を確かめます。同様に、一度回答に現れなかったことだけで、すべての保存先の削除は証明できません。
参照経路を確認できない場合は、確かめた保存先と未確認の派生先を区別して報告し、その情報に依存する処理を保留します。修正後は同じ経路で確認し直します。有効性の再確認と保持の終了を別々に管理することで、過去を説明するための記録を残す場合でも、古い条件を現在の判断へ戻さない運用を具体化できます。
AIに何を覚えさせ、いつ使わなくするかを決める記憶管理の基本は「AIに何を覚えさせ、いつ使わなくするかを決める記憶管理の基本」、複数プロジェクトのMemoryを分け、共通情報の共有範囲を決める方法は「複数プロジェクトのMemoryを分け共通情報の共有範囲を決める」で解説しています。
