资讯专栏INFORMATION COLUMN

腾讯AI开放平台的接口调用指南

fredshare / 1968人阅读

摘要:最近无意发现腾讯开放平台上提供了大量好玩的人工智能云服务,而且是完全免费的。腾讯开放平台第一行和第四行分别为我在腾讯平台上创建的测试应用的和。

最近无意发现腾讯AI开放平台上提供了大量好玩的人工智能云服务,而且是完全免费的。只需要用QQ号登录即可。这么好的东西,作为一个程序员,当然要试试了!

从上图可以看出腾讯AI开放平台提供的人工智能服务主要有自然语言处理,计算机视觉和智能语音三大类。我当然是从最简单的自然语言处理开始学习。

这是腾讯AI开放平台的自然语言处理的API说明:

https://ai.qq.com/doc/nlpbase...

其实也就是我们熟悉的Restful API调用:

新建一个PHP文件,把下面这个链接的源代码粘贴进去:

https://github.com/i042416/we...

然后在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的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/19820.html

相关文章

  • javascript实现腾讯AI开放平台调用API时接口鉴权,生成sign合法签名

    摘要:整个流程图在网上查了很多,但看到有人用前端做腾讯开放平台,生成签名的,所以闲着就自己弄了一下。这样就可以请求腾讯开放平台上的。注意如果使用身份证接口,字段是的的时候,格式问题不需要前面。 整个流程图 showImg(https://segmentfault.com/img/bVbrHpe?w=745&h=924); 在网上查了很多,但看到有人用javascript前端做腾讯AI开放平台...

    crelaber 评论0 收藏0
  • 30行代码消费腾讯人工智能开放平台提供自然语言处理API

    摘要:腾讯人工智能开放平台上提供了很多免费的人工智能,开发人员只需要一个号就可以登录进去使用。我们希望用腾讯的人工智能开放平台里提供的自然语言处理对这个句子进行智能分词。 腾讯人工智能AI开放平台上提供了很多免费的人工智能API,开发人员只需要一个QQ号就可以登录进去使用。 腾讯人工智能AI开放平台的地址:https://ai.qq.com/ showImg(https://segmentf...

    20171112 评论0 收藏0
  • “价值2个亿”AI代码

    摘要:前两天朋友圈里看到一段号称价值一亿的代码可以智能应答,很厉害是不是源码极简版吗其实就是几个字符替换抖了个机灵,也顺便黑了把当下某些言必称的风气。方法一模块是一个生成自动应答的第三方库。那我这两段代码怎么也得值个亿吧,可以直接轮了。 前两天朋友圈里看到一段号称价值一亿的代码: showImg(https://segmentfault.com/img/remote/146000001743...

    Genng 评论0 收藏0

发表评论

0条评论

fredshare

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<