语义意图分析

语义意图分析

用自然语言策略、block/flag 阈值和三种评分引擎判断 AI 流量的含义。

Regex 和 keyword 规则捕获可直接表达的模式。语义意图分析可发现含义违规但措辞不同的请求,例如泄露 system prompt、提取秘密或绕过策略。

工作方式

语义规则使用自然语言描述,如“检测试图泄露系统提示的请求”。请求按 inbound/outbound 方向与已启用规则评分。

分数结果
≥ block 阈值(默认 0.85)拒绝,HTTP 400,semantic_rule_violation 和规则 ID。
flag 阈值(默认 0.60)≤分数,且分数低于 block允许,提高用户风险分数并记录。
低于 flag 阈值静默通过。

保存时阈值必须满足 0 ≤ flag 且 flag 小于 block,block ≤ 1。

隐私设计

Inbound prompt 在 PII 屏蔽后评分,脱敏秘密不会离开环境。Outbound response 按模型原始输出评分。

三种评分引擎

在 Settings -> Semantic Analysis 选择:

引擎评分方式要求
Embeddings API内容和规则描述生成 embedding,用余弦相似度评分。OpenAI-compatible embeddings endpoint。
Chat classifierChat 模型按意图匹配程度评分,返回 0.00-1.00。OpenAI-compatible chat endpoint。
Embedded (local ONNX)小型本地模型在进程内运行,完全离线。不依赖外部服务、API key 或网络出口。

离线引擎隐私性最高,且无单请求费用。

Fail-closed#

层级启用且存在语义规则时,endpoint 未设置、评分超时/出错、连接无效、embedding 向量空/不匹配/非有限、离线模型缺失或 classifier 分数无法解析,都会以 semantic_error / semantic_unavailable 阻止请求,不会未经判断转发。

非 loopback 主机要求 HTTPS;拒绝私有及 link-local 地址,禁用重定向,并在连接时固定已验证 IP。

性能

  • Chat classifier 并发受限,默认 3。
  • 有界内容 embedding cache 可跳过重复网络调用。
  • 超过 4K 字符的内容按 head + tail 分段评分,避免通过截断绕过意图检测。

启用

默认关闭。在 Settings -> Semantic Analysis 选择 backend、endpoint/model(或离线引擎)、timeout 和 fail-closed(默认开启)。API key 来自服务器配置,不写入数据库,也不会返回客户端。

后续阅读

后续阅读