Original post · AI translation
谷歌发表了一篇关于 RAG 投毒的新论文。
论文表明,对 RAG 系统投毒主要取决于复制查询文本,因为加入攻击载荷几乎不会改变哪些文档被检索出来。
虚假文档只需重复用户的问题,就可能被先搜索再回答的 AI 系统检索到;加入隐藏的攻击指令几乎不会改变这一点。
RAG 系统会从外部人员有时也能写入的来源提取文档。任何隐藏指令要发挥作用,投毒页面首先得通过检索器这一关。
对于每条测试查询,他们添加了最多 5 份重复其文本的文档,分别测试包含和不包含攻击载荷的情况。他们在 623 条查询上测试了经典的关键词检索器和语义检索器,以及稠密嵌入模型 BGE-small。
仅 5 份文档,约占语料库的 0.1%,就使经典检索器的排序质量下降了 40.2% 至 61.5%。一种拒绝重复查询文本的文档的过滤器挡住了这些文档,但也使 NFCorpus 上干净查询的排序质量减半,从 0.267 降至 0.134。
如果你的 RAG 索引接收外部内容,应标记与用户查询高度相似的文档,并衡量任何过滤器在干净查询上的代价。