使用敏感信息筛选条件从对话中删除 PII - Amazon Bedrock

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用敏感信息筛选条件从对话中删除 PII

Amazon Bedrock Guardrails 可帮助检测输入提示或模型响应中标准格式的敏感信息,例如个人身份信息 (PIIs)。您还可以使用正则表达式(regex),配置符合您的应用场景或组织需求的敏感信息。

您可以配置以下模式来处理护栏检测到的敏感信息:

  • 阻止-敏感信息筛选策略可以阻止包含敏感信息的请求或响应。此类应用程序的示例可能包括基于公共文件的一般问答申请。如果在提示或响应中检测到敏感信息,防护机制会屏蔽所有内容并返回您配置的消息。

  • 掩码 — 敏感信息筛选策略可以匿名化或编辑模型请求或响应中的信息。例如,在生成用户与客户服务代理之间的对话摘要 PIIs 时,护栏会屏蔽。如果在模型请求或响应中检测到敏感信息,则护栏会将其屏蔽并替换为 PII 类型(例如或)。{NAME} {EMAIL}

Amazon Bedrock Guardrails 提供以下内容 PIIs 来屏蔽或匿名化:

  • 一般性问题

    • ADDRESS

      实际地址,例如“美国任何市 100 号大街”或“123 号楼 12 房”。地址可以包括街道、建筑物、位置、城市、州、国家、县、邮政编码、辖区和社区等信息。

    • AGE

      个人的年龄,包括数量和时间单位。例如,在“我今年 40 岁”这句话中,Amazon Bedrock 防护机制将“40 岁”识别为年龄。

    • NAME

      个人的名字。该实体类型不包括头衔,例如 “博士”、“先生”、“夫人”或“小姐”。Amazon Bedrock 防护机制不会将此实体类型应用于组织或地址中的姓名。例如,防护机制将“John Doe Organization”识别为一个组织,将“Jane Doe Street”识别为一个地址。

    • EMAIL

      电子邮件地址,例如 marymajor@email.com

    • PHONE

      电话号码。该实体类型还包括传真号码和寻呼机号码。

    • USERNAME

      用于标识帐户的用户名,例如登录名、屏幕名称、昵称或句柄。

    • PASSWORD

      用作密码的字母数字字符串,例如“*very20special#pass*”。

    • DRIVER_ID

      分配给驾驶执照的号码,驾驶执照是允许个人在公共道路上驾驶一辆或多辆机动车辆的官方文件。驾驶执照号码由字母数字字符组成。

    • LICENSE_PLATE

      车辆牌照由车辆登记的所在州或国家签发。乘用车的格式通常为 5 到 8 位数,由大写字母和数字组成。格式因签发州或国家的不同而异。

    • VEHICLE_IDENTIFICATION_NUMBER

      车辆识别号码 (VIN) 是车辆的唯一标识。ISO 3779 规范规定了 VIN 内容和格式。每个国家/地区都有特定的代码和格式 VINs.

  • 财务

    • CREDIT_DEBIT_CARD_CVV

      VISA、 MasterCard、Discover 信用卡和借记卡上显示的三位数信用卡验证码 (CVV)。对于美国运通信用卡或借记卡,CVV 是一个 4 位数的数字代码。

    • CREDIT_DEBIT_CARD_EXPIRY

      信用卡或借记卡的到期日期。该数字通常为 4 位数,通常格式为月/年MM/YY。Amazon Bedrock 防护机制可以识别 01/2101/2021Jan 2021 等到期日期。

    • CREDIT_DEBIT_CARD_NUMBER

      信用卡或借记卡的号码。这些数字的长度可以从 13 到 16 位数字不等。但是,当只有最后四位数字存在时,Amazon Bedrock 也可以识别信用卡或借记卡号。

    • PIN

      一个 4 位数的个人身份识别码 (PIN),您可以使用它访问您的银行账户。

    • INTERNATIONAL_BANK_ACCOUNT_NUMBER

      国际银行账号在每个国家都有特定的格式。有关更多信息,请参阅 www.iban.com/structure

    • SWIFT_CODE

      SWIFT 代码是银行识别码 (BIC) 的标准格式,用于指定特定的银行或分行。银行使用这些代码进行汇款,例如国际电汇。

      SWIFT 代码由 8 个或 11 个字符组成。11 位数的代码指的是特定的分支机构,而 8 位数的代码(或以“XXX”结尾的 11 位数代码)指的是总部或主要办事处。

  • IT

    • IP_ADDRESS

      一个 IPv4 地址,比如 198.51.100.0。

    • MAC_ADDRESS

      媒体访问控制(MAC)地址是分配给网络接口控制器(NIC)的唯一标识符。

    • URL

      一个网址,例如 www.example.com

    • AWS_ACCESS_KEY

      与秘密访问密钥关联的唯一标识符;使用访问密钥 ID 和秘密访问密钥,对编程方式的 AWS 请求进行加密签名。

    • AWS_SECRET_KEY

      与访问密钥关联的唯一标识符。您可以使用访问密钥 ID 和私有访问密钥对编程 AWS 请求进行加密签名。

  • 美国相关信息

    • US_BANK_ACCOUNT_NUMBER

      美国银行账号,长度通常为 10 到 12 位数字。

    • US_BANK_ROUTING_NUMBER

      美国银行账户的路由号码。通常为九位数字。

    • US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER

      美国个人纳税人识别号 (ITIN) 是一个以“9”开头的 9 位数字,第 4 位数字是“7”或“8”。ITIN 可以在第 3 位和第 4 位数字之后使用空格或短划线进行格式化。

    • US_PASSPORT_NUMBER

      美国护照编号。护照编码由 6 到 9 个字母数字字符组成。

    • US_SOCIAL_SECURITY_NUMBER

      美国社会安全号码 (SSN) 是发放给美国公民、永久居民和临时工作居民的 9 位数号码。

  • 加拿大相关信息

    • CA_HEALTH_NUMBER

      加拿大医疗服务号码是一个 10 位数的唯一标识符,是个人获得医疗保健福利所必需的。

    • CA_SOCIAL_INSURANCE_NUMBER

      加拿大社会保险号 (SIN) 是一个 9 位数的唯一标识符,是个人获得政府计划和福利所必需的。

      SIN 的格式为 3 组 3 位数字,例如 123-456-789。SIN 可以通过一种称为卢恩算法的简单校验码过程进行验证。

  • 英国相关信息

    • UK_NATIONAL_HEALTH_SERVICE_NUMBER

      英国国家健康服务号码是一个 10 至 17 位数字,例如 485 777 3456。当前系统对 10 位数字进行格式化,在第 3 位和第 6 位数字之后使用空格。最后一位数字是错误检测的校验和。

    • UK_NATIONAL_INSURANCE_NUMBER

      英国国民保险号码 (NINO) 为个人提供获得国民保险(社会保障)福利的权限。它在英国税收系统中也用于某些目的。

      该数字共有 9 位数字,以两个字母开头,后跟 6 个数字和 1 个字母。可以在两个字母后面以及第 2、第 4 和第 6 位数字之后使用空格或短划线进行格式化 NINO。

    • UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER

      英国唯一纳税人编号 (UTR) 是一个 10 位数字,用于识别纳税人或企业。

  • 自定义

    • 正则表达式过滤器

      您可以使用正则表达式来定义护栏识别和操作的模式,例如序列号或预订 ID。

