チュートリアル:QnA Maker ポータルでナレッジ ベースを作成するTutorial: From the QnA Maker portal, create a knowledge base

公開されている Web ベースの FAQ の質問と回答を使用して、新しいナレッジ ベースを作成します。Create a new knowledge base with questions and answers from a public web-based FAQ. ナレッジ ベースを保存、トレーニング、および発行します。Save, train, and publish the knowledge base. ナレッジ ベースの発行後、cURL コマンドを使用して質問を送信し、回答を受信します。After the knowledge base is published, send a question and receive an answer with a cURL command. 次に、ボットを作成し、同じ質問でボットをテストします。Then create a bot, and test the bot with the same question.

このチュートリアルでは、以下の内容を学習します。In this tutorial, you learn how to:

  • QnA Maker ポータルでナレッジ ベースを作成します。Create a knowledge base in the QnA Maker portal.
  • ナレッジ ベースを確認、保存、トレーニングします。Review, save, and train the knowledge base.
  • ナレッジ ベースを公開します。Publish the knowledge base.
  • cURL を使用してナレッジ ベースに対してクエリを実行します。Use cURL to query the knowledge base.
  • ボットを作成します。Create a bot.

注意

このチュートリアルのプログラムによるバージョンは、Azure-Samples/cognitive-services-qnamaker-csharp GitHub リポジトリにある完全なソリューションで提供されています。The programmatic version of this tutorial is available with a complete solution from the Azure-Samples/cognitive-services-qnamaker-csharp GitHub repository.

前提条件Prerequisites

このチュートリアルでは、既存の QnA Maker サービスが必要です。This tutorial requires an existing QnA Maker service.

ナレッジ ベースの作成Create a knowledge base

  1. QnA Maker ポータルにサインインします。Sign in to the QnA Maker portal.

  2. 上部のメニューで [Create a knowledge base](ナレッジ ベースの作成) を選択します。Select Create a knowledge base from the top menu.

    QnA Maker ポータルのスクリーンショット

  3. 既存の QnA Maker サービスを使用するので、最初の手順をスキップしてください。Skip the first step, because you will use your existing QnA Maker service.

  4. 既存の設定を選択します。Select your existing settings:

    SettingSetting 目的Purpose
    Microsoft Azure Directory IDMicrosoft Azure Directory ID この ID は、Azure portal と QnA Maker ポータルへのサインインに使用するアカウントに関連付けられています。This ID is associated with the account you use to sign into the Azure portal and the QnA Maker portal.
    Azure Subscription name (Azure サブスクリプション名)Azure Subscription name QnA Maker のリソースを作成した請求先アカウント。The billing account in which you created the QnA Maker resource.
    Azure QnA Service (Azure QnA サービス)Azure QnA Service 既存の QnA Maker リソース。Your existing QnA Maker resource.

    QnA Maker ポータルのスクリーンショット

  5. ナレッジ ベース名 My Tutorial kb を入力します。Enter your knowledge base name, My Tutorial kb.

    QnA Maker ポータルのスクリーンショット

  6. ナレッジ ベースに次の設定を指定します。Populate your knowledge base with the following settings:

    設定名Setting name 設定値Setting value 目的Purpose
    URLURL https://docs.microsoft.com/azure/cognitive-services/qnamaker/faqs その URL にある FAQ のコンテンツは、質問の後に回答が続く形式になっています。The contents of the FAQ at that URL are formatted with a question followed by an answer. QnA Maker は、この形式を解釈して、質問とそれに関連付けられた回答を抽出することができます。QnA Maker can interpret this format to extract questions and the associated answers.
    ファイルFile "このチュートリアルでは使用しません"not used in this tutorial これにより、質問と回答に関するファイルがアップロードされます。This uploads files for questions and answers.
    [Chit-chat](おしゃべり) の性格Chit-chat personality FriendlyFriendly これにより、一般的な質問と回答には親しみやすくカジュアルな性格が指定されます。This gives a friendly and casual personality to common questions and answers. これらの質問と回答は後で編集することができます。You can edit these questions and answers later.

    QnA Maker ポータルのスクリーンショット

  7. [Create your KB](\KB の作成) を選択して作成プロセスを終了します。Select Create your KB to finish the creation process.

    QnA Maker ポータルのスクリーンショット

