ダイアログタスク

サービスノード用の双方向 SSL の有効化

双方向 SSL 認証は、証明書ベースの相互認証プロトコルです。提供された電子証明書を検証することで、お互いに相手の身元を確実に識別して認証できるようにします。 クライアント (Webブラウザやクライアントアプリケーション) がサーバー (Webサイトやサーバーアプリケーション) に対して自身を認証し、サーバーが信頼できる認証局 (CA) により発行された公開キー証明書/電子証明書を検証することで、クライアントに対しても自身を認証することを指します。 Kore.ai の実装 Kore.ai ボットプラットフォームは、クラウドサービスにおいてデフォルトでサポートを提供しています。 ご利用のサービスに双方向 SSL が必要な場合は、プラットフォームが証明書を発行します。 オンプレミスユーザーの場合: ボットプラットフォームのインストール時に、インストールガイドに記載されている指示に従って SSL 証明書を設定してください。 前提条件 双方向 SSL (相互認証) 接続を確立するには、以下のものが必要です。 秘密キー、 クライアント証明書、 認証局ルート証明書、および 認証局中間証明書。 クライアントは、信頼できる認証局 (CA) から証明書を取得することができます。 作業 ボットプラットフォームが相互認証 (または双方向 SSL ) を必要とする API 呼び出しのバックエンドサービスを (サービスノードから) 呼び出すたびに、 ボット プラットフォームは SSL ハンドシェイクのために設定された証明書を API エンドポイントに提示します。 証明書が有効でないか、…

接続と遷移の定義

ノードタイプ 以下のノードは、要件に応じてダイアログタスクに追加することができます。 ユーザーインテントノード ユーザーの発言に基づいてプラットフォームが識別するユーザーインテント。すべてのダイアログは、1 つのルートインテントと任意の数のサブインテントを持ちます。詳細については、 ユーザーインテントノードの操作 を参照してください。 エンティティノード 発言におけるユーザーエンティティ。 プラットフォームは、 15 種類以上のエンティティタイプをサポートしています。 開発者は、表示するプロンプトメッセージを定義できます。このメッセージはチャネル固有のものにすることが可能です。たとえば、金額、口座番号、時間、郵便番号などです。エンティティノードは、ユーザーに入力を求めるプロンプトを表示します。 詳細については、 エンティティノードの操作 を参照してください。 エージェント転送ノード ボットからライブエージェントへの通信を転送するために使用され、通常はダイアログタスクの最後のノードとなります。詳細については、 エージェント転送ノードの操作 を参照してください。 スクリプトノード ダイアログタスクでカスタム JS コードを記述するために使用します。 詳細については、 スクリプトノードの操作 を参照してください。 サービスノード API を呼び出すことができます。また、cURLを使ってAPIリクエストを構築することもできます。詳細については、 サービスノードの操作 を参照してください。 メッセージ (またはボットレスポンス) ノード 「ほかにご用はありませんか?」など、ボットからユーザーへのメッセージを表示します。詳細については、 ボットレスポンスノードの操作 を参照してください。 確認ノード ボットからユーザへの問い合わせメッセージを表示し、ユーザからのレスポンスを待ちます。ユーザー入力に基づいてダイアログタスクフローの処理を続行するための条件が定義されます。 詳細については、 確認ノードの操作 を参照してください。 Webフックノード サーバーサイドの検証、ビジネスロジックの実行、またはバックエンドサーバーのAPI呼び出しに使用します。このノードを使用するには、 SDK Tool Kit がインストールされている必要があります。 詳細については、…

複合エンティティでの作業

