コンテンツにスキップ
LinkedInX

長期メモリの保存方式

対象読者: 長期メモリを実際にどう保存するか決めたい方、保存方式ごとの向き不向きを知りたい方
前提知識: 短期メモリと長期メモリ の基礎

長期メモリをどう保存するかで、後からの管理しやすさと精度が変わります。代表的な方式は4つあり、実務では組み合わせて使います。

4つの保存方式

方式中身向いている場面
ファイルMarkdownなどの文書として保存項目が少なく、人が読んで直したい
構造化レコード決まった項目を持つデータ設定・プロフィールなど形が決まっている
ベクトル検索埋め込みにして類似度で取り出す蓄積量が多く、関連分だけ引きたい
要約履歴を圧縮して残す経緯を保ちたいが全文は不要
この表は横方向にスクロールできます。キーボードでは、表にフォーカスして左右の矢印キーを使用してください。

ファイル方式

もっとも単純で、少量の長期メモリに適しています。最大の利点は人が中身を読んで直接修正できることです。誤った記憶が入ってもすぐに気づき、その場で直せます。

# プロジェクトメモ
- 記事の一次情報は日本語、英語は翻訳
- 本番デプロイは承認後のみ
- 用語は「AIトランスフォーメーション」を使う

一方、項目が数十を超えると、毎回全文を渡すのが非効率になります。

構造化レコード方式

項目があらかじめ決まっている情報に向きます。自由文と違い、上書き更新が正確にできるのが利点です。

項目
回答スタイル簡潔・箇条書き中心
使用言語日本語
承認が必要な操作本番デプロイ
この表は横方向にスクロールできます。キーボードでは、表にフォーカスして左右の矢印キーを使用してください。

自由文だと「簡潔に」と「詳しく」が両方残ってしまうような矛盾が、構造化されていれば起きにくくなります。

ベクトル検索方式

蓄積量が増え、毎回すべてを渡せなくなったときに使います。仕組みはRAGと同じで、現在のタスクに関連する記憶だけを取り出します。

注意点は、人が中身を把握しづらくなることです。誤った記憶が紛れても気づきにくいため、日付と出所をメタデータとして持たせ、古いものを除外できるようにします。

要約方式

長い履歴を、決定事項・未解決事項・制約に絞って圧縮します。経緯を保ちながら量を抑えられますが、要約時に落とした情報は復元できない点に注意が必要です。重要な原文は別途残しておきます。

選び方

graph TD
    S["蓄積量は多いか"] -->|少ない| F["ファイル / 構造化レコード"]
    S -->|多い| V["ベクトル検索 + 要約"]
    F --> H["人が読んで直せる状態を保つ"]
    V --> M["日付と出所をメタデータに持たせる"]

まずはファイルや構造化レコードで始め、扱いきれなくなった時点でベクトル検索を足すのが現実的です。最初から複雑な仕組みを作ると、中身の誤りに気づけないまま運用することになります。

まとめ

  • 長期メモリの保存方式はファイル・構造化レコード・ベクトル検索・要約の4つ
  • 少量なら人が直せるファイル方式、形が決まっているなら構造化レコード
  • 蓄積量が増えたらベクトル検索へ移行し、日付と出所を必ず持たせる
  • 要約は量を抑えられるが、落とした情報は戻らない

関連リンク

クイズ