長期記憶のしくみ
Amberのキャラクターは会話の内容を自動で記憶し、後の会話で自然に活かします。このページでは、その記憶の仕組みを解説します。
記憶は自動で保存される
特別な操作は不要です。会話を続けるだけで、キャラクターはその内容を記憶として蓄積していきます。
ユーザーの発言もキャラクターの返答も、やり取りの内容がそのまま記憶として保存されます。参加しているキャラクター全員が同じ会話を記憶します。
記憶の仕組み
Amberの記憶システムは、大まかに次のように動いています。
記憶するとき: 会話の内容が意味的な特徴(ベクトル)に変換されてPC内のデータベースに保存されます。
思い出すとき: ユーザーが発言すると、その内容と「意味的に近い」過去の記憶をデータベースの中から自動で探し出します。見つかった記憶はキャラクターの返答生成に使われます。
このような「意味の近さで記憶を検索する」技術をRAG(検索拡張生成)と呼びます。キーワードの一致ではなく意味で検索するため、言葉が違っても関連した話題を思い出せます。
一般的にはGPT、GeminiなどのクラウドAIのAPIを利用することが多いですが、AmberアプリではPC上で動作する超軽量AIを使用し、ベクトル検索を実現しています。
そのため、追加費用はかかりません。
時間の感覚を持っている
Amberの記憶には「いつの出来事か」という時系列の情報も含まれています。また、PCの時計から現在の日時も把握しているため、今が何時・何曜日かを意識した会話ができます。
短期記憶と長期記憶
Amberには2種類の記憶があります。
| 種類 | 内容 |
|---|---|
| 短期記憶 | 直近の会話のやり取り。文脈を保持するために使われる |
| 長期記憶 | 過去の会話から蓄積された記憶。今の会話と関連するものだけが引き出される |
キャラクターが返答するとき、この2つが組み合わされてプロンプトが構成されます。
記憶スコアしきい値を調整する
長期記憶の検索には「どのくらい関連性が高い記憶を使うか」を決めるしきい値があります。設定画面のスライダーで調整できます(範囲: 0.5〜1.0、デフォルト: 0.80)。
| 設定 | 効果 |
|---|---|
| 値を上げる(1.0に近づける) | 関連性の高い記憶だけを使う。ピンポイントな記憶参照になる |
| 値を下げる(0.5に近づける) | 幅広い記憶を参照する。遠い話題の記憶も引き出されやすくなる |
うまく記憶を思い出してくれないと感じたときは値を少し下げ、関係ない話題まで持ち出してくると感じたときは値を上げると改善することがあります。値を 1.0 に設定すると長期記憶の参照を実質的に無効化できます。
直接記憶させる
会話を通さずにキャラクターへ知識を追加したい場合は、チャット画面の「知識を教える」機能を使います。詳しくはチャットの使い方をご覧ください。
キャラクターの補助知識
上記の長期記憶の仕組みは完璧ではありません。
人間と同様に やんわり覚えている という状態が近いかもしれません。
どうしても思い出して欲しい、重要な内容は補助的な仕組みがいくつか用意されています。
詳しくはAIキャラクターの作成をご覧ください。
知識リスト
長期記憶とは別に、固有名詞などを知識リストとして追加することができます。
あらかじめ設定しておいたキーワードが対話者のセリフ中に出てきた時に、知識として参考にします。
キャラクターメモ
キャラクターが自主的にメモを取る機能をONにすることで、会話中に自主的に重要な内容をメモしていきます。
対話者からメモした内容とマッチする、非常に近いニュアンスの内容が含まれている場合、メモの内容を参考にしてセリフを生成するようになります。