대화 세션이란 봇과 사용자 간의 중단 없는 상호 작용이라고 정의할 수 있습니다. 이러한 세션은 봇 빌더 및 봇 관리자 콘솔 플랫폼의 다양한 분석 대시보드에서 사용됩니다. Kore.ai 가상 비서 플랫폼을 사용하면 이러한 대화 세션을 생성하고 종료하는 방법을 사용자 정의할 수 있습니다.

대화 세션은 청구 세션과 다릅니다. 청구 세션에 대한 자세한 내용은 여기를 참조하세요.

개요

대화 세션이란 봇과 최종 사용자 간의 중단 없는 상호 작용이라고 정의할 수 있습니다.

  • 플랫폼의 v7.2 출시 이전 – 최종 사용자의 마지막 상호 작용 이후 비활성 기간(15분으로 설정)이 경과한 후 새 세션이 생성되었습니다.
  • v7.2 이후 – 비활성 기간(15분으로 설정)이 경과한 후
    • 최종 사용자가 돌아와 같은 의도에서 계속 진행하면 현재 세션이 계속됩니다.
    • 최종 사용자가 새 의도나 기존 의도에 대해 유효하지 않은 입력과 함께 돌아올 경우 새 세션이 생성됩니다.
  • v8.0 이후 플랫폼은 다음과 같은 옵션을 제공합니다.
    • 비활성 상태 후 세션을 사전에 종료함 세션 관리에 대한 자세한 내용은 여기를 참조하세요.
    • 비활성 후 세션을 사전에 종료하지 않음 – 위에서 설명한 v7.2 동작을 유지합니다.

대화 세션은 가상 비서 또는 봇과의 모든 상호 작용에 대해 생성되며 다음을 포함합니다.

  • 모든 대화는 대화형 세션으로 표시된 사용자의 메시지를 하나 이상 포함합니다. 이러한 대화는 권한 부여 세부 정보 제공을 비롯한 모든 채널과 이벤트에서 모든 최종 사용자 상호 작용을 포함합니다.
  • onConnect 이벤트 메시지와 같은 모든 봇으로 시작한 대화 세션은 비대화형 세션으로 기록됩니다. 이러한 세션은 사용자 메시지가 수신되는 즉시 대화형 세션으로 업데이트됩니다. 비대화형 세션은 청구 세션 계산에 고려되지 않습니다.
  • 개발자 상호 작용도 대화 세션에 포함됩니다. 플래그는 사용자 세션을 개발자 세션과 구분하며, 이러한 개발자 세션에 대해서는 청구 세션이 생성되지 않습니다.

참고: 대화 세션에 비대화형 및 개발자 상호 작용을 포함시키기 위해 ver8.0을 사용합니다.

세션 관리

이 기능은 플랫폼 v8.0에서 출시되었습니다. 빌드 탭의 설정에서 세션 관리 옵션을 선택하여 대화 세션 동작을 정의할 수 있습니다.

  • 비활성 상태 후 세션을 사전에 종료하지 마세요 – 이 옵션은 사용자가 15분 동안 비활성 상태였다 돌아와 새 의도를 제공할 때만 세션을 종료합니다. 이 동작은 플랫폼의 ver8.0 릴리스 이전의 기본 동작입니다. 이 옵션은 향후 릴리스에서 사용되지 않습니다.
  • 비활성 상태 후 세션을 사전에 종료하세요 – 이 옵션은 지정된 비활성 기간 후에 세션을 종료합니다. 다음과 같은 매개 변수를 설정할 수 있습니다.
    • 비활성 기간 – 기본적으로 15분으로 설정되어 있으며 세션을 종료할 시간을 결정합니다. 5분에서 60분 사이로 값을 설정할 수 있습니다.
    • 사전 종료 동작 – 사용자에게 알리지 않고 세션을 종료하거나 사용자에게 메시지를 보내 세션 종료를 알릴 수 있습니다. 이 메시지는 응답 관리 링크를 사용하여 사용자 정의할 수 있습니다.

구현

