Information ボットのシナリオInformation Bot Scenario

注意

このトピックは SDK v3 リリースに適用されます。This topic applies to SDK v3 release. 最新バージョンの SDK (v4) のドキュメントは、こちらにあります。You can find the documentation for the latest version of the SDK v4 here.

この Information ボットは、Cognitive Services QnA Maker を使用してナレッジ セットや FAQ で定義された質問に回答したり、Azure Search を使用してより結論が出にくい質問に回答したりできます。This Information Bot could answer questions defined in a knowledge set or FAQ using Cognitive Services QnA Maker and answer more open-ended questions by using Azure Search.

情報は多くの場合、検索によって容易に取り出せる SQL Server のような構造化データ ストアに格納されています。Often information is buried in structured data stores like SQL Server that can be easily surfaced via search. 単純な会話コマンドによって顧客の注文状況を調べることを考えます。Imagine looking up a customer's order status by simple conversational commands. Cognitive Services QnA Maker を使用して、顧客の検索、顧客の最新注文の確認といった、一連の有効な検索オプションがユーザーに提示されます。QnA 形式を定義することで、Azure Search によって強化され、SQL Database に格納されたデータを参照できる質問をユーザーが容易に作成できます。Using Cognitive Services QnA Maker, the user is presented with a set of valid search options like, lookup a customer, review a customer's most recent order, etc. With the QnA format defined the user can easily ask questions that are backed by Azure Search which can look up data stored in a SQL Database.

Information ボットの図

次に、Information ボットのロジック フローを示します。Here is the logic flow of an Information bot:

  1. 従業員が Information ボットを開始します。The employee starts the Information bot.
  2. Azure Active Directory が従業員の ID を確認します。Azure Active Directory validates the employee's identity.
  3. 従業員はサポートされているクエリの種類をボットに質問できます。The employee can ask the bot what type of queries are supported.
  4. Cognitive Services が、QnA Maker で構築された FAQ ボットを返します。Cognitive Services returns a FAQ bot built with the QnA Maker.
  5. 従業員が有効なクエリを定義します。The employee defines a valid query.
  6. ボットが、アプリケーション データに関する情報を返す Azure Search にクエリを送信します。The bot submits the query to Azure Search which returns information about the application data.
  7. Application Insights が、ランタイム テレメトリを収集して、ボットのパフォーマンスと使用方法により開発をサポートします。Application insights gathers runtime telemetery to help development with bot performance and usage.

サンプル ボットSample bot

C# で記述されたサンプル ボットは Microsoft Azure で動作し、Azure Search によってインデックス付けされた SQL データベース インスタンス内のデータを操作します。The sample Bot, written in C#, runs in Microsoft Azure working with data indexed by Azure Search from a SQL Database instance. ボットは、尋ねることができる質問のリストを、Cognitive Services: QnA Maker を使用して質問 (回答) をフレーズ化する方法に関する情報と共に公開します。The Bot exposes a list of questions that can be asked with information on how to phrase the question (the answer) using Cognitive Services: QnA Maker. ボットのユーザーはその後、インデックス付けされているデータベースの広い領域または特定の領域で Azure Search によってデータを参照するクエリを入力できます。The user of the Bot can then type a query that looks up data via Azure Search in a broad or specific area of the database that is indexed. このサンプルは、顧客と注文情報の単純なデータベースを提供します。The sample provides a simple database with customers and order information. Application Insights はボットの使用状況を追跡し、ボットの例外の監視に役立ちます。Application Insights tracks Bot usage and helps you monitor the Bot for exceptions. 誰が情報にアクセスできるかを制限できるよう、このボットは Azure AD アプリとして発行されます。The Bot is published under as an Azure AD app so that you can restrict who has access to the information.

このサンプル ボットは、Bot Framework の一般的なシナリオのサンプルからダウンロードするか、ソース コードを複製できます。You can download or clone the source code for this sample bot from Samples for Common Bot Framework Scenarios.

