GRANVALLEY

ブログBlog

node.jsを使いオウム返しをするエコーボットを作る

オウム返しをする「エコーボット(エコーbot)」

今やサポートやコンタクトセンターの問い合わせに重要な役割を担っている「チャットボット」。チャット上に人間同士の会話と同じように、人工知能を組み込んだコンピュータが人間に代わって対話する仕組みを指します。

今回は、そのチャットボットの基礎的となる、送信内容をそのまま返す一番シンプルなチャットボット「エコーボット」を、node.jsを使って開発してみましょう。

実行環境

  • ・Windows10 64bit
  • ・Botframework Emulator 4.9.0
  • ・Microsoft Visual Studio 2017 15.9.22
  • ・Python 3.5.2
  • ・node 12.18.0
  • ・npm 6.14.4
  • ・Bot Framework v4

node.js、npmのインストール

インストーラーのダウンロード

こちらから環境に応じたインストーラーをダウンロードします。

nodeインストーラーをダウンロード

インストーラーの実行

ダウンロードしたインストーラーを実行します。

インストーラーの実行1

インストーラーの実行2

インストーラーの実行3

インストールの確認

インストールが完了したら、コマンドプロンプトから確認を行います。


> node --version
> npm --version

バージョンが表示されたならOKです!

node.js実行に必要なパッケージのインストール

Windows環境でnode.jsを実行するにはC/C++コンパイラおよびPythonが必要です。

npmを使ってwindows-build-toolsをインストールすると、Visual Studio、C++ビルドツール、(Pythonが未インストールの場合は)Python2.7をまとめてインストールしてくれます!

Python等を既にインストール済みの場合でも、競合することは無いので安心です。


> npm install --global windows-build-tools

Botframework Emulatorのインストール

Botframework Emulatorは、ボット開発者がBot Framework SDKを使用して構築されたボットをテストおよびデバッグできるようにするデスクトップアプリケーションです。
作ったチャットボットを簡単に実行できるので、とても便利です!

インストーラーのダウンロード

こちらから環境に応じたインストーラーをダウンロードします。

Botframework Emulatorインストーラーをダウンロード

インストーラーの実行

ダウンロードしたインストーラーを実行します。

Botframework Emulatorインストーラーの実行

インストールの確認

インストールされたアプリケーションを起動できればOKです!

Botframework Emulatorの確認

エコーボットの作成と実行

generator-botbuilderのインストール

Bot Framework v4用のYeomanジェネレーターです。
generator-botbuilderを使うと、Bot Framework v4を利用できるボットテンプレート(チャットボットプログラムのテンプレート)を作成してくれるので、1から自分で組む必要が無くとても便利です。


> npm install -g yo
> npm install -g generator-botbuilder

インストールの確認はヘルプコマンドを実行します。


> yo botbuilder --help

情報が表示されたならOKです!

ボットテンプレートの作成

generator-botbuilderを使ってエコーボットのボットテンプレートを作成します。
まずはコマンドプロンプトからボット関連のファイルを格納するためのフォルダを作成します。
今回はCドライブ直下に「MyBot」というフォルダを作りました。
その後、作成したフォルダをカレントディレクトリにします。


> mkdir C:\MyBot
> cd C:\MyBot

そしていよいよボットテンプレートの作成です!
botbuilderを呼び出します。


> yo botbuilder

続いてどのようなボットテンプレートを作成するかを指定します。


? What's the name of your bot? echoBot                     #ボット名
? What will your bot do? just echo                         #ボットの説明
? What programming language do you want to use? JavaScript #使用言語
? Which template would you like to start with? Echo Bot    #テンプレートの選択
? Looking good. Shall I do ahead and create your new bot? Yes #実行

実行すると、カレントディレクトリに指定したボット名と同じ名前のフォルダが作成されます。
これで、エコーボットのボットテンプレートが作成できました!

エコーボットの実行

作成したエコーボットをBotframework Emulatorで実行します。
まず、コマンドプロンプトから作成したボットテンプレートのフォルダに移動し、「npm start」を実行します。


> npm start
・
・
・
restify listening to http://[::]3978
Get Bot Framework Emulator: https://aka.ms/botframework-emulator
To talk to your bot, open the emyulator select "Open Bot"

上記のようなメッセージが表示されたならOKです!
続いてBotframework Emulatorを起動し、「Open Bot」をクリックします。

エコーボット実行1

すると、実行するボットのURLを要求されるので、

「http://localhost:3978/api/messages」

と入力し、「Connect」をクリックします。
(このURLはgenerator-botbuilderの公式サイトにも載っています)

エコーボット実行2

これで、作成したエコーボットを実行することができるようになりました!

まとめ

generate-botbuilderのボットテンプレートを使い、簡単にエコーボットを作ることができました。また、自動生成されたボットテンプレートに手を加えることで、新しいチャットボットに作り変えることもできます。

今回は、チャットボットの基礎となるエコーボットを作ってみました。
これを機会にさまざまなチャットボットのサンプルプログラムを利用して、実践してみることをお勧めします。


本記事は、弊社先端技術開発グループが運営している「note」内の「AIグループ@グランバレイ」の記事を一部修正を加え転載しております。
https://note.com/gvaiblog/n/nbbcdc54a6678

※ その他の会社名、製品名は各社の登録商標または商標です。
※ 記事の内容は記事公開時点での情報です。閲覧頂いた時点では異なる可能性がございます。