ナレッジ ベースを確認、保存、トレーニングするReview, save, and train the knowledge base

  1. 質問と回答を確認します。Review the questions and answers. 最初のページは、この URL にある質問と回答です。The first page is questions and answers from the URL.

    QnA Maker ポータルのスクリーンショット

  2. 表の下部で、質問と回答の最後のページを選択します。Select the last page of questions and answers from the bottom of the table. このページには、おしゃべりの性格からの質問と回答が表示されます。The page shows questions and answers from the Chit-chat personality.

  3. 質問と回答の一覧の上にあるツール バーで、 [表示オプション] アイコンを選択し、次に [メタデータの表示] を選択します。From the toolbar above the list of questions and answers, select the View options icon, and then select Show metadata. これにより、各質問と回答のメタデータ タグが表示されます。This shows the metadata tags for each question and answer. おしゃべりの質問には、editorial: chit-chat メタデータが既に設定されています。The Chit-chat questions have the editorial: chit-chat metadata already set. このメタデータは、選択された回答とともにクライアント アプリケーションに返されます。This metadata is returned to the client application, along with the selected answer. チャット ボットなどのクライアント アプリケーションでは、このフィルターされたメタデータを使用して、追加の処理やユーザーとの対話を判断することができます。The client application, such as a chat bot, can use this filtered metadata to determine additional processing or interactions with the user.

    QnA Maker ポータルのスクリーンショット

  4. 上部のメニュー バーにある [Save and train](保存してトレーニング) を選択します。Select Save and train in the top menu bar.

発行してナレッジ ベースのエンドポイントを取得するPublish to get knowledge base endpoints

上部のメニューで [Publish](発行) ボタンを選択します。Select the Publish button from the top menu. 発行ページで [発行] を選択します。On the publish page, select Publish.

QnA Maker ポータルのスクリーンショット

ナレッジ ベースが発行されると、エンドポイントが表示されます。After the knowledge base is published, the endpoint is displayed.

エンドポイントの設定のスクリーンショット

この [発行] ページを閉じないでください。Don't close this Publish page. これは、このチュートリアルの後半でボットを作成するために必要になります。You need it later in the tutorial, to create a bot.

cURL を使用して FAQ の回答を照会するUse cURL to query for an FAQ answer

  1. [Curl] タブを選択します。Select the Curl tab.

    Curl タブのスクリーンショット

  2. [Curl] タブのテキストをコピーして、cURL 対応のターミナルまたはコマンド ラインで実行します。Copy the text of the Curl tab, and run it in a cURL-enabled terminal or command-line. Authorization ヘッダーの値にはテキスト Endpoint が含まれており、その後に末尾スペースとキーが続いています。The authorization header's value includes the text Endpoint, with a trailing space and then the key.

  3. <Your question>How large can my KB be? で置き換えReplace <Your question> with How large can my KB be?. これは、How large a knowledge base can I create? という質問に近いですが、まったく同じではありません。This is close to the question, How large a knowledge base can I create?, but not exactly the same. QnA Maker によって自然言語処理が適用され、2 つの質問は同じであると判断されます。QnA Maker applies natural language processing to determine that the two questions are the same.

  4. cURL コマンドを実行し、スコアと回答を含む JSON 応答を受け取ります。Run the cURL command and receive the JSON response, including the score and answer.

      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100   581  100   543  100    38    418     29  0:00:01  0:00:01 --:--:--   447{
      "answers": [
        {
          "questions": [
            "How large a knowledge base can I create?"
          ],
          "answer": "The size of the knowledge base depends on the SKU of Azure search you choose when creating the QnA Maker service. Read [here](https://docs.microsoft.com/azure/cognitive-services/qnamaker/tutorials/choosing-capacity-qnamaker-deployment)for more details.",
          "score": 42.81,
          "id": 2,
          "source": "https://docs.microsoft.com/azure/cognitive-services/qnamaker/faqs",
          "metadata": []
        }
      ]
    }
    
    

    QnA Maker は、42.81% というスコアによりある程度信頼できます。QnA Maker is somewhat confident with the score of 42.81%.