注意

如果为个人身份信息模型提供了充足的背景信息,则可以更有效地执行该模型。为了提高其准确性,请包含更多的上下文信息,并避免向模型提交单个单词或短语。由于 PII 可能取决于上下文(例如,一串数字可能代表一个 AWS KMS key 或一个用户 ID,具体取决于周围的信息),因此提供全面的上下文对于准确识别至关重要。

注意

敏感信息过滤器的自定义正则表达式过滤器不支持正则表达式环顾匹配。

为您的护栏配置敏感信息策略

您可以使用或 AWS Management Console Amazon Bedrock API 为护栏配置敏感信息策略。

Console
  1. 使用有权使用 Amazon AWS Management Console Bedrock 控制台的 IAM 委托人登录。然后,打开 Amazon Bedrock 控制台,网址为https://console.aws.amazon.com/bedrock/

  2. 从左侧导航窗格中选择 Guardrails,然后选择创建护栏

  3. 对于提供护栏详细信息页面,请执行以下操作:

    1. 防护机制详细信息部分,提供防护机制的名称和(可选的)描述

    2. 对于已屏蔽提示的消息,请输入在安装护栏时显示的消息。选中 “对回复应用相同的屏蔽消息” 复选框,以便在对响应应用防护栏时使用相同的消息。

    3. (可选)要为护栏启用跨区域推理,请展开跨区域推理,然后为护栏选择启用跨区域推理。选择一个护栏配置文件,该配置文件定义了 AWS 区域 可以路由护栏推理请求的目的地。

    4. (可选)默认情况下,您的护栏使用加密。 AWS 托管式密钥要使用您自己的客户管理的 KMS 密钥,请展开 KMS 密钥选择并选中 “自定义加密设置(高级)” 复选框。

      您可以选择现有 AWS KMS 密钥或选择创建 AWS KMS 密钥来创建新密钥。

    5. (可选)要向护栏添加标签,请展开标签,然后为您定义的每个标签选择添加新标签。

      有关更多信息,请参阅 标记 Amazon Bedrock 资源

    6. 选择下一步

  4. 在 “添加敏感信息过滤器” 页面上,执行以下操作来配置过滤器以屏蔽或屏蔽敏感信息:

    1. PII 类型部分,将个人身份信息 (PII) 类别配置为屏蔽、屏蔽或不采取任何行动(检测模式)。您有以下选项:

      • 要添加所有 PII 类型,请选择 “添加 PII 类型” 旁边的下拉箭头。然后选择要应用于它们的防护机制行为。

        警告

        如果指定行为,则为 PII 类型配置的任何现有行为都将被覆盖。

      • 要删除 PII 类型,请选择“垃圾桶”图标( Trapezoid-shaped diagram showing data flow from source to destination through AWS Transfer Family. )。

      • 要删除包含错误的行,请选择全部删除,然后选择删除所有有错误的行

      • 要删除所有 PII 类型,请选择全部删除,然后选择删除所有行

      • 要搜索行,请在搜索栏中输入表达式。

      • 要仅显示有错误的行,请选择标有全部显示的下拉菜单,然后选择仅显示错误

      • 要配置表格中每页的大小或表格中显示的列,请选择“设置”图标( Gear icon representing settings or configuration options. )。设置您的首选项,然后选择确认

    2. 正则表达式模式部分,使用正则表达式定义防护机制要筛选的模式。您有以下选项:

      • 要添加模式,请选择添加正则表达式模式。配置以下字段:

        字段 描述
        Name 模式的名称
        正则表达式模式 定义模式的正则表达式
        输入 选择是屏蔽包含该图案的内容,还是使用标识符将其盖。要不采取任何操作,请选择 “检测(不执行任何操作)”。
        输出
        添加描述 (可选)编写模式的描述
      • 要编辑模式,请在操作列中选择与该主题同行的三个点图标。然后选择编辑。完成编辑后,选择确认

      • 要删除一个或多个模式,请选中要删除的模式对应的复选框。选择删除,然后选择删除所选项

      • 要删除所有模式,请选择删除,然后选择全部删除

      • 要搜索模式,请在搜索栏中输入表达式。

      • 要配置表格中每页的大小或表格中显示的列,请选择“设置”图标( Gear icon representing settings or configuration options. )。设置您的首选项,然后选择确认

    3. 配置完敏感信息筛选条件后,选择下一步跳至“查看并创建”

