[PHP]A3RTのTalk APIを利用してチャットボットを作ってみた
docomo Developer supportの自然対話(雑談対話)APIが2019年6月末で終了しました。結局自然対話(雑談対話)APIも1年しか提供されなかったですね。
今後はRepl-AIに移行して欲しい様なんですが、使い勝手がどうしても相性が悪いので、別のAPIを探してみました。
リクルートがAPIを出していた
リクルートテクノロジーがA3RT(アート)という名称(略称)で人工知能・機械学習のAPIを公開してました。A3RTの各種APIはメールアドレスを登録するだけAPIが発行され、無償で利用が出来ます。
今回はA3RTのTalk APIを利用し、PHPでチャットボットを作ります。
Talk APIを利用し、PHPで作ってみた
基本的には自然対話(雑談対話)APIで利用していたソースを少し変更しただけです。
<?php class aireq{ var $apikey = "********************"; // 取得したAPI KEY function ai_msg($text){ $url = 'https://api.a3rt.recruit-tech.co.jp/talk/v1/smalltalk'; $request = array( 'apikey' => $this->apikey, 'query' => $text ); $headers = array( 'Content-Type: application/json; charset=UTF-8', ); $options = array('http' => array( 'method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded;charset=UTF-8', 'content' => http_build_query($request, '', '&', PHP_QUERY_RFC3986) )); $context = stream_context_create($options); $response = file_get_contents($url, false, $context); $res = json_decode($response); return $res->results[0]->reply; } } $aireq = new aireq(); $text = urldecode("おはよう"); // 発言 $msg["airespo"] = $aireq->ai_msg($text); $msg["txt"] = $text; $json = json_encode($msg); header("Content-Type: text/javascript charset=utf-8"); print $json; ?>
以上となります。
ディスカッション
コメント一覧
まだ、コメントがありません