跳转到主要内容
你想要一份关于敏感数据在你的 AI 流量中出现位置的书面记录, 但你还没准备好开始拒绝请求。Compliance Logger 预设正是这样: 一个观察并记录 PII 出现而不改变任何东西的防护栏。把它绑定到 一个密钥,每个被 flag 的词项都落入 Matches 信息流,而请求逐字 不变地向上游流动。 这是仅观察用例的专注落地页。完整的引擎——每种规则类型、动作和 路由——请见防护栏参考

1. 一个预设搞定仅观察防护栏

Compliance Logger (observe-only) 位于防护栏模板选择器的 Compliance 类别中。它是单条 pii 规则,动作为 flag——记录 一条匹配并让流量保持原样的那个动作。没有拦截,没有脱敏,没有 模型调用,也无需修改 SDK:策略存在于网关中,你的应用继续像 以前一样调用 /v1/chat/completions

Flag,从不执行

动作是 flag——它标注一条匹配,并原封不动地放行请求和 响应。什么都不拦截,什么都不脱敏。

两个阶段

阶段 both——规则扫描请求模型的响应,因此你在进入和 返回两侧都能看到 PII。

零配额开销

内置 PII 检测是确定性的字符串匹配——无上游 judge 调用,无额外 token,没有东西串行排在模型之后。
Flag = 仅观察。 flag 动作记录一条匹配并且改变流量。 它是在你执行之前衡量一个策略,或在不改变行为的情况下保留一份 合规日志的正确工具。完整的 block / mask / flag 取舍见 动作

2. Compliance Logger 预设,正如其发布的样子

在控制台 Guardrails 视图中打开 New guardrail 分裂按钮, 选择 Compliance 模板类别。Compliance Logger (observe-only) 种子是单条 pii 规则:
字段
Typepii
Stageboth(请求 + 响应)
Actionflag(仅观察)
Entitiesemailphonessncredit_cardip
那些实体中任何一个上的每个匹配都会被记录;什么都不拦截或修改。 预设是种子,而不是锁——在你绑定密钥之前编辑实体集合、重命名 它,或叠加更多规则。
Flagging 在请求上实时运行——规则在密钥绑定的那一刻就在真实 流量上触发,因此 Matches 信息流从你的实际调用中填充,而不是 一个单独的采样作业。

3. 在控制台中应用预设

这里的每一步都是你自己会话下的控制台操作。创建和编辑 防护栏需要工作区中的 Developer+。只有最后的 /v1/* 调用使用 sk-orca-... 中继密钥。
1

打开模板

在控制台中打开 Guardrails,点击 New guardrail 分裂 按钮,从 Compliance 模板类别中选择 Compliance Logger (observe-only)
2

命名并保存

给防护栏起一个名字(≤ 64 字符),如 compliance-logger,可选地 修剪或扩展实体列表,并保存。把动作保持在 flag 上——那正是 让它保持仅观察的东西。
3

测试它

打开 Test 标签页,在 input 阶段粘贴一个样本,并在本地 运行该策略——没有上游调用,没有配额(参见 §5)。
4

绑定一个密钥

编辑一个 API 密钥,从 Guardrail 下拉菜单选择 compliance-logger(在密钥上设置 guardrail_id),或将它标记为 工作区默认值。参见 绑定到密钥账户默认值

4. 一个具体示例

一个名为 compliance-logger 的防护栏(未改动的预设)被绑定到 一个密钥。像以前一样调用网关——无需新的请求头,无需修改 SDK:
curl https://api.orcarouter.ai/v1/chat/completions \
  -H "Authorization: Bearer sk-orca-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-4o-mini",
    "messages": [
      {"role": "user", "content": "Reply to jane@acme.com about her SSN 123-45-6789"}
    ]
  }'
请求原封不动地通过——上游模型看到完全相同的文本,响应未 修改,你得到一个正常的补全。在它背后,pii 规则 flag 了 emailssn,每个匹配都落入工作区 Matches 信息流。调用方从看不到 差异;你得到审计追踪。
仅观察意味着不执行。 Compliance Logger 不拦截泄露或脱敏 数据——它记录它们。当你准备好行动时,把动作切换为 blockmask,或把它与一个执行型预设如 PII Shield拦截密钥配对。

5. 绑定前先测试

在任何密钥指向它之前,先证明规则 flag 你期望的东西。打开编辑器内 的 Test 标签页,粘贴一个样本,选择一个阶段,然后运行:
Reply to jane@acme.com about her SSN 123-45-6789
沙箱在本地评估当前策略并返回判定结果——对于一条 flag 规则, 你看到哪些实体匹配,不会向上游发送任何内容,也不计量。要 针对一个措辞语料库做扫查, Eval 工具就在隔壁那个 标签页。

6. 查看触发了什么

这正是一个仅观察预设的全部重点:Matches 信息流。 每个被 flag 的出现都会记录一条匹配——规则类型、动作、阶段和 一个详情字符串——呈现在 GET /api/guardrail/match(Member)。 匹配的子串本身(实际的 email、SSN)在开启 Log raw content 时才记录,而它默认关闭
对于一份合规日志,让 Log raw content 保持关闭通常正是重点: 你了解到一个 SSN 出现了以及多频繁,而不必把受监管的数据复制回 你自己的遥测。只有在你需要子串进行分诊时才按防护栏开启它; 该设置不可追溯。参见 Matches 信息流日志与隐私
阶段过滤信息流,看 PII 在哪里进入你的流量——输入提示词 对比模型输出——并按规则类型过滤以隔离 pii 规则。匹配的实体 (email、ssn……)携带在每条匹配的详情字符串中。那个信号告诉你 是否准备好把动作从 flag 翻转到 blockmask 对防护栏的每次编辑都会在同一事务中写入一条版本化的历史记录—— diff 任意两个版本,并从 History 视图回退。参见 版本管理

7. 从仅观察到执行

Compliance Logger 被设计为一次上线的第一阶段
绑定仅 flag 的预设,让 Matches 信息流从真实流量中填充。从不 拦截任何请求,因此你衡量时对生产零风险。
使用信息流和调优误报 确认实体集合匹配你的数据且不嘈杂。
把动作翻转到 mask(在模型之前脱敏 PII)或 block,或换入 一个执行型预设。使用按实体的 entity_actions在单条规则中 脱敏某些实体而拦截高严重度的那些。
需要一份受监管框架的日志而不是一份手工搭的?Compliance Logger 是合规包物化出的预设之一。框架驱动的就绪度和签名报告见 合规章节。

8. 接下来去哪里

动作:block / mask / flag

完整的动作模型——何时观察、何时脱敏、何时拒绝。

PII Shield

执行型对应物——在请求上脱敏 PII,而不只是记录它。

Matches 信息流

浏览、分组、过滤并导出每个被 flag 的出现。

日志与隐私

Log-raw-content 开关,以及默认记录什么。
仅观察防护栏本身不把关任何东西——它是一个衡量面。关于防护栏和 防火墙如何分工的更广图景,参见 防护栏 vs 防火墙。 完整的引擎——阶段、高级规则和路由——请阅读 防护栏参考