メニュー

チャットボットの開発:チャットボットの基礎知識3

チャットボットの基礎知識

更新日:2019年12月19日(初回投稿)
著者:ひぐぺん工房 松浦 健一郎、司 ゆき

前回は、ユーザーおよびチャットボットの発言が、相手方に伝わるまでの仕組みを解説しました。今回は、チャットボットのプログラムについて説明します。チャットボットのプログラムが行う処理の流れや、開発に使うプログラミング言語、そしてチャットボットの開発を支援する開発環境について解説します。

今すぐ、技術資料をダウンロードする!(ログイン)

1. チャットボットのプログラム

チャットボットのプログラムが行う基本的な処理は、ユーザーの発言を受信し、その発言に対する応答を送信することです。チャットボットによって違いはありますが、大まかな処理の流れは多くのチャットボットで共通しています。図1にチャットボットのプログラムの処理の流れを示します。

図1:チャットボットのプログラム

図1:チャットボットのプログラム

最初に行うのは、入力したユーザーの発言を解析する処理です。多くのチャットボットは、発言のテキストにキーワード(特定の言葉)が含まれているかどうかを調べて、そのキーワードに対応する動作をします。例えば、テキストに「おはよう」という言葉が含まれていたら「おはようございます!」と応答し、「天気」という言葉が含まれていたら天気予報を応答する、といった要領です。自然言語処理と呼ばれる、人間が日常的に使っている言語をコンピュータに解析させる技術を利用して、より複雑な解析を行うチャットボットもあります。

次に行うのは、応答を作成するための情報を取得する処理です。この処理は必要に応じて行います。例えば「おはようございます!」のような単純な応答をするだけならば、この処理は不要です。一方で、例えば天気予報や商品価格などを提供するには、データベースやWeb API(ウェブエーピーアイ)などを使って、これらの情報を取得する必要があります。Web APIは、インターネット経由でいろいろな情報を取得したり操作したりするための仕組みで、近年広く活用されています。Web APIを活用すると、さまざまな情報を扱う高機能なチャットボットを、比較的簡単に開発することが可能です。

最後に行うのは、ユーザーに対して出力する応答を作成する処理です。一番簡単なのは「おはようございます!」のような、あらかじめ決められたテキストを応答する方法です。次に簡単なのは「明日の○○の天気は□□です。」のような定型文を用意しておき、取得した情報を○○や□□の部分に埋め込んで、応答を作成する方法です。このほかに、記録しておいたユーザーの過去の発言を流用して応答を作る方法などもあります。

ユーザーの発言やチャットボットの応答は、前回紹介したJSON(ジェイソン)という形式で表現することが一般的です。例えばLINE(ライン)の場合、「Hello!」というユーザーの発言は次のようなJSONデータ(JSON形式のデータ)としてチャットボットに届きます(図2)。このJSONデータは、ユーザーID、テキスト、リプライトークン、タイムスタンプなどを含んでいます。ここでは「…」のように値を省略しましたが、実際には「123456789…」のような数値が記入されています。

図2:JSONデータの例

図2:JSONデータの例

2. チャットボットのプログラミング言語

プログラミング言語は、プログラムを開発するために使う人工言語です。プログラミング言語には非常に多くの種類があり、それぞれ得意とする分野が違います。

続きは、保管用PDFに掲載中。ぜひ、下記よりダウンロードして、ご覧ください。

3. チャットボットの開発環境

保管用PDFに掲載中。ぜひ、下記よりダウンロードして、ご覧ください。

  • 基礎知識を社内で利用したい方

ピックアップ記事

tags