OVERVIEW
Virtual Assistants
Kore.ai Platform
Key Concepts
Natural Language Processing (NLP)
Accessing Platform
VIRTUAL ASSISTANTS
Virtual Assistant Builder
Virtual Assistant Types
Getting Started
Creating a Simple Bot
SKILLS
Storyboard
Dialog Task
Introduction
Dialog Builder (New)
Dialog Builder (Legacy)
User Intent Node
Dialog Node
Entity Node
Supported Entity Types
Composite Entities
Supported Colors
Supported Company Names
Form Node
Logic Node
Message Nodes
Confirmation Nodes
Bot Action Node
Service Node
Custom Authentication
2-way SSL for Service nodes
Script Node
Agent Transfer Node
WebHook Node
Grouping Nodes
Connections & Transitions
Manage Dialogs
User Prompts
Knowledge Graph
Terminology
Building
Generation
Importing and Exporting
Analysis
Knowledge Extraction
Build
Alert Tasks
Introduction
Ignore Words and Field Memory
How to Schedule a Smart Alert
Small Talk
Digital Views
Overview
Configuring Digital Views
Digital Forms
Overview
How to Configure Digital Forms
NATURAL LANGUAGE
Overview
Machine Learning
Introduction
Model Validation
Fundamental Meaning
Introduction
NLP Guidelines
Knowledge Graph
Traits
Introduction
How to Use Traits
Ranking and Resolver
Advanced NLP Configurations
INTELLIGENCE
Overview
Context Management
Overview
Session and Context Variables
Context Object
How to Manage Context Switching
Manage Interruptions
Dialog Management
Sub-Intents & Follow-up Intents
Amend Entity
Multi-Intent Detection
Sentiment Management
Tone Analysis
Sentiment Management
Event Based Bot Actions
Default Conversations
Default Standard Responses
TEST & DEBUG
Talk to Bot
Utterance Testing
Batch Testing
Conversation Testing
CHANNELS
PUBLISH
ANALYZE
Overview
Dashboard
Custom Dashboard
Overview
How to Create Custom Dashboard
Conversation Flows
NLP Metrics
ADVANCED TOPICS
Universal Bots
Overview
Defining
Creating
Training
Customizing
Enabling Languages
Store
Smart Bots
Defining
koreUtil Libraries
SETTINGS
Authorization
Language Management
PII Settings
Variables
Functions
IVR Integration
General Settings
Management
Import & Export
Delete
Versioning
Collaborative Development
PLAN & USAGE
Overview
Usage Plans
Support Plans
Invoices
API GUIDE
API Overview
API List
API Collection
SDKs
SDK Overview
SDK Security
SDK App Registration
Web SDK Tutorial
Message Formatting and Templates
Mobile SDK Push Notification
Widget SDK Tutorial
Widget SDK – Message Formatting and Templates
Web Socket Connect & RTM
Using the BotKit SDK
Installing
Configuring
Events
Functions
BotKit SDK Tutorial – Agent Transfer
BotKit SDK Tutorial – Flight Search Sample Bot
Using an External NLP Engine
ADMINISTRATION
HOW TOs
Creating a Simple Bot
Creating a Banking Bot
Context Switching
Using Traits
Schedule a Smart Alert
Configure UI Forms
Add Form Data into Data Tables
Configuring Digital Views
Add Data to Data Tables
Update Data in Data Tables
Custom Dashboard
Custom Tags to filter Bot Metrics
Patterns for Intents & Entities
Build Knowledge Graph
Global Variables
Content Variables
Using Bot Functions
Configure Agent Transfer
Update Balance Task
Transfer Funds Task
RELEASE NOTES
  1. ホーム
  2. Docs
  3. Virtual Assistants
  4. Builder
  5. Dialog Task
  6. ダイアログノード

ダイアログノード

ダイアログノードでは、ユーザーインテントが変わったときに、既存のダイアログタスクの中で新しいダイアログタスクを開始することができます。例として、以下の3つのダイアログタスクを持つトラベルボットを考えてみましょう。“フライトの空き状況”、“フライトの予約”、“ホテルの予約”。“フライトの空き状況”ダイアログタスクから“フライトの予約”ダイアログタスクを呼び出すことができます。

主な機能

