

近期有小伙伴需要使用NLP情感识别功能,用于判断电商用户的评论内容是积极还是消极的。平时使用量不大,他想用大厂的NLP,感觉会比较靠谱比较稳。针对小伙伴的需求,查了一下网络,发现百度智慧云有这款产品,测试了下,感觉挺不错的,特别是免费额度挺多,适合很多小企业直接免费使用,那就推荐下吧!
https://console.bce.baidu.com/ai/?_=1652794810218&fromai=1#/ai/nlp/overview/index

首先,需要注册并登录百度智慧云平台,完成个人实名认证后,可以领取买免费尝鲜资源包,个人认证可以领取50万次/年的免费情感趋势识别资源包,企业认证可以获得更多免费资源,详情如下。


链接地址: https://ai.baidu.com/ai-doc/NLP/qk6z52dvn


(* 勾选自己需要的资源包后点击领取,也可以领取全部免费资源包)

填写应用名称,勾选接口为”情感倾向分析“,选择“公司“或”个人“,填写应用描述,点击”立即创建“。


创建完成,点击”查看应用详情“。

获取创建好应用的API Key和Secret Key,效果如下

API Key:1DrAbz************U4t10
Secret Key:Oq2hswHi****************WJwpAYqx
注:小伙伴只需要“好评”,“中性”和“差评”三个结论,所以我对代码做了简单的判断逻辑。代码可以参考百度云官方提供的文档:
import requests
import json
def get_motion(API_KEY, SECRET_KEY,text):
url = "https://aip.baidubce.com/oauth/2.0/token"
params = {"grant_type": "client_credentials", "client_id": API_KEY, "client_secret": SECRET_KEY}
access_token = str(requests.post(url, params=params).json().get("access_token"))
url = "https://aip.baidubce.com/rpc/2.0/nlp/v1/sentiment_classify?charset=&access_token=" + access_token
payload = json.dumps({
"text": text
})
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(json.loads(response.text))
num = json.loads(response.text)["items"][0]["positive_prob"]
if num >= 0.6:
return "好评"
elif num < 0.4:
return "差评"
else:
return "中性"
直接把上面代码喂给魔法指令,写入刚才获取的API KEY和Sceret Key和识别内容,生成效果如下:
