こんにちは。今日は、Azure Cognitive Service for Languageを使ってFAQチャットボットを作成する手順について解説したいと思います。
Contents
Azure Cognitive Service for Languageとは?
公式Docによる説明はこちら。2021年のIgniteで発表された自然言語処理機能を提供するクラウドサービスです。
https://docs.microsoft.com/ja-jp/azure/cognitive-services/language-service/overview
できることについては、こちらのブログにも分かりやすくまとまっていました。
既存でQnA Maker、Text Analytics、LUISを利用しているユーザは、以下の移行ガイドに従って移行することができるようです。
https://docs.microsoft.com/ja-jp/azure/cognitive-services/language-service/concepts/migrate
今回は、QnA Makerで既にチャットボットを作成していた場合と、これから全く新規でチャットボットを作成する場合の2パターンを試してみました。
それではまいります。
言語サービスリソースの作成
まず、どちらのシナリオでも共通のステップとして、Cognitive Serviceの「言語サービス」リソースを作成します。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-65.png?resize=728%2C294&ssl=1)
QnA Makerに対応する機能「カスタム質問応答」は、規定では有効化されていないようなので、明示的に有効化します。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-66.png?resize=728%2C427&ssl=1)
次へ進むと、リソースの詳細設定へ。「Text Analyticsの作成」とありますが、内部的にText Analyticsリソースの作成が必要ということかな・・・。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-67.png?resize=728%2C747&ssl=1)
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-68.png?resize=728%2C344&ssl=1)
ナレッジベースの作成
次にナレッジベースの作成です。このステップは、QnA Makerからの移行か、新規作成かで異なります。
QnA Makerのナレッジベースを移行する場合
具体的には、以下の手順をもとに実施しました。
Custom Question and Answeringプロジェクトを作成する
公式Docにも説明がありますが、単一言語の既存ナレッジベースを移行するだけで良い場合にはこのステップは省略可能です。(移行時に、自動的にプロジェクトが作成されるため)
複数の言語のナレッジ ベースを言語リソースに追加したい場合は、Language Studio にアクセスして最初のカスタム質問と回答プロジェクトを作成し、以下のように最初のオプションを選択します。 言語リソースの言語設定は、プロジェクトの作成時にのみ指定できます。 単一言語の既存のナレッジ ベースを言語リソースに移行する場合は、この手順を省略できます。
下の方にLanguage Studioの開始ボタンがあるので、ここからLanguage Studioに移動します。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-69.png?resize=728%2C512&ssl=1)
Language Studioに移動したら、Custom Question Answeringリソースのプロジェクトを作成します。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-70.png?resize=728%2C454&ssl=1)
Create new Projectで・・・
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-71.png?resize=728%2C289&ssl=1)
数個の必要な初期設定を実施したら、完了です。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-72.png?resize=728%2C518&ssl=1)
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-73.png?resize=728%2C561&ssl=1)
これが、QnA MakerのKnowledge Baseに相当するもののようですね。
プロジェクト作成直後には、まだ何のナレッジもないので、Resourceは空になっています。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-74.png?resize=728%2C332&ssl=1)
既存のQnA Maker用ナレッジベースを移行する
次に、https://www.qnamaker.ai/にアクセスして、既存のKnowledge Baseを開きます。
お、既存のもの(KnowledgeBase013)はあるんですが、先ほど作成したLanguageサービスのプロジェクト(=Knowledge Baseに相当するもの)も、ここに一覧として表示されています。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-81.png?resize=728%2C331&ssl=1)
“Start Migration”オプションがあるので、クリックして、移行元、移行先の指定を行うと、ナレッジベースの移行が開始されます。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-80.png?resize=728%2C322&ssl=1)
データボリュームによるかと思いますが、少量データだと数分程度で移行が完了しました。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-78.png?resize=650%2C703&ssl=1)
移行後は、既存Knowledge Baseと同名の言語サービスプロジェクトが作成されていることが分かります。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-79.png?resize=568%2C712&ssl=1)
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-82.png?resize=728%2C328&ssl=1)
新規でナレッジベースを作成する場合
[工事中]ナレッジベースを公開する
ナレッジベースの用意ができたら、これを公開します。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-83.png?resize=728%2C293&ssl=1)
Botを作成する
公開したら、ナレッジベースと直接やりとりをするボットを準備します。上のキャプチャの「Create a bot」からリソースの作成ができます。
ここからのエクスペリエンスはQnA Makerの時と全く同じですね。
以下の通りBotリソースを作成し・・
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-84.png?resize=426%2C830&ssl=1)
作成したらWebチャットでテストしてみると動作が確認できます。
![](https://i0.wp.com/www.simpletraveler.jp/wp-content/uploads/2022/02/image-85.png?resize=728%2C603&ssl=1)
以上、Azure Cognitive Service for Languageを利用して、チャットボットを作成する手順でした!
このサービスを使うことで、QnA Makerではできなかったこともできるようになるのだと思いますが、そのあたりは今後の記事で深ぼっていこうと思います!
おしまい
コメントを残す