电销场景用户意图识别

更新时间: 2023-05-29 10:53:00

用户意图识别服务适用于电销人工外呼/智能外呼场景,识别用户的意图(反应)。

说明

本服务由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);
Map<String, Object> input = new HashMap();
input.put("b_say","请问您最近考虑买房吗");
input.put("c_say","不需要");
input.put("domain","common");
Map<String, Object> map = new HashMap<>();
map.put("input", input);
RunPreTrainServiceRequest request = new RunPreTrainServiceRequest();
request.setServiceName("NLP-Key-Intent");
request.setPredictContent(JSON.toJSONString(map));
RunPreTrainServiceResponse response = client.getAcsResponse(request);
System.out.println(response.getPredictResult());

Python代码示例

# 安装依赖
pip install aliyun-python-sdk-core
pip install aliyun-python-sdk-nlp-automl
# -*- 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": {"b_say": "请问您最近考虑买房吗", "c_say": "不需要", "domain": "common"}}
# Initialize a request and set parameters
request = RunPreTrainServiceRequest.RunPreTrainServiceRequest()
request.set_ServiceName('NLP-Key-Intent')
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": {
    "b_say": "请问您最近考虑买房吗",
    "c_say": "不需要",
    "domain": "common"
  }
}

PredictResult内容示例

{
  "code": 1000,
  "data": {
    "cost": "3.622ms",
    "intent": {
      "intent": "否定"
    }
  },
  "message": "OK",
  "tracerID": "2020-09-17 15:41:28.461691"
}

入参说明

参数

说明

b_say

可选参数,客服说话内容

c_say

必填参数,用户说话内容

domain

可选参数,默认为通用领域common

出参说明

参数

说明

intent

识别到的意图,当前支持意图【肯定、否定、拒绝、是谁、在忙、没听清、稍等、其他】

意图说明

意图名称

说明

肯定

用户表示肯定、同意

否定

用户表示否定

拒绝

用户表示拒绝

是谁

用户询问是谁

在忙

用户表示在忙

没听清

用户表示没有听清楚

稍等

用户表示稍等

其他

不在以上意图的其他所有意图

阿里云首页 自然语言处理 相关技术圈