スペースとナレッジ
分離の仕組みと、検索精度を保つためのドキュメント整理方法。
スペース:プライバシーの境界
すべてのエンドユーザーのデータは スペース (space) の中に格納されます。スペースは 3 つのもの、つまりチャットセッション、ドキュメント、長期記憶のスコープを定めます。このスコープはアプリケーションコードではなく Postgres の行レベルセキュリティで強制されるため、ある顧客の会話が別の顧客のコンテキストに漏れることは決してありません。
エージェントは メンバー (member) として追加されたときにのみスペースに参加します。空のスペースは誰にも応答しません。これは意図的な設計です(「空のスペース = 閉じている」)。
実務上の帰結:
- 再訪した顧客は前回の続きから再開できます。同じスペース、同じ記憶です。
- 同一の質問をする 2 人の顧客は、それぞれ自分自身の履歴だけに彩られた回答を得ます。
- スペースを削除すると、そのセッション、スペースドキュメント、記憶がまとめて削除されます。
検索の仕組み
アップロードしたドキュメントは、パースされ、チャンクに分割され、埋め込み化され、保存されます(チャンクのテキストは保存時にフィールド暗号化されます)。質問時、エージェントはクエリを埋め込み化し、あなたのナレッジに対してベクトル検索を行います。これにより、オープンなインターネットではなく、あなたのドキュメントに回答を根拠づけます。
テナントナレッジ vs. スペースドキュメント
検索には 2 つの層のドキュメントが供給されます:
- テナントナレッジベース — 製品シート、FAQ、定型化した回答。コンソールで一度アップロードすれば、接続したすべてのエージェントで共有されます。
- スペースドキュメント — 特定の顧客が会話の中でアップロードするファイル(「これが私の契約書です」)。そのスペースの内部でのみ表示されます。
検索精度を保つ
- 200 ページの大全よりも、焦点を絞った複数のドキュメントを 選びましょう。チャンクの境界はドキュメント構造に従います。
- ドキュメントには説明的な名前を つけましょう。タイトルは検索のシグナルになります。
- 追記ではなく差し替えを。 古い料金表の隣に 2 つ目のバージョンをアップロードするのではなく、置き換えてください。矛盾する 2 つのバージョンは検索のロシアンルーレットを招きます。
- 対応フォーマット:PDF、Word(
.docx)、HTML/ウェブページ、プレーンテキスト/Markdown。
記憶
ドキュメントに加えて、エージェントはユーザーとスペースごとに 長期記憶 を書き込みます。表明された好み、重要な事実、交わした約束などです。記憶はナレッジと並んで検索され、フォローアップを尋問ではなく会話の継続のように感じさせます。記憶はコンソールで確認・削除できます。