대화 세션은 언제 시작하나요? 대화 세션은 모든 상호 작용에 대해 생성됩니다.

  • 모든 채널 및 이벤트에서 최종 사용자 상호 작용 – 대화 세션은 On_connect에 대해 생성됩니다. 예: 스크립트 실행, 메시지 실행, 대화 시나리오 트리거. 이러한 대화 세션은 두 가지 카테고리로 구성됩니다.
    • 대화형 세션은 사용자의 메시지를 하나 이상 포함하는 대화입니다.
    • 비대화형 세션은 사용자의 메시지를 포함하지 않는 대화입니다. 모든 봇으로 시작한 대화 세션은 '비대화형'으로 시작합니다. 이러한 세션은 사용자 메시지가 수신되는 즉시 대화형 세션으로 업데이트됩니다. 비대화형 세션은 청구 세션 계산에 고려되지 않습니다.
  • 개발자 상호 작용은 대화 세션 생성에도 고려되지만 사용자 세션과 다르게 표시되며 청구 세션에는 고려되지 않습니다.

대화 세션은 언제 종료되나요?

  • 플랫폼은 위에서 설명한 세션 관리 옵션에 설정된 비활성 시간이 지나면 비활성 세션을 사전에 종료합니다.
  • 다음 발화가 감지되는 경우 – "Discard"
  • 대화 창을 새로 고침하면 "refresh: true"가 감지됩니다.
  • 현재 진행 중인 대화를 종료하려면 koreUtil.closeConversationSession 플랫폼 기능을 실행합니다. 자세한 내용은 여기를 참조하세요.

대화 세션이 종료되면 어떤 일이 발생합니까?

  • 세션 종료 후 다음 정보 또는 변수가 지워집니다.
    • 대화 세션
    • 봇 사용자 세션(사용자 정의 TTL이 없는 개발자 정의 변수)
    • 대화 컨텍스트(항목 파일 및 대화 세부 정보)
    • 대화가 설정되면 대화 세션을 종료하기 전에 플랫폼에서 지원 채널의 사용자에게 세션 종료 메시지를 사전 전송합니다.
  • "refresh: true"인 경우
    • 전체 세션 정보가 지워집니다.
    • 새 대화 세션이 생성됩니다.
  • "discard all"인 경우
    • 대화 컨텍스트, 현재 및 기록 태그가 지워집니다.
    • 감정적 어조가 재설정됩니다.
    • 같은 대화 세션이 계속됩니다.
  • "discard"인 경우
    • 현재 대화 컨텍스트가 지워집니다.
    • 현재 태그가 기록 태그에 마지막으로 업데이트된 '태그'로 대체되고, 기록 태그가 지워집니다.

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.
You need to agree with the terms to proceed

会話セッションとは、ボットとユーザー間で行われる連続したやり取りであると定義されています。これらのセッションは、ボットビルダーやボット管理コンソールの複数の分析ダッシュボードで使用されます。Kore.aiのバーチャルアシスタントプラットフォームによって、これらの会話セッションをどのように作成および終了するかをカスタマイズすることができます。

会話セッションは請求セッションとは異なります。請求セッションについてはこちらを参照してください

概要

会話セッションとは、エンドユーザーとボット間で行われる連続したやり取りであると定義されています。

  • バージョン7.2のプラットフォームリリース前 – エンドユーザーが最後に操作してから休止状態持続期間(15分に設定)が経過すると、新しいセッションが作成されていました。
  • バージョン7.2以降 – 休止状態持続期間(15分に設定)が経過した後、
    • エンドユーザーが戻ってきて同一インテントで続行した場合、現在のセッションは継続されます。
    • エンドユーザーが戻ってきて新しいインテントで続行したり、既存のインテントに対して無効な入力をした場合、新しいセッションが作成されます。
  • バージョン8.0以降のプラットフォームには、次のようなオプションがあります。
    • 休止状態後に、主動的にセッションを閉じる – セッションの管理の詳細については、こちらを参照してください
    • 休止状態後に、主動的にセッションを閉じない – 前述のバージョン7.2の動作を維持します。

