多租户 RAG 知识库权限怎么隔离
先给结论:多租户场景下做 RAG,最致命的不是检索准不准,是 A 公司的人能不能搜到 B 公司的文档。这道权限隔离做漏了,就是数据泄露事故。我踩过一次差点出事的边,把几种隔离方案和选型摆在这。场景我做的是一个给多家客户用的合同问答 Agent。每家客户上传自己的合同到知识库,问答时只能检索到自家的文档。早期我图快,所有客户的文档丢一个向量库里,检索时全局召回——直到测试时 A 客户搜出了 B 客户的合同片段,后背一凉。三种隔离方案对比我把试过的三种摆一起:方案隔离强度成本适合规模主要风险元数据过滤中低中小,几十个租户过滤条件漏写就穿透独立 collection高中几十到几百租户collection 多了管理累独立向量库实例最高高大客户/强合规资源浪费、运维重元数据过滤:所有文档进同一个库,但每条切片打上tenant_id标签,检索时强制带where tenant_id 当前租户这个过滤条件。成本最低,但有个致命点——只要哪次检索忘了带这个过滤条件,立刻全局穿透。我那次事故就是某条检索分支漏了过滤。独立 collection:每个租户一个独立的向量集合,检索时按租户路由到对应 collection。物理上分开,不存在忘了过滤的穿透问题,隔离强度高一档。代价是租户多了之后,几百个 collection 管起来有点烦。独立向量库实例:每个大客户单独起一套库。隔离最彻底,合规审计最好交代,但资源和运维成本最高,只对强合规的大客户才值得。我最后的选型中小租户用元数据过滤兜底,但加了两道保险:一是把tenant_id过滤写进检索的公共封装里,任何检索调用都自动带上,不给忘记的机会;二是上线前专门写了一条越权检索的测试用例,A 租户的请求去搜 B 的关键词,断言必须召回 0 条。少数强合规的大客户单独切独立 collection。这套混合策略落地下来,既没为小客户上重型方案,又给大客户留了硬隔离。实现上我是在一个带场景化 RAG 能力的搭智能体平台上做的,它支持按知识库维度建多个独立库,我直接一个租户挂一个知识库,检索时绑定当前租户的库,从源头上就不会跨租户召回——比自己在一个大库里靠过滤条件兜底,心理踏实多了。一个容易忽略的细节权限不只是检索那一刻的事。文档删除也要隔离——客户解约后,他那批向量得能干净删掉。我早期是按文档 ID 一条条删,后来发现切片散在库里删不干净,残留的向量还能被搜到。改成按tenant_id批量清,才算彻底。收尾多租户 RAG,我的经验是:隔离强度按客户分级别给,别一刀切;同时把越权检索写成自动化测试,每次发版都跑,这比任何人工 review 都靠谱。模型和向量化那层我用的讯飞星辰现成的服务,大模型 API 直接调,不用自己搭嵌入和推理服务,省下的工夫全花在把权限这道闸做严上了。

相关新闻

以太网MAC统计寄存器:精准定位网络性能瓶颈与调试实战

以太网MAC统计寄存器:精准定位网络性能瓶颈与调试实战

1. 项目概述:从数据视角洞察网络健康 当你盯着屏幕上跳动的网络流量图,或者面对一个时断时续的网络问题时,有没有想过,在网线接口的深处,那个被称为以太网MAC控制器的芯片里,正默默记录着关于网络健康状况的…

2026/6/24 8:28:15阅读更多 →
回文(赵子泰2547102142)

回文(赵子泰2547102142)

#include <iostream> #include <string> using namespace std;// 判断字符串是否为回文 bool isPalindrome(const string &str) {int left 0;int right str.size() - 1;while (left < right) {// 首尾字符不相等&#xff0c;直接返回 falseif (str[left] …

2026/6/24 8:28:15阅读更多 →
FPGA高速串行通信:8b10b编码与CorePCS IP核原理与调试实战

FPGA高速串行通信:8b10b编码与CorePCS IP核原理与调试实战

1. 项目概述&#xff1a;高速串行通信的“语言”与“翻译官”在FPGA和ASIC的世界里&#xff0c;当我们需要把海量数据从一个芯片“搬”到另一个芯片&#xff0c;尤其是在背板、芯片间互联或者光纤通信这类场景下&#xff0c;并行总线那动辄几十上百根线的“笨重”方式就显得力不…

2026/6/24 8:28:15阅读更多 →
如何用Super IO实现Blender高效导入导出:新手也能掌握的完整指南

如何用Super IO实现Blender高效导入导出:新手也能掌握的完整指南

如何用Super IO实现Blender高效导入导出&#xff1a;新手也能掌握的完整指南 【免费下载链接】super_io blender addon for copy paste import / export 项目地址: https://gitcode.com/gh_mirrors/su/super_io 你是否曾在Blender中为繁琐的文件导入导出而烦恼&#xff…

2026/6/24 9:53:54阅读更多 →
【AISMM Level 1权威解码】:SITS 2026初始级企业必现的5大典型特征与避坑指南

【AISMM Level 1权威解码】:SITS 2026初始级企业必现的5大典型特征与避坑指南

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;AISMM Level 1核心定义与SITS 2026初始级定位逻辑 AISMM&#xff08;AI System Maturity Model&#xff09;Level 1 定义为“可运行基础系统”&#xff0c;其核心特征是具备端到端可执行能力&#xff0c;但尚…