ダイアログノードの主な機能は以下のとおりです。

  • 後のセッションで説明するように、“エンティティの事前割り当て”として、現在のダイアログタスクからターゲットのダイアログタスクにデータを伝送する機能。
  • 対象となるダイアログタスクが呼び出された場合、現在のダイアログフローは新しいダイアログタスクのルートインテントから始まります。ダイアログノードに遷移を記入した場合、対象の完了後にフローがソースのダイアログタスクに戻ります。遷移を記入しない場合は、ダイアログタスクは対象となるダイアログタスクを実行した後に終了します。これは、ダイアログフローが関連するユーザーインテントを処理し、その後同じダイアログタスクを続行するオプションのユーザーインテントノードとは異なります。

セットアップ

ダイアログタスクにおけるダイアログノードの設定は、以下のステップで行います。

ノードの追加

  1. ダイアログタスクを開き、ダイアログノードを追加します。
  2. 指定された場所にダイアログノードを追加します。ノードの追加手順についてはこちらをご参照ください
  3. ダイアログウィンドウは、デフォルトではコンポーネントプロパティタブが選択された状態で表示されます。

ノードの設定

コンポーネントプロパティ

コンポーネントプロパティタブでセットアップまたは編集する設定は、このノードを使用するすべてのダイアログタスクに反映されます。

  1. コンポーネントプロパティ タブの 一般設定では、以下の変更が可能です。
    • 名前
    • 説明

NLPプロパティ

  1. NLPプロパティタブから、下記リストのセッションからアクションを実行できます。
    • 機械学習 設定、ここではこのノードの検出を改善するためのユーザー発話を提供します。
    • ボットの同義語 またはこのノードの関連フレーズ。
    • パターン、ここではユーザーの発話にこれらの特定のパターンが含まれる場合に、このノードをキャプチャします。

接続プロパティ

  1. 接続タブをクリックして、遷移プロパティを設定し、次に実行するダイアログタスクのノードを決定します。条件文は、ダイアログタスク内の任意のエンティティやコンテキストオブジェクトの値に基づいて記述することも、遷移にインテントを使用することもできます。“遷移プロパティ”を“現在のタスクの終了”と定義している場合は、これらの設定は無視されます。
    1. 接続ルールセクションにおいて、条件を追加をクリックします。
    2. 以下のいずれかの基準に基づいて、条件式を設定します。
      • エンティティ:ダイアログ内のエンティティノードを特定の値と比較します。
        • エンティティを選択します。
        • ドロップダウンリストから演算子を選択します。存在する、等しい、等しいより大きい、等しいより小さい、等しくない、より大きい、より小さい。
        • フィールドに数字を入力します。例:PassengerCount(エンティティ)は5(指定値)より大きい(演算子)
      • コンテキスト:これらの演算子のいずれかを使用して、ダイアログ内のコンテキストオブジェクトを特定の値と比較します。存在する、等しい、等しいより大きい、等しいより小さい、等しくない、より大きい、より小さい。例: Context.entity.PassengerCount (コンテキストオブジェクト)が(演算子)5(指定値)より大きい。
      • インテント:次のユーザーの発話に一致するインテントを選択します。
    3. 次へ進むドロップダウンリストで、条件式が成功した場合にダイアログフローで実行する次のノードを選択します。例として、PassengerCount (エンティティ) が(演算子) 5 (指定値)より大きい場合、次へ進むオファー(サブダイアログ)になります。
    4. その他ドロップダウンリストで、条件が失敗した場合に実行するノードを選択します。
      メモ: 複数の If条件を書きたい場合は、最後のIf 条件式の下のその他の条件を追加をクリックします。

     

インスタンスプロパティ