会話セッションは、バーチャルアシスタントまたはボットとのすべてのやり取りに対して作成されます。これには以下のものが含まれます。

  • 対話セッションとしてマークされた、ユーザーからの1つ以上のメッセージを含むすべての会話。これには、認証の詳細を含む、すべてのチャネルとイベントにおけるエンドユーザーのすべてのやり取りが含まれます。
  • onConnectイベントメッセージなど、ボットが開始したコンバージョンセッションは、すべて非対話セッション;として記録されます。これらのセッションは、ユーザーメッセージが受信されるとすぐに対話セッションとして更新されます。非対話セッションは、請求セッションの計算には考慮されません。
  • 開発者のやり取りも会話セッションとして含まれます。フラグはユーザーセッションと開発者セッションを区別し、これらの開発者セッションに対して請求セッションは作成されません。

注意:会話セッションに非対話型および開発者のやり取りが含まれるようになったのは、バージョン8.0からです。

セッションを管理

この機能は、プラットフォームのバージョン8.0でリリースされました。設定 > か環境設定セッションを管理オプションを使用して、会話セッションの動作を定義することができます。

  • 休止状態後に主動的にセッションを閉じない – このオプションでは、ユーザーが15分以上の休止状態の後に戻ってきて新しいインテントを入力した場合にのみ、セッションを閉じます。このオプションは、プラットフォームのバージョン8.0がリリースされる前のデフォルトの動作でした。このオプションは、今後のリリースでは非推奨となります
  • 休止状態後に主動的にセッションを閉じる – このオプションは、定義された休止状態時間の経過後、セッションを閉じます。以下のパラメータを設定することができます。
    • 休止状態持続期間 – デフォルトでは15分に設定されており、セッションを終了するタイミングを決定します。5~60分の任意の値を設定することができます。
    • 終了前の動作 – ユーザーに通知せずにセッションを終了するか、メッセージを送信してセッションの終了をユーザーに通知するかを選択することができます。このメッセージは、応答の管理リンクを使用してカスタマイズすることができます。

導入

会話セッションはいつ開始されますか?会話セッションは、すべてのやり取りに対して作成されます。

  • すべてのチャネルとイベントにおけるエンドユーザーとのすべてのやり取り – 会話セッションは、On_connectに対して作成されます(スクリプトの実行、メッセージの実行、ダイアログのトリガーのシナリオ)。これらの会話セッションには次の2つのカテゴリがあります。
    • 対話セッションとは、ユーザーからの1つ以上のメッセージを含む会話を指します。
    • 非対話セッションとは、ユーザーからのメッセージがない会話を指します。ボットが開始する会話セッションは、すべて「非対話型」として開始されます。これらのセッションは、ユーザーからのメッセージを受信するとすぐに対話セッションとして更新されます。非対話セッションは、請求セッションの計算には考慮されません。
  • 開発者のやり取りも会話セッションの作成に考慮されますが、これらはユーザーセッションとは異なるものとして表示され、請求セッションの作成には考慮されません。

会話セッションはいつ終了しますか?

  • 前述の「セッションを管理」オプションで設定された休止状態時間が経過すると、プラットフォームは休止中のセッションを積極的に閉じるようになります。
  • 「破棄」の発話が検出された場合
  • チャットウィンドウが更新された、つまり「refresh: true」が検出された場合

会話セッションが終了するとどうなりますか?

  • セッション終了後、以下の情報または変数がクリアされます。
    • 会話セッション
    • ボットユーザーセッション(カスタムTTLのない開発者定義の変数)
    • ダイアログコンテキスト(トピックファイルと会話の詳細)
    • 設定済みの場合、会話セッションを閉じる前に、プラットフォームはサポートされているチャネルのユーザーにセッション終了のメッセージを積極的に送信します。
  • refresh: true」の場合:
    • 全セッション情報がクリアされます。
    • 新しい会話セッションが作成されます。
  • すべて破棄」の場合
    • ダイアログコンテキストの現在のタグと過去のタグがクリアされます。
    • センチメントトーンがリセットされます。
    • 同じ会話セッションが継続されます。
  • 破棄」の場合
    • 現在のダイアログコンテキストがクリアされます。
    • 現在のタグは、過去のタグの中の最後に更新された「タグ」に置き換えられ、過去のタグはクリアされます。

