# 配置信息
例如:
APPID: xxxxxxxxxxxxxxx
TOKEN: xxxxxxxxxxxxxxx
EncodingAESKey: xxxxxxxxxxxxxxx
# 接口信息
对文本进行情感分析,判断情感倾向,支持两种粗细粒度的标签:
- 3类别: 正面,负面,无情感
- 6类别: 喜欢,高兴,厌恶,悲伤,愤怒,无情感
# 情感分析接口(只签名不加密):
https://chatbot.weixin.qq.com/openapi/nlp/sentiment/TOKEN
接口类型:
POST请求
# 参数说明:
字段 | 类型 | 默认值 | 描述 |
---|---|---|---|
query | string | 使用JWT签名后的数据 |
query签名说明:
字段 | 类型 | 默认值 | 描述 |
---|---|---|---|
uid | string | 自动生成的随机标识 | 用户标识的唯一ID,比如:openid |
data | Object | {q: "输入文本", mode(可选): "3class"(默认) 或 "6class"} |
使用JSON Web Token的 HS256
算法对参数进行encode, 放入到query参数中
比如参数为
{
uid: "xjlsj33lasfaf", //能标识用户的唯一用户id,可以是openid
data: {
q: "恭喜小张脱单成功",
mode: "3class"
}
}
使用 jwt 和 EncodingAESKey
对数据对象进行encode得到加密字符串
const signedData = jwths256.encode(EncodingAESKey, {
uid: "xjlsj33lasfaf", //能标识用户的唯一用户id,可以是openid
data: {
q: "恭喜小张脱单成功",
mode: "3class"
}
}
)
# 调用开放平台语义接口
curl -XPOST -d "query=signedData" https://chatbot.weixin.qq.com/openapi/nlp/sentiment/TOKEN
Tips: 在 jsonwebtoken.io 网站上可以参考如下步骤手动生成signedData
# 返回结果
# 3类别返回结果
{
"error": null,
"result": [
[
"正面",
0.9593541622161865
],
[
"无情感",
0.0400625541806221
],
[
"负面",
0.000583284127060324
]
]
}
3类别情感标签说明:
类别 | 说明 |
---|---|
正面 | 表达积极正向的情感 |
负面 | 表达消极负向的情感 |
无情感 | 无明显的情感倾向 |
# 6类别返回结果
6类别情感标签说明:
类别 | 说明 |
---|---|
喜欢 | 表达喜好的正向情感 |
高兴 | 表达高兴、开心的正向情感 |
厌恶 | 表达不喜欢、厌恶的负向情感 |
悲伤 | 表达不开心、悲伤的负向情感 |
愤怒 | 表达生气、愤怒的负向情感 |
无情感 | 无明显的情感倾向 |
{
"error": null,
"result": [
[
"高兴",
0.9011998772621155
],
[
"无情感",
0.08493703603744507
],
[
"喜欢",
0.011011340655386448
],
[
"悲伤",
0.0015742022078484297
],
[
"厌恶",
0.0006485909689217806
],
[
"愤怒",
0.000628964276984334
]
]
}