チャットボット/NLP (自然言語処理)プラットフォーム統合の概要
NLP統合の概要
デジタルヒューマンプラットフォームでは、Conversation platform integration API を使用して、任意のサードパーティのNLPを統合することができます。これらのプラットフォームは、任意の商用クラウドサービス(Dialogflow、Microsoft Bot Framework、Amazon Lexなど)、または必要なAPI仕様に準拠した顧客開発のサービスやオーケストレーションレイヤーである可能性があります。
Google Dialogflow
デジタルヒューマンプラットフォームは、開発不要で Google Dialogflow エージェントに接続するように設定することができます。試用中でも、UneeQ Creator に Dialogflow エージェントを統合することができます。もしCreator にアクセスできない場合は、当社のカスタマーサクセスチームがお客様のセットアップと運用をお手伝いします。
IBM Watson Assistant
デジタルヒューマンプラットフォームは、開発を必要とせずに IBM Watson Assistant ワークスペースに接続するように構成することができます。弊社のカスタマー・サクセス・チームが、お客様の立ち上げと運用をお手伝いします。
その他のNLP
HTTP POSTリクエストを受け入れ、このドキュメントの仕様を満たすことにより、チャットボットプラットフォームはデジタルヒューマンプラットフォームからデータを受信し、応答を通じてプラットフォームに指示を返すことができます。
リクエストの仕様
ヘッダー
Key | Value |
Content-Type | application/jwt or application\json depending on the body payload type |
ボディ
JSON
Field | Type | Description |
sid | String | アクセストークンを取得するときに設定される、この会話セッションを識別する値です。obtaining an access token. |
fm-custom-data | String | アクセストークンを取得する際に設定されているアドホックな値です。 obtaining an access token. |
fm-question | String | ユーザーが デジタルヒューマンに行った質問です。 |
fm-conversation | String | このセッションに関連する以前の応答でプラットフォームに渡された値です。このフィールドに JSON オブジェクトが含まれている場合は、文字列化されます。 |
fm-avatar | String | インタラクション(対話)についてプラットフォームがNLPに渡すコンテキストデータです。このフィールドには、対話を開始するためのメッセージをNLPに要求している場合、"{\"type\":\"WELCOME"}"が含まれている可能性があります。
このフィールドにJSONオブジェクトが含まれている場合は、文字列化されます。 |
{ "sid": "18220511-b8bb-4164-9d43-dcf4e33e07b1" "fm-custom-data": "{}" "fm-question": "Hello, I am asking a question" "fm-conversation": "{}" "fm-avatar": "{}" }
レスポンスの仕様
返信で送信されるすべての応答は、コンテンツタイプapplication/ jsonのJSON形式である必要があります。応答の本文の有効な形式を以下に示します。
有効なレスポンスタイプ
Code | Status | Response |
200 | OK | { "answer": ANSWER, "matchedContext": MATCHED_CONTEXT, conversationPayload: CONVERSATION_PAYLOAD } |
400 | Bad Request | { "error": ERROR_DESCRIPTION } |
403 | Forbidden | { "error": ERROR_DESCRIPTION } |
500 | Server Error | { "error": ERROR_DESCRIPTION } |
レスポンスフィールドの仕様
Field | Type | Description |
ANSWER | String | ユーザーがデジタルヒューマンに尋ねた質問への回答。これは、以下で説明するJSONオブジェクトです。 |
CONVERSATION_PAYLOAD | String | リクエスト間で使用される、チャットボットプラットフォームが必要とする情報。この値は、次のリクエストでプラットフォームによって返されます。 |
MATCHED_CONTEXT | String | チャットボットが作成した意図の一致をプラットフォームに通知します。
|
ERROR_DESCRIPTION | String | 発生したエラーの説明。 |
{ "answer": "{\"answer\":\"Welcome to UneeQ, how can I help?\",\"instructions\":{}}", "matchedContext": "", "conversationPayload": "{}" }
JSON 応答形式仕様
応答時間
デジタルヒューマンとの会話(インタラクション)は、リアルタイムであるため、待ち時間の影響を受けやすいものです。したがって、応答時間は、デジタルヒューマンプラットフォームからのリクエストを処理する際に考慮すべき重要な要素です。
これらの応答時間のサービスレベル目標は、95 パーセンタイル(percentile) で200ms(0.2秒)です。
応答に1000ms(1秒)以上かかると、リクエストはWeb SDKエラーを生成しますが、アバターは応答を続けます。
Field | Type | Description |
answer | String | ユーザーがデジタルヒューマンに質問したことに対する回答をテキストで表示します。 |
instructions | String | 送信されるプラットフォームの指示は、空であっても有効なJSONオブジェクトでなければなりません。 |
アクセストークンの取得
デジタルヒューマンとの会話セッションを開始するには、まず、お客様のプロセスは、お客様のウェブサイトとJavascript SDKがデジタルヒューマンプラットフォームを認証するために使用する1回限りのアクセストークンを取得する必要があります。
カスタマーJWTトークン
1回限りの利用トークンを取得するためのプロセスでは、JWT暗号化(クライアント側)とJWT復号化(デジタルヒューマンプラットフォーム側)が必要になります。これを実現するためには、共有の JWT 秘密を双方が保有している必要があります。この JWTトークンは、お客様のプラットフォーム テナントに関連付けられており、弊社からお客さまに提供致します。
リクエストの仕様
アクセストークンを取得するには、POSTリクエストを以下のリクエストフォーマットを使用して /api/v1/clients/access/tokens に送信します。
ヘッダー
Key | Value |
Content-Type | application/jwt |
workspace | 開始している会話のワークスペース会話 ID |
ボディ
このペイロードは、顧客のJWTトークンを使用して暗号化する必要があります。
Field | Type | Description |
sid | String | A value you set to identify this conversation session |
fm-custom-data | String | Any ad-hoc values you wish to be sent in any subsequent request from the Platform |
fm-workspace | String | The UneeQ workspace id that this conversation will relate to |
Field | Type | Description |
sid | String | この会話セッションを識別するために設定した値 |
fm-custom-data | String | プラットフォームからの後続のリクエストで送信したいアドホック値 |
fm-workspace | String | この会話が関連するUneeQワークスペースID |
レスポンス形式仕様
応答は、コンテンツタイプがJSON application/json になります。
Code | Status | Response |
200 | OK | { "token": SINGLE_USE_TOKEN } |
400 | Bad Request | { "error": ERROR_DESCRIPTION } |
401 | Unauthorized | { "error": ERROR_DESCRIPTION } |
403 | Forbidden | { "error": ERROR_DESCRIPTION } |
500 | Server Error | { "error": ERROR_DESCRIPTION } |
トークンの値は、Javascript SDK がデジタル ヒューマンとの会話セッションをインスタンス化するために使用することができます。
UneeQ CreatorでNLPプラットフォームと接続する
UneeQ Creator で Persona を編集する際にリモート URL を提供することで、NLPプラットフォームに接続することができます。
Creatorサービスは終息しました。次世代の同等サービスを準備していますが、現時点ではRemoteURLを弊社にご提供いただき、エンジニアにて設定致します。
フィールド | 説明 | 例 |
Remote URL | NLPプラットフォームURLを入れてください。この URL はSSL化された https:// アドレスである必要があり、この URL にのみリクエストを POST します。 | https://yourdomain.com/secure-url/ |
Watson アシスタント
デジタルヒューマンプラットフォームは、開発を必要とせずにIBM Cloud Watson Assistantワークスペースに接続するように構成できます。 Watson Assistantワークスペースへの接続は、管理UIのワークスペース設定で構成できます。
Google ダイアログフロー
デジタルヒューマンプラットフォームは、開発を必要とせずにGoogle Dialogflowに接続するように構成できます。 Dialogflowへの接続は、管理UIで設定できます。
最終更新日 January 1, 2023