会話セッションの開始と終了時にはどうなりますか?ユーザーがボットとやり取りを行うたびに、ユーザー、セッション、進行中のダイアログ/タスクに関する情報を保持するコンテキストオブジェクトが作成されます。これらの値はシステムによって維持されます。コンテキストオブジェクトの一部である変数は、次のように分類できます。

  1. セッションコンテキスト – 詳細はこちらを参照してください
    1. グローバル – ユーザーが会話を開始するとすぐに作成され、セッションが終了するまで保持されます。
    2. ダイアログ – 特定のタスク(ダイアログ)用に作成され、ユーザーインテントに応じて変更されます。
  2. セッションコンテキスト – 詳細はこちらを参照してください
    1. エンタープライズコンテキスト – 企業内のすべてのボットとすべてのユーザーが利用できる、システムで定義されたキーと値の組み合わせです。
    2. ボットコンテキスト – システムで定義されたキーと値の組み合わせで、この特定のボットのユーザー全員が利用できます。
    3. ユーザーコンテキスト – ユーザーがすべてのボットで利用できるシステム定義のキーと値の組み合わせです。
    4. ユーザーセッション – エンタープライズ内のすべてのボットが、この特定のユーザーに対して定義することができるキーと値の組み合わせです。
    5. ボットユーザーセッション – 特定のユーザーからの入力に基づいて、特定のボットに定義することができるキーと値の組み合わせです。

バーチャルアシスタントの耐用期間におけるさまざまなマイルストーンは、次のようにマークすることができます。

グローバルコンテキストはセッション開始時に作成され、ダイアログコンテキストはダイアログ開始時に作成されます。次の表は、さまざまなセッション終了とダイアログ終了のシナリオに対するコンテキスト動作の詳細です。

コンテキストオブジェクト パラメータ セッション終了 ダイアログ終了
すべて破棄/やり直す ダイアログを終了/破棄
グローバルコンテキスト ccId クリア クリア 破棄された場合に保持されるクリア
currentLanguage 保持 保持 保持
suggestedLanguages 保持 保持 保持
onHoldTasks クリア 保持 保持
dialog_tone クリア 保持 保持
currentTraits クリア クリア クリア
intentAmbiguityCount クリア クリア クリア
ユーザー入力 保持 保持 ダイアログ終了の場合に保持されるクリア
履歴 クリア クリア クリア
message_tone クリア クリア 保持
currentTags 保持 保持 保持
smallTalk クリア 保持 保持
endOfTask 達成/キャンセルされたタスクの詳細 キャンセルされたタスクの詳細 達成/キャンセルされたタスクの詳細
historicTags クリア *再接続および更新の場合に保持される 保持 保持
開発者 クリア 保持 クリア
updatedOn クリア 保持 保持
ダイアログコンテキスト ボット クリア クリア クリア
botid クリア クリア クリア
taskid クリア クリア クリア
意図 クリア クリア クリア
intentType クリア クリア クリア
invocationSource クリア クリア クリア
エンティティ クリア クリア クリア
entityErrorCount クリア クリア クリア
amendEntities クリア クリア クリア
currentNodeId クリア クリア クリア
currentNodeName クリア クリア クリア
previousNodeId クリア クリア クリア
previousNodeName クリア クリア クリア
同義語 クリア 保持 保持
followupIntents クリア クリア 保持
セッションコンテキスト エンタープライズコンテキスト TTL*に基づいてクリア 保持 保持
ボットコンテキスト TTL*に基づいてクリア クリア クリア
ユーザーコンテキスト TTL*に基づいてクリア 保持 保持
ユーザーセッション TTL*に基づいてクリア 保持 保持
ボットユーザーセッション デフォルト – クリア、カスタム – TTL*に基づいてクリア 保持 保持

*TTL – Time to Live

  • ダイアログコンテキストオブジェクトの場合、プラットフォームによって6時間に設定されます。
  • ボットコンテキスト、ボットコンテキスト、ユーザーコンテキスト、ユーザーセッション、ボットユーザーセッションについては、30分に設定されていますが、開発者によってカスタマイズすることができます。

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.
You need to agree with the terms to proceed

Conversation sessions are defined as an uninterrupted interaction between the bot and the user. These sessions are used in multiple analytics dashboards in Bot Builder as well as Bot Admin Console platforms.

