创建和管理 Model Armor 模板

本页介绍了如何创建、查看、更新和删除模型防护模板。

创建模型装甲模板

控制台

  1. 在 Google Cloud 控制台中,前往 Model Armor 页面。

    前往“模型装甲”

  2. 确认您正在查看已启用模型防护的项目。

  3. 模型装甲页面上,点击创建模板。 系统会显示创建模板页面。

  4. 指定模板 ID。模板 ID 可以包含字母、数字或连字符。 不得超过 63 个字符,且不能包含空格或以连字符开头。

  5. 选择要运行 Model Armor 模板的区域。您之后将无法更改区域。

  6. 可选:添加标签。标签采用键值对形式,可用于对相关模板进行分组。

  7. 检测部分中,配置以下检测设置:

    • 恶意网址检测:识别旨在危害用户或系统的网址 (网址)。这些网址可能会导致您访问钓鱼式攻击网站、下载恶意软件或遭受其他网络攻击。如需了解详情,请参阅恶意网址检测

    • 提示注入和越狱检测:检测提示中的恶意内容和越狱尝试。如需更严格地执行,请将置信度设置为低及以上**,以检测到最多的可能属于提示注入和越狱尝试的内容。如需了解详情,请参阅提示注入和越狱检测

    • 敏感数据保护:检测敏感数据、防止意外泄露,并阻止企图通过提示注入等攻击从 AI 模型中提取数据的行为。如需了解详情,请参阅敏感数据保护

      您可以设置基本或高级敏感数据保护。

      • 基本 - 使用预定义的 infoType 检测敏感数据类型。如需详细了解预定义的 infoType,请参阅基本敏感数据保护配置

      • 高级 - 将敏感数据保护服务中定义的检查模板用作敏感数据 infoType 的单一来源。

        如果您选择“高级敏感数据保护”,则需要指定以下参数:

        • 检查模板:此类模板用于保存检查扫描作业的配置信息,包括要使用的预定义或自定义检测器。请按以下格式输入模板名称:projects/projectName/locations/locationID/inspectTemplates/templateName

        • 可选:去标识化模板:用于保存去标识化作业配置信息的模板,包括 infoType 和结构化数据集转换。按以下格式输入去标识化模板的标识符:projects/projectName/locations/locationID/deidentifyTemplates/templateName

  8. Responsible AI 部分,您可以为每种内容过滤器设置置信度。置信度表示发现结果与内容过滤器类型匹配的可能性。可能的值包括:

    • :不检测任何内容类型。
    • 低及以上:检测置信度为“低”“中”或“高”的内容。
    • 中等及以上:检测置信度为“中”或“高”的内容。
    • :检测置信度为“高”的内容。

    若要更严格地执行,请将置信度设置为‘低’及以上,以检测大部分属于某种内容过滤器类型的内容。您还可以一次性为所有内容类型选择置信度。

  9. 点击创建

gcloud

运行以下命令:

gcloud alpha model-armor templates create template_id --location location [filters]

替换以下内容:

  • LOCATION - 模板的位置。
  • TEMPLATE_ID - 模板的 ID。

以下是一个包含所有过滤条件的示例。

 gcloud alpha model-armor templates create --location location "template_id" 
--rai-settings-filters='[{ "filterType": "HATE_SPEECH", "confidenceLevel": "MEDIUM_AND_ABOVE" },{ "filterType": "HARASSMENT", "confidenceLevel": "MEDIUM_AND_ABOVE" },{ "filterType": "SEXUALLY_EXPLICIT", "confidenceLevel": "MEDIUM_AND_ABOVE" }]'
--basic-config-filter-enforcement=enabled
--pi-and-jailbreak-filter-settings-enforcement=enabled
--pi-and-jailbreak-filter-settings-confidence-level=LOW_AND_ABOVE
--malicious-uri-filter-settings-enforcement=enabled
--template-metadata-custom-llm-response-safety-error-code=798
--template-metadata-custom-llm-response-safety-error-message="test template llm response evaluation failed"
--template-metadata-custom-prompt-safety-error-code=799
--template-metadata-custom-prompt-safety-error-message="test template prompt evaluation failed"
--template-metadata-ignore-partial-invocation-failures
--template-metadata-log-operations
--template-metadata-log-sanitize-operations

REST API

使用此命令创建新的 Model Armor 模板。

curl -X POST \
-d "{'filter_config': {} }" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
  "https://modelarmor.LOCATION_ID.rep.googleapis.com/v1/projects/$PROJECT_ID/locations/$LOCATION/templates?template_id=$TEMPLATE_ID"

替换以下内容:

  • Filter_config 是模板的过滤器配置。
  • PROJECT_ID 是模板所属项目的 ID。
  • TEMPLATE_ID 是要创建的模板的 ID。
  • LOCATION 是模板的位置。
  • gcloud auth print-access-token 是指定账号的访问令牌。请按照这些步骤获取此令牌。

