AIアシスタント (対話型AI) の作り方 (GCP & Dialogflow)

AI Assistant
Google Cloud Platform (GCP) およびDialogflowを利用したAIアシスタント (対話型AI) の作り方を記載する。
本AIをベースにバックエンドを充実させることでより高度なAIを作成することができる。
NagareLab Assistantも本技術を活用している。
 
Sponsored Links

Dialogflow環境準備

  •  GCP上のDialogflowページにアクセス
  • “コンソールへ移動”をクリックDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • Googleアカウントのサインインを求められるので、”Sign-in with Google”をクリックDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • Googleアカウントのログインポップアップが表示されるので、ログインするGoogleアカウントを選択
  • DialogflowからGoogleアカウントへのアクセスがリクエストされるので、許可する
  • Dialogflowコンソール初回アクセス時、アカウント設定が要求されるDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • 国や地域を設定し、”Terms of Service”を確認の上チェックし、”ACCEPT”をクリックDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • Dialogflowコンソールが表示されるDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • 以上にてDialogflow利用開始のための初期準備が完了となる

Dialogflowによる対話型AI開発

  • Dialogflowコンソールにて”CREATE AGENT”をクリックDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • エージェント作成画面が表示されるDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • “エージェント名”を入力し、”デフォルト言語”、”デフォルトタイムゾーン”、”エージェントが所属するGCPのプロジェクト”を選択した上で、コンソール右上の”CREATE”をクリック
    • GCPのプロジェクト毎にDialogflowエージェントは1つしか持てないため、複数の対話型AIを作りたい場合は”エージェントが所属するGCPのプロジェクト”も複数必要となるDialogflow QuickStart
      Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • デフォルトの状態でエージェントが作成される
    • 画面左下に記載がある通り”Free”の”Standard”の状態である
    • 無料のスタンダードプランでもDialogflowは様々な機能が提供されるが、必要に応じてアップグレードも可能である
  • “Intents”メニュー画面には複数”Intent”が登録できる。”Intent”はユーザからの受けたメッセージに応じてAIが実施する処理を定義できる
  • まずは”Default Welcome Intent”をクリックDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • “Default Welcome Intent”はデフォルトで設定されていてる”Intent”である
    • これは、ユーザが”こんにちは”などの挨拶をした際、AIが回答する内容が定義される
  • “Training phrases”にてユーザがAIに問いかける文章例を設定する。
    • “Default Welcome Intent”では、下記記載がデフォルトだが必要に応じて編集する
    • これは完全一致による条件判定に使われるわけではなく、機械学習による自然言語処理の学習データとなるため、似た表現のユーザ問いかけがマッチするようになる
  • “Text Response”にてAIの回答する文章を定義する
    • 下記はデフォルトから編集した例となる。複数登録した場合は回答はランダムで実施される
  • 上記設定を変更したのち、画面上部の”SAVE”をクリックDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • コンソール画面右部にて現在のAIの動きを確認可能である。”こんにちは”などのユーザ入力すると、登録した回答がなされることを確認することが出来るDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • 続いて”Intents”の中の”Default Fallback Intent”をクリックDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • “Default Fallback Intent”はデフォルトで設定されている”Intent”である
    • これは他の”Intent”に登録されていない、AIが理解できない問いかけをユーザからされた際のAIが回答する内容が定義される
  • “Text Response”にてAIの回答する文章を定義する
  • その後画面上部の”SAVE”をクリック
  • その上で画面右部で他の”Intent”に登録していないユーザ問いかけを実施すると、先ほど定義した内容が回答されるDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • 続いて新規の”INTENT”を作成するために、”Intents”メニューの画面上部の”CREATE INTENT”をクリックDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • “Intent”名を入力し、”Training phrases”にユーザ側の問いかけ、”Responses”にAIの回答を入力する
  • 画面上部の”SAVE”をクリック
  • 画面右部にて定義した問いかけを入力すると、AIが定義した回答を返すことが確認できるDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • “Entities”メニューをクリック
    • これを使うことで同じ意味の言葉をまとめてラベル付けすることができる
  • 画面上部の”CREATE ENTITY”をクリックDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • “Entity name”を入力
    • これはこれから登録するentryをまとめるためだけのもののため、任意の名前を設定するDialogflow QuickStart
      Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • “Entry”として左側に基となるラベルを右側にその単語と同じ意味の単語を定義する
    • 下記では”AI”というラベルのおなじ意味の言葉として”人工知能”などを定義するDialogflow QuickStart
      Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • “Entity”で登録した”Entry”を利用したい”Intent”画面を開く
  • まだ”Entity”を設定していない状態で、”Intent”に登録したユーザの問いかけを”Entity”に定義した単語に置き換えて、画面右側でテストしてみる
    • 下記例では”AIとは”という問いかけを置き換えて”人工知能とは”でテストする
  • “Entity”が設定されていない状態では、問いかけ内容が理解できないとAIから返答されるDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • Training phrases 中の”Entity”を設定したい単語をドラックすると、”Entity”の候補が出てくるので、設定したい”Entity”を選択
    • 下記例では”AI”という単語に対して”Entity”の”Technology”を設定Dialogflow QuickStart
      Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • 画面上部の”SAVE”をクリック
  • 再度画面右部でテストする
    • 下記例では先ほどは不明となっていた”人工知能とは”という問いかけに対し、”AIとは”と同様の問いかけと判断され、”Intent”に登録されたAIの回答がなされているDialogflow QuickStart
      Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • 以上にて対話型AIの開発は完了となる

AIアシスタントのリリース

  • “”Integrations”メニューをクリックDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • リリース先一覧は下記となる
  • 本ナレッジではWebサイトへ埋め込むWebサービスとしてリリースするため、”Web Demo”をONにするDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • “Web Demo”画面が表示されるDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • 必要に応じてリリースした際のURLを変更Dialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  • 設定したURLにアクセスしてみるとデモ画面が表示されるので、動作をテストするDialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  •  動作に問題なければ下記画面中のiframeをAIアシスタントを設置したいWebサイトに埋め込む Dialogflow QuickStart
    Google and Dialogflow™ are trademarks of Google LLC and this website is not endorsed by or affiliated with Google in any way.
  •  例として下記の通り、webサイトに設置することが出来ている
  • 以上にて対話型AIが動作するAIアシスタントのリリースが完了となる

本ナレッジでは対話型AIおよびAIアシスタントの作り方を記載したが、これらは初期のひな型でしかない。
本AIをベースにバックエンドを充実させることにより、高度なAIに進化させていくことができる。
NagareLab Assistantも今後進化させていく。

 

Sponsored Links