背景与问题
过去两年,大模型从演示工具走向客服、研发助手、知识问答、营销内容生成等生产系统。一旦接入真实业务,问题会迅速变得具体:模型可能编造不存在的接口参数,可能在多轮诱导下输出违规内容,也可能把网页里的隐藏文本当成指令执行。对工程团队来说,AI 安全与对齐不是抽象伦理口号,而是一组需要纳入需求、测试、发布和运维的工程约束。

常见风险可以概括为三类:第一是幻觉,即模型生成看似合理但缺乏事实依据的内容;第二是越狱与提示注入,即攻击者通过话术、编码、角色设定或外部数据绕过安全策略;第三是内容合规风险,包括违法、暴力、歧视、隐私泄露和高风险专业建议。真正成熟的系统不会假设模型永远正确,而是通过多层机制让错误可发现、可拦截、可追溯。
核心概念
安全、对齐与可控性
- 安全:系统在不同输入下尽量避免产生有害、违法或误导性输出。
- 对齐:模型行为与用户意图、产品目标、组织策略和社会规范保持一致。
- 可控性:开发者能够限定模型能力边界、审计关键行为,并在异常时停止或降级服务。
三者关系可以这样理解:对齐解决模型应该做什么,安全解决模型不能做什么,可控性解决人类如何监督和纠偏。若只有提示词而没有权限边界,模型很容易被诱导;若只有过滤器而没有事实依据,系统又容易误伤正常需求。
幻觉控制
幻觉并不等于模型说谎,它更像是模型在信息不足时仍然保持高置信度表达。工程上通常从三个方向控制:第一,减少无依据生成,例如引入检索增强、知识库引用和工具查询;第二,降低错误置信度,例如要求模型区分事实、推测和未知;第三,建立验证机制,例如引用校验、答案一致性检查和人工抽检。
对于事实型任务,建议将回答分为可验证与不可验证两类。可验证问题尽量走检索或数据库,不可验证问题则明确标注不确定性。这比单纯要求模型不要幻觉更有效。
越狱防护
越狱通常利用模型对自然语言的泛化能力,例如假装成小说创作、代码调试、学术讨论、系统管理员,或使用 Base64、Unicode、多语言混合等方式绕过检测。提示注入则更进一步,把恶意指令混入用户输入、网页内容、文档附件或工具返回结果中。
防护重点不是寻找一个万能关键词表,而是建立分层防御:输入层识别高风险意图,系统层隔离用户指令与系统策略,工具层限制文件、网络、数据库和代码执行权限,输出层进行安全审核,日志层保留可审计证据。
内容审核
内容审核是模型输出进入用户前的最后一道防线。它不应只是一个黑盒分类器,而应包含清晰策略:哪些内容必须拦截,哪些内容需要改写或降级,哪些内容可以放行但附带提示,哪些场景必须转人工。审核策略需要与业务风险等级匹配,例如医疗、法律、金融、未成年人相关场景应显著从严。
实践步骤与检查清单
1. 先定义风险等级,再选择模型能力
- 明确应用是否涉及资金、医疗、法律、未成年人、隐私或自动化执行。
- 根据风险等级确定是否允许联网、是否允许调用工具、是否允许生成可执行代码。
- 对高风险场景设置人工复核、限流、白名单和强审计。
2. 建立分层防御流水线
一个常见的生产流水线包括:输入清洗、意图识别、权限判断、检索增强、模型生成、事实校验、输出审核和日志记录。下面是一个简化的伪代码示例,用于说明各检查点的位置。
def guardrail(prompt, context):
if contains_secret(prompt):
return deny('请勿提交密钥或个人敏感信息')
intent = classify_intent(prompt)
if intent in ('medical', 'legal', 'finance'):
return answer_with_disclaimer(prompt, require_review=True)
if intent == 'fact':
context = retrieve_sources(prompt)
answer = llm_generate(prompt, context, temperature=0.2)
if intent == 'fact' and not has_citation(answer):
answer = add_uncertainty_note(answer)
return output_filter(answer)
这段代码不是完整安全方案,而是展示工程思路:先处理敏感信息与高风险意图,再根据任务类型决定是否检索,最后对输出进行审核和不确定性标注。
3. 幻觉控制的关键动作
- 为事实型问题接入检索、知识库或结构化查询,并尽量要求引用来源。
- 限制模型在缺少证据时自由发挥,可设置拒答模板或转人工。
- 对长文档问答进行分段检索,避免模型跨段落拼接出错误结论。
- 建立离线评估集,重点检查事实准确率、引用命中率和拒答合理性。
4. 越狱与提示注入测试
- 构造角色扮演、反向指令、多轮诱导、编码绕过、多语言混合等测试用例。
- 检查系统提示是否可能被泄露,工具调用是否可能被用户间接控制。
- 对网页抓取、文件解析、数据库返回等外部内容做隔离,避免间接注入。
- 每次模型升级、提示词调整或工具变更后,执行回归红队测试。
5. 内容审核与运营闭环
- 输出审核应覆盖违法、暴力、歧视、隐私、自伤、未成年人和高风险专业建议。
- 对拦截案例记录原因,对误判案例进行复盘,持续更新策略。
- 为客服、教育、医疗等场景配置专门话术和人工升级路径。
- 日志要脱敏保存,并明确保留期限与访问权限,请以适用法规和官方合规要求为准。
常见坑与建议
- 只依赖系统提示:系统提示很重要,但不能作为唯一防线。攻击者可以通过多轮对话或外部内容改变模型行为,必须配合权限控制和输出审核。
- 关键词过滤过于简单:关键词表容易被同义词、拼音、编码和隐喻绕过。应结合语义分类、上下文判断和风险分级。
- 把幻觉问题只归因于提示词:如果没有可靠知识来源和评估机制,仅靠请模型谨慎回答往往效果有限。
- 过度拒绝影响可用性:安全策略不是一味拦截。对边缘场景应提供解释、替代方案或人工入口,避免用户被反复拒绝。
- 忽略间接注入:模型读取网页、PDF、邮件或工具返回时,外部文本可能携带指令。应将数据内容与执行指令明确分离。
- 没有持续评估:模型版本、提示词、知识库和工具都会变化。没有回归测试,安全能力会随迭代悄悄退化。
延伸阅读方向
- OWASP 针对大模型应用的安全风险清单与生成式 AI 安全实践。
- NIST AI Risk Management Framework 等公共治理框架。
- 据公开资料,Google SAIF、Anthropic 等机构提出的安全对齐与红队测试方法。
- RLHF、DPO、Constitutional AI 等对齐技术路线及其适用边界。
- RAG 评估指标,如忠实度、答案相关性、引用准确率和拒答率。
- 自动化红队、对抗提示生成与模型行为监测工具链。
总体而言,AI 安全与对齐不是一次性项目,而是持续运营。工程团队需要把幻觉控制、越狱防护和内容审核纳入同一套质量体系,用可测试、可观测、可回滚的方式管理模型风险。
参考来源
免责声明:本文内容整理自公开网络资料,仅供学习交流参考,不代表观山书院立场。如涉及版权侵权,请联系我们删除。
联系邮箱:chenxj.g@gmail.com