2026/6/24 9:53:54阅读更多 →
MapleStory资源编辑革命:Harepacker复活版全面指南

MapleStory资源编辑革命:Harepacker复活版全面指南

MapleStory资源编辑革命&#xff1a;Harepacker复活版全面指南 【免费下载链接】Harepacker-resurrected All in one .wz file/map editor for MapleStory game files 项目地址: https://gitcode.com/gh_mirrors/ha/Harepacker-resurrected 想要彻底改变你的MapleStory游…

2026/6/24 9:53:54阅读更多 →
3步实现网页到Figma设计的无缝转换:HTML转Figma工具深度解析

3步实现网页到Figma设计的无缝转换:HTML转Figma工具深度解析

3步实现网页到Figma设计的无缝转换&#xff1a;HTML转Figma工具深度解析 【免费下载链接】figma-html Convert any website to editable Figma designs 项目地址: https://gitcode.com/gh_mirrors/fi/figma-html 在现代设计工作流中&#xff0c;设计师和开发者经常面临一…

2026/6/24 9:53:54阅读更多 →
音乐解锁全攻略:打破平台限制,让音乐真正属于你

音乐解锁全攻略:打破平台限制,让音乐真正属于你

音乐解锁全攻略&#xff1a;打破平台限制&#xff0c;让音乐真正属于你 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库&#xff1a; 1. https://github.com/unlock-music/unlock-music &#xff1b;2. https://git.unlock-music.dev/um/web 项目地址: …

2026/6/24 9:53:54阅读更多 →
为什么83%的AI项目ROI测算失真?:深度拆解SITS 2026框架下AISMM价值锚点重构逻辑

为什么83%的AI项目ROI测算失真?:深度拆解SITS 2026框架下AISMM价值锚点重构逻辑

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AISMM价值创造评估&#xff1a;SITS 2026 AI投资回报率测算 在SITS 2026框架下&#xff0c;AISMM&#xff08;AI Strategy Maturity Model&#xff09;的价值创造评估聚焦于可量化的ROI测算路径&#x…

2026/6/24 9:48:54阅读更多 →
【人工智能】一文搞定到底什么是智能体

【人工智能】一文搞定到底什么是智能体

【人工智能】一文搞定到底什么是智能体 一文搞定到底什么是智能体【人工智能】一文搞定到底什么是智能体一. LM&#xff0c;WorkFlow&#xff0c;Agent分别有什么么不同二. Agent的思考过程是怎样的三. Agent的五个核心部分1&#xff09;LLM2&#xff09;Prompt3&#xff09;Me…

2026/6/24 7:33:03阅读更多 →
嵌入式GUI控件实战:ROTARY、SCROLLBAR、SLIDER原理与应用

嵌入式GUI控件实战:ROTARY、SCROLLBAR、SLIDER原理与应用

1. 嵌入式GUI控件&#xff1a;从原理到实战的深度解析在嵌入式系统开发中&#xff0c;图形用户界面&#xff08;GUI&#xff09;的设计与实现往往是项目从“能用”到“好用”的关键一跃。不同于资源充沛的PC或移动平台&#xff0c;嵌入式设备的GUI需要在有限的CPU性能、内存空间…

2026/6/24 2:12:09阅读更多 →
Google AI Studio 300美元额度的真相与实战指南

Google AI Studio 300美元额度的真相与实战指南

1. 这300美金不是“送钱”&#xff0c;而是Google埋下的第一道技术门槛 你看到标题里那个醒目的“$300美金”时&#xff0c;第一反应可能是&#xff1a;又一个免费额度&#xff1f;领完就完事&#xff1f;我亲手试过——这300美金根本不是红包&#xff0c;而是一张入场券&…

2026/6/24 7:37:00阅读更多 →
TaskJuggler脚本编程入门:用代码实现自动化项目管理

TaskJuggler脚本编程入门:用代码实现自动化项目管理

TaskJuggler脚本编程入门&#xff1a;用代码实现自动化项目管理 【免费下载链接】TaskJuggler TaskJuggler - Project Management beyond Gantt chart drawing 项目地址: https://gitcode.com/gh_mirrors/ta/TaskJuggler TaskJuggler是一款强大的开源项目管理工具&#…

2026/6/24 0:02:41阅读更多 →
终极教程:使用angular-mobile-nav实现流畅的移动页面过渡效果

终极教程:使用angular-mobile-nav实现流畅的移动页面过渡效果

终极教程&#xff1a;使用angular-mobile-nav实现流畅的移动页面过渡效果 【免费下载链接】angular-mobile-nav An angular navigation service for mobile applications 项目地址: https://gitcode.com/gh_mirrors/an/angular-mobile-nav angular-mobile-nav是一款专为…

2026/6/24 0:02:41阅读更多 →
Wan2.1-Fun-V1.1-1.3B-InP Web UI使用教程:无需代码的AI视频创作

Wan2.1-Fun-V1.1-1.3B-InP Web UI使用教程:无需代码的AI视频创作

Wan2.1-Fun-V1.1-1.3B-InP Web UI使用教程&#xff1a;无需代码的AI视频创作 【免费下载链接】Wan2.1-Fun-V1.1-1.3B-InP 项目地址: https://ai.gitcode.com/hf_mirrors/PAI/Wan2.1-Fun-V1.1-1.3B-InP Wan2.1-Fun-V1.1-1.3B-InP是一款强大的AI视频创作工具&#xff0c;…

2026/6/24 0:02:41阅读更多 →