qwen3 中文文档 下载 App

Qwen3Guard-Stream 流式实时安全检测 — 生成过程中逐 token 拦截

Stream 版的核心创新

传统安全护栏的做法是等模型生成完毕后再审核——如果输出有害内容,用户已经看到了。Qwen3Guard-Stream 的创新是逐 token 实时检测:

  1. 主模型开始生成 token
  2. 每个 token 都传给 Stream 版判断
  3. 如果检测到有害内容,立即截断生成
  4. 用户看到的永远是安全的内容

架构示意

用户输入 → 主模型生成 ──→ [Stream Guard 逐 token 检测] ──→ 用户
                                    │
                                    ├─ 安全 → 继续生成
                                    └─ 有害 → 截断 + 替换为安全回复

优势

集成方式

代理层(Proxy)

在主模型前面加一个安全代理:

class SafeModelProxy:
    def __init__(self, main_model, guard_model):
        self.main = main_model
        self.guard = guard_model
    
    def safe_generate(self, prompt):
        safe_output = []
        for token in self.main.generate_tokens(prompt):
            # Stream Guard 实时检测
            if self.guard.is_safe(token, safe_output):
                safe_output.append(token)
            else:
                # 有害内容,截断并返回安全回复
                safe_output.append("(内容已被安全拦截)")
                break
        return "".join(safe_output)

SGLang / vLLM 集成

部分推理框架支持在生成管线中直接集成安全护栏,减少中间环节的开销。

精度与延迟的权衡

逐 token 检测会带来额外开销。实际部署时需要权衡:

适用场景

场景推荐
在线聊天机器人Stream(必须)
AI 客服Stream(必须)
离线批量处理Gen(Stream 没必要)
RLHF 训练Gen(奖励信号)

限制

相关阅读