这里将以一个简单的情感分析任务为例,介绍BosonNLP的使用。
我们从 cURL 开始。
打开一个命令行窗口并输入以下命令(不包含 $ ),将 YOUR_API_TOKEN 替换为您注册后获得的API密钥。
$ curl http://api.bosonnlp.com/sentiment/analysis \
-X POST -H "Content-Type: application/json" -H "X-Token: YOUR_API_TOKEN" \
--data "[\"自由思考比畅所欲言更重要。\", \"公司最大的困扰,就是无法测量每个员工的贡献度。\"]"
[[0.9730778829163206, 0.026922117083679472], [0.4668568874082243, 0.5331431125917757]]
以上这段代码使用了玻森的 情感分析 引擎,传入了两段短文本内容进行分析。返回的内容为 json 格式,情感分析结果分别为 非负面 和 负面 概率组成的列表。
在 cURL 命令中加入 -i 参数,会看到类似下面的结果。
$ curl http://api.bosonnlp.com/sentiment/analysis -i \
-X POST -H "Content-Type: application/json" -H "X-Token: YOUR_API_TOKEN"\
--data "[\"自由思考比畅所欲言更重要。\", \"公司最大的困扰,就是无法测量每个员工的贡献度。\"]"
HTTP/1.1 200 OK
Date: Sun, 04 May 2014 08:21:01 GMT
Content-Type: application/json
Content-Length: 6
Connection: keep-alive
X-Rate-Limit-Limit: 100
X-Rate-Limit-Remaining: 97
X-Rate-Limit-Reset: 1399192200
X-Count-Limit-Limit: 500
X-Count-Limit-Remaining: 480
X-Count-Limit-Reset: 1399219200
Server: nginx/1.5.11
X-Request-Id: 0ae45f04-701d-48d8-a84e-d08f18e489ef
[[0.9730778829163206, 0.026922117083679472], [0.4668568874082243, 0.5331431125917757]]
在返回的 HTTP Header 当中,有一些很有趣的内容。和你想的一样,BosonNLP 的返回内容为 JSON 格式,因此 Content-Type 是 application/json 。
X- 开头的是自定义HTTP头,由BosonNLP生成,其中的信息非常有用。例如,
- X-Request-Id 是对每个请求生成的唯一ID,用于在引擎内部跟踪请求。
- X-Count-Limit-Remaining 是当前可用的调用次数。
- X-Count-Limit-Reset 是调用次数重置的时间。当前时间窗口中调用次数用尽时,等待到这里指定的时间才可以恢复使用。
这里 可以看到关于调用限制的详细内容。
如果您使用 Python 语言,建议通过 SDK 的方式使用 BosonNLP。
BosonNLP Python SDK 是由 BOSON 官方支持的开发者工具包,提供了对 REST 接口的简化封装。
最简便的安装方式是通过 pip 。
$ pip install -U bosonnlp
安装成功后,编写以下Python脚本,并保存为 sentiment.py 。在代码中,将 YOUR_API_TOKEN 更换为您的API密钥。
# -*- coding: utf-8 -*-
from __future__ import print_function, unicode_literals
from bosonnlp import BosonNLP
nlp = BosonNLP('YOUR_API_TOKEN')
print(nlp.sentiment('大众深陷断轴门事件'))
运行。
$ python sentiment.py
[[0.28867338699939415, 0.7113266130006058]]
通过SDK调用,对以上内容的情感分析结果为 负面概率较大。
详细的 BosonNLP Python SDK 文档请看 这里 。
如果您是 Node.js 开发者,可以使用由liwenzhu开发和维护的 BosonNLP Node SDK。