呼び出しは 3 つ: store、recall、answer。
API はひとつ。recall() は短期記憶・長期記憶・周辺コンテキストを 1 回の往復で返し、そのままプロンプトに入れられます。
1
保存
add() で事実や会話を保存します。ユーザーの言葉、アシスタント自身の言葉(speaker "me")、名前付きの人の言葉のどれでも。取り込み時に索引付けされ、LLM 呼び出しはありません。
2
呼び出し
recall() は短期 + 長期 + コンテキストを 1 回の呼び出しで返します - 上限のある固定サイズのコンテキストです。
3
回答
その限られたコンテキストをあなたの LLM に渡すだけ - プロバイダーは自由、キーはあなたのもの。
from wontopos import Client mem = Client(api_key="wos-...") mem.add("she prefers tea over coffee", user_id="alice") mem.add("I suggested the jasmine tea", user_id="alice", speaker="me") # its own words # one call: short + long + context ctx = mem.recall("what does alice drink?", user_id="alice")
記憶には話者があります。既定はユーザーの言葉で、speaker "me" はアシスタント自身の発言を、"Bob" のような名前はユーザーの周りの誰の発言かを記憶します。人単位で想起できるようになります。
話者はストアと同じく明示的です。先に人を登録し、その名前で保存します。タイプミスが静かに新しい人になることはありません。ストアあたりまず 50 人まで登録でき(順次拡大予定)、"me" は登録も数えられることもありません。