22 护栏

护栏是用于指导和控制 AI 代理行为的安全机制。

在 Oracle AI Data Platform 中,将保护栏配置为防止代理生成或使用有毒和恶意内容。护栏还可防止代理人泄露个人身份信息 (PII)。AI 数据平台中提供的特定护栏适用于内容审核、提示注入和 PII。

注意:

AI Data Platform 提供的护栏仅提供英文版本。

AI Data Platform 中提供的 Guardrails 由 Oracle Cloud Infrastructure Generative AI Enterprise AI Agents 服务团队实施。请参阅面向 OCI Generative AI 的护栏。AI Data Platform 服务基于您的护栏配置调用 OCI 租户中的 Apply Guardrails API 。

可视流画布中的护栏

默认情况下,除了模型提供商的原生安全控制之外,不会对系统应用任何护栏。要添加护栏,必须将护栏节点拖动到代理可视流构建器中,然后将其连接到代理。

Guardrails 节点可以过滤聊天触发器与代理节点之间的流量,在主管和执行器代理之间,或者在代理和工具节点之间。对于大多数情况,我们建议在聊天触发器和座席节点之间使用单个护栏节点。这将确保来自传入用户的任何消息以及代理生成的消息将通过保护栏进行过滤。


向可视化构建器打开的代理。护栏节点在选项板中突出显示。

只能在以下项之间插入 Guardrails 节点:
  • 聊天触发器节点和座席(主管或执行者)

有哪些护栏可用?

下图显示了最终用户与代理之间的简单交互。在这种情况下,将应用所有导轨(内容调节 -CM,及时注射预防 -PI 和 PII 检测 -PII)。PI 仅应用于用户查询。

在最终用户发出第二条消息后,检测到 PI 尝试,并在代理开发人员对 PI 检测(块)执行的选定操作后阻止了用户消息。


图中描述了 AI 代理护栏的示例

内容仲裁

内容审核是大多数生成式 AI 中的常见保护措施。如果不加以控制,LLM 可以产生有害的内容,促进暴力,种族主义和色情内容。必须让座席开发人员全面了解和控制用户与座席的交互如何被监视和扫描,以查找可能有害的内容。内容调节可防止恶意、性、暴力、有毒、贬损或基于骚扰的内容被代理考虑或生成。我们的护栏模型根据这六个类别对内容进行分类,并标记属于这些类别之一的内容。

您可以选择对用户输入查询或模型响应执行操作:
  • 块:您可以阻止代理处理用户输入并生成响应。用户会收到代理的错误响应。
  • 通知:允许代理处理用户输入并生成响应。代理将通知用户输入或响应包含符合保护标准的内容。
  • 允许:允许代理处理和/或生成可能有害的内容。

在您创建代理时,会选择块操作以进行内容审核。Oracle 建议保留 Block 作为内容审核的护栏选择。

提示注入

人工智能代理的提示注入护栏是一种保护机制,可以检测、预防和缓解用户输入中嵌入的恶意或意外指令。提示性注入攻击通过插入隐藏文本来尝试覆盖或颠覆代理的原始指令、策略或目标,这些文本会告知模型忽略以前的规则、泄露秘密或执行未经授权的操作。

您可以选择可用于内容审核的相同操作:块、通知或允许。提示注入护栏仅适用于用户输入查询。
  • 块:您可以阻止代理处理用户输入。用户会收到代理的错误响应。
  • 通知:允许代理处理用户输入。代理将通知用户输入包含符合 Guardrail 条件的内容。
  • 允许:允许代理处理潜在有害的内容。

创建代理时, Block 操作处于选中状态。Oracle 建议保留 Block 作为提示注入的护栏选择。

个人可识别信息 (Personally Identifiable Information,PII)

PII 护栏会自动检测、阻止或屏蔽来自用户输入查询或代理响应的 PII。此保护栏可防止代理以违反隐私法规或组织政策的方式公开敏感用户信息。

PII 护栏支持四种实体类型:
  • 电子邮件
  • Telephone number
  • 物理地址
  • 人员姓名
对于这四个实体中的每个实体,您可以选择应用您的代理对输入用户查询或代理响应采取的以下哪项操作:
  • 块:您可以阻止代理处理用户输入并生成响应。用户会收到代理的错误响应。
  • 通知:允许代理处理用户输入并生成响应。代理通知用户输入或响应包含 PII。
  • 掩码:允许代理处理输入并生成屏蔽的响应。使用的任何 PII 都会进行编辑以防止暴露。
  • 允许:您允许代理处理和/或生成 PII 数据。

在新代理中,默认情况下,用户输入和响应都允许 PII。Oracle 建议您根据安全需求仔细选择 PII 的护栏。

在节点中启用特定护栏

您可以选择要启用的护栏以及将护栏节点添加到可视画布时如何配置每个护栏。

  1. 导航到工作区中的代理。
  2. 将 Guardrails 节点从调色板拖到画布。
  3. 为节点提供有意义的名称和说明。

    此时将打开 "Guardrails configuration" 页面。将突出显示名称和说明。

  4. 切换护栏以启用该护栏并开始配置。再次按下切换将禁用护栏及其配置。

    Guardrails 配置。将突出显示内容审核预防的切换。

  5. 为每个类别选择所需的护栏配置。

    此时将显示 "Guardrails configuration" 页面。启用并突出显示内容审核预防和提示注入检测的切换。“输入”和“输出”选项设置为“块”,并突出显示“块”。