プログラミング初心者の学習におすすめの「Chatbot」などについて紹介していきます。
そこで「AIの基礎」とも言えるChatbotについてご紹介致します。
AIと聞くと難しそうなイメージだけどChatbotは初心者でも簡単に作れるんですよ
本記事では
- Chatbotとはなにか、概要
- Twitterでのbot開発について
- Chatbotでできること
などについて詳しく解説していきます。
目次
botとは
そもそも、botとは何かをご存じない方もいらっしゃると思います。
botは「コンピュータ上で自動で動くプログラム」です。
これを機械のロボットになぞらえてbotと呼ぶようになりました。
最近では、次の2つが有名です。
- Twitter上で自動でツイートを行うbot
- LINEの会話機能を利用し、自動で返信を行うChatbot
これらも、人間の発言を模倣して発言するように開発されたbotです。
身近なChatbotの例としては、
- Apple社のiPhoneを始めとしたOSに搭載されている「Siri」
- Google社が提供しているスマートスピーカー「Google Home」
を挙げることができます。
これらを利用したことのある方は多いのではないでしょうか?
今回は、そんなChatbotについてご紹介していきます。
TwitterのbotとChatbotの違い
まず、「Twitterのbot」と「Chatbot」の違いについてご説明しましょう。
違いは大きく分けて3つあります。
対象アプリケーションの違い
Twitterのbotはその名の通り、動作する対象はTwitterのみです。
Chatbotは
- LINE
- Slack
など、「Chatbot用のAPI」がリリースされているアプリケーションが対象となります。
Twitterのbotより対象が多くなります。
『対象アプリケーションの違い』
- Twitterのbot=Twitterのみ
- Chatbot=LINE, Slack, など、Chatbot用のAPIがリリースされているアプリ全般
APIとは「Application Programming Interface」の略語です。
自分のソフトウェアの一部を外部に公開し、他のソフトウェアでもその機能を利用・共有出来るようしたものです。
Web上で公開されていて、Web上で通信して利用が可能なものが多いものはWEBAPIとも呼ばれています。
利用者、対象者の違い
Twitterのbotはフォローするだけですので、不特定多数を対象としています。
対して、Chatbotは企業で採用される事が多く、その企業の商品を購入した人や、サービスの利用者を対象としてます。
『利用者の違い』
- Twitterのbot=不特定多数
- Chatbot=アプリを使用している企業のサービスを受けている人
可視性の違い
「Twitter」はbotとのやり取りをのぞけますが「Chatbot」はのぞけません。
Twitterのbotは、利用者とbot自体のアカウント公開範囲によっては、他人がその内容を見ることが出来ます。
対して、Chatbotは他人には会話の内容を見ることが出来ない場合が多いです。
Twitterのbotも、自動で返信を行う機能を持っているものは、Chatbotと呼ぶことができますね
しかしながら、Twitterのbotにはそれ以外の機能を持ったものが多く存在しています。
一概にChatbotと分類することは出来ないため、ここでは別のものとしてご紹介します。
『可視性の違い』
- Twitterのbot=他人が内容を見ることができる
- Chatbot=他人に会話を見ることはできない
Twitterのbotはつくれるのか
Twitterのbotは個人で制作することが出来ます。
多くのbotは、主に以下の3つに分類されるでしょう。
- 特定の時間に、特定のワードを自動でツイートする
- 返信(リプライ)を送ってきた相手に対し、自動で返答を行う
- Twitter上で情報収集を行い、その情報を自動でツイートする
それぞれについて解説していきます。
特定の時間に、特定のワードを自動でツイートする
Twitterのbotは設定したワードを一定の時間間隔でツイートすることができます。
botの中で一番よく見かける機能です。
1時間おきにランダムで内容をツイートするbotなど、フォローしている方も多いのではないでしょうか。
返信(リプライ)を送ってきた相手に対し、自動で返答を行う
Twitterのbotは返信を自動で返すことができます。
こちらもよく使われる機能です。
返信内容は全くのランダムだったり、相手の呟いた内容に沿った内容を返したり出来ます。
Twitter上で情報収集を行い、その情報を自動でツイートする
TwitterのbotはTwitter上で情報を集め、それを発信することができます。
上級者向けの機能です。
主に次の用途で使われます。
- 自動でツイートする
- 特定キーワードをツイートしたアカウントから情報収集を行う。
これらの機能に興味のある方は、Twitterのbot制作もオススメです。
Twitterからは「Twitter API」というものが提供されており、これを利用することによって簡単にbot制作を行う事が出来ます。
Chatbotは初心者でもハードルが低い
Twitterのbotと同様、Chatbotも誰でも簡単に作成することが出来ます。
特に、プログラミング初心者の方にはオススメの題材と言えるでしょう。
オススメの理由は以下3点になります。
- 様々な技術について学ぶ事が出来る
- 結果が目で見える
- 何を作れば良いのか想像できる
それぞれについて解説していきます。
様々な技術について学ぶ事が出来る
Chatbotを開発することでAIに関する様々な知識を学ぶことができます。
Chatbotを作成することにより、次のような知識を身に着けることができます。
- 基本的なプログラミング
- AIの制作方法
- APIの利用方法
Chatbot開発で学んだ技術は、他のアプリケーション制作にも応用出来ます。
最初は簡単な機能しか持っていないものから作成します。
徐々に複雑な返答も出来るように改修していく形で、ステップアップしていけます。
結果が目で見える
LINEなど、身近なツールを利用して自分の作ったChatbotが形になった事を確認することが出来ます。
プログラミングにおいて、作ったものがすぐに使えるとモチベーションが上がります。
そして実際に使用してみることでさらに改善することもできます。
自分の作ったものをどんどんアップデートすることでスキルアップできますね
何を作れば良いのか想像できる
Chatbotは参考にできるものがネットにたくさんあるので、作りたいものをイメージしやすいです。
様々な企業がいろいろなChatbotを提供しています。
なので、どのような機能を持たせれば便利なのか、と言ったことが想像しやすいです。
特にAI(人工知能)については、Chatbotを利用して学ぶのが簡単ですよ
そのため、AIに興味のある方には特にオススメです。
Chatbotでできること
Chatbotで出来る事をご紹介します。
Chatbotでは、以下のような機能を持たせることが出来ます。
- 発言内容をおうむ返しする
- 会話形式で返答する
- ランダムに文字を表示する
それぞれについて解説していきます。
発言内容をおうむ返しする
利用者がChatbotに対して発言した内容と同じ内容を、そのまま返答することが出来ます。
基本的な機能ですので、初心者の方はこの機能から実装してみると良いです。
会話形式で返答する
利用者の発言した内容からキーワードを抽出し、それに沿った内容を返答する事が出来ます。
「返答する内容」は予め制作者が用意しておく必要があります。
返答内容を大量に用意しておくことで、Chatbotと利用者は円滑なコミュニケーションを行う事ができます
ランダムに文字を表示する
利用者が発言したことを検知し、ランダムに文字を選んで返答する事が出来ます。
これを利用すれば、ゲームのような使い方が出来ます。
これらの機能を組み合わせることによって、様々なChatbotを制作することが出来ます。
例えば、天気予報を検索、返信するChatbotは以下の様に機能を組み合わせることになります。
- 利用者の発言した地域・日付を基に、インターネット上を検索して天気予報を返信する
- 利用者が地域を発言しなかった場合、地域を入力するように返信する
または、地域をランダムで選んで返信する - 利用者が日付を発言しなかった場合、日付を入力するように返信する
または、発言時間を基にして午前中であれば当日、午後であれば翌日の天気を返信する
このような機能を持たせれば、十分Chatbotと言えるでしょう。
業務の効率化
Chatbotは、使い方を工夫すれば作業の自動化することができます。
最近ではヤマト運輸のサービスが有名になりました。
「再配達の日時」をChatbotが受け付け、登録することが出来ます。
Chatbotを利用して業務の効率化を図る企業はたくさんあります。
プログラミング初心者の方は、「最初に作る題材」に悩むことも多いでしょう。
そんなときには是非、Chatbotに挑戦してみて下さい。
未経験からエンジニア転職!
副業・フリーランス転職にも完全対応!
社会人がエンジニア転職するなら
『プログラミングジャパン!』
まずは無料体験レッスンで詳しく話を聞いてみよう!