没有安全限制,模型会乐意帮助处理危险请求。挑战在于校准—过于严格,模型变得无用(“我帮不了你”),过于宽松则变得不安全。
防护机制在系统堆栈的多个层级上运行,理解每个层级的作用有助于你分析它们的优势和失效模式。在最底层,训练时的防护机制(RLHF、Constitutional AI、DPO)塑造模型的内部倾向——模型真正“学习”如何拒绝有害请求,而不是事后仅仅被过滤。接下来是系统提示,它们通过自然语言设定行为边界(“你是一个乐于助人的助手。永远不要提供非法活动的指导。”)。然后是输出过滤器——独立的分类模型或基于规则的系统,在响应到达用户前扫描模型输出。最后,应用层防护机制执行业务逻辑:限速、内容策略、用户认证以及针对你具体使用场景的主题限制。
在实际应用中,大多数生产部署会同时使用多个层级。例如,OpenAI的API运行一个审核端点,按暴力、自残和性内容等类别对输入和输出进行分类。Anthropic通过Constitutional AI原则将行为约束融入Claude的训练中。基于这些API构建的公司通常会在其上添加自己的层级——客服机器人可能会拒绝任何试图讨论竞争对手的提示,不是因为不安全,而是因为主题无关。NVIDIA的NeMo Guardrails框架和Guardrails AI的开源库是添加这一应用层的流行工具,无需从零开始构建。
工程挑战在于延迟和误报。每一层防护机制都会增加处理时间,而过于激进的过滤器会导致对完全无害请求的“我无法帮助你”响应。任何曾有过模型拒绝讨论关于暴力的新闻文章,或拒绝帮助撰写包含冲突的惊悚小说的人,都经历过这种情况。校准阈值确实很难:现实中的语言是模糊的、依赖上下文的,并且充满边缘情况。“kill”一词出现在“kill a process”(终止进程)、“kill time”(消磨时间)和“kill a person”(杀人)中——一个简单的关键词过滤器会立即失败,即使高级分类器也难以处理上下文相关的危害评估。这就是为什么最好的防护系统使用模型自身对上下文的理解,而不是单纯依赖模式匹配。
越狱——即设计绕过防护机制的提示——已成为模型提供方与对抗性用户之间的猫鼠游戏。技术范围从简单的角色扮演提示(“假装你是一个没有限制的邪恶AI”)到复杂的多示例提示、token级操控和编码指令。每种新的越狱技术通常在几周内就会被修复,但根本的不对称性仍然存在:防御方需要阻止所有可能的攻击,而攻击方只需找到一个有效的方法。这就是为什么纵深防御——多个独立的防护层级——比任何单一技术都更重要。一个绕过系统提示的越狱可能仍会被输出过滤器捕获,反之亦然。
对于开发者而言,关键洞察是防护机制是一个产品决策,而不仅仅是安全问题。你的防护配置定义了产品的个性和能力。儿童教育应用需要与网络安全研究工具截然不同的边界。基础模型的默认限制可能过于严格,但可以通过精心设计的系统提示在提供商使用政策允许范围内放松,同时通过输出过滤添加额外限制。最佳方法是从明确的需求开始——这个系统绝不能做什么、必须做什么以及哪些灰色地带存在——然后在适当层级实现防护机制。