2017年から人工知能を学ぶ人必見!簡単にAIボットを作れる「Node-RED」とは? | SiTest (サイテスト) ブログ

メニューボタン閉じるボタン

2017年から人工知能を学ぶ人必見!簡単にAIボットを作れる「Node-RED」とは?

近年、「AlphaGo」が囲碁チャンピオンを打ち破ったり、 自動運転車が開発されたり、 アマゾンがレジのない店舗を開発したりと人工知能が著しく成長してきているのを感じていると思います。

今回はそんな人工知能においていかれないよう、
AIボットを体験する前に、その環境を作ってみようという試みです。

エンジニア向けの記事として書いておりますが、
コーディングなど必要のない内容となっておりますので、
リラックスして読み進めていっていください。

Node-RED とは?

IBM英国Hursley研究所のメンバーを中心に開発されている
ハードウェアデバイス/APIおよびオンラインサービスを接続するためのツールです。

ざっくり説明すると、
機能毎に用意されたノードをマウスで繋ぐ操作で、簡単にアプリケーションを作成できる開発環境です。

Node-RED自体はもともとIoT向けに開発されたオープンソースソフトウェアでしたが
現在は、ウェブアプリケーション開発等、幅広い用途で利用できます。

また、他の大きな特長としては、Node.jsが動く環境であればどこでも動かすことができます。

Node-RED を触ってみよう

それでは、実際に触っていきましょう。

Node-RED は Node.jsのパッケージマネージャーのnpmで用意されておりますので、
インストールして開発環境を作成していきましょう。

Node.js の入っている環境で、下記のコマンドをたたいてください。

sudo npm install -g node-red

インストールされたと思うので、そのまま node-red をたたいてください。

node-red

環境が立ち上がっていくと思うので、下記のURLにアクセスしてみてください。

http://127.0.0.1:1880/

これで環境は完成しましたね。

下記のような画面が立ち上がると思います。

node-red_1

左側に赤枠で囲まれているのがノードです。
このノード同士を繋ぎ、各アプリケーションを作成していきます。

それでは各ノードを繋いで行きます。

基本的にはデータの流れをつくるため、
InputノードとOutputノードの間に処理を置いていく形となります。

今回の例はHTTPを使用します。

① ノードからドラッグ&ドロップで各ノードを配置します。

node-red_2

② 次にhttpノードをダブルクリックしてURLのフォームに「/hoge」と記入します。

node-brew_3

③ 各ノードをドラッグ&ドロップでつなぎます。

node-brew_4

④ そのままデプロイ

http://127.0.0.1:1880/hoge にアクセスしてみると、エンドポイントが作られているのがわかります

⑥ 試しにパラメータを与えてみましょう。http://127.0.0.1:1880/hoge?fuga=123

⑦ パラメータがJSON形式に変換されていますね。

このようにアプリケーションをノードをつなぐだけで作ることができます。

同じ要領でタイトルの通り、簡単にAIボットも作成することができます。
詳しくは下記の記事を参考に作ってみてください。

http://qiita.com/zuhito/items/0b85707937be98b0b716

まとめ

いかがでしたでしょうか?

今回は、環境の立ち上げ方と使い方だけをご紹介しましたが、
Microsoft Cognitive ServicesのComputer Vision APIなど
人工知能に関したノードも多いので、使い方次第で簡単にAIボットを作成できます。

Node-REDで人工知能アプリケーションを体験して、人工知能に強くなっていきましょう。