Kore.ai virtual assistant platform allows you to customize how these Conversation Sessions are to be created and closed.

Conversation Sessions are different from Billing Sessions, refer here for more on Billing Sessions.

Overview

A Conversation Session is defined as an uninterrupted volley between the end-user and the bot.

  • Before the release of v7.2 of the platform – a new session was created after the inactivity duration (set as 15 mins) has elapsed since the end-users’ last interaction.
  • Post v7.2 – after the inactivity duration (set as 15 mins) has elapsed
    • if the end-user comes back and continues with the same intent, then the current session continues;
    • if the end-user comes back with a new intent or with an invalid input for the existing intent, a new session is created.
  • Post v8.0 platform gives you an option to:
    • Proactively close the sessions after inactivity – for details on Manage Sessions refer here.
    • Not proactively close the sessions after inactivity – retain the v7.2 behavior described above;

Conversation Sessions are created for all interactions with the virtual assistant or bot. These include:

  • All conversations that include one or more messages from the user marked as interactive sessions. These include all end-user interactions across all channels and events including providing authorization details.
  • All bot initiated conversion sessions like onConnect event messages are recorded as non-interactive sessions. These sessions will be updated as Interactive sessions as soon as a user message is received. Non-interactive sessions are not considered for calculating the billing sessions.
  • Developer interactions are also included as conversation sessions. A flag differentiates the user sessions from developer sessions and billing sessions are not created for these developer sessions.

Note: inclusion of non-interactive and developer interactions in conversation sessions was done with ver8.0.

Manage Sessions

This feature was released with v8.0 of the platform.

Using the Manage Sessions option under Configurations from Build tab you can define the Conversation Session Behavior:

  • Do not proactively close the sessions after inactivity – this option will close the session only when the user returns after 15 minutes of inactivity and provides a new intent. This was the default behavior before the release of ver8.0 of the platform. This option will be deprecated in future releases.
  • Proactively close the sessions after inactivity – this option will close the session after a defined duration of inactivity. You can set the following parameters:
    • Inactivity Duration – this is set to 15 minutes by default and decides when the session should close. You can set it to any value between 5-60 minutes.
    • Pre-closure Behavior – you can choose to close the session without informing the user or inform the user about the session closure by sending out a message. This message can be customized using the Manage response link.

Implementation

When does a Conversation Session start?

Conversation Sessions will be created for all interactions:

  • All end-user interactions across all channels and events – Conversation sessions will be created for On_connect – Run a script, Run a Message, Trigger a Dialog scenario. There are two categories of these conversation sessions:
    • Interactive sessions are conversations that include one or more messages from the user.
    • Non-interactive sessions are conversations with no messages from the user. All bot initiated conversion sessions will start as ‘Non-interactive’. These sessions will be updated as Interactive sessions as soon as a user message is received. The non-interactive sessions will not be considered for calculating the billing sessions.
  • Developer interactions will also be considered for creating conversation sessions but these will be marked as different from the user sessions and will not be considered for Billing Sessions.

When does a Conversation Session close?

  • The platform will proactively close inactive sessions after the specified time of inactivity as set in the Manage Sessions option described above.
  • When the following utterances are detected – “Discard”
  • When the chat window is refreshed ie “refresh: true” is detected.
  • When you run the koreUtil.closeConversationSession platform function for closing any active conversation. For more information, refer here.

What happens when a Conversation Session closes?

  • Post-session closure, the following information or variables will be cleared:
    • Conversation session;
    • Bot User Session (developer-defined variables without custom TTL)
    • Dialog Context (Topic File and Conversation Details)
    • If configured, before closing the conversation session, the platform will proactively send a session closure message to the users on supported channels.
  • For “refresh: true”:
    • Complete session information is cleared;
    • A new conversation session is created.
  • For “discard all
    • The Dialog context, Current and Historic Tags are cleared;
    • The Sentiment Tones are reset;
    • The same Conversation Session will be continued
  • For “discard
    • The current Dialog context will be cleared;
    • The Current Tags will be replaced with the last updated ‘tags’ in the Historic Tags, and the Historic Tags would be cleared;

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.
You need to agree with the terms to proceed