cURL を使用しておしゃべりの回答を照会するUse cURL to query for a Chit-chat answer

  1. cURL 対応のターミナルで、How large can my KB be? を、ユーザーからのボットの会話を終了する文言 (Thank you など) に置き換えます。In the cURL-enabled terminal, replace How large can my KB be? with a bot conversation-ending statement from the user, such as Thank you.

  2. cURL コマンドを実行し、スコアと回答を含む JSON 応答を受け取ります。Run the cURL command and receive the JSON response, including the score and answer.

      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100   525  100   501  100    24    525     25 --:--:-- --:--:-- --:--:--   550{
      "answers": [
        {
          "questions": [
            "Thank you",
            "Thanks",
            "Thnx",
            "Kthx",
            "I appreciate it",
            "Thank you so much",
            "I thank you",
            "My sincere thank"
          ],
          "answer": "You're very welcome.",
          "score": 100.0,
          "id": 109,
          "source": "qna_chitchat_the_friend.tsv",
          "metadata": [
            {
              "name": "editorial",
              "value": "chitchat"
            }
          ]
        }
      ]
    }
    
    

    Thank you という質問はおしゃべりの質問に完全に一致したため、QnA Maker は 100 というスコアにより完全に信頼できます。Because the question of Thank you exactly matched a Chit-chat question, QnA Maker is completely confident with the score of 100. また、QnA Maker からは、関連するすべての質問のほか、おしゃべりのメタデータ タグ情報を含むメタデータ プロパティも返されました。QnA Maker also returned all the related questions, as well as the metadata property containing the Chit-chat metadata tag information.

cURL を使用して既定の回答を照会するUse cURL to query for the default answer

QnA Maker が確信を持っていない質問では、既定の回答を受け取ります。Any question that QnA Maker is not confident about receives the default answer. この回答は、Azure portal で構成されています。This answer is configured in the Azure portal.

  1. cURL 対応のターミナルで、Thank youx に置き換えます。In the cURL-enabled terminal, replace Thank you with x.

  2. cURL コマンドを実行し、スコアと回答を含む JSON 応答を受け取ります。Run the cURL command and receive the JSON response, including the score and answer.

      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100   186  100   170  100    16    272     25 --:--:-- --:--:-- --:--:--   297{
      "answers": [
        {
          "questions": [],
          "answer": "No good match found in KB.",
          "score": 0.0,
          "id": -1,
          "metadata": []
        }
      ]
    }
    

    QnA Maker からは、信頼できないことを意味するスコア 0 が返されました。QnA Maker returned a score of 0, which means no confidence. 既定の回答も返されました。It also returned the default answer.

ナレッジ ベース ボットを作成するCreate a knowledge base bot

詳細については、このナレッジ ベースを使用したチャット ボットの作成に関するページを参照してください。For more information, see Create a chat bot with this knowledge base.

リソースのクリーンアップClean up resources

ナレッジ ベース ボットの使用を終了したら、リソース グループ my-tutorial-rg を削除して、ボット プロセスで作成されたすべての Azure リソースを削除します。When you are done with the knowledge base bot, remove the resource group, my-tutorial-rg, to remove all the Azure resources created in the bot process.

ナレッジ ベースの使用を終了したら、QnA Maker ポータルで [My knowledge bases](マイ ナレッジ ベース) を選択します。When you are done with the knowledge base, in the QnA Maker portal, select My knowledge bases. 次に My Tutorial kb というナレッジ ベースを選択し、その行の右端にある削除アイコンを選択します。Then select the knowledge base, My Tutorial kb, and select the delete icon at the far right in that row.

次の手順Next steps

サポート ファイルの形式の詳細については、サポートされるデータ ソースに関するページを参照してください。See Data sources supported for more information about support file formats.

おしゃべりの性格の詳細を確認してください。Learn more about Chit-chat personalities.

既定の回答の詳細については、「一致が見つからない」を参照してください。For more information about the default answer, see No match found.