複合エンティティを使用すると、ユーザーの発言中に複数のエンティティ値をキャプチャすることができます。これらの複数のエンティティ値はオプションであり、ユーザーの発言の中で任意の順序で使用することができます。 例:自動車販売ボット車の販売に関する問い合わせを考えてみましょう。通常の問い合わせは次のような形式になります。「興味があるのはTesla Model S2018年モデルです」または「赤のTesla 2010年モデルの価格はどのくらいですか」または「Tesla Model Sについて教えてください」などです。ご覧のように、ボットは通常、これらのクエリに応答するためにメーカー、モデル、年型、色などの詳細を組み合わせて処理する必要があります。 これらの複数の値や詳細は、それぞれ異なる独立したエンティティから取得することができます。複合エンティティを使用すると、それぞれ独立したエンティティやサブエンティティを組み合わせることができます。 複合エンティティ パターン は、サブエンティティ間の関係を確立するために使用しなければなりません。サブエンティティは、複合エンティティパターンにおいて@subentityのように@タグを使用して複合エンティティに含まれます。これらのサブエンティティは事前に定義されている必要があり、現在のダイアログフローの一部であってはなりません。また、サブエンティティは他のダイアログタスクからも使用できます。 AND や OR などのさまざまなパターンを構築することができます。これは、エンティティパターンの定義づけに使用されているのと同じです。 (詳細はこちらを参照) 複合エンティティの値は JSON オブジェクトの形をしており、サブエンティティはそのオブジェクトのプロパティとして参照することができます。これは、使用できるサブエンティティにアクセスするためです。 {{{context.entities.. }} 各サブエンティティは、複合エンティティから独立して使用された場合にアクセスされるための、定義された構造を使用してアクセスすることができます。たとえば、サブエンティティが空港タイプである場合、空港名には次のようにアクセスできます:{{context.entities.<<composite_entity>>.<<sub_entity>>.AirportName }} 複合エンティティの作成 複合エンティティの構築には、サブエンティティの作成と、サブエンティティ間の関係の確立という以下の手順を実行します。 サブエンティティの作成 複合エンティティは他のエンティティとの組み合わせであるため、ダイアログタスクで個々のエンティティを構築する必要があります。上記の例から車種をキャプチャするには、まず必要な詳細をキャプチャすることのできるサブエンティティを作成する必要があります。車エンティティの、サブエンティティのマッピングサンプルを以下に例示します。 関連エンティティ エンティティタイプ メーカー 項目のリスト:ユーザーの発言から車のブランド名をキャプチャします。開発者は、このリストをエンティティ内に構築しておく必要があります。 モデル 価格リスト:ユーザーの発言から車のモデル名をキャプチャします。 製造年 数字:ユーザーの発言から製造年をキャプチャします。ボットは自動的に数字を認識します。 色 色:ユーザーの発言から色をキャプチャします。ボットは自動的に色を認識します。 注意:サブエンティティは複合エンティティのみに結合することができ、他の目的には使用できません。現在のダイアログタスクでサブエンティティを作成している場合は、これらのサブエンティティへの遷移をすべて削除して、ダイアログタスクのフローの一部にならないようにしてください。 複合エンティティの定義 ダイアログタスクの関連ノードの後に 複合エンティティを追加します。このエンティティが複数のエンティティ値を取り込むようにするには、複合パターンを作成する必要があります。これを行うには、プロパティパネルを開き、複合パターンセクションで、関連するパターンを追加します。作成できるさまざまなパターンは、エンティティパターンの定義に使用されるものと似ています。 (詳細はこちらを参照してください。) 上記の複合エンティティパターンについて、以下にサンプル音声と出力を示します。 サンプル発言 対応パターン 出力 2018 Tesla Model Sを購入したい…

サポートされているエンティティタイプ

エンティティタイプは、認識とシステムのパフォーマンスを向上させるために、ユーザーの発言から期待されるタイプのデータを NLP インタープリタに提供します。 Kore.ai NLP インタープリタはユーザの発言からエンティティを抽出します。ユーザーが必要なエンティティを入力しない場合は、エンティティを提供するようにユーザーに促すボットレスポンスノードを定義することができます。詳細については、ボットレスポンスノードの操作を参照してください。 エンティティノードには、以下のエンティティタイプを指定することができます。 住所 複合 個人名 空港 日付 パーセンテージ 添付書類 期間 電話番号 メールアドレス 日時 数量 都市 説明 文字列 国 項目のリスト (列挙) 時間 会社 項目のリスト (ルックアップ) タイムゾーン 色 場所 URL カスタム 数字 郵便番号 通貨 住所 200 E Main ST Pheonix AZ 85123 USA のように、標準的な米国とドイツの住所フォーマットで書かれた住所をキャプチャします。完全な住所は文字列としてキャプチャされます。””200 E Main ST…

カスタム認証の実装

サービスノードから認証を管理する外部アプリケーションに URL を提供することで、ボットのカスタム認証を実装できます。 プラットフォームは、成功および失敗した認証シナリオを処理し、対応するタスクフローを管理するために必要な機能を提供します。 カスタム認証を実装するための ボットビルダーメカニズムには、次のステップがあります。 ステップ1:サービスノードからカスタム認証URLを生成する カスタム認証を実装するには、まず、認証サービスの URL を使用してダイアログタスクのサービスノードを設定する必要があります。 そうすることで、入力した認証 URL がボットの Webフックで内部的に追加され、カスタム認証 URL が作成されます。 これにより、認証サービスが認証プロセスの完了後に必要な詳細情報をプラットフォームに送信できるようになります。 ステップ2:コンテキストを入力し、カスタムURLをユーザーに提示する タスクの実行中、ダイアログがサービスノードに到達すると、プラットフォームはコンテキスト内にカスタマー認証URLを入力し、認証証明を要求するメッセージをエンドユーザーに提示します。そのあと、プラットフォームは外部認証サービスがWebフック上でレスポンスを送信するまで待機します。 ステップ 3: 認証完了後のコールバックを受信する 外部システムは、コンテキストオブジェクトに入力されたWebフックURLを使用して、プラットフォームへのコールバックを実行します。すべての処理が完了すると、ノードに定義された遷移に基づいてダイアログタスクが進行します。 カスタム認証サービスの設定 カスタム認証を実装するダイアログタスクを開きます。 タスクフロー内の適切なノードの後に、サービスノードを追加します。 ノードのコンポーネントプロパティパネルで、 ノード名を入力します。 サービスタイプ ドロップダウンリストで、 カスタム認証サービス を選択します。 認証 URL フィールドに、外部認証サービスの URL を入力します。 レスポンスセクションには、ボットがユーザーに提示するデフォルトの認証要求メッセージが表示されます。メッセージを直接編集するか、管理をクリックして、高度なまたはチャネル固有のメッセージを定義することができます。メッセージのフォーマットとテンプレートについて学習します。 注意: ここでのデフォルトメッセージは、サービスノードのデフォルト名に基づいています。 次の URL を使用して認証 {{context.<<Service Node Name>>.customAuthenticationURL}}に進んでください。 ノード名をあとで変更した場合は、変更後の名前を反映するようにメッセージも更新してください。 最後に、ノードの遷移を定義します。

ダイアログタスク

Kore.ai Dialog tasks represent a full conversational flow between a user and a Bot with a network of nodes that are connected using conditions. For example, if you create a banking Bot, some of the tasks you will want your Bot to do for users is to: retrieve and monitor…
Menu