对聊天数据进行情感分析

情感分析功能可在人工客服与最终用户之间的对话过程中分析消息,以确定情绪意图。您可以在创建或修改对话配置文件时启用此功能。如果您修改的是现有对话配置文件,则只有在对话配置文件更新后,您才能在对话中看到相应效果。您还可以选择在使用 Agent Assist 控制台创建对话配置文件时启用情感分析。

  1. MessageAnalysisConfig 中将 enableSentimentAnalysis 设置为 true
  2. 使用启用此功能的 ConversationProfile 发送 createConversation 请求。
  3. 系统会在 AnalyzeContentResponse.message.sentimentAnalysis 中返回情感结果。
  4. 如果您已在 Agent Assist 中启用 Cloud Pub/Sub 集成,则情绪分析结果也会显示在 NewMessagePayload 中。

解读情感分析结果

情感由 scoremagnitude 值表示,这些指标会在响应中返回。情感的 score 介于 -1.0(消极)和 1.0(积极)之间,对应于文本的整体情绪倾向。magnitude 值表示给定文本中情绪(包括积极和消极)的整体强度,介于 0.0+inf 之间。如需详细了解如何解读这些指标,请参阅 Natural Language 情感分析文档

以下是 Natural Language API 演示功能提供的两个情感分析输出示例。 如需使用演示版测试对示例文本的情感分析,请执行以下操作:将文本粘贴到文本框中,点击 ANALYZE,然后选择 Sentiment 标签页。

示例 1

文本:“我不开心。”

返回的 score 为 -0.9,magnitude 为 0.9。这表示负面情绪倾向非常强烈,但情绪强度较低到中等。

示例 2

文本:“Google Cloud 是 Google 提供的云服务。”

scoremagnitude 的返回值均为 0,这意味着文本未显示任何情绪或情感强度。

示例 3

Text: "I'm extremely angry and disappointed for the result. 另一方面,我很高兴看到我们的团队非常努力,并展现出专业的态度。”

与示例 1 不同,此文本包含两个句子。输出结果包括整个文档的指标以及每个句子的指标。 整个文档值表示两个句子的合并指标,而不是其中一个句子的指标。每个单独的句子也会列出,并附带相应的 magnitudescore 值。

返回的整个文档的情感 score 为 0,而 magnitude 为 1.6。在包含多个句子的文档中,score 为 0 可能意味着文档的情感倾向确实是中性的,也可能意味着文本中不同位置的积极和消极情感倾向相互抵消。情绪完全中性的文本的 magnitude 也将等于或接近 0。在本例中,相对较高的 magnitude(1.6)意味着这两个句子的情感并非真正中立,而是混合的(例如,文本中不同位置的情感分别为愤怒、失望和快乐)。查看每个句子的 score 值,一个为强正向 (0.8),另一个为强负向 (-0.8),这导致整个文档的 score 平均值为 0。