3つのレイヤー
| レイヤー | 優先度 | 用途 | TTL |
|---|---|---|---|
| ルール | 10(最高) | 永続的な指示と制約 | なし |
| ワーキング | 5 | 現在のセッションコンテキスト、一時メモ | 任意 |
| 長期 | 1 | 一般的な知識、事実、パターン | なし |
ルールレイヤー
ルールは最も優先度の高いメモリです。常にアクティブであるべき指示、制約、設定を表します。get_context の結果に常に最初に含まれます。
ワーキングレイヤー
ワーキングメモリは、一時的でセッションに関連するコンテキストを表します。expiresAt による任意の TTL をサポートします。
get_context と listMemoriesByLayer から自動的に除外されます。
長期レイヤー
長期メモリは、時間の経過とともに蓄積された一般的な知識を保存します。コンテキストバジェットの配分
get_context がバジェット N 件のメモリで呼び出された場合:
- ルール — すべてのルールを取得(最大 N 件)
- ワーキング — 残りバジェットの60%を取得
- 長期 — 残りを埋める
スコアリング
search_memories で検索する際、各メモリはハイブリッドスコアを受け取ります:
| 要素 | 説明 |
|---|---|
| Semantic | ベクトル検索によるコサイン類似度(0-1) |
| BM25 | 正規化された全文検索ランク(0-1) |
| Recency | lastAccessedAt からの指数減衰(半減期:24時間) |
| Salience | 時間経過で減衰する importance 値 |
weights パラメータでクエリごとにカスタマイズ可能です。