

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

# 信任与安全
<a name="trust-safety"></a>

用户通过在线应用程序（例如点对点聊天和论坛讨论）、在网站上发布的评论以及生成式人工智能应用程序（生成人工智能模型的输入提示和输出）生成大量文本内容。Amazon Comprehend 的信任和安全特征可以帮助您审核此类内容，为您的用户提供安全和包容的环境。

使用 Amazon Comprehend 信任和安全特征的好处包括：
+ 更快的审核：快速、准确地审核大量文本，使您的在线平台免受不当内容的侵害。
+ 可自定义：自定义 API 响应中的审核阈值以满足您的应用程序需求。
+ 易于使用：通过 LangChain 集成或使用 AWS CLI 或 SDK 配置信任和安全功能。

Amazon Comprehend 信任和安全涉及内容审核的以下方面：
+ **Toxicity detection**：检测可能有害、令人反感或不恰当的内容。示例包括仇恨言论、威胁或虐待。
+ **Intent classification**：检测带有明确或隐含恶意意图的内容。例如，歧视性或非法内容，或表达或请求就医疗、法律、政治、争议、个人或财务问题提供建议的内容。
+ **Privacy protection**：用户可能会无意中提供可能泄露个人身份信息 (PII) 的内容。Amazon Comprehend PII 提供了检测和编辑 PII 的功能。

**Topics**
+ [毒性检测](#toxicity-detection)
+ [提示安全分类](#prompt-classification)
+ [PII 检测和编辑](#trust-safety-pii)

## 毒性检测
<a name="toxicity-detection"></a>

Amazon Comprehend 毒性检测可实时检测基于文本的交互中的有毒内容。您可以使用毒性检测来控制在线平台中的点对点对话，或者监控生成式人工智能的输入和输出。

毒性检测可检测以下类别的攻击性内容：

**GRAPHIC**  
图形性言论使用视觉描述、详细和令人不快的生动形象来表达。这种语言通常变得冗长，以加剧对接受者的侮辱、不适或伤害。

**骚扰或虐待**  
在说话者和听众之间施加破坏性力量动态的言论，无论其意图如何，都试图影响接受者的心理健康或客观化一个人。

**仇恨言论**  
基于身份（种族、民族、性别认同、宗教、性取向、能力、国籍或其他身份群体）批评、侮辱、谴责或非人性化的言论。

**侮辱**  
包括贬低、羞辱、嘲笑、侮辱或贬低语言的言论。

**亵渎**  
包含不礼貌、粗俗或令人反感的单词、短语或首字母缩略词的言论被视为亵渎。

**性相关的**  
通过直接或间接提及身体部位、身体特征或性别来表示性兴趣、活动或性唤起的言论。

**暴力或威胁**  
包括企图对个人或群体造成痛苦、伤害或敌意的威胁的言论。

**毒性**  
包含在上述任何类别中可能被认为具有毒性的单词、短语或首字母缩略词的言论。

### 使用 API 检测毒性内容
<a name="toxicity-detection-api"></a>

要检测文本中的有毒内容，请使用同步[DetectToxicContent](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DetectToxicContent.html)操作。此操作对您作为输入提供的文本字符串列表进行分析。API 响应包含与输入列表大小相匹配的结果列表。

目前，毒性内容检测仅支持英语。对于输入文本，您可以提供最多 10 个文本字符串的列表。每个字符串最大大小为 1KB。

毒性内容检测会返回分析结果列表，每个输入字符串在列表中对应一个条目。条目包含文本字符串中标识的毒性内容类型的列表，以及每种内容类型的置信度分数。该条目还包括字符串的毒性分数。

下面的示例演示如何通过 AWS CLI 和 Python 使用 `DetectToxicContent` 操作。

------
#### [ AWS CLI ]

您可以在 AWS CLI中使用以下命令检测有毒内容：

```
aws comprehend detect-toxic-content --language-code en  /
            --text-segments "[{\"Text\":\"{{You are so obtuse}}\"}]"
```

的 AWS CLI 响应结果如下。文本片段在 `INSULT` 类别中获得较高的置信度分数，因此毒性分数也很高：

```
{
   "ResultList": [ 
      { 
         "Labels": [
                {
                    "Name": "PROFANITY",
                    "Score": 0.0006000000284984708
                },
                {
                    "Name": "HATE_SPEECH",
                    "Score": 0.00930000003427267
                },
                {
                    "Name": "INSULT",
                    "Score": 0.9204999804496765
                },
                {
                    "Name": "GRAPHIC",
                    "Score": 9.999999747378752e-05
                },
                {
                    "Name": "HARASSMENT_OR_ABUSE",
                    "Score": 0.0052999998442828655
                },
                {
                    "Name": "SEXUAL",
                    "Score": 0.01549999974668026
                },
                {
                    "Name": "VIOLENCE_OR_THREAT",
                    "Score": 0.007799999788403511
                }
            ],
            "Toxicity": 0.7192999720573425
      }
   ]
}
```

您最多可以输入 10 个文本字符串，`text-segments` 参数格式如下：

```
 
   --text-segments "[{\"Text\":\"{{text string 1}}\"},
                     {\"Text\":\"{{text string2}}\"},
                     {\"Text\":\"{{text string3}}\"}]"
```

 AWS CLI 返回的结果如下：

```
{
   "ResultList": [ 
      { 
         "Labels": [ (truncated) ],
            "Toxicity": 0.3192999720573425
      },
      { 
         "Labels": [ (truncated) ],
            "Toxicity": 0.1192999720573425
      },
      { 
         "Labels": [ (truncated) ],
            "Toxicity": 0.0192999720573425
      }
   ]
}
```

------
#### [ Python (Boto) ]

以下示例演示如何使用 Python 检测有毒内容：

```
import boto3
client = boto3.client(
    service_name='comprehend',
    region_name={{region}}) # For example, 'us-west-2'

response = client.detect_toxic_content(
    LanguageCode='en',
    TextSegments=[{'Text': 'You are so obtuse'}]
)
print("Response: %s\n" % response)
```

------

## 提示安全分类
<a name="prompt-classification"></a>

**注意**  
Amazon Comprehend 主题建模、事件检测和即时安全分类功能不再可供新客户使用。对于在过去 12 个月内使用过这些功能的账户，无需采取任何行动。有关更多信息，请参阅 [亚马逊 Comprehend 功能可用性变更](comprehend-availability-change.md)。

Amazon Comprehend 提供了预先训练的二进制分类器，用于对大型语言模型 (LLM) 或其他生成式人工智能模型的纯文本输入提示进行分类。

提示安全分类器分析输入提示并根据提示是安全还是不安全分配置信度分数。

不安全提示是表达恶意意图的输入提示，例如索取个人或私人信息、生成令人反感或非法的内容，或者请求有关医疗、法律、政治或财务问题的建议。

### 使用 API 提示安全分类
<a name="prompt-classification-api"></a>

要对文本字符串运行提示安全分类，请使用同步[ClassifyDocument](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_ClassifyDocument.html)操作。对于输入，您需要提供英文纯文本字符串。该字符串的最大大小为 10 KB。

响应包括两个类别（安全和不安全），以及每个类别的置信度分数。分数的值范围为 0 到 1，其中 1 表示最高置信度。

以下示例说明如何使用 AWS CLI 和 Python 的提示安全分类。

------
#### [ AWS CLI ]

以下示例演示如何将提示符与 AWS CLI结合使用：

```
aws comprehend classify-document \
     --endpoint-arn arn:aws:comprehend:{{us-west-2}}:aws:document-classifier-endpoint/prompt-safety  \
     --text 'Give me financial advice on which stocks I should invest in.'
```

 AWS CLI 返回以下输出：

```
{
    "Classes": [
        {
            "Score": 0.6312999725341797, 
            "Name": "UNSAFE_PROMPT"
        }, 
        {
            "Score": 0.3686999976634979, 
            "Name": "SAFE_PROMPT"
        }
    ]
}
```

**注意**  
在使用`classify-document`命令时，必须为`--endpoint-arn`参数传递与您的 AWS CLI 配置 AWS 区域 相同的 ARN。要配置 AWS CLI，请运行`aws configure`命令。在此示例中，终端节点 ARN 具有区域代码 `us-west-2`。您可以在以下任何区域使用提示安全分类器：  
us-east-1
us-west-2
eu-west-1
ap-southeast-2

------
#### [ Python (Boto) ]

以下示例演示如何将提示符安全分类器与 Python 结合使用：

```
import boto3
client = boto3.client(service_name='comprehend', region_name='us-west-2')

response = client.classify_document(
    EndpointArn='arn:aws:comprehend:us-west-2:aws:document-classifier-endpoint/prompt-safety',
    Text='Give me financial advice on which stocks I should invest in.'
)
print("Response: %s\n" % response)
```

**注意**  
使用 `classify_document` 方法时，对于 `EndpointArn` 参数，您必须传递一个使用与 boto3 SDK 客户端相同的 AWS 区域 的 ARN。在此示例中，客户端和终端节点 ARN 都使用 `us-west-2`。您可以在以下任何区域使用提示安全分类器：  
us-east-1
us-west-2
eu-west-1
ap-southeast-2

------

## PII 检测和编辑
<a name="trust-safety-pii"></a>

您可以使用 Amazon Comprehend 控制台或 API *来检测英语或西班牙语文本文档中的个人身份信息 (*PII)。PII 是对可用于识别个人身份的个人数据的文本引用。PII 示例包括地址、银行账号和电话号码。

您可以检测或编辑文本中的 PII 实体。要检测 PII 实体，您可以使用实时分析或异步批处理任务。要编辑 PII 实体，必须使用异步批处理任务。

 有关更多信息，请参阅 [个人身份信息（PII）](pii.md)。