如何在多轮对话中防止模型越狱?

多轮对话里的“越狱”,往往不是模型突然变坏,而是一步步被带跑。单看某一轮,问题可能挺正常;连起来看,目标却在悄悄挪。攻击者先聊无关话题,再改设定、拆任务、加角色,模型如果只盯着当前一句,就容易把整段上下文里的风险漏掉。

1787027845-aiimg6a83e1856d80d6.06135083.webp

大家可以把会话想成一串接力。第一棒是寒暄,第二棒是技术讨论,第三棒才露出真实意图。每一棒单独都不扎眼,可终点可能已经越过安全线。所以防多轮越狱,别只靠“危险关键词一出现就拦”,得把整段对话当成一个整体来判断。

比较实在的做法,是让系统始终记住最初的安全边界,而不是被后半段话术覆盖。应用侧要把系统约束、用户输入和外部文档分开看:网页、上传文件里的文字只当待分析材料,不能自动升格成更高优先级的指令。会话历史也要参与风控——不只扫最新一句,还要看任务有没有在多轮里被逐步改写、有没有出现互相冲突的要求。

输入侧可以结合任务类型、权限和上下文做分流:高风险路径走更严的处理,而不是一律放行或一律硬拒。输出侧再挡一道,把明显有害、敏感或越权的内容拦住。过滤器当然也会失手,隐晦说法、长上下文、语言变形都能绕过简单规则,所以它只能当护栏,不能当唯一指望。

训练和评测也得跟上。如果示范样本全是单轮直球危险提问,模型在“先正常后诱导”的对话里就容易不稳。样本和红队测试要覆盖逐步诱导、角色包装、冲突指令这类场景;发现失效案例就收进回归集,改提示、换模型、调过滤后反复重跑,别上线一次就当永久安全。

对企业来说,更关键的是把“建议”和“执行”拆开。模型可以回答,但读外部资料、调工具、改业务状态要最小权限,必要时人工确认。判断不清时降级:收紧工具、转人工、给更保守的答复。真正管用的不是发誓模型永不翻车,而是让翻车更难、发现更快、影响更小——多轮对话尤其如此,因为风险常常藏在“看起来还行”的连续几句里。

参与讨论

0 条评论

延伸阅读