防止 LLM 失控的 7 个护栏
NIST 发布了一份关于关键基础设施 AI 风险管理的新说明。
他们希望 AI 系统具备经过测试和验证的保护措施。开发者必须构建这些保护措施,以阻止诸如提示词注入 (prompt injection) 之类的攻击。
安全不仅仅需要良好的意愿,还需要程序化的护栏。
以下是保障 AI 安全的 7 个策略:
输入验证 在用户文本到达模型之前对其进行检查。移除恶意代码或异常的 HTML 标签。经常更新这些规则,以保持领先于攻击者。
输出过滤 在用户看到 AI 响应之前对其进行检查。使用关键词列表或模式匹配来阻止有害内容。像 Pydantic 这样的工具可以帮助确保输出遵循既定结构。
结构化提示词 使用系统提示词 (system prompts) 和清晰的分隔符。将用户查询包裹在特定的标记 (tokens) 中,例如
###User Input###。这有助于模型区分你的指令和用户数据。对抗训练 使用攻击示例来训练你的模型。这可以教会模型识别并拒绝有害的提示词。你还可以针对高质量、特定数据对模型进行微调,以提高安全性。
实时监控 不断观察系统日志和使用模式。使用异常检测来标记异常行为。这有助于你在威胁扩大之前做出响应。
红队测试 聘请团队来模拟真实的攻击。他们在黑客发现漏洞和提示词注入向量之前,先找出它们。通过专注于 AI 特有的威胁,这超越了标准的测试。
人在回路 (Human-in-the-loop) 建立必须由人工进行审查或批准操作的检查点。这对于高风险任务至关重要。它确保了在错误代价高昂时能够实现问责。
护栏不再是可选项,而是核心工程要求。
来源:https://dev.to/autonainews/7-guardrails-that-stop-your-llm-from-going-rogue-3p3p
可选学习社区:https://t.me/GyaanSetuAi