API

要使用敏感信息策略创建护栏,请发送请求。CreateGuardrail请求的格式如下:

POST /guardrails HTTP/1.1 Content-type: application/json { "blockedInputMessaging": "string", "blockedOutputsMessaging": "string", "sensitiveInformationPolicyConfig": { "piiEntitiesConfig": [{ "type": "ADDRESS | EMAIL | PHONE | NAME | SSN | ...", "action": "BLOCK | ANONYMIZE | NONE", "inputAction": "BLOCK | ANONYMIZE | NONE", "inputEnabled": true, "outputAction": "BLOCK | ANONYMIZE | NONE", "outputEnabled": true }], "regexesConfig": [{ "name": "string", "pattern": "string", "action": "BLOCK | ANONYMIZE | NONE", "description": "string", "inputAction": "BLOCK | ANONYMIZE | NONE", "inputEnabled": true, "outputAction": "BLOCK | ANONYMIZE | NONE", "outputEnabled": true }] }, "description": "string", "kmsKeyId": "string", "name": "string", "tags": [{ "key": "string", "value": "string" }], "crossRegionConfig": { "guardrailProfileIdentifier": "string" } }
  • namedescription 字段分别为防护机制指定名称和描述。

  • blockedInputMessagingblockedOutputsMessaging 字段中指定防护机制成功阻止提示或模型响应时显示的消息。

  • sensitiveInformationPolicyConfig对象中配置敏感信息策略:

    • 使用piiEntitiesConfig数组配置预定义的 PII 实体类型:

      • type字段中指定 PII 实体类型。有效值包括ADDRESSEMAILPHONENAMEUS_SOCIAL_SECURITY_NUMBER、、等。

      • 指定在action现场检测到 PII 实体时要采取的操作。选择BLOCK屏蔽内容、ANONYMIZE屏蔽内容或NONE不执行任何操作但返回检测信息。

      • (可选)使用inputActioninputEnabledoutputAction、和outputEnabled为提示和响应配置不同的行为。

    • 使用regexesConfig数组定义要检测的自定义模式:

      • name为正则表达式模式指定 a(1-100 个字符)。

      • 定义pattern要检测的正则表达式(1-500 个字符)。

      • 指定检测action到模式时要采用。选择BLOCK屏蔽内容、ANONYMIZE屏蔽内容或NONE不执行任何操作但返回检测信息。

      • (可选)为正则表达式模式提供一个description(1-1000 个字符)。

      • (可选)使用inputActioninputEnabledoutputAction、和outputEnabled为提示和响应配置不同的行为。

  • (可选)向防护机制附加任何标签。有关更多信息,请参阅 标记 Amazon Bedrock 资源

  • (可选)为了安全起见,请在 kmsKeyId 字段中包含 KMS 密钥的 ARN。

  • (可选)要启用跨区域推理,请在对象中指定护栏配置文件。crossRegionConfig

响应的格式如下:

HTTP/1.1 202 Content-type: application/json { "createdAt": "string", "guardrailArn": "string", "guardrailId": "string", "version": "string" }