使用するコンポーネントComponents you'll use

Information ボットでは、次のコンポーネントを使用します。The Information Bot uses the following components:

  • 認証用の Azure ADAzure AD for Authentication
  • コグニティブ サービス:QnA MakerCognitive Services: QnA Maker
  • Azure SearchAzure Search
  • Application InsightsApplication Insights

Azure Active Directory (Azure AD)Azure Active Directory (Azure AD)

Azure Active Directory (Azure AD) は、マイクロソフトが提供する、マルチテナントに対応したクラウド ベースのディレクトリと ID の管理サービスです。Azure Active Directory (Azure AD) is Microsoft’s multi-tenant cloud based directory and identity management service. また、Azure AD は世界中の数多くの組織が使用する卓越した ID 管理ソリューションとすばやく簡単に統合できるため、ボット開発者はボットの構築に集中することができます。As a Bot developer, Azure AD lets you focus on building your Bot by making it fast and simple to integrate with a world class identity management solution used by millions of organizations around the world. 独自の複雑な認証および承認システムを実装しなくても、Azure AD アプリを定義することによって、ボットおよびボットが公開するデータにだれがアクセスできるかを制御できます。By defining an Azure AD app, you can control who has access to your Bot and the data it exposes, without implementing your own complex authentication and authorization system.

コグニティブ サービス:QnA MakerCognitive Services: QnA Maker

Cognitive Services QnA Maker は、ユーザーがボットからクエリできる FAQ データ ソースを提供するために役立ちます。Cognitive Services QnA Maker helps you provide an FAQ data source which your users can query from your Bot. さまざまなシステムに格納された膨大な量の情報にアプローチする際、情報のソースとセットをユーザーが絞り込めるようにすることは有用です。When approaching vast amounts of information stored in different systems, it can be useful to help users filter down the information source and set. 単一の SQL データベースに膨大な量の情報が含まれていて、自由形式の検索を適用するとあまりにも多くの情報が返される可能性があります。A single SQL database can have enormous amounts of information that when a free form search is applied brings back too much information. 最初に QnA Maker を使用してボット ユーザーのためのロードマップを定義し、Azure Search によって取得できるインテリジェントな質問の作成方法を習得させることができます。By first using QnA Maker, you can define a road map for your Bot users so they know how to ask intelligent questions that can then be retrieved via Azure Search.

Azure Search はアプリ向けのクラウド検索サービスであり、迅速に検索インデックスを構築して稼働させることができます。Azure Search is a cloud search service for apps that let you get your search indices up and running quickly. Microsoft Azure で稼働するため、使用量の需要に応じてスケールアップとスケールダウンを簡単に行えます。Running on top of Microsoft Azure, you can easily scale up and down as your usage demands. 検索ランキングの高度な制御によって検索結果をビジネス目標に結び付け、データベースに隠れたデータを表出させることができます。You can connect search results to business goals with great control over search ranking and surface data hidden in your databases.

Application InsightsApplication Insights

Application Insights では、アプリケーション パフォーマンス管理 (APM) と瞬時の分析によって、行動につながる分析情報を得ることができます。Application Insights helps you get actionable insights through application performance management (APM) and instant analytics. すぐに使用できる、多機能なパフォーマンス監視、強力なアラート機能、使いやすいダッシュボードによって、ボットの可用性が保たれ、期待どおりに動作していることを確認できます。Out of the box you get rich performance monitoring, powerful alerting, and easy-to-consume dashboards to help ensure your Bot is available and performing as you expect. 問題の発生をすばやく確認し、根本原因を分析して、問題個所を特定し、修正することができます。You can quickly see if you have a problem, then perform a root cause analysis to find and fix the issue.

次の手順Next steps

次に、モノのインターネット (IoT) ボットのシナリオを理解します。Next, learn about the Internet of Things bot scenario.