以下示例介绍了 Model Armor 模板配置。

  1. 创建一个配置(在本例中为 FILTER_CONFIG),指定您希望 Model Armor 模板过滤哪些过滤条件,以及适用的置信度级别。
  2. 使用您创建的配置创建模型装甲模板(在本例中为 ma-template-id-1234)。

请注意,LOW_AND_ABOVE 表示任何可能性为“低”“中”或“高”的内容都会被标记。

  export FILTER_CONFIG='{
 "filterConfig": {
  "raiSettings": {
    "raiFilters": [{
      "filterType": "HATE_SPEECH",
      "confidenceLevel": "MEDIUM_AND_ABOVE"
    }, {
      "filterType": "HARASSMENT",
      "confidenceLevel": "HIGH"
    }, {
      "filterType": "DANGEROUS",
      "confidenceLevel": "MEDIUM_AND_ABOVE"
    },{
      "filterType": "SEXUALLY_EXPLICIT",
      "confidenceLevel": "MEDIUM_AND_ABOVE"
    }]
  },

  "piAndJailbreakFilterSettings": {
    "filterEnforcement": "ENABLED",
    "confidenceLevel": "LOW_AND_ABOVE"
  },
  "maliciousUriFilterSettings": {
    "filterEnforcement": "ENABLED"
  }
 }
}'

curl -X POST \
 -d  $FILTER_CONFIG \
 -H "Content-Type: application/json" \
 -H "Authorization: Bearer $(gcloud auth print-access-token)" \
 "https://modelarmor.LOCATION.rep.googleapis.com/v1/projects/$PROJECT_ID/locations/LOCATION_ID/ templates?template_id=TEMPLATE_ID"
 

查看 Model Armor 模板

控制台

  1. 在 Google Cloud 控制台中,前往 Model Armor 页面。

    前往“模型装甲”

  2. 确认您正在查看已启用模型防护的项目。系统会显示模型装甲页面,其中列出了为您的项目创建的模板。

  3. 点击列表中的任意模板即可查看其详细信息。

gcloud

运行以下命令:

gcloud alpha model-armor templates describe template_id --location location

替换以下内容:

  • LOCATION - 模板的位置。
  • TEMPLATE_ID - 模板的 ID。

REST API

运行以下命令:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://modelarmor.LOCATION_ID.rep.googleapis.com/v1/projects/$PROJECT_ID/locations/$LOCATION/templates/$TEMPLATE_ID"

替换以下内容:

  • gcloud auth print-access-token 是指定账号的访问令牌。
  • PROJECT_ID - 模板所属的项目的 ID。
  • LOCATION - 模板的位置。
  • TEMPLATE_ID - 模板的 ID。

更新 Model Armor 模板

控制台

  1. 在 Google Cloud 控制台中,前往 Model Armor 页面。

    前往“模型装甲”

  2. 确认您正在查看已启用模型防护的项目。系统会显示 Model Armor 页面,其中列出了为贵组织创建的模板。

  3. 从列表中点击要更新的模板。系统随即会显示模板详情页面。

  4. 点击修改

  5. 更新必填参数,然后点击保存

gcloud

运行以下命令:

gcloud alpha model-armor templates update template_id --location location [filters]

替换以下内容:

  • LOCATION - 模板的位置。
  • TEMPLATE_ID - 模板的 ID。

REST API

运行以下命令:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d $FILTER_CONFIG \
"https://modelarmor.LOCATION_ID.rep.googleapis.com/v1/projects/$PROJECT_ID/locations/$LOCATION/templates/$TEMPLATE_ID?update_mask=filter_config"

替换以下内容:

  • gcloud auth print-access-token 是指定账号的访问令牌。
  • PROJECT_ID - 模板所属的项目的 ID。
  • LOCATION - 模板的位置。
  • TEMPLATE_ID - 模板的 ID。
  • FILTER_CONFIG - 过滤器配置的 JSON 表示法。

所有其他字段均不可变。尝试更新其他字段(例如尝试更新模板名称)会导致出现错误。

删除 Model Armor 模板

控制台

  1. 在 Google Cloud 控制台中,前往 Model Armor 页面。

    前往“模型装甲”

  2. 确认您正在查看已启用模型防护的项目。系统会显示 Model Armor 页面,其中列出了为贵组织创建的模板。

  3. 点击要从列表中删除的模板。系统随即会显示模板详情页面。

  4. 点击删除。系统会显示一个确认对话框。

  5. 输入模板名称以确认删除,然后点击删除

gcloud

运行以下命令:

gcloud alpha model-armor templates delete template_id --location location

替换以下内容:

  • LOCATION - 模板的位置。
  • TEMPLATE_ID - 模板的 ID。

REST API

运行以下命令:

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)"  \
"https://modelarmor.LOCATION_ID.rep.googleapis.com/v1/projects/$PROJECT_ID/locations/$LOCATION/templates/$TEMPLATE_ID"

替换以下内容:

  • gcloud auth print-access-token 是指定账号的访问令牌。
  • PROJECT_ID - 模板所属的项目的 ID。
  • LOCATION - 模板的位置。
  • TEMPLATE_ID - 模板的 ID。

后续步骤