基于Universal Information Extraction (UIE) 技术的商品评价解析服务,可支持用户自定义标签。
本服务由NLP自学习平台提供,直接调用API即可使用。
服务开通与资源包购买
使用前,请确认是否已经开通服务,开通后可购买资源包。
服务调用与调试
模型调用文档参考:模型调用
SDK示例文档参考:SDK示例
调试
您可以在OpenAPI开发者门户中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI开发者门户可以自动生成SDK代码示例。
通过环境变量配置访问凭证(AKSK)
说明:
阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。
强烈建议不要把AccessKey和AccessKeySecret保存到代码里,会存在密钥泄漏风险,在此提供通过配置环境变量的方式来保存和访问aksk
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
Windows系统配置方法
新建环境变量文件,添加环境变量
NLP_AK_ENV
和NLP_SK_ENV
,并写入已准备好的AccessKey ID和AccessKey Secret。重启Windows系统。
接口名称
UIE-ABSA-Commerce
Python代码示例
# 安装依赖
pip install aliyun-python-sdk-core
pip install aliyun-python-sdk-nlp-automl
# -*- coding: utf8 -*-
import json
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
# Initialize AcsClient instance
client = AcsClient(
"<your-access-id-key>",
"<your-access-id-secret>",
"cn-hangzhou"
);
query = {"content": "组装超级简单,按照说明书鼓捣一会儿就安上了,然后出去骑了一圈,很不错。", "labels": ["质量", "轮子", "重量", "颜色", "骑行体验", "安装", "整体"]}
# Initialize a request and set parameters
request = RunPreTrainServiceRequest.RunPreTrainServiceRequest()
request.set_ServiceName('UIE-ABSA-Commerce')
request.set_PredictContent(json.dumps(query))
# Print response
response = client.do_action_with_exception(request)
resp_obj = json.loads(response)
predict_result = json.loads(resp_obj['PredictResult'])
print(json.dumps(predict_result['data']))
PredictContent内容示例
PredictContent参数为JSON字符串传入,JSON字符串包含内容参考下面举例。
{
"content": "组装超级简单,按照说明书鼓捣一会儿就安上了,然后出去骑了一圈,很不错。",
"labels": ["质量", "轮子", "重量", "颜色", "骑行体验", "安装", "整体"]
}
入参说明
参数 | 说明 |
content | 需要预测的文本内容,最长支持384字 |
labels | 需要抽取的属性词列表 |
PredictResult内容示例
PredictResult是JSON字符串,需要反序列化之后进行解析,具体结构如下示例。
{
'code': 1000,
'data': {
'cost': '1.374s',
'aspectItem': [{
'aspectPolarity': '正',
'terms': [{
'aspectTerm': '组装',
'opinionTerm': '超级简单'
}],
'opinionProb': '1.0',
'aspectCategory': '安装'
}]
},
'message': 'SUCCESS',
'tracerID': 'oxyimTcf6pZGnzPbDF'
}
出参说明
字段 | 说明 |
cost | 服务耗时 |
aspectPolarity | 属性片段极性(正、中、负) |
aspectTerm | 属性词 |
opinionTerm | 情感词 |
opinionProb | 属性词为该情感极性的概率 |
aspectCategory | 属性类别 |