インスタンスプロパティには、ダイアログのこのインスタンスの設定が含まれます。

  1. ダイアログウィンドウのインスタンスプロパティタブをクリックします。
  2. エンティティの事前割り当てセクションにおいて、このセッションまたはノードデータからの値を、ダイアログタスクに必要とされるエンティティに事前割り当てすることができます。残りの必要な値は、サブインテントによって処理されます。(詳しくは以下をご覧ください)値をリセットしたい場合は、キーワード「ゼロ」を使用しなければなりません。プラットフォームはスペースを無視します。
  3. エンティティの事後割り当てセクションにおいて、カスタム変数を追加するためのオプションで、現在のタスクで利用できるエンティティのリストが表示されます。これらのエンティティは、リンクされたダイアログのセッションデータから値が割り当てられます。例として、context.entities.は、リンクされたサブダイアログからのエンティティを選択用にリストアップしています。値は、リンクされたダイアログの実行が完了した時点で割り当てられます。メモ:このオプションは、遷移オプションがタスク完了時に現在のノードに戻るように設定されている場合にのみ使用できます。現在、URLエンティティタイプを使用する際には制限があります。httphttps としたり、wwwのサフィックスを付けないURL値は作動しません。値をリセットしたい場合は、キーワード「ゼロ」を使用しなければなりません。プラットフォームはスペースを無視します。
  4. 遷移オプションセクションにおいて、タスク完了時に従うフローを定義できます。以下の2つのオプションから選ぶことができます。
    • タスク完了時に現在のノードに戻る。
    • 現在のタスクを終了し、このタスクを開始する。
  5. 高度な管理 をクリックして、以下のリストのオプションを設定します。
    • 割り込み動作
      • タスクレベルの「割り込み動作」設定を使用します:ボットは、ダイアログタスクレベルで設定された割り込み動作の設定を参照します。
      • このノード向けにカスタマイズ:このオプションを選択してその設定を行うことで、このノードの割り込み動作の設定をカスタマイズできます。詳しくは、割り込み処理とコンテキストの切り替えの記事をお読みください。
    • カスタムタグは、ボット会話のカスタムプロファイルを構築するためのタグを定義します。詳細はこちらをご覧ください

     

エンティティ事前割り当てについて

次の方法で、宛先ダイアログタスクのデータを事前入力できます:

  • エンティティキーに値を追加します。
  • 必要に応じて、現在のダイアログタスクContextオブジェクトから送信先のダイアログタスクにデータを渡すために、追加のカスタムキーと値を追加します。

デフォルトでは、対象となるダイアログタスクで定義されたエンティティノードは、キー/値のペアとして表示されます。その後、セッション変数やコンテキスト変数を使って、関連するエンティティの値を定義したり、必要に応じてカスタムキーや値を追加することができます。ソースダイアログタスクから送信先ダイアログタスクへの遷移は、ユーザー入力がリンクされたダイアログタスクのいずれかに一致したときに、ランタイムに実行されます。複数のダイアログタスクをマッピングするとき、条件付き遷移を使用して、どのダイアログタスクがエンドユーザーに表示されるかを定義することができます。別のダイアログタスクを呼び出す際、最初のダイアログタスクから次のダイアログタスクに情報を伝えたいと思います。例として、 フライトの予約ダイアログタスクで収集された顧客情報は、ホテルの予約ダイアログタスクに渡されます。ボットプラットフォームでは、次のJSON構文に示されるように、インテントノードの参照およびソースダイアログタスクのコンテキストを含めているContext オブジェクトにおいて、mappedIntents変数を使用することができます。 { 'title': 'title of the link', 'link':' url for the link' ,'postbackpayload': 'system generated payload'} 例:Context オブジェクト内の GetEmail へのリンクは次のようになります:

{
   "title":"GetEmail",
   "link":"https://app.collab.ai/wf/1.1/market/users/bots/st-bb1eb3da-cfa7-5244-b241-b5042d333e76/dialogue/dg-15fd2927-219c-5795-b038-5b830718bea7/execute?nodeId=message2&contextId=dcx-f9bae173-4d69-53e4-9aa7-21e89aae776d&intent=GetEmail",
   "postbackpayload":"MappedDialog_dc-f7b42932-dc06-53ac-92c0-1db706794f91_dg-15fd2927-219c-5795-b038-5b830718bea7_dcx-f9bae173-4d69-53e4-9aa7-21e89aae776d"
}

ユーザーへのプロンプトメッセージにおいて、これらの変数にアクセスして提示し、リンクでマッピングされたダイアログタスクのリストを表示したり、あるいは選択肢のリストとして表示することができます。ソースダイアログタスクが Context オブジェクトを有効に使用していなくても、ソースダイアログコンテキストをターゲットダイアログタスクに渡すことはできます。postbackpayloadキーの値は、ボットプラットフォームで生成され、FacebookおよびSlackなどの一部のチャネルで使用されており、これは、いつ対象となるダイアログタスクのリンクや選択が実行されるかを定義します。詳細は、タスクにおけるセッションおよびコンテキスト変数の使用およびコンテキストオブジェクトをご参照ください。

メニュー
Kore.ai Named a Leader in 2022 Gartner® Magic Quadrant™ for Enterprise Conversational AI PlatformsGet the Report