空间与知识库
隔离是怎么实现的,以及如何组织文档才能让检索保持精准。
空间:隐私边界
每位终端用户的数据都存放在空间里。一个空间划定三样东西的范围:聊天会话、文档和长期记忆。范围由 Postgres 行级安全策略强制执行,而不是靠应用代码——所以一位客户的对话绝无可能泄进另一位的上下文。
智能体只有被加为成员,才算参与某个空间。空的空间不回应任何人;这是刻意为之(「空间为空 = 大门关闭」)。
由此带来几个实际结果:
- 回访客户从上次中断的地方接着聊——同一个空间,同一份记忆。
- 两位客户问一模一样的问题,得到的答案只被各自的历史所影响。
- 删除一个空间,会连同它的会话、空间文档和记忆一并移除。
检索是怎么工作的
你上传的文档会被解析、切块、向量化并存储(分块文本在静态存储时按字段加密)。提问时,智能体把问题向量化,在你的知识上做向量检索——让答案扎根于你的文档,而不是公开互联网。
租户知识库与空间文档
有两层文档为检索供料:
- 租户知识库——你的产品资料、常见问题和写好的标准答案。在控制台上传一次,所有接上它的智能体共用。
- 空间文档——某位客户在对话中上传的文件(「这是我的合同」)。只在该空间内可见。
让检索保持精准
- 宁可多份聚焦的文档,也不要一份 200 页的大全——切块边界是顺着你的文档结构走的。
- 给文档起有描述性的名字;标题本身就是检索信号。
- 要替换,不要追加。 过时的收费表要替换掉,而不是在旁边再传一份新的——两个互相矛盾的版本,等于让检索去掷骰子。
- 支持的格式:PDF、Word(
.docx)、HTML/网页,以及纯文本 / Markdown。
记忆
除了文档,智能体还会按「用户 + 空间」写入长期记忆:说过的偏好、关键事实、做出的承诺。记忆会与知识一同被检索出来,让跟进读起来像是接着上次说,而不是一场重新盘问。你可以在控制台里查看和删除记忆。