(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-09-13
(45)【発行日】2022-09-22
(54)【発明の名称】複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法及び装置、電子機器、記憶媒体並びにコンピュータプログラム
(51)【国際特許分類】
G06F 16/90 20190101AFI20220914BHJP
G06Q 50/10 20120101ALI20220914BHJP
【FI】
G06F16/90 100
G06Q50/10
【外国語出願】
(21)【出願番号】P 2021042994
(22)【出願日】2021-03-17
【審査請求日】2021-03-17
(31)【優先権主張番号】202010440939.5
(32)【優先日】2020-05-22
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】110000729
【氏名又は名称】特許業務法人 ユニアス国際特許事務所
(72)【発明者】
【氏名】ファン、リャンホアン
(72)【発明者】
【氏名】ルオ、シュエフォン
(72)【発明者】
【氏名】チャオ、シアオチュン
(72)【発明者】
【氏名】ホー、シエ
(72)【発明者】
【氏名】パイ、チャンフー
【審査官】三橋 竜太郎
(56)【参考文献】
【文献】特開2014-191271(JP,A)
【文献】特開2009-193532(JP,A)
【文献】米国特許出願公開第2018/0090141(US,A1)
【文献】特開2004-101901(JP,A)
【文献】特開2007-079852(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G06Q 50/10
(57)【特許請求の範囲】
【請求項1】
複数ターン会話におけるパブリックシナリオ会話のバックトラッキング
用の装置が実行する方法であって、クエリ文の受信に応答し、前記クエリ文に基づいてビジネスシナリオを確定するステップと、
前記ビジネスシナリオにアクセスし、前記ビジネスシナリオに対応する第1の会話ノードツリーにアクセスするステップと、
前記第1の会話ノードツリーの各パラメータ検証会話ノードに対して、該パラメータ検証会話ノードにより関連パラメータの検証を行うことによってパブリックシナリオにアクセスする必要があると判断された場合、該パラメータ検証会話ノードを記憶し、前記パブリックシナリオにジャンプし、前記パブリックシナリオの第2の会話ノードツリーにアクセスするステップと、
前記第2の会話ノードツリーによってユーザー情報を収集し、収集に成功した場合、前記第2の会話ノードツリーの処理結果がバックトラッキング条件を満たすかどうかを判断するステップと、
前記第2の会話ノードツリーの処理結果がバックトラッキング条件を満たすと、記憶されたパラメータ検証会話ノードにより前記ビジネスシナリオに戻り、前記ビジネスシナリオの他の会話ロジック処理を実行し続くステップと、を含む
方法。
【請求項2】
前記方法は、
前記パブリックシナリオをクローズ状態に設定し、ユーザーが入力した意図に応じて前記パブリックシナリオからシナリオを切り替えることを禁止するステップをさらに含む請求項1に記載の方法。
【請求項3】
前記の前記クエリ文に基づいてビジネスシナリオを確定するステップは、
前記クエリ文に対してセマンティック分析を行い、意図があるかどうかを判定するステップと、
意図がある場合、前記意図に対応するビジネスシナリオを確定するステップと、を含む請求項1に記載の方法。
【請求項4】
前記の前記クエリ文に基づいてビジネスシナリオを確定するステップは、意図がなく、且つ現在の会話がどのシナリオにもないと、ユーザーが意図を入力するようにガイドするステップと、入力された意図に応じて対応するビジネスシナリオを確定するステップと、を含む請求項3に記載の方法。
【請求項5】
前記方法は、
意図がないが、現在の会話がシナリオにある場合、現在の会話が所在するシナリオをビジネスシナリオとして確定するステップをさらに含む請求項3に記載の方法。
【請求項6】
前記方法は、
収集に失敗した場合、再収集を行うステップと、
再収集の回数が所定の閾値に達すると、収集に失敗したパブリックシナリオを終了するステップと、をさらに含む請求項1に記載の方法。
【請求項7】
前記方法は、
前記第2の会話ノードツリーにおける第2の会話ノードに対して、該第2の会話ノードにより関連パラメータの検証を行うことによって新しいパブリックシナリオにアクセスする必要があると判断した場合、該第2の会話ノードを記憶し、前記新しいパブリックシナリオにジャンプし、前記新しいパブリックシナリオの第3の会話ノードツリーにアクセスするステップと、
前記第3の会話ノードツリーによってユーザー情報を収集し、収集に成功した場合、前記第3の会話ノードツリーの処理結果がバックトラッキング条件を満たすかどうかを判断するステップと、
前記第3の会話ノードツリーの処理結果がバックトラッキング条件を満たす場合、記憶された第2の会話ノードにより前記パブリックシナリオに戻り、前記パブリックシナリオの他の会話ロジック処理を実行し続くステップと、をさらに含む請求項1~6のいずれかに記載の方法。
【請求項8】
前記のユーザー情報を収集するステップは、ユーザー情報を収集した他のパブリックシナリオから収集されたユーザー情報を継承するステップを含む請求項7に記載の方法。
【請求項9】
複数ターン会話におけるパブリックシナリオ会話のバックトラッキング装置であって、クエリ文の受信に応答し、前記クエリ文に基づいてビジネスシナリオを確定するように構成される確定ユニットと、
前記ビジネスシナリオにアクセスし、前記ビジネスシナリオに対応する第1の会話ノードツリーにアクセスするように構成されるアクセスユニットと、
前記第1の会話ノードツリーの各パラメータ検証会話ノードに対して、該パラメータ検証会話ノードにより関連パラメータの検証を行うことによってパブリックシナリオにアクセスする必要があると判断された場合、該パラメータ検証会話ノードを記憶し、前記パブリックシナリオにジャンプし、前記パブリックシナリオの第2の会話ノードツリーにアクセスするように構成されるジャンプユニットと、
前記第2の会話ノードツリーによってユーザー情報を収集し、収集に成功した場合、前記第2の会話ノードツリーの処理結果がバックトラッキング条件を満たすかどうかを判断するように構成される収集ユニットと、
前記第2の会話ノードツリーの処理結果がバックトラッキング条件を満たすと、記憶されたパラメータ検証会話ノードにより前記ビジネスシナリオに戻り、前記ビジネスシナリオの他の会話ロジック処理を実行し続くように構成されるバックトラッキングユニットと、を備える複数ターン会話におけるパブリックシナリオ会話のバックトラッキング装置。
【請求項10】
前記ジャンプユニットはさらに、
前記パブリックシナリオをクローズ状態に設定し、ユーザーが入力した意図に応じて前記パブリックシナリオからシナリオを切り替えることを禁止するように構成される請求項9に記載の装置。
【請求項11】
前記確定ユニットはさらに、
前記クエリ文に対してセマンティック分析を行い、意図があるかどうかを判定し、意図がある場合、前記意図に対応するビジネスシナリオを確定するように構成される請求項9に記載の装置。
【請求項12】
前記確定ユニットはさらに、
意図がなく、且つ現在の会話がどのシナリオにもないと、ユーザーが意図を入力するようにガイドし、
入力された意図に応じて対応するビジネスシナリオを確定するように構成される請求項11に記載の装置。
【請求項13】
前記確定ユニットはさらに、
意図がないが、現在の会話がシナリオにある場合、現在の会話が所在するシナリオをビジネスシナリオとして確定するように構成される請求項11に記載の装置。
【請求項14】
前記収集ユニットはさらに、
収集に失敗した場合、再収集し、
再収集の回数が所定の閾値に達すると、収集に失敗したパブリックシナリオを終了するように構成される請求項9に記載の装置。
【請求項15】
前記ジャンプユニットはさらに、前記第2の会話ノードツリーにおける第2の会話ノードに対して、該第2の会話ノードにより関連パラメータの検証を行うことによって新しいパブリックシナリオにアクセスする必要があると判断した場合、該第2の会話ノードを記憶し、前記新しいパブリックシナリオにジャンプし、前記新しいパブリックシナリオの第3の会話ノードツリーにアクセスするように構成され、
前記収集ユニットはさらに、前記第3の会話ノードツリーによってユーザー情報を収集し、収集に成功した場合、前記第3の会話ノードツリーの処理結果がバックトラッキング条件を満たすかどうかを判断するように構成され、
前記バックトラッキングユニットはさらに、前記第3の会話ノードツリーの処理結果がバックトラッキング条件を満たす場合、記憶された第2の会話ノードにより前記パブリックシナリオに戻り、前記パブリックシナリオの他の会話ロジック処理を実行し続くように構成される請求項9~14のいずれかに記載の装置。
【請求項16】
前記収集ユニットはさらに、
ユーザー情報を収集した他のパブリックシナリオから収集されたユーザー情報を継承するように構成される請求項15に記載の装置。
【請求項17】
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサに通信接続されるメモリと、を備え、
前記メモリに前記少なくとも1つのプロセッサによって実行されることができる命令が記憶され、前記命令は前記少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに請求項1~8のいずれか一項に記載の方法を実行させることができる電子機器。
【請求項18】
コンピューター命令が記憶された非一時的なコンピューター読み取り可能な記憶媒体であって、
前記コンピューター命令は前記コンピューターに請求項1~8のいずれか一項に記載の方法を実行するために使用されるコンピューター読み取り可能な記憶媒体。
【請求項19】
プロセッサにより実行されると、請求項1~8のいずれか一項に記載の方法を実現する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願の実施例はコンピューター技術分野に関し、具体的に人工知能技術分野に関する。
【背景技術】
【0002】
自然言語技術の発展に伴い、複数ターン会話技術はより成熟して完璧になり、複数ターン会話システムをあらゆる分野の様々なビジネスシナリオに適用できるようにし、顧客サービスの効率を向上させると同時に、企業のコストを大幅に削減する。
【0003】
現在、市販の複数ターン会話システムのほとんどは、スロット充填方法またはスロット充填方法の改良版に基づいて実現され、会話能力は比較的単純であり、基本的に予め設定されたフローに従って会話のインタラクションを完成し、簡単且つ迅速なパブリックシナリオ会話のバックトラッキングを実現することができない。
【発明の概要】
【0004】
複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法、装置、電子機器、記憶媒体並びにコンピュータプログラムを提供する。
【0005】
第1態様において、複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法であって、
クエリ文の受信に応答し、前記クエリ文に基づいてビジネスシナリオを確定するステップと、
前記ビジネスシナリオにアクセスし、前記ビジネスシナリオに対応する第1の会話ノードツリーにアクセスするステップと、
前記第1の会話ノードツリーの各パラメータ検証会話ノードに対して、該パラメータ検証会話ノードにより関連パラメータの検証を行うことによってパブリックシナリオにアクセスする必要があると判断された場合、該パラメータ検証会話ノードを記憶し、前記パブリックシナリオにジャンプし、前記パブリックシナリオの第2の会話ノードツリーにアクセスするステップと、
前記第2の会話ノードツリーによってユーザー情報を収集し、収集に成功した場合、前記第2の会話ノードツリーの処理結果がバックトラッキング条件を満たすかどうかを判断するステップと、
前記第2の会話ノードツリーの処理結果がバックトラッキング条件を満たすと、記憶されたパラメータ検証会話ノードにより前記ビジネスシナリオに戻り、前記ビジネスシナリオの他の会話ロジック処理を実行し続くステップと、を含む複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法を提供する。
【0006】
第2態様において、複数ターン会話におけるパブリックシナリオ会話のバックトラッキング装置であって、
クエリ文の受信に応答し、前記クエリ文に基づいてビジネスシナリオを確定するように構成される確定ユニットと、
前記ビジネスシナリオにアクセスし、前記ビジネスシナリオに対応する第1の会話ノードツリーにアクセスするように構成されるアクセスユニットと、
前記第1の会話ノードツリーの各パラメータ検証会話ノードに対して、該パラメータ検証会話ノードにより関連パラメータの検証を行うことによってパブリックシナリオにアクセスする必要があると判断された場合、該パラメータ検証会話ノードを記憶し、前記パブリックシナリオにジャンプし、前記パブリックシナリオの第2の会話ノードツリーにアクセスするように構成されるジャンプユニットと、
前記第2の会話ノードツリーによってユーザー情報を収集し、収集に成功した場合、前記第2の会話ノードツリーの処理結果がバックトラッキング条件を満たすかどうかを判断するように構成される収集ユニットと、
前記第2の会話ノードツリーの処理結果がバックトラッキング条件を満たすと、記憶されたパラメータ検証会話ノードにより前記ビジネスシナリオに戻り、前記ビジネスシナリオの他の会話ロジック処理を実行し続くように構成されるバックトラッキングユニットと、を備える複数ターン会話におけるパブリックシナリオ会話のバックトラッキング装置を提供する。
【0007】
第3態様において、電子機器であって、少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサに通信接続されるメモリと、を備え、前記メモリに前記少なくとも1つのプロセッサによって実行されることができる命令が記憶され、前記命令は前記少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに第1態様のいずれか一項に記載の方法を実行させることができる電子機器を提供する。
【0008】
第4態様において、コンピューター命令が記憶された非一時的なコンピューター読み取り可能な記憶媒体であって、前記コンピューター命令は前記コンピューターに第1態様のいずれか一項に記載の方法を実行するために使用されるコンピューター読み取り可能な記憶媒体。
【0009】
第5態様において、コンピュータプログラムであって、前記コンピュータプログラムがプロセッサにより実行されると、第1態様のいずれか一項に記載の方法を実現する、コンピュータプログラムを提供する。
【0010】
本出願の技術によれば、複数ターン会話のシナリオでは、会話ノードツリーを介してパブリック会話シナリオ会話の自動バックトラックをサポートする。会話バックトラッキングを必要とする場合で冗長構成を減らすと同時に、会話システムシナリオのカバレッジを向上させることができる。簡単な構成で会話を柔軟に元のシナリオまで自動バックトラックして元のシナリオの後続の会話ロジックを実行し、複数ターン会話システム構成の閾値及び複雑さを大幅に低下させ、複数ターン会話システム構成の操作と保守コストを削減することができる。複数ターン会話では検証されたパラメータを共有することができ、パラメータ検証プロセスを削減し、それにより、パブリック会話シナリオで必要なパラメータ情報のリアルタイム性、有効性及び正確さを向上させる。本出願による手段は、あるビジネスシナリオに基づいてカスタマイズして開発されたものではなく、このような需要を抽象化したものであり、ゼロコストで他のシナリオに移行できるため、複数ターン会話ロボットのためのこのようなニーズを満たす構築コストを削減する。
【0011】
なお、この部分で説明する内容は、本開示の実施例の肝心なまたは重要な特徴を特定することを意図するものではなく、本開示の範囲を限定することを意図するものでもない。本開示の他の特徴は以下の明細書を通じて容易に理解される。
【図面の簡単な説明】
【0012】
図面は、本手段をより良く理解するためのものであり、本出願を限定するものではない。
【
図1】本出願の一実施例を適用できる例示的なシステムアーキテクチャを示す図である。
【
図2】本出願による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法の一実施例を示すフローチャートである。
【
図3】本出願による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法の一つの応用シナリオを示す模式図である。
【
図4】本出願による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法の他の実施例を示すフローチャートである。
【
図5】本出願による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法の他の応用シナリオを示す模式図である。
【
図6】本出願による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング装置の一実施例を示す構造模式図である。
【
図7】本出願の実施例による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法を実行する電子機器のブロック図である。
【発明を実施するための形態】
【0013】
以下、図面を参照して、本出願の例示的な実施例を説明し、理解に役に立つように、本出願の実施例の様々な詳細を含み、単に例示的なものと見なされる。従って、当業者は、本出願の範囲と精神から逸脱せずに、ここで説明する実施例に様々な変更と修正を加えることができることを認識すべきである。同様に、明確かつ簡潔にするために、以下の説明では、既知の機能と構造の説明を省略する。
【0014】
図1は、本出願の複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法または複数ターン会話におけるパブリックシナリオ会話のバックトラッキング装置を適用できる実施例の例示的なシステムアーキテクチャ100である。
【0015】
図1に示すように、システムアーキテクチャ100は端末装置101、102、103、ネットワーク104及びサーバ105を備えてもよい。ネットワーク104は端末装置101、102、103及びサーバ105の間に通信リンクを提供する媒体である。ネットワーク104は、様々な接続タイプ、例えば有線、無線通信リンクまたは光ファイバケーブルなどを含んでもよい。
【0016】
ユーザーはメッセージ等を送受信するために、端末装置101、102、103を使用してネットワーク104を介してサーバ105とインタラクションすることができる。端末装置101、102、103には、例えばマンマシンインタラクションアプリケーション、ウェブブラウザアプリケーション、ショッピングアプリケーション、検索アプリケーション、インスタントメッセージングツール、電子メールクライアント、ソーシャルプラットフォームソフトウェアなどの様々な通信クライアントアプリケーションがインストールされることができる。
【0017】
端末装置101、102、103は、ハードウェアであってもよいし、ソフトウェアであってもよい。端末装置101、102、103がハードウェアである場合、表示画面を有して且つマンマシンインタラクションをサポートする様々な電子機器であってもよく、スマートフォン、タブレットコンピュータ、電子ブックリーダー、MP3プレーヤー(MovingPictureExpertsGroupAudioLayerIII、映画写真エキスパートグループオーディオレイヤー3)、MP4(MovingPictureExpertsGroupAudioLayerIV、映画写真エキスパートグループオーディオレイヤー4)プレーヤー、ラップトップコンピュータ及びデスクトップコンピューター等を含むが、これらに限定されない。端末装置101、102、103がソフトウェアである場合、上記で挙げられた電子機器にインストールされることができる。複数のソフトウェアまたはソフトウェアモジュールとして実現されてもよいし(例えば分散サービスを提供するために使用される)、単一のソフトウェアまたはソフトウェアモジュールとして実現されてもよい。ここで具体的に限定しない。
【0018】
サーバ105は様々なサービスを提供するサーバ、例えば端末装置101、102、103で実行されるマンマシンインタラクションのためにサポートを提供するバックグラウンド会話サーバであってもよい。バックグラウンド会話サーバは、受信されたクエリ文などのデータに対して分析などの処理を行い、且つ処理結果(例えば口座残高)を端末装置にフィードバックすることができる。
【0019】
説明する必要があるのは、サーバは、ハードウェアであってもよいし、ソフトウェアであってもよい。サーバがハードウェアである場合、複数のサーバからなる分散サーバクラスターとして実現されてもよいし、単一のサーバとして実現されてもよい。サーバがソフトウェアである場合、複数のソフトウェアまたはソフトウェアモジュールとして実現されてもよいし(例えば分散サービスを提供するために使用される複数のソフトウェアまたはソフトウェアモジュール)、単一のソフトウェアまたはソフトウェアモジュールとして実現されてもよい。ここで具体的に限定しない。
【0020】
説明する必要があるのは、本出願の実施例による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法は、一般にサーバ105により実行され、対応的に、複数ターン会話におけるパブリックシナリオ会話のバックトラッキング装置は、一般に、サーバ105に設けられる。
【0021】
理解すべきなのは、
図1中の端末装置、ネットワーク及びサーバの数はただ例示的なものである。実現の必要に応じて、任意の数の端末装置、ネットワーク及びサーバを持つことができる。
【0022】
次に、
図2を参照し、本出願による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法の一実施例を示すフロー200である。該複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法は、ステップ201~205を含む。
【0023】
ステップ201:クエリ文の受信に応答し、クエリ文に基づいてビジネスシナリオを確定する。
【0024】
本実施例において、複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法の実行主体(例えば
図1に示すサーバ)は有線接続方法或いは無線接続方法によってユーザーがそれを利用してマンマシンインタラクションを行う端末からクエリ文を受信することができる。実行主体はクエリ文に基づいてビジネスシナリオを確定する。
【0025】
技術案を説明する前に、まず、いくつかの概念を説明する。
【0026】
意図とは、コード内の関数と同様に、例えば天気の確認、残高照会、送金など、ユーザーが実行しようとする1つのビジネスアクションを示す。意図は、トップレベルの意図とサブ意図に分けることができ、トップレベルの意図は会話中にいつでもトリガーできる意図であり、サブ意図は対応するシナリオでのみトリガーできる。テンプレートマッチングやテキスト分類などの手段に基づいて意図認識を実現することができる。
【0027】
会話ノードとは、会話中のユーザーとロボット間の1ターンのインタラクションを定義し、ユーザーのクエリ文はある会話ノードをトリガーして要求を処理し、回答を取得する。エンティティの収集、コンテキストの継承、コンテキストの変更、ビジネスシステムのドッキング、回答の生成などを含む。
【0028】
シナリオとは、1つの意図及びこの意図ですべての会話インタラクション(エンティティの収集、説明、確認、サブ意図など)が1つのシナリオを構成し、ユーザーが新しい意図を表明するか、会話を終了した場合にのみ、シナリオが切り替え或いは終了する。シナリオは、ビジネスシナリオとパブリックシナリオの2種を含む。パブリックシナリオとは、例えば、身元検証、アカウント検証などのすべての会話に共通するシナリオを指す。ビジネスシナリオとは、パブリックシナリオ以外のシナリオを指す。
【0029】
会話とは、同じユーザーとロボットとの間のある期間内における一連の会話であり、例えば電話カスタマーサービスでの1つの通話である。
【0030】
1ターンの会話とは、ユーザーとロボットとの1つの質問と1つの回答である。
【0031】
クエリ文に基づいてビジネスシナリオを確定する方法は以下のいくつかを含んでもよい。
【0032】
1、クエリ文に対してセマンティック分析を行い、意図があるかどうかを確定し、意図があると、意図に対応するビジネスシナリオを確定する。
【0033】
予め訓練されたニューラルネットワークモデルによってセマンティック分析を行い、意図を確定することができる。テンプレートマッチングによって意図を確定することもできる。例えば、ユーザーが「残金はいくら」を入力すると、意図が「残高照会」として認識する。次に、該意図に対応するのは金融ビジネスシナリオであると確定する。セマンティック分析によってユーザーの意図を確定した後シナリオ認識を行い、キーワードマッチングのみによってシナリオを確定することよりも正確で曖昧さが回避されるため、該方法はシナリオ認識の正確さを向上させることができる。
【0034】
2、意図がなく、且つ現在の会話がいずれのシナリオにもない場合、ユーザーに意図の入力を案内し、入力された意図に応じて対応するビジネスシナリオを確定する。
【0035】
ユーザーにより入力された情報から意図を認識できないと、いくつかの語句でユーザーに意図を入力するように誘導することができ、例えば、「どの側面の内容をお問い合わせしたいですか」およびオプションを提示する。ユーザーは残高照会を選択すると、対応する金融ビジネスシナリオを確定する。ユーザーがマンマシンインタラクションの完成を迅速にガイドすることができる。それにより、ユーザーが意図を入力しなかったことによるインタラクション失敗の状況を防止できる。マンマシンインタラクションの成功率を向上させる。
【0036】
3、意図がないが、現在の会話がシナリオにある場合、現在の会話が所在するシナリオをビジネスシナリオとして確定する。
【0037】
ユーザーが入力した文の意図を認識できないが、現在の会話がシナリオにあると、現在の会話が所在するシナリオをビジネスシナリオとして確定する。現在の会話が所在するシナリオをビジネスシナリオとして直接使用し、ユーザーの意図を尋ねるステップを省略でき、それにより、シナリオ認識の速度を向上させる。
【0038】
ステップ202:ビジネスシナリオにアクセスし、且つビジネスシナリオに対応する第1の会話ノードツリーにアクセスする。
【0039】
本実施例において、シナリオ会話のノードは複数であり、会話ノードツリーを構成する。本実施例において、異なるシナリオの会話ノードツリーを区別するために、ビジネスシナリオに対応する会話ノードツリーを第1の会話ノードツリーとし、パブリックシナリオに対応する会話ノードツリーを第2の会話ノードツリーとする。各会話ノードは所定の処理ロジックを有する。ユーザーが対応する情報を提出してビジネス処理を行うようにガイドする。
【0040】
パブリックシナリオでは、クローズ状態に設定でき、クローズ状態とは、ユーザーの叙述が他の意図にヒントし、且つシナリオ切り替えの条件を満たす場合、シナリオ切り替えができないことを指す。このように、ユーザーの誤操作によってビジネスシナリオが切り替えられないように確保し、ビジネスシナリオが中断されないようにし、ビジネスフローの完全性を確保する。クローズ状態にあるシナリオはそれ自体のシナリオの会話ロジックに焦点を合わせる必要があるため、クローズ状態にあるシナリオはスタックスペースのバックトラッキングノードを介して会話を前のシナリオにバックトラッキングすることができる。
【0041】
ステップ203:第1の会話ノードツリーの各パラメータ検証会話ノードに対して、該パラメータ検証会話ノードにより関連パラメータの検証を行うことによってパブリックシナリオにアクセスする必要があると判断された場合、該パラメータ検証会話ノードを記憶し、パブリックシナリオにジャンプし、且つパブリックシナリオの第2の会話ノードツリーにアクセスする。
【0042】
本実施例において、会話ノードにはパラメータ検証専用の会話ノードがあり、他の会話ノードはパラメータ検証を実行しない。パラメータ検証会話ノードは関連検証パラメータに従ってパブリックシナリオにアクセスする必要があるかどうかを判断し、例えば身元検証を必要とする会話ノードは、前の会話ロジック処理結果を検査し、身元検証に成功した情報が見つかなかった場合、パブリックシナリオにジャンプして身元検証を行う必要がある。身元検証後に元のシナリオにバックトラッキングできることを確保するために、現在のパラメータ検証会話ノードを記憶した後にシナリオをジャンプする必要がある。パブリックシナリオに入った後、パブリックシナリオの第2の会話ノードツリーにアクセスする。パブリックシナリオの会話ノードも複数であり、会話ノードツリーを構成する。
【0043】
ステップ204:第2の会話ノードツリーによってユーザー情報を収集し、収集に成功したと、第2の会話ノードツリーの処理結果がバックトラッキング条件を満たすかどうかを判断する。
【0044】
本実施例において、第2の会話ノードに会話ロジックが構成され、ユーザー情報を収集するために使用される。各第2の会話ノードは1種のユーザー情報を収集でき、1つの第2の会話ノードツリーは完全なユーザー情報を収集する。ユーザーがユーザー情報を入力するようにガイドする情報を出力し、例えば、「身分証明書番号を入力してください」や、「身分証明書の写真を提供してください」などが挙げられる。収集された情報に対してサードパーティのインターフェースを呼び出して身元検証を行い、検証に成功したと、収集に成功とする。収集された情報を使用して次の処理を行うことができる。次に、処理結果がバックトラッキング条件を満たすかどうかを判断する。予めパブリックシナリオのためにバックトラッキング条件を構成し、例えば、すべてのパブリックシナリオの会話ノードの会話ロジックの処理が完了し、情報検証に成功した結果を取得するなどである。
【0045】
収集に失敗したと、再収集する。再収集の回数が所定の閾値に達すると、収集に失敗したパブリックシナリオを終了する。マンマシンインタラクション効率を向上させ、失敗率を減らし、且つデッドロックを防止できる。予め設定された語句でユーザーが情報を再収集するようにガイドできる。ユーザーが身分証明書番号の入力を複数回提示したが、ユーザーにより提供されていなく、或いは提供された身分証明書が検証に成功しなかった場合、収集に失敗したパブリックシナリオを終了する。情報収集が失敗したと提示し、且つ前のビジネスシナリオにバックトラッキングする。
【0046】
ステップ205:第2の会話ノードツリーの処理結果はバックトラッキング条件を満たすと、記憶されたパラメータ検証会話ノードによりビジネスシナリオに戻り、ビジネスシナリオの他の会話ロジック処理を実行し続く。
【0047】
本実施例において、バックトラッキング条件を満たす場合、パブリックシナリオに切り替える前のビジネスシナリオにバックトラッキングすることができる。次に、ビジネスシナリオの他の会話ロジック処理を実行し続く。他の会話ロジック処理とは、パラメータ検証会話ノード以外の会話ノードの会話ロジック処理を指す。
【0048】
次に、
図3を参照し、
図3は本実施例による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法の応用シナリオを示す模式図である。
図3の応用シナリオでは、ユーザーが入力した「残高照会」を受信して意図認識を実行し、該意図に対応する金融ビジネスシナリオにアクセスする。会話ノード及び関連検証パラメータに従ってパブリックシナリオにアクセスする必要があるかどうかを判断する。パブリックシナリオにアクセスする必要がないと、金融ビジネスシナリオの他の会話ノードの会話ロジックを実行する。パブリックシナリオにアクセスする必要があると、現在のビジネスシナリオの会話ノードAをスタックスペースに一時的に記憶し、パブリックシナリオの終了時に元のビジネスシナリオにバックトラッキングするために使用される。パブリックシナリオにジャンプし、パブリックシナリオ会話ノードxにアクセスする。ユーザーに対して情報を収集するようにガイドし、ユーザーによって入力された文に対してエンティティ認識を実行し、情報を収集する。ユーザー情報の収集に成功しなかった場合、ユーザーに情報を収集するようにガイドし続く。ユーザー情報の収集に成功したと、収集されたユーザー情報を使用してパブリック会話シナリオロジック処理を実行する。元のビジネスシナリオへの自動バックトラックを設定したかどうかを判断する。元のビジネスシナリオへの自動バックトラックが設定された場合、一時的に記憶されたノードにより元のビジネスシナリオにバックトラッキングしてパブリックシナリオ会話処理結果を返し、パブリックビジネスシナリオに引き続きアクセスするかどうかを判断する。元のビジネスシナリオへの自動バックトラックが設定されなかった場合、パブリックシナリオの他の会話ノードの会話ロジックを実行し続く。元のビジネスシナリオの他の会話ノードの会話ロジックを実行する。
【0049】
一時的に記憶されたノードに自動的にジャンプすることは、ユーザーがパブリックシナリオ会話で会話をバックトラッキングさせる構成を減らすことができる。正常なビジネスロジックに従って、パブリックシナリオ会話ロジック処理では、ユーザーは任意の時間で元のビジネスのロジック処理にバックトラッキングする可能性があり、会話の自動バックトラックはユーザーが会話ロジックのバックトラッキング追跡を行い、ユーザーは元のビジネスのロジック処理にバックトラッキングしたい場合に元のビジネスロジックの処理フローに自動的に戻ることに役立つ。
【0050】
本出願の上記実施例による方法は、複数ターン会話のシナリオで、パブリック会話シナリオ会話の自動バックトラックをサポートすることは、会話バックトラッキングを必要とする場合に冗長構成を減らすと同時に、会話システムシナリオのカバレッジを向上させることができる。簡単な構成で会話を柔軟に元のシナリオまで自動バックトラックして元のシナリオの後続の会話ロジックを実行し、これは複数ターン会話システム構成の閾値及び複雑さを大幅に低下させ、複数ターン会話システム構成の操作と保守コストを削減することができる。それと同時に、パブリックシナリオ会話で必要なパラメータ情報のリアルタイム性、有効性及び正確さを向上させる。本出願による手段は、あるビジネスシナリオに基づいてカスタマイズして開発されたものではなく、このような需要を抽象化したものであり、ゼロコストで他のシナリオに移行できるため、このような需要を満たす構築コストを削減する。
【0051】
図4を参照し続き、本出願による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法の他の実施例を示すフロー400である。該複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法は、ステップ401~408を含む。
【0052】
ステップ401:クエリ文の受信に応答し、クエリ文に基づいてビジネスシナリオを確定する。
【0053】
ステップ402:ビジネスシナリオにアクセスし、且つビジネスシナリオに対応する第1の会話ノードツリーにアクセスする。
【0054】
ステップ403:第1の会話ノードツリーの各パラメータ検証会話ノードに対して、該パラメータ検証会話ノードにより関連パラメータの検証を行うことによってパブリックシナリオへのアクセスが必要であると判断された場合、該パラメータ検証会話ノードを記憶し、パブリックシナリオにジャンプし、且つパブリックシナリオの第2の会話ノードツリーにアクセスする。
【0055】
ステップ404:第2の会話ノードツリーによってユーザー情報を収集し、収集に成功したと、第2の会話ノードツリーの処理結果がバックトラッキング条件を満たすかどうかを判断する。
【0056】
ステップ401~404はステップ201~204とほぼ同じであるため、繰り返して説明しない。
【0057】
ステップ405:第2の会話ノードツリーにおける第2の会話ノードに対して、該第2の会話ノードにより関連パラメータの検証を行うことによって新しいパブリックシナリオへのアクセスが必要であると判断すると、該第2の会話ノードを記憶し、新しいパブリックシナリオにジャンプし、且つ新しいパブリックシナリオの第3の会話ノードツリーにアクセスする。
【0058】
本実施例において、パブリックシナリオの間の切り替えも可能である。例えば、残高照会操作には、身分証明書の検証だけでなく、銀行口座の検証に関し、新しいパブリックシナリオにアクセスする必要がある。新しいパブリックシナリオにアクセスする前に、現在のパブリックシナリオの第2の会話ノードを記憶し、次に、新しいパブリックシナリオにジャンプし、且つ新しいパブリックシナリオの第3の会話ノードツリーにアクセスする。第3の会話ノードツリーは元のパブリックシナリオを区別するための会話ノードツリーである。
【0059】
ステップ406:第3の会話ノードツリーによってユーザー情報を収集し、収集に成功したと、第3の会話ノードツリーの処理結果がバックトラッキング条件を満たすかどうかを判断する。
【0060】
ステップ406はステップ204とほぼ同じであるため、繰り返して説明しない。ユーザー情報を収集した他のパブリックシナリオから収集されたユーザー情報を利用することができ、既存のリソースを十分に利用し、ユーザーの嫌悪感を引き起こす繰り返し収集を回避する。例えば身分証明書情報を収集して検証した場合、新しいパブリックシナリオでは再び収集して検証する必要がない。
【0061】
ステップ407:第3の会話ノードの処理結果がバックトラッキング条件を満たすと、記憶された第2の会話ノードによりパブリックシナリオに戻り、パブリックシナリオの他の会話ロジック処理を実行し続く。
【0062】
ステップ407はステップ205とほぼ同じであり、前に記憶されたパブリックシナリオにバックトラッキングする。パブリックシナリオの処理を続く。ここでのパブリックシナリオの他の会話ロジック処理とは、処理された第3の会話ノード以外の会話ノードの会話ロジックを指す。パブリックシナリオ処理が完了した後に後のステップを実行して前のビジネスシナリオにバックトラッキングする。
【0063】
ステップ408:第2の会話ノードツリーの処理結果はバックトラッキング条件を満たすと、記憶されたパラメータ検証会話ノードによりビジネスシナリオに戻り、ビジネスシナリオの他の会話ロジック処理を実行し続く。
【0064】
ステップ408はステップ205とほぼ同じであるため、繰り返して説明しない。
【0065】
図4から分かるように、
図2に対応する実施例と比べて、本実施例による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法のフロー400はパブリックシナリオをバックトラッキングするステップを示している。これにより、本実施例に記載の手段はパブリックシナリオのバックトラッキングを実行することができる。
【0066】
図5を参照し続き、
図5は本実施例による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法の他の応用シナリオを示す模式図である。
図5の応用シナリオでは、具体的な処理フローは以下の通りであり、
【0067】
ステップ1:ビジネスシナリオにアクセスし、ステップ2を実行し続く。
【0068】
ステップ2:パブリックシナリオ1へのアクセスが必要であるかどうかを判断する。
【0069】
2.1:パブリックシナリオ1にアクセスする必要がない場合、ステップ14を実行し続く。
【0070】
2.2:パブリックシナリオ1にアクセスする必要がある場合、現在のビジネスシナリオ(会話が始まったビジネスシナリオ)の会話ノードAを一時的に記憶し、後続で他の会話シナリオにアクセスすると、一時的に記憶された会話ノードにより現在の会話のシナリオに自動バックトラックすることができ、ステップ3を実行し続く。
【0071】
ステップ3:パブリックシナリオ1にアクセスし、ステップ4を実行し続く。
【0072】
ステップ4:パブリックシナリオ2へのアクセスが必要であるかどうかを判断し、
【0073】
4.1:パブリックシナリオ2にアクセスする必要がないと、ステップ5を実行し続く。
【0074】
4.2:パブリックシナリオ2にアクセスする必要があると、現在ビジネスシナリオ(パブリックシナリオ1)の会話ノードBを一時的に記憶し、後続で他の会話シナリオにアクセスすると、一時的に記憶された会話ノードにより現在の会話のシナリオに自動バックトラックすることができ、ステップ7を実行し続く。
【0075】
5:ユーザーにパブリックシナリオ1の他のロジックを処理するようにガイドし、ステップ6を実行し続く。
【0076】
6:パブリックシナリオ1の他の会話ノードのロジック処理が終了し、一時的に記憶された会話ノードAに従って前の会話シナリオ、即ち会話が始まったビジネスシナリオの会話処理ロジックに自動バックトラックし、ステップ14を実行し続く。
【0077】
7:パブリックシナリオ2にアクセスし、ステップ8を実行し続く。
【0078】
8:パブリックシナリオnへのアクセスが必要であるかどうかを判断する。
【0079】
8.1:パブリックシナリオnにアクセスする必要がないと、ステップ9を実行し続く。
【0080】
8.2:パブリックシナリオnへのアクセスが必要であると、現在ビジネスシナリオ(パブリックシナリオ2)の会話ノードCを一時的に記憶し、後続で他の会話シナリオにアクセスする場合、一時的に記憶された会話ノードにより現在の会話のシナリオに自動バックトラックすることができ、ステップ11を実行し続く。
【0081】
9:ユーザーにパブリックシナリオ2の他の会話ノードの会話ロジックを処理するようにガイドし、ステップ10を実行し続く。
【0082】
10:会話シナリオ2のロジック処理が終了し、一時的に記憶された会話ノードBに従って前の会話シナリオ、即ち会話シナリオ1のロジック処理に自動バックトラックし、ステップ5を実行し続く。
【0083】
11:パブリックシナリオnにアクセスし、ステップ12を実行し続く。
【0084】
12:ユーザーが会話シナリオnのロジック処理を実行するようにガイドし、ステップ13を実行し続く。
【0085】
13:会話シナリオnのロジック処理が終了し、一時的に記憶された会話ノードCに従って前の会話シナリオ、即ちパブリックシナリオ2の会話処理ロジックに自動バックトラックし、ステップ9を実行し続く。
【0086】
14:ユーザーに会話が始まったビジネスシナリオの他のロジックを処理するようにガイドする。
【0087】
図6を更に参照し、上記各図に示すような方法の実現として、本出願は複数ターン会話におけるパブリックシナリオの会話バックトラッキングの装置の一実施例を提供し、該装置実施例は
図2に示すような方法実施例に対応し、該装置は具体的に様々な電子機器に適用できる。
【0088】
図6に示すように、本実施例の複数ターン会話におけるパブリックシナリオの会話バックトラッキング装置600は、確定ユニット601、アクセスユニット602、ジャンプユニット603、収集ユニット604、及びバックトラッキングユニット605を備える。確定ユニット601は、クエリ文の受信に応答し、クエリ文に基づいてビジネスシナリオを確定するように構成される。アクセスユニット602は、ビジネスシナリオにアクセスし、且つビジネスシナリオに対応する第1の会話ノードツリーにアクセスするように構成される。ジャンプユニット603は、第1の会話ノードツリーの各パラメータ検証会話ノードに対して、該パラメータ検証会話ノードにより関連パラメータの検証を行うことによってパブリックシナリオにアクセスする必要があると判断された場合、該パラメータ検証会話ノードを記憶し、パブリックシナリオにジャンプし、且つパブリックシナリオの第2の会話ノードツリーにアクセスするように構成される。収集ユニット604は、第2の会話ノードツリーによってユーザー情報を収集し、収集に成功したと、前記第2の会話ノードツリーの処理結果がバックトラッキング条件を満たすかどうかを判断するように構成される。バックトラッキングユニット605は、第2の会話ノードの処理結果がバックトラッキング条件を満たすと、記憶されたパラメータ検証会話ノードによりビジネスシナリオに戻り、ビジネスシナリオの他の会話ロジック処理を実行し続くように構成される。
【0089】
本実施例において、複数ターン会話におけるパブリックシナリオの会話バックトラッキング装置600の確定ユニット601、アクセスユニット602、ジャンプユニット603、収集ユニット604、バックトラッキングユニット605の具体的な処理について、
図2の対応する実施例におけるステップ201、ステップ202、ステップ203、ステップ204、ステップ205を参照できる。
【0090】
本実施例のいくつかの選択可能な実現形態において、ジャンプユニット603はさらに、パブリックシナリオをクローズ状態に設定し、ユーザーが入力した意図に応じてパブリックシナリオからシナリオを切り替えることを禁止するように構成される。
【0091】
本実施例のいくつかの選択可能な実現形態において、確定ユニット601はさらに、クエリ文に対してセマンティック分析を行い、意図があるかどうかを確定し、意図があると、意図に対応するビジネスシナリオを確定するように構成される。
【0092】
本実施例のいくつかの選択可能な実現形態において、確定ユニット601はさらに、意図がなく、且つ現在の会話がどのシナリオにも対応しない場合、ユーザーに意図を入力するようにガイドし、入力された意図に応じて対応するビジネスシナリオを確定するように構成される。
【0093】
本実施例のいくつかの選択可能な実現形態において、確定ユニット601はさらに、意図がないが、現在の会話がシナリオにある場合、現在の会話が所在するシナリオをビジネスシナリオとして確定するように構成される。
【0094】
本実施例のいくつかの選択可能な実現形態において、収集ユニット604はさらに、収集が失敗したと、再収集し、再収集回数が所定の閾値に達すると、収集に失敗したパブリックシナリオを終了するように構成される。
【0095】
本実施例のいくつかの選択可能な実現形態において、ジャンプユニット603はさらに、第2の会話ノードツリーにおける第2の会話ノードに対して、第2の会話ノードツリーにおける第2の会話ノードに対して、新しいパブリックシナリオにジャンプし、且つ新しいパブリックシナリオの第3の会話ノードツリーにアクセスするように配置され、収集ユニット604は、第3の会話ノードツリーによってユーザー情報を収集し、収集に成功したと、前記第3の会話ノードツリーの処理結果がバックトラッキング条件を満たすかどうかを判断するように配置され、バックトラッキングユニット605はさらに、第3の会話ノードツリーの処理結果がバックトラッキング条件を満たすと、記憶された第2の会話ノードによりパブリックシナリオに戻り、パブリックシナリオの他の会話ロジック処理を実行し続くように構成される。
【0096】
本実施例のいくつかの選択可能な実現形態において、収集ユニット604はさらに、ユーザー情報を収集した他のパブリックシナリオから収集されたユーザー情報を継承するように構成される。
【0097】
本出願の実施例によれば、本出願は電子機器とコンピューター読み取り可能な記憶媒体を提供する。
【0098】
図7は、本出願の実施例による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法の電子機器のブロック図である。電子機器は、ラップトップコンピューター、デスクトップコンピューター、ワークステーション、パーソナルデジタルアシスタント、サーバー、ブレードサーバー、メインフレーム、その他の適切なコンピューターなどのさまざまな態様のデジタルコンピューターを表すことを目的とする。電子機器は、パーソナルデジタル処理、セルラー方式の携帯電話、スマートフォン、ウェアラブルデバイス、及び他の同様のコンピューティング装置などのさまざまな態様のモバイル装置を表すこともできる。本文に示されるコンポーネント、それらの接続及び関係、ならびにそれらの機能は、単なる例であり、本文に記載されるおよび/または主張される本出願の実現を限定することを意図しない。
【0099】
図7に示すように、該電子機器は、1つまたは複数のプロセッサ701、メモリ702、及び高速インターフェース及び低速インターフェースを備える各コンポーネントを接続するためのインターフェースを備える。各コンポーネントは、異なるバスで相互に接続されており、共通のマザーボードにインストールしてもよいし、必要に応じて、他の方法でインストールしてもよい。プロセッサは、GUIのグラフィック情報を外部入/出力装置(インターフェースに結合されたディスプレイデバイスなど)に表示できるように、メモリ内またはメモリ上に記憶された命令を含む電子機器で実行された命令を処理でき、他の実施例では、必要とすれば、複数のプロセッサおよび/または複数のバスを、複数のメモリ及び複数のメモリと共に使用することができる。同様に、複数の電子機器を接続でき、各デバイスはいくつかの必要なオペレーティングを提供する(例えば、サーバーアレイ、ブレードサーバーグループ、またはマルチプロセッサシステムとする)。
図7では、1つのプロセッサ701を例にする。
【0100】
メモリ702は、即ち、本出願による非一時的なコンピューター読み取り可能な記憶媒体である。ただし、前記メモリは、少なくとも1つのプロセッサによって実行可能な命令を記憶するので、前記少なくとも1つのプロセッサに本出願による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法を実行させる。本出願の非一時的なコンピューター読み取り可能な記憶媒体は、コンピューターに本出願による複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法を実行させるためのコンピューター命令を記憶する。
【0101】
メモリ702は非一時的なコンピューター読み取り可能な記憶媒体として、非一時的なソフトウェアプログラム、非一時的なコンピューターによって実行可能なプログラム、及びモジュールを記憶することに用いられ、例えば本出願の実施例における複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法に対応するプログラム命令/モジュール(例えば、
図6に示すような確定ユニット601、アクセスユニット602、ジャンプユニット603、収集ユニット604、バックトラッキングユニット605)である。プロセッサ701は、メモリ702に記憶された非一時的なソフトウェアプログラム、命令及びモジュールを実行することによって、サーバの様々な機能アプリケーション及びデータ処理を実行し、即ち、上記方法の実施例の複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法を実現する。
【0102】
メモリ702は、記憶プログラム領域と記憶データ領域を含んでもよく、ただし、記憶プログラム領域は、オペレーティングシステム、少なくとも1つの機能に必要なアプリケーションプログラムを記憶してもよく、記憶データ領域は、該電子機器が複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法を実行する時に作成された様々なデータなどを記憶することができ、また、メモリ702は、高速ランダムアクセスメモリを含んでもよく、さらに非一時的なメモリを含んでもよく、例えば、少なくとも1つの磁気ディスク記憶デバイス、フラッシュメモリデバイス、または他の非一時的なソリッドステートストレージデバイスなどの非一時的なメモリを含んでもよく、いくつかの実施例では、メモリ702は、任意選択で、プロセッサ701に対してリモートで設定されたメモリを含み、これらのリモートメモリは、ネットワークを介して複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法を実行するのに適する電子機器に接続されることができる。上記のネットワークの実施例は、インターネット、企業イントラネット、ローカルエリアネットワーク、モバイル通信ネットワーク、及びそれらの組み合わせなどを含むが、これらに限定されない。
【0103】
複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法の電子機器は、入力装置703と出力装置704を備えてもよい。プロセッサ701、メモリ702、入力装置703及び出力装置704は、バスまたは他の方法で接続されてもよいが、
図7にバスによる接続を例にする。
【0104】
入力装置703は、入力デジタルまたは文字情報を受信し、複数ターン会話におけるパブリックシナリオ会話のバックトラッキング方法を実行するのに適用する電子機器のユーザー設定及び機能制御に関連するキー信号入力を生成することができる。例えば、タッチスクリーン、キーパッド、マウス、トラックパッド、タッチパッド、ポインティングスティック、1つ以上のマウスボタン、トラックボール、ジョイスティック、その他の入力装置。出力装置704は、ディスプレイデバイス、補助照明装置(例えば、LED)、触覚フィードバック装置(例えば、振動モーター)などを備えてもよい。該ディスプレイデバイスは、液晶ディスプレイ(LCD)、発光ダイオード(LED)ディスプレイ、及びプラズマディスプレイを備えてもよい。いくつかの実施例では、ディスプレイデバイスはタッチスクリーンであってもよい。
【0105】
ここでは説明されるシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、特定用途向けASIC(特定用途向け集積回路)、コンピューターハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組み合わせにおいて実現できる。これらの様々な実施例形態は、以下を含んでもよく、1つまたは複数のコンピュータープログラムに実施され、該1つまたは複数のコンピュータープログラムは、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行および/または解釈されてもよく、該プログラマブルプロセッサは、ストレージシステム、少なくとも1つの入力装置、及び少なくとも1つの出力装置からデータと命令を受信し、そのデータと命令をストレージシステム、少なくとも1つの入力装置、及び少なくとも1つの出力装置に送信できる専用または汎用のプログラマブルプロセッサであってもよい。
【0106】
これらのコンピュータープログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとも呼ばれる)は、プログラマブルプロセッサの機械命令を含み、高レベルのプロセス及び/またはオブジェクト指向プログラミング言語、及び/またはアセンブリ/機械言語を利用してこれらのコンピュータープログラムを実施することができる。本文で使用されるように、「機械読み取り可能な媒体」及び「コンピューター読み取り可能な媒体」という用語は、プログラマブルプロセッサに機械命令および/またはデータを提供するために用いられる任意のコンピュータープログラム製品、デバイス、および/または装置(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジック装置(PLD)を指す。機械読み取り可能な信号である機械命令を受信する機械読み取り可能な媒体を含む。「機械読み取り可能な信号」という用語は、プログラマブルプロセッサに機械命令および/またはデータを提供するために用いられる任意の信号を指す。
【0107】
ユーザーとのインタラクションを提供するために、コンピューターにここでは説明されるシステム及び技術を実施してもよく、該コンピューターは、ユーザーに情報を表示するためのディスプレイ装置(例えば、CRT(陰極線管)またはLCD(液晶ディスプレイ)モニター)、及びキーボードとポインティング装置(マウスやトラックボールなど)を備え、ユーザーが該キーボードとポインティング装置を介してコンピューターに入力を提供することができる。他のタイプの装置もユーザーとの会話を提供するために用いられ、例えば、ユーザーに提供されるフィードバックは、任意の形式の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であってもよく、任意の形式(音入力、音声入力、または触覚入力を含み)でユーザーからの入力を受信することができる。
【0108】
ここでは説明されるシステムと技術は、バックエンドコンポーネント(例えば、データサーバー)を含むコンピューターシステム、ミドルウェアコンポーネント(例えば、アプリケーションサーバー)を含むコンピューターシステム、またはフロントエンドコンポーネントを含むコンピューターシステム(例えば、グラフィカルユーザーインターフェイスまたはWebブラウザーを備え、ユーザーが該ラフィカルユーザーインターフェイスまたはWebブラウザーでシステムと技術の実施例と会話できるユーザーのコンピューター)、またはそのようなバックエンドコンポーネント、ミドルウェアコンポーネント、またはフロントエンドコンポーネントを含む任意の組み合わせに実施してもよく、システムのコンポーネントは、任意の形式または媒体のデジタルデータ通信(通信ネットワークなど)を介して相互に接続してもよい。通信ネットワークの例としては、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネット、ブロックチェーンネットワークが挙げられる。
【0109】
コンピューターシステムは、クライアント及びサーバーを含んでもよい。クライアントとサーバーは、一般的に互いに離れており、通常は通信ネットワークを介して会話する。対応するコンピューター上で、互いにクライアント/サーバー関係を持つコンピュータープログラムを実行することによりクライアントとサーバーの関係を生成する。
【0110】
本出願の実施例の技術案によれば、複数ターン会話のシナリオで、パブリック会話シナリオ会話の自動バックトラックをサポートし、会話バックトラッキングを必要とする場合で冗長構成を減らすと同時に、会話システムシナリオのカバレッジを向上させることができる。簡単な構成で会話を柔軟に元のシナリオまで自動バックトラックして元のシナリオの後続の会話ロジックを実行し、これは複数ターン会話システム構成の閾値及び複雑さを大幅に低下させ、複数ターン会話システム構成の操作と保守コストを削減することができる。それ同時に、パブリックシナリオ会話で必要なパラメータ情報のリアルタイム性、有効性及び正確さを向上させる。本出願による手段は、あるビジネスシナリオに基づいてカスタマイズして開発されたものではなく、このような需要を抽象化したものであり、ゼロコストで他のシナリオに移行できるため、このような需要を満たす構築コストを削減する。
【0111】
なお、上記に示される様々な形態のプロセスを使用してソートし、ステップを追加し、削除できる。例えば、本出願に記載される各ステップは、本出願に開示される技術的解決手段の所望の結果を達成できる限り、並行、順次、または異なる順序で実行されてもよく、ここでは本文に限定されない。
【0112】
上記の具体的な実施形態は、本出願の特許範囲を限定するものではない。当業者は、設計要件及び他の要因に応じて、様々な修正、組み合わせ、サブ組み合わせ、及び置換を行うことができると理解すべきである。本出願の精神及び原則を逸脱せずに行われる補正、同等置換、改良などはすべて本出願の特許範囲に含まれるべきである。