文档

情绪识别服务

更新时间:

情绪识别服务适用于电销、在线接待等应用场景,识别客户或客服的情绪。

说明

本服务由NLP自学习平台提供,直接调用API即可使用。

服务开通与资源包购买

使用前,请确认是否已经开通服务,开通后可购买资源包。

服务调用与调试

模型调用文档参考:模型调用

SDK示例文档参考:SDK示例

调试

您可以在OpenAPI开发者门户中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI开发者门户可以自动生成SDK代码示例。

通过环境变量配置访问凭证(AKSK)

  1. 说明:

    1. 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。

    2. 强烈建议不要把AccessKey和AccessKeySecret保存到代码里,会存在密钥泄漏风险,在此提供通过配置环境变量的方式来保存和访问aksk

  2. Linux和macOS系统配置方法

    export NLP_AK_ENV=<access_key_id>
    export NLP_SK_ENV=<access_key_secret>

    其中<access_key_id>替换为已准备好的AccessKey ID,<access_key_secret>替换为AccessKey Secret,AccessKey ID和AccessKey Secret的获取方式见步骤二:获取账号的AccessKey

  3. Windows系统配置方法

    1. 新建环境变量文件,添加环境变量NLP_AK_ENVNLP_SK_ENV,并写入已准备好的AccessKey ID和AccessKey Secret。

    2. 重启Windows系统。

Java代码示例

/**
 * 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。
 * 此处以把AccessKey和AccessKeySecret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。
 * 强烈建议不要把AccessKey和AccessKeySecret保存到代码里,会存在密钥泄漏风险
 */
String accessKeyId = System.getenv("NLP_AK_ENV");
String accessKeySecret = System.getenv("NLP_SK_ENV");
DefaultProfile defaultProfile = DefaultProfile.getProfile("cn-hangzhou",accessKeyId,accessKeySecret);
IAcsClient client = new DefaultAcsClient(defaultProfile);
String content = "{\"input\": {\"content\":\"图形验证码输入老是错误\" } }";
RunPreTrainServiceRequest request = new RunPreTrainServiceRequest();
request.setServiceName("DeepEmotionBert");
request.setPredictContent(content);
RunPreTrainServiceResponse response = client.getAcsResponse(request);
System.out.println(response.getPredictResult());

Python代码示例

# 安装依赖
pip install aliyun-python-sdk-core
pip install aliyun-python-sdk-nlp-automl

/**

* 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。

* 此处以把AccessKey和AccessKeySecret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。

* 强烈建议不要把AccessKey和AccessKeySecret保存到代码里,会存在密钥泄漏风险

 *//**

* 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。

* 此处以把AccessKey和AccessKeySecret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。

* 强烈建议不要把AccessKey和AccessKeySecret保存到代码里,会存在密钥泄漏风险

 */# -*- coding: utf8 -*-
import json
import os

from aliyunsdkcore.client import AcsClient
from aliyunsdkcore.acs_exception.exceptions import ClientException
from aliyunsdkcore.acs_exception.exceptions import ServerException
from aliyunsdknlp_automl.request.v20191111 import RunPreTrainServiceRequest

/**
 * 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。
 * 此处以把AccessKey和AccessKeySecret保存在环境变量为例说明。您也可以根据业务需要,保存到配置文件里。
 * 强烈建议不要把AccessKey和AccessKeySecret保存到代码里,会存在密钥泄漏风险
 */
access_key_id = os.environ['NLP_AK_ENV']
access_key_secret = os.environ['NLP_SK_ENV']

# Initialize AcsClient instance
client = AcsClient(
  access_key_id,
  access_key_secret,
  "cn-hangzhou"
);
content ={"input":{"content":"图形验证码输入老是错误"}}
# Initialize a request and set parameters
request = RunPreTrainServiceRequest.RunPreTrainServiceRequest()
request.set_ServiceName('DeepEmotionBert')
request.set_PredictContent(json.dumps(content))
# Print response
response = client.do_action_with_exception(request)
resp_obj = json.loads(response)
predict_result = json.loads(resp_obj['PredictResult'])
print(predict_result['result'])

PredictContent内容示例

{
  "input": {
    "content": "图形验证码输入老是错误"
  }
}

PredictResult内容示例

{
  "output": {
    "sentiment": [
      {
        "score": 0.7712000012397766,
        "key": "抱怨"
      },
      {
        "score": 0.014100000262260437,
        "key": "愤怒"
      },
      {
        "score": 0.014000000432133675,
        "key": "厌恶"
      },
      {
        "score": 0.005499999970197678,
        "key": "悲伤"
      },
      {
        "score": 0.004100000020116568,
        "key": "投诉"
      },
      {
        "score": 0.0008999999845400453,
        "key": "惊讶"
      },
      {
        "score": 0.0007999999797903001,
        "key": "恐惧"
      },
      {
        "score": 0.00039999998989515007,
        "key": "喜好"
      },
      {
        "score": 0.00019999999494757503,
        "key": "高兴"
      },
      {
        "score": 0.00009999999747378752,
        "key": "认可"
      },
      {
        "score": 0.0,
        "key": "感谢"
      }
    ],
    "content": "图形验证码输入老是错误"
  },
  "code": 0,
  "cost": 2.271,
  "message": "SUCCESS"
}

服务说明

说明

服务名称(ServiceName)当前支持高性能版和高精度版两个版本,可以按需选择

服务名称(ServiceName)

说明

DeepEmotion

高性能版,速度较快,精度略低

DeepEmotionBert

高精度版,精度较高,速度略慢

入参说明

参数

说明

content

待检测的文本样例

role

可选参数,待检测的角色类型,当前支持[客服,客户]两种类型

出参说明

支持文本同时命中多种情绪的情况。

参数

说明

code

状态码,0表示正常;1002表示参数错误(通常需检查输入是否符合JSON格式);10016表示请求超过长度限制(1000字),减小请求长度;10015表示缺少必选参数

content

来自入参,检测的文本样例,长度不超过1000字

sentiment

识别到的情绪列表,当前包含8种常规情绪(高兴、喜好、悲伤、愤怒、厌恶、惊讶、恐惧,认可)和3种业务场景常用情绪(感谢、抱怨、投诉)

key

情绪名称

score

情绪概率,0-1之间,大于0.5可认为命中该情绪类型。

  • 本页导读 (0)
文档反馈