Skip to main content

 

 

 

 

Template:OutSystems/Documentation_KB/Breadcrumb_New_Layout

 

 

Template:OutSystems/OSLanguageSwitcher

 

 

 

OutSystems

チャットボットのアーキテクチャ

チャットボットは、既存のアプリに追加される機能です。チャットボットのアーキテクチャは、実装する機能によって異なります。チャットボットを動作させるには、Azure Bot Serviceが必要です。また、高度なユースケースではOutSystems Webhookチャットモジュールをアプリに追加し、ユースケースに応じたロジックを実装する必要があります。

ボットサービス

他のボットと同様、チャットボットにはユーザーインタラクションを監視するサービスが必要です。OutSystemsではAzure Bot ServiceBot Frameworkを使用してボットサービスを提供します。

チャットボットのロジック

アプリに機能を追加するチャットボットは、ユーザーインターフェイスとロジックで構成されます。事前定義された質問への応答やファイル送信などの基本的な機能を持つチャットボットの場合は、OutSystemsでロジックを作成できます。

Azure Bot ServiceとOutSystemsのロジック

自然言語の理解、スペルミスの検出、音声やユーザーメッセージの意図の認識など、より高度な機能を持つチャットボットの場合は、Azure Bot Frameworkを主に使用する必要があります。

Azure Bot ServiceとAzureのロジック

OutSystems.AI Chatbotコンポーネント

OutSystems.AI Chatbotコンポーネントは、ユーザーインターフェイスブロック、Webhookモジュール、サンプルロジックで構成されます。このコンポーネントをインストールすると以下を行うことができます。

  • Chatbotブロックを使用して、チャットボットのユーザーインターフェイスを作成できます。ドラッグ&ドロップしてそのまま使用することができ、ほとんどのユースケースに適合します。
  • チャットボットのレスポンスロジックを処理するモジュールを作成できます。このモジュールには、OutSystems.AI Chatbotコンポーネントの一部であるChatbot Webhookテンプレートアプリが含まれています。これを使用して、Azureサービスからのレスポンスを組み合わせ、OutSystemsリソースにアクセスします。サムネイルカードやファイル送信リンクなどのUI要素を使用する場合、このモジュールが必要です。
  • 既存のデータストラクチャやロジックを使用しながらユーザーインターフェイスを作成できます。これは、ユーザーインターフェイス設計を完全に制御する必要がある場合に役立ちます。

以下のコンポーネントが利用可能です。

コミュニケーションシーケンス

OutSystemsのチャットボットモジュールとAzureサービスの間のコミュニケーションフローの例を以下に示します。

一般的なチャットボットの会話には以下が含まれます。

  • 質問メッセージ。ユーザーがチャットボットのユーザーインターフェイスに書き込むメッセージ。
  • 回答メッセージ。チャットボットアプリからユーザーへの応答。

以下は、コミュニケーションフローの概要です。

コミュニケーションシーケンスの図

このシーケンスは高度なチャットボットロジックを示しています。ユーザーメッセージに対するアプリの応答内容をOutSystems開発者が柔軟に決定することができます。しかし、シンプルなFAQチャットボットの場合は、チャットボットコンポーネントのUI部分のみを使用することができ、Azureサービスでナレッジベースのレスポンスを処理します。

  1. ユーザーがチャットボットに質問を書き込みます。
  2. 質問メッセージがREST API経由でAzure Bot Frameworkに届きます。
  3. 回答メッセージがAzure Bot FrameworkからWebhook REST API経由でOutSystemsに届きます。
  4. OutSystemsアプリがメッセージを受信し、開発者がService Studioで定義したロジックによってメッセージが処理されます。

この例では、Azure QnA Makerサービスを使用してAzureナレッジベースからレスポンスを取得します。これもREST APIサービスです。同時に、Azure QnA Makerサービスは同じREST APIレスポンスを経由してOutSystemsに応答を返します。

OutSystemsアプリではAzureサービスからの回答メッセージが処理され、応答としてユーザーに送信されます。回答メッセージがAzure Bot Frameworkに届き、Azure Websocketサービスを経由してチャットボットUIに送り返されます。Azure Websocketサービスは、クライアントとサーバーの間の永続的な双方向のチャネルです。

Azureリソース

以下は、場合によってはチャットボットを実装する必要があるAzureリソースの概要です。含める機能に応じて、リソースにその他の機能を追加する場合があります。

  • Bot Service + Webアプリ
  • QnA Makerサービス
  • QnA Makerナレッジベース
  • Was this article helpful?