腾讯AI开放平台的接口调用指南
最近无意发现腾讯AI开放平台上提供了大量好玩的人工智能云服务,而且是完全免费的。只需要用QQ号登录即可。这么好的东西,作为一个程序员,当然要试试了!
从上图可以看出腾讯AI开放平台提供的人工智能服务主要有自然语言处理,计算机视觉和智能语音三大类。我当然是从最简单的自然语言处理开始学习。
这是腾讯AI开放平台的自然语言处理的API说明:
https://ai.qq.com/doc/nlpbase.shtml
其实也就是我们熟悉的Restful API调用:
新建一个PHP文件,把下面这个链接的源代码粘贴进去:
https://github.com/i042416/wechat/blob/master/tencent/newfile.php
然后在Eclipse里Run As->PHP CLI Application,
即可看到下列输出:“腾讯AI开放平台”这个句子,已经被腾讯人工智能成功分词成了:腾讯,AI,开放,平台。
下面就来解释下PHP代码的主要逻辑。
$appkey = 'LHGNH0usjUTRRRSA'; $params = array( 'app_id' => '2107823355', 'time_stamp' => strval(time()), 'nonce_str' => strval(rand()), 'text' => '腾讯AI开放平台', 'sign' => '', );
第一行和第四行分别为我在腾讯AI平台上创建的测试应用的key和ID。第五行是发起请求的时间戳,第六行用rand()生成了一个随机数,第七行为希望使用腾讯AI人工智能分词的输入句子,第8行sign是一个需要动态计算出的签名值。
这个签名值在下列PHP函数调用里计算:
$params['sign'] = getReqSign($params, $appkey);
现在进入getRegSign内部:
首先执行ksort对PHP的key-value数组$params按照key进行升序排序,可以比较上图升序排序前和下图排序后的顺序:
接着把字典里每个key-value键值对用key=value&key=value...这种形式连接起来,注意text值需要用urlencode进行编码。
最后把连接好的字符串用md5函数计算出MD5哈希值,然后用strtoupper转成大写,这就是计算好的签名值。
最后一步就是调用doHttpPost发送请求。
Post请求的fields仍然是key=value&key=value这种类型的键值对,参考下面调试器里的截图:
为方便您的参考,我把调试器里显示的$body记录在下面:
app_id=2107823355&time_stamp=1533960023&nonce_str=12169&text=%CC%DA%D1%B6AI%BF%AA%B7%C5%C6%BD%CC%A8&sign=EA9CAC254A17729B20FAF28757E775DD
最后发送请求,得到结果:
curl_setopt($curl, CURLOPT_HEADER, false); curl_setopt($curl, CURLOPT_NOBODY, false); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, true); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); $response = curl_exec($curl); if ($response === false) { $response = false; break; } $code = curl_getinfo($curl, CURLINFO_HTTP_CODE); if ($code != 200) { $response = false; break; }
要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:
- python3调用腾讯AI开放平台API
- Java实现调用百度AI开放云平台(人脸识别API)
- 百度AI开放平台- API实战调用
- 云极知客开放平台接口调用方法(C#)
- [node.js]开放平台接口调用测试
- 微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo
- 追赶百度阿里,腾讯开放AI平台【智库2861】
- 微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo
- 百度定制化图像开放平台使用--调用识别接口(python3代码)
- 苏宁开放平台 接口调用
- 微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo
- 腾讯AI加速器之API云接口调用签名方法
- 腾讯AI加速器之API云接口-自然语言处理-基础文本分析-接口调用
- 新浪开放平台:解决获取access_token抛 21323 异常,以及接口调用
- 利用腾讯AI开放平台进行情感分析
- 微信开放平台 公众号第三方平台开发 教程四 代公众号调用接口的SDK和demo
- ASP.NET 调用 新浪微博开放平台API 接口的操作
- 短信验证平台接口调用实例
- 高并发系统设计之开放平台API接口调用频率控制系统
- 大数据24小时:新智元发布AI智库资讯互动平台,腾讯推出“生态计划”完成人工智能整体布局