【NLP】百度AI平台自然语言处理API调用(情感分析案例)

版权声明:本文为博主原创文章,转载请在文章开头注明出处,作者:ChenVast;原文链接: https://blog.csdn.net/ChenVast/article/details/82682750

首先先注册登录百度AI平台,自然语言处理是免费的,有5 QPS,够用了,不够用可以申请增加。

我申请增加至10 QPS,通过得很快。

相关配置准备

找到百度AI平台的NLP入口:

看到自然语言处理

点击进入

进入之后跳转到自然语言处理产品页

点击创建应用,应用创建后会有AppID、API Key、Secret Key这些参数。后续使用会利用到这些参数!

使用百度NLP的API需要获取Access Token,这个token有效期一个月。

获取Access Token需要使用之前得到的参数API Key和Secret Key。

这是百度官方文档介绍的一些用法:https://ai.baidu.com/docs#/NLP-API/top

但是没有Python3的,以下代码是Python3获取Access Token。

def get_access_token():
    """
    获取百度AI平台的Access Token
    """
    host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=[API Key]&client_secret=[Secret Key]'
    request = urllib.request.Request(host)
    request.add_header('Content-Type', 'application/json; charset=UTF-8')
    response = urllib.request.urlopen(request)
    content = response.read().decode('utf-8')
    rdata = json.loads(content)
    return rdata['access_token']

返回Access Token字符串。

开始使用

开始使用需要的NLP API,我这里使用情感分析API。需要修改Access Token!

def sentiment_classify(text):
    """
    获取文本的感情偏向(消极 or 积极 or 中立)
    参数:
    text:str 本文
    """
    raw = {"text":"内容"}
    raw['text'] = text
    data = json.dumps(raw).encode('utf-8')
    AT = "Access Token"
    host = "https://aip.baidubce.com/rpc/2.0/nlp/v1/sentiment_classify?charset=UTF-8&access_token="+AT
    request = urllib.request.Request(url=host,data=data)
    request.add_header('Content-Type', 'application/json')
    response = urllib.request.urlopen(request)
    content = response.read().decode('utf-8')
    rdata = json.loads(content)
    return rdata

返回的值为:

{'log_id': 5377788657827174316,
     'text': '苹果是一家伟大的公司',
     'items': [{'positive_prob': 0.727802,
       'confidence': 0.395115,
       'negative_prob': 0.272198,
       'sentiment': 2}]}

解析:

参数 说明 描述
log_id uint64 请求唯一标识码
sentiment int 表示情感极性分类结果,0:负向,1:中性,2:正向
confidence float 表示分类的置信度,取值范围[0,1]
positive_prob float 表示属于积极类别的概率 ,取值范围[0,1]
negative_prob float 表示属于消极类别的概率,取值范围[0,1]

实例:

完成

结论

百度的NLP API还是挺好用的,但是不要太依赖于百度AI,这东西估计后期会收钱的,在NLP结合的产品探索阶段可以使用百度的NLP API 中期就需要自己研发了,自己的技术才是可靠的。

不依赖于他人,坚持研发,才是科技企业发展之道。

猜你喜欢

转载自blog.csdn.net/ChenVast/article/details/82682750