

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

# 分析用户与机器人对话中的言语的情绪
<a name="sentiment"></a>

您可以使用情绪分析来确定用户语句中表达的情绪。通过情绪信息，您可以管理对话流或执行呼叫后分析。例如，如果用户情绪是消极的，您可以创建一个流，将对话交给人工代理。

Amazon Lex 与 Amazon Comprehend 集成以检测用户情绪。来自 Amazon Comprehend 的响应可表示文本的整体情绪是积极、中性、消极还是混杂。响应包含用户语句最可能传达的情绪以及每个情绪类别的分数。分数表示正确检测到情绪的可能性。

 您可以使用控制台或使用 Amazon Lex API 为机器人启用情绪分析。您可以对机器人的别名启用情绪分析。在 Amazon Lex 控制台上：

1. 选择别名。

1. 在**详细信息**部分中，选择**编辑**。

1. 选择**启用情绪分析**以开启或关闭情绪分析。

1. 选择 **Confirm（确认）**以保存所做的更改。

如果您使用的是 API，请将 `detectSentiment` 字段设置为 `true`，然后调用 [CreateBotAlias](https://docs.aws.amazon.com/lexv2/latest/APIReference/API_CreateBotAlias.html) 操作。

启用情绪分析后，来自[RecognizeText](https://docs.aws.amazon.com/lexv2/latest/APIReference/API_runtime_RecognizeText.html)和[RecognizeUtterance](https://docs.aws.amazon.com/lexv2/latest/APIReference/API_runtime_RecognizeUtterance.html)操作的响应将返回`interpretations`结构`sentimentResponse`中调用的字段以及其他元数据。`sentimentResponse` 字段具有 `sentiment` 和 `sentimentScore` 两个字段，包含情绪分析的结果。如果您使用的是 Lambda 函数，则 `sentimentResponse` 字段将包含在发送到函数的事件数据中。

以下是 `sentimentResponse` 字段作为 `RecognizeText` 或 `RecognizeUtterance` 响应的一部分返回的示例。

```
sentimentResponse {
    "sentimentScore": {
        "mixed": 0.030585512690246105,
        "positive": 0.94992071056365967,
        "neutral": 0.0141543131828308,
        "negative": 0.00893945890665054
    },
    "sentiment": "POSITIVE"
}
```

Amazon Lex 代表您调用 Amazon Comprehend，以确定机器人处理的每个言语中的情绪。启用情绪分析即表示您同意 Amazon Comprehend 的服务条款和协议。有关 Amazon Comprehend 定价的更多信息，请参阅 [Amazon Comprehend 定价](https://aws.amazon.com/comprehend/pricing/)。

有关 Amazon Comprehend 情绪分析工作原理的更多信息，请参阅**《Amazon Comprehend 开发人员指南》中的[确定情绪](https://docs.aws.amazon.com/comprehend/latest/dg/how-sentiment.html)。