JP2019503526A5 - - Google Patents

Download PDF

Info

Publication number
JP2019503526A5
JP2019503526A5 JP2018520601A JP2018520601A JP2019503526A5 JP 2019503526 A5 JP2019503526 A5 JP 2019503526A5 JP 2018520601 A JP2018520601 A JP 2018520601A JP 2018520601 A JP2018520601 A JP 2018520601A JP 2019503526 A5 JP2019503526 A5 JP 2019503526A5
Authority
JP
Japan
Prior art keywords
intent
dialog
dialog system
parameters
developer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018520601A
Other languages
English (en)
Other versions
JP2019503526A (ja
JP6960914B2 (ja
Filing date
Publication date
Application filed filed Critical
Priority claimed from PCT/US2016/058193 external-priority patent/WO2017070522A1/en
Publication of JP2019503526A publication Critical patent/JP2019503526A/ja
Priority to JP2020091306A priority Critical patent/JP6942841B2/ja
Publication of JP2019503526A5 publication Critical patent/JP2019503526A5/ja
Application granted granted Critical
Publication of JP6960914B2 publication Critical patent/JP6960914B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

ダイアログ・システムにおけるパラメータ収集および自動ダイアログ生成
関連出願の記載
本願は、発明の名称を「ダイアログ・システムにおけるパラメータ収集および自動ダイアログ生成」とした、2015年10月21日出願の米国仮特許出願第62/244、560号に対する利益を主張し、全ての目的でその全体を引用により本明細書に組み込む。
ダイアログ・システムは、ポータブルデバイスに対する適用において広く使用される。一般に、ダイアログ・システムは、情報にアクセスし、処理し、管理し、配信するためのヒューマン・マシン・インタフェースを有するコンピュータベースのエージェントを含む。ダイアログ・システムは、チャット情報システム、発話ダイアログ・システム、会話エージェント、チャッタロボット、チャッタボット、チャットボット、チャットエージェント、デジタルパーソナルアシスタント、自動化されたオンラインアシスタント等としても知られる。
伝統的に、ダイアログ・システムは、自然言語を用いて人間と対話して、インテリジェントな会話をシミュレートし、個別化された支援を当該ユーザに提供することができる。例えば、ユーザは、当該ダイアログ・システムに「What is the weather like in Alexandria today?」と問い合わせて、回答を当該ダイアログ・システムからオーディオまたはテキスト・メッセージの形で受信しうる。当該ユーザは音声コマンドを当該ダイアログ・システムに提供して、特定の動作、例えば、電子メールの生成、電話、情報の検索、ナビゲート、通知またはリマインダの設定等の実施を行わせてもよい。これらのおよび他の機能により、ダイアログ・システムは、ユーザ、特に、例えば、スマートフォンおよびタブレットコンピュータのようなポータブル電子デバイスのユーザに非常に人気があるものとなっている。
ダイアログ・システムは、ユーザ音声入力を受信し、それをテキスト入力に変換し、当該テキスト入力を解釈し、当該テキスト入力に対する適切な応答の生成、および応答のユーザへの配信の責任を負うダイアログ・システム・エンジンを含むことができる。入力の解釈および正確な応答の発見は人工知能アルゴリズムを利用することができる。したがって、ダイアログ・システムに対する増大する要求にも関わらず、当該ダイアログ・システムの生成は複雑な技術的作業となっている。
自然言語ダイアログ・システムは、ユーザとの対話を維持し、インテリジェントな応答を提供するかまたはユーザ要求に応答して広範囲のアクションを実施することができる。当該ユーザ要求は、ユーザが発声したことと自然言語ダイアログ・システムがとるアクションとの間のマッピングを促進するダイアログ・システム「インテント」を用いて、自然言語ダイアログ・システムにより解釈することができる。特定のユーザマシンダイアログ・コンテキストにおいて、所与のインテントに対するアクションを実装するために、自然言語ダイアログ・システムは1つまたは複数のインテント・パラメータを取得する必要がある。例えば、ユーザ要求がピザの注文を自然言語ダイアログ・システムに要求するとき、自然言語ダイアログ・システムは、サイズ、パイ皮タイプ、トッピング、ベンダ、配達の時間と住所のような、ピザに関連付けられたパラメータを取得する必要がある。
本開示に従う例は、インテント・パラメータをユーザから自然言語ダイアログを模倣するマシン実行型のパラメータ収集ダイアログで収集するためのシステムおよび方法を提供する。当該ユーザの予め決定されたインテントを、インテント・パラメータの当該集合を初期化するために識別する必要があってもよい。当該インテント・パラメータが収集されると、自然言語ダイアログ・システムは、当該収集されたパラメータに基づいて当該インテントに関連付けられた予め決定されたアクションを実装する(例えば、電子購入注文をピザレストランに送信する)。
本開示に従う例はさらに、ソフトウェア開発者が、パラメータ収集ダイアログを実行しインテント・パラメータを収集するように構成可能なダイアログ・エージェントを生成できるようにするためのシステムおよび方法を提供することができる。本明細書で開示された1例において、ユーザの会話入力を受信するステップと、当該会話入力に関連付けられたダイアログ・システム・インテントを少なくとも1つの予め決定されたインテントキーワードに基づいて識別するステップであって、当該ダイアログ・システム・インテントは要求されたインテント・パラメータを有する、ステップと、当該ダイアログ・システムの全ての要求されたインテント・パラメータに対するデータが利用可能であるかどうかを判定するステップと、当該判定に基づいて、当該ダイアログ・システム・インテントに関連付けられたパラメータ収集ダイアログを選択的に開始するステップであって、当該パラメータ収集ダイアログは、そうでなければ当該ダイアログ・システム・インテントに利用可能でない当該要求されたパラメータに対するデータを収集するように動作可能である、ステップと、当該ダイアログ・システム・インテントおよび1つまたは複数の要求されたパラメータに基づいて、アクション命令を生成するステップとを含む、インテント・パラメータ収集のための方法が提供される。
1例において、当該方法はさらに、当該会話入力内の要求されたインテント・パラメータのうち少なくとも1つを識別するステップと当該要求されたインテント・パラメータのうち当該少なくとも1つを当該会話入力から抽出するステップとを含んでもよい。当該方法はさらに、当該会話入力が全ての欠けているインテント・パラメータを含むとの判定に基づいて当該パラメータ収集ダイアログを開始することなく、当該要求されたインテント・パラメータを当該会話入力から抽出するステップを含むことができる。当該パラメータ収集ダイアログが、少なくとも1つの予め決定されたプロンプトを含んでもよい。
1例において、当該方法はさらに、当該少なくとも1つの予め決定されたプロンプトに応答して、当該ユーザの少なくとも1つのさらなる会話入力を受信するステップと当該欠けているインテント・パラメータの全てが収集されるまで、当該要求されたインテント・パラメータのうち少なくとも1つを当該少なくとも1つの追加の会話入力から抽出するステップとを含んでもよい。当該インテント・パラメータが、数値、単語、フレーズ、音、および画像のうち少なくとも1つを含んでもよい。当該インテント・パラメータのうち少なくとも1つを予め決定された値のリストから選択することができる。
1例において、当該方法はさらに、開発者プラットフォームにより、開発者が、欠けているインテント・パラメータの収集を自動化するための当該自然会話ダイアログ・システムのダイアログ・エージェントを生成できるようにするステップであって、当該ダイアログ・エージェントは開発者プロフィールに関連付けられる、ステップを含むことができる。当該方法はさらに、開発者プラットフォームにより、開発者が、当該ダイアログ・エージェントを生成し、当該ダイアログ・システム・インテント、少なくとも1つのインテント・パラメータ、および当該インテント・パラメータに対する1つまたは複数のプロンプトの1つまたは複数を提供できるようにするグラフィカル・インタフェースを含むことができる。当該方法はさらに、開発者が、開発者プラットフォームにより、ダイアログ・システム・エンティティまたは当該インテント・パラメータに対するデータ・タイプを指定できるようにするステップと開発者が、開発者プラットフォームにより、当該インテント・パラメータの各々に対する値タイプを指定できるようにするステップとを含むことができる。当該アクション命令を、サーバまたはユーザ・デバイスに、当該アクション命令および1つまたは複数の要求されたインテント・パラメータに基づいて予め決定されたアクションを実装させるように構成することができる。当該アクション命令はAPIサービスを引き起こすように構成されたアプリケーション・プログラミング・インタフェース(API)固有応答を含むことができる。当該方法は、当該ユーザが当該アクション命令を確認するかまたは明らかにすることを可能とする確認メッセージを提供するステップであって、当該確認メッセージは1つまたは複数の要求されたインテント・パラメータを記述する、ステップを含むことができる。
本開示に従う別の例では、少なくとも1つのプロセッサとプロセッサ実行可能コードを格納するメモリとを備えた自然会話ダイアログ・システムが提供される。当該プロセッサを、当該プロセッサ実行可能コードを実行する際に以下の動作、即ち、当該会話入力に関連付けられたダイアログ・システム・インテントを少なくとも1つの予め決定されたインテントキーワードに基づいて識別するステップであって、当該ダイアログ・システム・インテントは要求されたインテント・パラメータを有する、ステップと、当該ダイアログ・システムの全ての要求されたインテント・パラメータに対するデータが利用可能であるかどうかを判定するステップと、当該判定に基づいて、当該ダイアログ・システム・インテントに関連付けられたパラメータ収集ダイアログを選択的に開始するステップであって、当該パラメータ収集ダイアログは、そうでなければ当該ダイアログ・システム・インテントに利用可能でない当該要求されたパラメータに対するデータを収集するように動作可能である、ステップと、当該ダイアログ・システム・インテントおよび1つまたは複数の要求されたパラメータに基づいて、アクション命令を生成するステップとを実装するように構成することができる。
1例において、当該少なくとも1つのプロセッサはさらに、当該会話入力が当該いるインテント・パラメータの全てを含むとの判定に基づいて当該パラメータ収集ダイアログを開始することなく、欠けているインテント・パラメータの全てを当該会話入力から取り出すように構成されることができる。当該少なくとも1つのプロセッサはさらに、当該パラメータ収集ダイアログに対する少なくとも1つの予め決定されたプロンプトを生成するように構成されることができる。当該少なくとも1つのプロセッサはさらに、当該プロセッサ実行可能コードの実行の際に以下の動作、即ち、当該少なくとも1つの予め決定されたプロンプトに応答して、当該ユーザの少なくとも1つの追加の会話入力を受信し、当該欠けているインテント・パラメータの全てが収集されるまで、当該要求されたインテント・パラメータのうち少なくとも1つを当該少なくとも1つの追加の会話入力から取り出すことを実装するように構成されることができる。
1例において当該少なくとも1つのプロセッサを、当該プロセッサ実行可能コードの実行の際に以下の動作、即ち、開発者プラットフォームにより、開発者が、当該要求されたインテント・パラメータの収集を自動化するための当該自然会話ダイアログ・システムに対するダイアログ・エージェントを生成できるようにすることを実装するように構成することができる、当該ダイアログ・エージェントは開発者プロフィールに関連付けられる。当該少なくとも1つのプロセッサを、当該プロセッサ実行可能コードの実行の際に以下の動作、即ち、開発者プラットフォームにより、開発者に当該ダイアログ・エージェントを生成させることを可能とするグラフィカル・インタフェースを提供し、当該ダイアログ・システム・インテント、少なくとも1つのインテント・パラメータ、および当該インテント・パラメータの各々に対する当該パラメータ収集ダイアログに対する1つまたは複数のプロンプトのうち少なくとも1つを提供し、開発者が、開発者プラットフォームにより、ダイアログ・システム・エンティティまたは当該インテント・パラメータに対するデータ・タイプを指定できるようにし、開発者が、開発者プラットフォームにより、当該インテント・パラメータの各々に対する値タイプを指定できるようにすることを実装するように構成することができる。
さらに本開示に従う別の例では命令を格納した非一時的プロセッサ可読媒体が提供される。当該命令は、1つまたは複数のプロセッサにより実行されたとき、当該1つまたは複数のプロセッサに、自然会話ダイアログ・システムに対する方法を実装させることができる。当該方法は、当該会話入力に関連付けられたダイアログ・システム・インテントを少なくとも1つの予め決定されたインテントキーワードに基づいて識別するステップであって、当該ダイアログ・システム・インテントは要求されたインテント・パラメータを有する、ステップと、当該ダイアログ・システムの全ての要求されたインテント・パラメータに対するデータが利用可能であるかどうかを判定するステップと、当該判定に基づいて、当該ダイアログ・システム・インテントに関連付けられたパラメータ収集ダイアログを選択的に開始するステップであって、当該パラメータ収集ダイアログは、そうでなければ当該ダイアログ・システム・インテントに利用可能でない当該要求されたパラメータに対するデータを収集するように動作可能である、ステップと、当該ダイアログ・システム・インテントおよび1つまたは複数の要求されたパラメータに基づいて、アクション命令を生成するステップとを含むことができる。
このセクションは、当該クレームされた主題の主要な特徴または本質的な特徴を識別するものではなく、当該クレームされた主題の範囲を決定する際の支援として使用するものでもない。本明細書で説明した主題の例の1つまたは複数の詳細を添付図面および以下の説明で説明する。当該主題の他の潜在的な特徴、態様、および利点は詳細な説明、添付図面、および添付の特許請求の範囲から明らかになろう。
実施形態が限定ではなく例として添付図面において示されている。添付図面において同様な参照は同様な要素を示す。
本開示の幾つかの実施形態に従う、ダイアログ・システム・インタフェースのためのカスタム・ダイアログ・システム・エンジンを生成するためのシステムおよび方法を実装できる環境を示す図である。 例示的な実施形態に従う、プラットフォームを用いてカスタム・ダイアログ・システム・エンジンを生成し当該プラットフォームを動作するための方法を示す処理流れ図である。 本開示の例示的な実施形態に従うダイアログ・システム・エンジンの高レベルアーキテクチャを示す図である。 本開示の例示的な実施形態に従う、新たなダイアログ・システム・エンティティを生成するためのプラットフォーム・インタフェースのグラフィカルユーザ・インタフェース(GUI)を示す図である。 本開示の例示的な実施形態に従う、新たなダイアログ・システム・インテントを生成するためのプラットフォーム・インタフェースのGUIを示す図である。 本開示の例示的な実施形態に従う、ダイアログ・システムによる要求を処理するためのログを提供するプラットフォーム・インタフェースのGUIを示す図である。 本開示の例示的な実施形態に従う、インテント・パラメータを収集するための方法を示す処理流れ図である。 本開示の例示的な実施形態に従う、パラメータ収集ダイアログによりインテント・パラメータを収集するためのダイアログ・エージェントを生成するためのプラットフォーム・インタフェースの例示的なGUIを示す図である。 本開示の例示的な実施形態に従う、ダイアログ・エージェントのプロンプトを定義するためのプラットフォーム・インタフェースの例示的なGUIを示す図である。 本明細書で説明した方法を実装するのに適した例示的なコンピューティング・デバイスを示す高レベルブロック図である。
本開示の例示的な態様は一般に、インテリジェントなヒューマンマシン対話を維持するように構成された自然言語ダイアログ・システム(簡単のため「ダイアログ・システム」とも呼ばれる)に関する。当該ダイアログ・システムは、ユーザから会話入力を受信し、当該会話入力をテキスト入力に変換し、機械学習、統計的、ヒューリスティック、または他の適切なアルゴリズムを用いて当該テキスト入力を処理することができる。当該処理の結果は当該ユーザに対する応答メッセージまたはクライアント・デバイスまたはサーバにより実施されるアクションを含むことができる。例示的なアクションが、電子メールの送信、予約を行うこと、通知またはリマインダの設定、ホテルの予約、天気予報のチェック、トラフィックのナビゲート等を含んでもよい。
当該ヒューマンマシン対話は、ユーザ入力と当該ダイアログ・システムによりとるべきアクションとの間の枠組み、ルール、またはマッピング、特に、ダイアログ・コンテキストを含みうるダイアログ・システム・インテントに基づくことができる。ダイアログ・システム・インテントは、予め決定されたキーワードまたはフレーズをユーザ入力において検出することで、ヒューマンマシン対話の過程でダイアログ・システムにより自動的に識別されうる。例えば、ユーザが特定の都市のホテルを予約するようにダイアログ・システムに問い合わせるとき、インテントを識別することができる。別の例では、ユーザがテキスト・メッセージまたは電子メールを特定の受取人に送信するようにダイアログ・システムに問い合わせるとき、インテントを識別することができる。さらに別の例では、ユーザがレストランにピザを注文するようにダイアログ・システムに問い合わせるとき、インテントを識別することができる。
予め決定されたダイアログ・システム・インテントを処理することは広範囲のインテント・パラメータの収集を要求することができる。例えば、当該インテントがテキスト・メッセージを受信者に送信するアクションを要求するとき、このインテントを実行するのに十分な要求されたインテント・パラメータは、当該テキスト・メッセージのコンテンツおよび当該受信者の名前を含むことができる。ホテルを電子的に予約するために提供されるインテントの例に対して、当該要求されたパラメータが、宛先都市、部屋タイプ、到着日、出発日、および、場合によっては、ホテル評価、ホテル名前、ホテルサービス等のような他のパラメータを含んでもよい。複数のインテントを定義しダイアログ・コンテキストを介してそれらをリンクするのではなく、本明細書で開示された例はダイアログ・システムで使用するためのダイアログ・エージェントを提供し、その結果各ダイアログ・エージェントを単一のダイアログ・システム・インテントおよび当該ダイアログ・システム・インテントの1つまたは複数のインテント・パラメータに関連付けることができる。
特定のダイアログ・エージェントが起動されると、パラメータ収集ダイアログを、ユーザ会話入力におけるダイアログ・システム・インテントの検出の際に開始することができる。当該パラメータ収集ダイアログは、既にユーザにより提供されるかまたは他のソースから利用可能なインテント・パラメータを検出することができる。特定のインテント・パラメータが欠けていると判定された場合、当該パラメータ収集ダイアログはプロンプト・メッセージをユーザに提供して、ユーザに追加の会話入力を提供するように促すことができる。当該プロンプト・メッセージを予め定義するか、または、必要に応じて生成することができ、欠けている要求されたパラメータおよび幾つかのケースでは追加の任意のパラメータを提供するようにユーザを誘導するように選択することができる。当該ダイアログ・システムはインテント・パラメータをユーザの1つまたは複数の追加の会話入力から取り出すことができる。
幾つかの例では、幾つかのパラメータを事前格納されたデータから取得することができる。例えば、ユーザが「call a taxi service to give me a ride from where I am to home」と言った場合、ユーザの自宅住所をメモリから取得することができる。特定のインテントに対して要求された全てのパラメータのうち少なくとも最小数が収集または確認されたとき、パラメータ収集が完了し、当該ダイアログ・システムは当該インテントに基づいてアクション命令を生成することができる。当該アクション命令は、ユーザ会話入力から収集されたまたは他所から取得された幾つかの要求された任意のインテント・パラメータに基づくことができる。当該ダイアログ・システム、クライアント・デバイス、またはサーバはついで、アクション・コマンドを実行して、ダイアログ応答をユーザに提供するか、または特定のアクションを実施することができる。
例えば、ユーザが「Please book a hotel for me in Palo Alto」と発声すると、ダイアログ・システムは、ダイアログ・システム・インテントが「ホテル予約」であると識別し、対応するパラメータ収集ダイアログを開始することができる。まず、ダイアログ・システムは、要求されたパラメータの幾つかが既に提供されている(即ち、都市がパロアルトである)かまたは他のソースから利用可能であると判定することができる。ダイアログ・システムはさらに、到着日付および滞在時間のような「ホテル予約」インテントの他の要求されたパラメータが依然として欠けていると判定することができる。ダイアログ・システムは、「When would you like to arrive?」および「How many nights would you be staying?」のようなプロンプトでさらなる会話入力を提供するようにユーザに促すことができる。ユーザが回答を提供すると、ダイアログ・システムはインテント・パラメータを入力から取り出し、全ての欠けている要求されたインテント・パラメータが収集されるまで、プロンプトを提供し続けることができる。さらに、ダイアログ・システムは、例えば、「You want me to book a hotel in Palo Alto for you starting next Monday for two nights. Is that correct?」のようなサマリ出力を提供することで当該要求されたパラメータが収集されることを確認するのをユーザに要求することができる。ユーザが肯定的に答えた場合、ダイアログ・システムは1つまたは複数の収集されたパラメータを含む電子ホテル予約注文を生成し、それを適切なウェブ・サービスに送信することができる。そうでなければ、ダイアログ・システムは、変更または追加する必要があるものをユーザに問い合わせることができる。
本明細書で開示された例はまた、ソフトウェア開発者が、上述のようにインテント・パラメータを収集するためのダイアログ・エージェントを含む、カスタム・ダイアログ・システム・エンジンおよびダイアログ・エージェントを生成できるようにする開発者プラットフォームに関する。一般に、ダイアログ・システム・エンジンは、カスタム・ダイアログ・システム・インタフェースと協調するバックエンド・サービスを含む。ダイアログ・システム・インタフェースを、少なくとも様々なソフトウェア・アプリケーション、モバイル・アプリケーション、ミドルウェアアプリケーション、ファームウェアアプリケーション、ウェブサイト等の一部として実装することができる。換言すれば、ダイアログ・システム・インタフェースは、少なくともユーザ入力を取得しダイアログ・システム出力をユーザに配送するように構成されたコンピュータヒューマンインタフェースを提供することができる。
ダイアログ・システム・エンジンは、ユーザ入力を処理し対応する応答(またはコマンド)を生成することで、ダイアログ・システム・インタフェースをサポートすることができる。したがって、ダイアログ・システム・エンジンおよびダイアログ・システム・インタフェースは、互いと対話するとき、ダイアログ・システムを形成することができる。特定の例において、ユーザ・デバイスで実行されるかまたはそこからアクセスされるダイアログ・システム・インタフェースを「フロントエンド」ユーザ・インタフェースと称してもよく、ダイアログ・システム・エンジンは、このダイアログ・システム・インタフェースの当該動作をサポートし、「バックエンド」サービスと称してもよい。幾つかの例では、当該インタフェースおよびエンジンが、クライアント−サーバモデルを含んでもよく、これら2つはネットワーク接続を介して通信する。他の例において、ダイアログ・システム・エンジンおよびダイアログ・システム・インタフェースは、サーバへのネットワーク接続を必要とせずに単一のデバイス上で動作してもよい。
本開示の例に従って、開発者プラットフォームは、ソフトウェア開発者が、フロントエンドダイアログ・システム・インタフェースをサポートしうるカスタム・ダイアログ・システム・エンジンを生成することを可能としうる。例えば、ソフトウェア開発者がダイアログ・システム機能をモバイル・アプリケーションに追加の機能として統合したい場合、開発者は当該プラットフォームを使用して、カスタム・ダイアログ・システム・エンジンを生成し展開して、当該カスタム・ダイアログ・システム・エンジンを当該モバイル・アプリケーションとリンクすることができる。当該モバイル・アプリケーションはダイアログ・システム・インタフェースを含むだけでもよい。この例において、ユーザは、当該モバイル・アプリケーションと対話することでダイアログ・システム・インタフェースを起動することができる。ユーザは、音声入力またはテキスト入力の形でダイアログ・システム・インタフェースに問合せを行うことができる。ユーザ問合せを受信すると、ダイアログ・システム・インタフェースは、追加の事前処理によりまたはそれなしに、以前に開発者プラットフォームを用いて生成された問合せを当該リンクされたカスタム・ダイアログ・システム・エンジンに送信することができる。当該カスタム・ダイアログ・システム・エンジンは、当該受信されたユーザ問合せを処理し解釈し、予め決定されたルールおよび設定に基づいて当該問合せに対する応答を生成することができる。当該応答はついで、ユーザへのさらに視覚的またはオーディオ提供のためにダイアログ・システム・インタフェースに提供することができる。あるいは、当該応答がアクション命令(コマンド)を含む場合、当該アクション命令を実行するか、またはサーバ、ウェブ・サービス、またはクライアント・デバイスに送信して実行することができる。
ダイアログ・システム・インタフェースは、パーソナル・コンピュータまたはスマートフォンのようなユーザ・デバイスにより実行可能な広範囲のソフトウェア・アプリケーションにより実行されかつ/またはそこに統合され、またはダイアログ・システムがウェブサイトまたはウェブ・サービスの一部であるようにサーバまたはコンピューティングクラウドリソースにリモートに配置されることができる。述べたように、ダイアログ・システム・エンジンを、それらの機能がインターネット、モバイルデータネットワーク、または任意の他の通信ネットワーク上でダイアログ・システム・インタフェースにアクセス可能でありうるように、当該インタフェースと同一のユーザ・デバイス、(Bluetooth接続を介して通信するモバイル・フォンおよびスマートウォッチのような)当該インタフェースが実装されるデバイスと通信する同伴者デバイス、またはサーバで実装することができる。
図1は、本開示の例を実施するのに適切でありうる例示的なシステム環境100の高レベルブロック図を示す。特に、図1は、カスタム・ダイアログ・システム・エンジンを生成し維持するためのプラットフォーム110を示す。示すように、プラットフォーム110は、カスタム・ダイアログ・システム・エンジン120を維持し実行するためのカスタム・ダイアログ・システム・エンジンおよびバックエンド・サービス114を生成するためのプラットフォーム・インタフェース112を含む。本開示の幾つかの態様において、プラットフォーム110は開発者プラットフォームを含む。
プラットフォーム・インタフェース112が、ウェブ・ページに埋め込まれネットワークを介して開発者によりアクセス可能なグラフィカルユーザ・インタフェース(GUI)を含んでもよい。本開示の幾つかの他の態様において、プラットフォーム・インタフェース112を、コンピュータまたはスマートフォンのような電子デバイスで実行されているかまたはそこからアクセス可能な例えば、ミドルウェア、またはファームウェアのようなダウンロード可能なソフトウェア・アプリケーションまたは任意の他のソフトウェアを含む、ソフトウェア・アプリケーションとして実装することができる。図1に示す例において、プラットフォーム・インタフェース112は(以下でより詳細に説明される)ウェブアクセス可能GUIとして実行される。簡単のため、本開示は、プラットフォーム・インタフェース112がインターネットを介してアクセス可能なサーバベースのソリューションである態様のみを提供する。しかし、プラットフォーム・インタフェース112はかかる実装に限定されず、多数のGUIツールを通じた1つまたは複数のカスタム・ダイアログ・システム・エンジン120またはダイアログ・エージェントの生成を可能としうることは理解されるべきである。
依然として図1を参照すると、バックエンド・サービス114は、例えば、プラットフォーム・インタフェース112によりまたはその支援により生成されるカスタム・ダイアログ・システム・エンジン120を維持し実行する役割を果たしうる。バックエンド・サービス114は、それらのダイアログ・システム・インタフェースがプラットフォーム110のバックエンド・サービス114維持されるカスタム・ダイアログ・システム・エンジン120と対話できるようにすることで、機能をカスタム・ダイアログ・システムに提供するウェブ・サービスとして動作してもよい。
前述のように、ダイアログ・システム・インタフェース130をクライアント・サイド140に提供することができる。ダイアログ・システム・インタフェース130は、ユーザが、対応するダイアログ・システム・エンジン120による処理のためにバックエンド・サービス114に配信される問合せを行い、ダイアログ・システム・エンジン120により生成された当該問合せへの応答を受信できるようにするGUIであってもよい。ダイアログ・システム・インタフェース130をスタンドアロンソフトウェア・アプリケーションとして実装してもよく、またはそれを別のソフトウェア・アプリケーション、ウェブ・サービス、ウェブサイト等に統合することができる。クライアントサーバモデルは説明の目的のためにのみ示されることは理解されるべきである。本明細書で開示されたシステムはクライアント−サーバシステムである必要はなく、および特定の例においてダイアログ・システム・インタフェース130およびダイアログ・システム・エンジン120は同一の(例えば、ユーザ)デバイス上にあることができる。
クライアント・サイド140が、ユーザ・デバイス、クライアント・デバイス、端末、ポータル、ユーザ機器、コンピューティング・デバイス(例えば、ラップトップコンピュータ、タブレットコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナル・コンピュータ、およびスマートフォン)、パーソナルデジタルアシスタント、ゲーム・コンソール、リモートコントロール、マルチメディアシステム、スマートテレビデバイス、セットトップボックス、インフォテイメントシステム、車内コンピューティング・デバイス、情報キオスク、ロボット等を含んでもよい。これらの例において、1つまたは複数のダイアログ・システム・インタフェース130をソフトウェア、ミドルウェア、またはファームウェアとして実装することができる。
さらなる例では、クライアント・サイド140は、サーバ、ウェブホスティングサービス、ウェブ・サービス、ウェブサイト、クラウドサービス等のようなネットワークまたはオンラインソリューションを指してもよい。例えば、ダイアログ・システム・インタフェース130は、エンド・ユーザが問合せを行いそれに対する応答を受信できるようにする、1つまたは複数のウェブ・ページ上で提供されるウィジェットまたはGUIを含むことができる。このオプションは、開発者が、例えば、ダイアログ・システムをウェブサイトに統合して強化されたカスタマサービスを提供したい場合に適切でありうる。
図1から分かるように、ダイアログ・システム・インタフェース130および対応するカスタム・ダイアログ・システム・エンジン120の間の対話が通信ネットワーク150を介して行われている。通信ネットワーク150が、インターネット、イントラネット、モバイルデータネットワーク、ローカル・エリアネットワーク、広域ネットワーク、IEEE802.11ベースネットワーク、パーソナル・エリアネットワーク(例えば、Bluetooth、Zigbee)、赤外線等の1つまたは複数を含んでもよい。
図1はまた、様々なサードパーティ・ウェブ・リソース/サービス160を示す。様々なサードパーティ・ウェブ・リソース/サービス160は、ダイアログ・システム応答の一部としてカスタム・ダイアログ・システム・エンジン120またはダイアログ・システム・インタフェース130に情報を提供し、または特定のアクションまたは動作を実施することができる。例えば、ウェブ・リソース/サービス160は、電子メールサービス、天気サービス、ナビゲーションサービス、ホテル予約サービス、タクシー予約サービス、オンラインショッピングサービス、電子商取引サービス、予約サービス、リマインダサービス等を提供してもよい。したがって、ユーザが「What is the weather like today?」と言った場合、対応する情報を自動的に、ダイアログ・システム・エンジン120により1つまたは複数のサードパーティ・ウェブ・リソース/サービス160から取得し、ユーザに配送されたダイアログ・システム応答に統合することができる。ユーザが「Send an email to John to invite him to my party tonight」と言った場合、ダイアログ・システム・エンジン120は、サードパーティ・ウェブ・リソース/サービス160に、電子メールを生成させ当該電子メールを受取人に関連付けられた電子メール・アドレスに送信させることができる。
次に、カスタム・ダイアログ・システム・エンジン120を生成し動作させる例示的なプロセスを、図1および他の図面を参照して説明する。特に、プラットフォーム・インタフェース112は、開発者がカスタム・ダイアログ・システム・エンジンに対する基礎の役割を果たす1つまたは複数の「ダイアログ・システム要素」を生成しカスタマイズできるようにする、幾つかのツールを有する1つまたは複数のGUIを提供することができる。
様々な例によれば、ダイアログ・システム要素は少なくとも「エンティティ」および「インテント」を含む。各エンティティが、実質的に同一のまたは同様な特性を有する幾つかのオブジェクトを含んでもよい。換言すれば、エンティティはクラスのオブジェクトを定義するキーワードのリストを含むことができる。1例において、エンティティが、キーワードおよび当該キーワードに対応する1組のシノニムを含んでもよい。別の例では、エンティティが、キーワードおよび当該キーワードに対応する1組の定義を含んでもよい。さらに別の例では、エンティティが、リスト(例えば、都市のリスト、名前のリスト、タイトルのリスト、ブランドのリスト、および通り名のリスト)を含んでもよい。幾つかの例では、当該エンティティを特定のダイアログ・エージェントで使用でき、エージェントの機能の結果を返すと期待されるパラメータ値に依存しうる。
本開示の幾つかの例では、開発者は、当該ダイアログ・エージェントで述べられた全ての概念に対するエンティティを生成する必要はなく、アクション可能データに対して要求されたもののみを生成すればよい。例えば、3つのタイプのエンティティがありうる。第1のタイプはシステム・エンティティ、例えば、共通日付基準、時間基準、数値基準、および都市基準を含むことができる。第2のタイプは、開発者が、「veg」および「veggie」のシノニムを有する「vegetarian」の参照値を有する入力を生成することで食料タイプのエンティティを生成できるように、開発者エンティティ、例えば、参照値にマップされる任意の一意なシノニムのグループを含むことができる。第3のタイプは、ユーザ・エンティティ、例えば、ユーザ嗜好に固有なプレイリスト・エンティティのような特定のエンド・ユーザに対して定義されたエンティティを含むことができる。さらに、これらのエンティティの各々は、(参照値を有する)マッピング、(参照値を有さない)列挙タイプ、または(エイリアスを有する他のエンティティを含みオブジェクト・タイプ値を返す)複合型であることができる。
幾つかの例では、エンティティに関連付けられたオブジェクトのリストを自動的に拡張することができる。例えば、機械学習アルゴリズムを、当該エンティティに関連付けられた1つまたは複数の新たなオブジェクトを提案するために使用することができる。機械学習されるアルゴリズムを、大きなテキストおよび/または語彙を用いてトレーニングすることができる。限定ではなく例として、カスタム・ダイアログ・システム・エンジン120の開発者は、エンティティ@cityを、例えば、ニューヨークおよびロサンゼルスのような値で定義することができる。当該カスタム・ダイアログ・システム・エンジンのユーザが単語「ワシントンDC」を発するかまたは入力した場合、機械学習アルゴリズムは「ワシントンDC」がエンティティ@city内に列挙されたオブジェクトに関すると判定できるので、エンティティ@cityをニューヨーク、ロサンゼルス、およびワシントンDCに自動的に拡張することができる。幾つかの例では、提案されたオブジェクトが当該1つまたは複数のエンティティに関することを確認するためにユーザに問い合わせることができる。
さらなる例において、エンティティは他のエンティティのリストを含むことができる。例えば、開発者はエンティティ@carをエンティティのリスト(@make, @model)として定義することができる。@makeおよび@modelの値は、@makeおよび@modelを関連付けうるオブジェクトの何れかに設定される。例えば、エンティティ@carは、{make:"Honda"; model:"Accord"}, {make:"Ford"; model:"Fiesta"}等のような複合型オブジェクトを含むことができる。
さらに、各インテントは、ユーザ要求およびダイアログ・システム応答の間の特定の関係を記述するダイアログ・システム対話枠組みまたはルールを含むことができる。換言すれば、インテントは、ユーザが言ったことおよびソフトウェア・アプリケーションがとるべきアクションの間のマッピングを表すことができる。1例において、インテントを、エンティティに対する1つまたは複数の参照を明示的に含むパターンとして決定することができる。例示的なパターンは「what is the weather in @city: city」を含むことができる。「@city: city」は、エンティティ@cityに対する参照および当該エンティティ@city内部のパラメータ都市である。特定の追加の例において、インテントを決定するために、「エンティティ」に対する明示的な参照を含むパターンを提供する代わりに、開発者は、インテントおよびエンティティを示す例示的な要求(フレーズ)を提供するだけでよい。かかる例において、プラットフォーム110は、機械学習技術を用いて、どの「エンティティ」および「インテント」が例示的な要求で示唆されているかを自動的に判定する。
例示的な入力に基づいて、プラットフォーム110は対応するアクションを生成してもよい。各アクションは名前(エンティティ)および1つまたは複数のパラメータを含むことができる。例えば、要求は、「Weather forecast for Los Angeles」と入力されてもよい。機械学習技術は名前「weather」を有するアクションと、データ・タイプ@cityのパラメータ名:都市を決定することができる。
したがって、開発者はプラットフォーム・インタフェース112を使用して、複数のエンティティおよび複数のインテントを生成することができ、両方とも特定のアプリケーションまたは業界に固有である。これらの複数のエンティティおよびインテントはダイアログ・システム・エンジン120を形成し、ダイアログ・システム・エンジン120が特定のアクションを実施するかまたは広範囲のエンド・ユーザ入力に応答して特定の出力を生成できるようにしうる。特定の例において、インテントは、(ユーザの読取専用のために)インテントの名前、パターンおよび/または例示的な要求のリスト、アクションの名前、当該アクションに関連付けられたパラメータ、および当該アクションに関連付けられた履行を含む、一般的な構造を含むことができる。当該履行が、テキスト(スクリーンでハイライトされたテキスト)、またはウェブ・サービスの呼出しを含んでもよく、データベースへの要求を行ってもよい等である。幾つかの例では、プラットフォーム112は、アクションを開発者に提供でき、開発者は当該アクションに関連付けられたカスタム履行を直接カスタム・ダイアログ・システム・エンジン120に統合できるようにする。特定の例において、開発者は、当該アクション(アクションおよびパラメータの名前)を受信し、カスタム履行をクライアント・サイド140に統合してもよい。例えば、カスタム履行が、情報(例えば、予報、トラフィック情報、およびナビゲーション)を取り出すこと、ダイアログ・システム・インタフェースが実行しているデバイスの幾つかの動作を実施すること等の、ウェブサイトまたはデータベースに対する要求を含んでもよい。
幾つかの例では、ダイアログ・システム要素が、1つまたは複数のコンテキストを含んでもよい。当該コンテキストは、特定のエンド・ユーザに対するセッションの間のインテントに対するラベル、キー、または手掛りを含む1つまたは複数のパラメータを含むことができる。当該コンテキストが、当該ラベルの事前条件およびブール表現を含んでもよい。当該インテントを入力コンテキストに基づいてトリガすることができる。例えば、特定の事前条件が満たされるかまたは事前条件のブール表現が真であるときに、インテントをトリガすることができる。出力コンテキストは、インテントがユーザの要求に基づいて実行されるときエンド・ユーザ・セッションに設定される。様々な例において、出力コンテキストは、幾つかのユーザ要求を含むユーザ・セッション内の特定のライフスパンを割り当てることができる。幾つかの例では、出力コンテキストのライフスパンを、ユーザのセッションの間で行われた幾つかの要求として測定することができる。ユーザ・セッション内において、これは次のユーザ要求に応答してインテントの実行の前に存在する現在のコンテキスト状態、および当該インテントの実行後に設定される実行後コンテキスト状態がある。当該実行後コンテキスト状態は、ユーザ要求および当該インテントの実行の結果に基づく1つまたは複数の新たに追加されたコンテキストを含むことができる。古いコンテキストの幾つかを、当該インテントの実行の結果に基づいて、またはその有効期限切れのため、実行後状態から削除することができる。
コンテキストは、ユーザの要求の現在のコンテキストを表す文字列であることができる。これはフレーズを区別するのに有用である。当該フレーズは、ユーザの嗜好または地理的位置または会話のトピックに応じて曖昧であるかもしれずまたは異なる意味を有するかもしれない。例えば、ユーザが音楽プレイヤ・アプリケーションを聴いており、彼の関心を惹くバンドを見つけた場合、彼は「I want to hear more of this」と言うかもしれない。開発者は当該要求を有するコンテキストに当該バンドの名前を含めることができ、その結果、当該ダイアログ・エージェントはそれをより効果的に処理することができる。別の例では、開発者はスマート・ホーム・デバイスの製造者であり、家庭機器を遠隔制御するモバイル・アプリケーションを有する。ユーザは「Turn on the front door light」と言い、次いで「Turn it off」と言ってもよく、モバイル・アプリケーションは、2番目のフレーズが、それが同一のコンテキスト内にあるので、依然としてライトのことを指していると理解するであろう。すると、後にユーザ、「Turn on the coffee machine」と言い、その後に「Turn it off」と言った場合、新たなコンテキストのため、以前とは異なるアクションの結果となるであろう。コンテキストを、ユーザ・セッション(例えば、API呼出しで渡されるセッション識別子)に結び付けることができる。ユーザ表現がインテントにマッチする場合、当該インテントは、将来この表現により共有されるべき出力コンテキストをセットすることができる。
さらなる例において、1つまたは複数の属性またはパラメータを各コンテキストに割り当てることができる。当該属性は、インテントの実行の間に識別され、当該インテントに関連付けられたアクションで使用されることができる。当該コンテキストから取り出された値は当該アクションに対するパラメータを形成することができる。当該属性はさらに、当該インテントの実行の後に設定された出力コンテキストに置くことができる。
図2は、本明細書で開示された1態様に従う、プラットフォーム110を用いてカスタム・ダイアログ・システム・エンジンを生成し、プラットフォーム110を動作させるための方法200を示す処理流れ図である。方法200を、ハードウェア(例えば、意思決定論理、専用論理、プログラム可能論理、およびマイクロコード)、(汎用目的コンピュータシステムまたは専用マシンで実行されているソフトウェアのような)ソフトウェア、またはその両方の組合せを含みうる処理論理により実施してもよい。1例において、当該処理論理は、図10に示すプラットフォーム110またはコンピューティング・デバイスの1つまたは複数のコンポーネントを指す。方法200のステップを図2で説明し図示したのと異なる順序で実装することができる。さらに、方法200は本明細書で図示していない追加のステップを有してもよいが、これは本開示から当業者にとって明らかでありうる。方法200はまた、以下で図2で概観し図示したものより少ないステップを有してもよい。
方法200は、動作202で開発者にプラットフォーム110に登録させ、少なくとも1つのプロセッサおよびプロセッサ実行可能コードを格納するメモリを備えた第1のサーバにより開発者プロフィールを生成することで開始する。これらの目的のため、開発者はプラットフォーム・インタフェース112と対話する。開発者プロフィールは、クライアント・サイド140に展開された開発者のカスタム・ダイアログ・システム・エンジン120および1つまたは複数のダイアログ・システム・インタフェース130を仮想的にリンクし(関連付け)てもよい。当該リンクが、アプリケーション・プログラミング・インタフェース(API)コード、対話ルール、宛先アドレス、およびそれより多くを規定するステップを含んでもよい。特定の例において、開発者プロフィールは複数の開発者によりアクセスされることができる。動作202で、当該方法により、開発者は1つまたは複数のダイアログ・システムを生成することが可能であってもよい。各ダイアログ・システムをアクセス識別子(ID)に関連付けることができる。当該アクセスIDを、ダイアログ・システムに認証を介してクライアント・サイド140からアクセスするために使用することができる。様々な例において、当該アクセスIDが、トークン、デジタルキー等を含んでもよい。
動作204で、プラットフォーム110は、開発者から1つまたは複数のダイアログ・システム・エンティティを受信し、それをメモリまたはデータベースに格納することができる。幾つかの例では、当該エンティティは受信されないが、プラットフォーム・インタフェース112のウェブツールを用いて開発者により生成される。ダイアログ・システム・エンティティが、キーワードおよび当該キーワードに対する少なくとも1つのシノニム、キーワードおよび当該キーワードの少なくとも1つの定義、1つのクラスのオブジェクトを定義するキーワードのリスト等を含んでもよい。ダイアログ・システム・エンティティは、1つまたは複数のパラメータに関連付けられるかまたはそれを含むことができる。
動作206で、プラットフォーム110が、開発者から1つまたは複数のダイアログ・システム・インテントを受信し、それを当該メモリまたはデータベースに格納する。幾つかの例では、ダイアログ・システム・インテントは受信されないが、プラットフォーム・インタフェース112のツールを用いて開発者により生成される。上述のように、当該インテントはダイアログ・システム要素(ダイアログ・システム・エンジンが特定のニーズに対してカスタマイズされた応答を生成できるようにするカスタム論理)を形成する。ダイアログ・システム・インテントが、ダイアログ・システム対話枠組み、ユーザ要求およびダイアログ・システム応答の間の関係を定義するルール、特定のアクションおよび当該1つまたは複数のダイアログ・システム・エンティティの間の関係のルール等を含んでもよい。幾つかの例では、開発者は、1つまたは複数のダイアログ・システム・インテントで使用されるべき1つまたは複数のダイアログ・システム・エンティティを明示的に定義することができる。さらにまたはあるいは、開発者は例示的な要求(複数可)(フレーズ)を提供することができる。当該例示的な要求に基づいて、プラットフォーム110は1つまたは複数のダイアログ・システム・エンティティを提案してもよい。当該エンティティを提案するために、プラットフォーム110はまず、動作204で開発者により提供されるエンティティのリスト内で当該適切なエンティティを検索してもよい。幾つかの例では、プラットフォーム110は、機械学習技術を介して新たなダイアログ・システム・エンティティを提案してもよい。開発者が、提案された新たなダイアログ・システム・エンティティのパラメータを承認し、修正し、または変更することができてもよい。開発者はまた、当該インテントの1つまたは複数のパラメータを提供することができる。
エンティティの定義が静的でないことに留意すべきである。さらなる動作の間に、プラットフォーム110は開発者により定義されたエンティティを動的に再定義してもよい。当該エンティティを、ユーザプロフィール、嗜好、ユーザ要求等に基づいて改良(補強)することができる。当該改良されたエンティティは、さらなる処理においてプラットフォーム110により使用される。
動作208で、プラットフォーム110は、1つまたは複数のダイアログ・システム・インテントを1つまたは複数のダイアログ・システムアクションに関連付けて、1つまたは複数のカスタム・ダイアログ・システム・エンジン120またはダイアログ・エージェントを生成することができる。カスタム・ダイアログ・システム・エンジン120は、開発者の1つまたは複数のダイアログ・システム・インタフェース130に関連付けられる。当該アクションの各々は、ダイアログ・システム・エンティティに関連付けられた名前および1組のエイリアスにより定義される。
動作202乃至208は、カスタム・ダイアログ・システム・エンジン120(ダイアログ・エージェント)に対するセットアップ・プロセスを示し、動作210乃至218はカスタム・ダイアログ・システム・エンジン120を動作させるプロセスを示す。特に、カスタム・ダイアログ・システム・エンジン120の全てのダイアログ・システム要素が生成されると、それらはバックエンド・サービスとして維持され、関連付けられたダイアログ・システム・インタフェース130の何れかがダイアログ・システムの完全な機能を予め決定された設定に従ってユーザに提供できるようにする。
特に、動作210で、プラットフォーム110は識別されていないダイアログ・システム・インタフェース130からユーザ要求を受信することができる。ユーザ要求は音声(会話)入力またはテキスト入力であることができる。幾つかの例では、ダイアログ・システム・インタフェース130は、例えば、話された単語を認識し音声入力をテキスト入力を変換することで、ユーザ入力を事前に処理することができる。他の例において、事前処理はオーディオ拡張、雑音キャンセル、暗号化/復号化等を含むことができる。他の例において、しかし、事前処理はダイアログ・システム・インタフェース130により実施されない。
動作212で、プラットフォーム110はユーザ要求を処理し、ダイアログ・システム・インタフェース130を識別する。当該識別プロセスは、ダイアログ・システム・インタフェース130の識別子をユーザ要求から取り出すことに基づくことができる。例えば、ユーザ要求は、ユーザ要求がダイアログ・システム・インタフェース130からプラットフォーム110に送信された時点の識別子を伴うことができる。
動作214で、動作212での識別の結果に基づいて、プラットフォーム110は、当該識別されたダイアログ・システム・インタフェース130に関連付けられたカスタム・ダイアログ・システム・エンジン120を起動する。同一の動作214で、プラットフォーム110はまた、1つまたは複数のダイアログ・システム要素(即ち、1つまたは複数のエンティティおよび1つまたは複数のインテント)を動作212での識別の結果に基づいて抽出または識別してもよい。動作214で、プラットフォーム110は、ユーザ要求および特定の要求セッションに関連付けられたコンテキスト(1つまたは複数のラベル、キー、手掛り、およびその論理的表現)を識別してもよい。
動作216で、カスタム・ダイアログ・システム・エンジン120は、動作214で取り出されたダイアログ・システム要素(即ち、1つまたは複数のエンティティおよび1つまたは複数のインテント)を用いてユーザ要求を処理する。当該インテントをコンテキストに基づいてトリガすることができる。当該コンテキストを、事前に定義し、ユーザ要求に基づいて決定し、さらに1つまたは複数のインテントがトリガされた後に変更することができる。当該コンテキストは、特定のユーザおよびユーザの特定のセッションに対して固有であることができる。ダイアログ・システム処理の幾つかの例がさらに図3を参照して説明される。
動作218で、カスタム・ダイアログ・システム・エンジン120は、応答を生成し、それをカスタム・ダイアログ・システム・エンジン120に関連付けられたダイアログ・システム・インタフェース130に送信することができる。当該応答が、特定のデータ、例えば、テキスト・メッセージ、および/または1つまたは複数のアクションを含んでもよい。各アクションは、1つまたは複数のインテントおよび1つまたは複数のエンティティの使用で識別されたアクションの名前および1組のパラメータを含むことができる。ダイアログ・システム・インタフェース130はついで、予め決定された設定に応じて当該テキスト・メッセージをエンド・ユーザに表示または再生してもよい。ダイアログ・システム・インタフェース130はまた、アクション名および1組のパラメータを用いて当該1つまたは複数のアクションに基づいておよびアクションに関連付けられたカスタム履行に従って、1つまたは複数の動作を実施することができる。幾つかの例では、カスタム・ダイアログ・システム・エンジン120はカスタム履行を処理して、結果をダイアログ・システム・インタフェース130に送信することができる。カスタム・ダイアログ・システム・エンジン120の応答はまた、クライアント・デバイス、ウェブ・リソース/サービス160、プラットフォーム110、またはリモートサーバにより実行されうるアクション命令を指すことができる。
図3は、1例に従うダイアログ・システム・エンジン120の高レベルアーキテクチャ300を示す。ダイアログ・システム・エンジン120または関連付けられたアーキテクチャの全てのモジュールはハードウェアコンポーネント、ソフトウェアコンポーネント、またはそれらの組合せを含むことに留意すべきである。ダイアログ・システム・エンジン120はユーザ・デバイスまたはサーバに埋め込むかまたはインストールしてもよく、または、クラウドコンピューティングモジュールおよび/または分散コンピューティングモジュールとして表してもよい。
図3に示された例において、ダイアログ・システム・エンジン120は、会話ベースのユーザ入力を受信しパラメータ・ベクトルのシーケンスに処理するように構成された自動会話認識器(ASR)310を含む。ASR310はさらに、パラメータ・ベクトルの当該シーケンスを認識された入力(即ち、1つまたは複数の単語、フレーズ、または文章を有するテキスト入力)に変換する。ASR310は、パターンベースの会話認識器、フリーディクテーション認識器、アドレス帳ベース認識器、動的に生成された認識器等のような1つまたは複数の会話認識器を含む。
さらに、ダイアログ・システム・エンジン120は、話された言語入力を理解するための自然言語処理(NLP)モジュール320を含む。特に、NLPモジュール320は当該認識された入力を分解し解析して発声を生成してもよく、当該発声は、例えば、形態学的分析、会話部分タギング、シャロー解析、ニューラルネットワーク、機械学習分類器、パターン化された分類器等を利用して分析される。NLPモジュール320はついで、認識された入力またはその部分を意味表現にマップしてもよい。
ダイアログ・システム・エンジン120はさらにダイアログ・マネージャ330を含む。ダイアログ・マネージャ330は、全てのコンポーネント、コントロールダイアログフローのアクティビティと協調し、外部アプリケーション、デバイス、サービス、またはリソースと通信する。ダイアログ・マネージャ330が多数の役割を演じてもよく、これらは講話分析、知識データベースクエリ、および講話コンテキストに基づくシステムアクション予測を含む。幾つかの例では、ダイアログ・マネージャ330は、特定のタスク・ドメインに関する知識を有しうる1つまたは複数のタスクマネージャ(図示せず)にコンタクトしてもよい。幾つかの例では、ダイアログ・マネージャ330は様々なコンピューティング、論理、または記憶リソース340と通信してもよい。これらが、例えば、コンテンツ記憶、ルールデータベース、推奨データベース、プッシュ通知データベース、電子アドレス帳、電子メールまたはテキストエージェント、ダイアログ履歴データベース、離散知識データベース、地図データベース、関心点データベース、地理的位置決定器、クロック、無線ネットワーク検出器、検索エンジン、ソーシャルネットワーキングウェブサイト、ブログウェブサイト、ニューズ・フィードサービス、およびそれより多くを含んでもよい。幾つかの例では、計算または記憶リソース340は、上述の1つまたは複数のウェブ・リソース/サービス160を含む。
動作の間に(例えば、ダイアログセッション内で)、ダイアログ・マネージャ330は、入力および出力コンテキストに従ってダイアログフローを制御してもよい。当該入力コンテキストはインテント実行に対する事前条件の幾つかを表す。特定のインテントは、特定の入力コンテキスト(複数可)がユーザ要求でまたは以前のインテントの実行の結果として提示される場合にのみトリガされる。幾つかのインテントを同一のコンテキストに基づいてトリガできる場合、どのインテントを実行すべきかに関する判定は、当該コンテキストに関するインテントの重み、コンテキストの年齢、および嗜好で指定された他のパラメータに基づくことができる。より新しいコンテキストはより高い優先度を有することができる。出力コンテキストは、当該インテントのマッチと実行の際に設定することができる。
様々な例において、ダイアログ・マネージャ330はユーザ要求をダイアログ・システムに渡すことができる。ダイアログ・システムは、図1および図2で説明したように開発者により設計されたカスタム・ダイアログ・システムを含むことができる。同時に、幾つかの例において、ユーザ要求をタスク・ドメインに並列に送信することができる。当該タスク・ドメインは、当該要求を処理し回答を提供しうる事前に構築されたダイアログ・システムである。幾つかの例では、当該カスタム・ダイアログ・システムが回答をユーザ要求に提供するのに失敗した場合、ダイアログ・マネージャ330は当該タスク・ドメインから受信された回答で進む。
ダイアログ・マネージャ330は、複数の離散アプローチを使用して、認識された入力に応答して出力を生成してもよい。幾つかのアプローチは統計的分析、機械学習アルゴリズム(例えば、ニューラルネットワーク)、ヒューリスティック分析等の使用を含む。ダイアログ・マネージャ330はダイアログ・システム・エンジン120の中央コンポーネントのうち1つである。ダイアログ・マネージャ330の主な役割は、観察された証拠および推論されたダイアログ状態に基づいて正確なシステムアクションをNLP(例えば、ダイアログ動作、ユーザゴール、および講話履歴)の結果から選択する。さらに、ダイアログ・マネージャ330は、ユーザ入力が雑音または期待されない入力に起因するASRおよびNLPエラーを有するとき、エラーを処理することができる。
ダイアログ・システム・エンジン120はさらに、ダイアログ・マネージャ330により選択されたアクションをユーザに提供するのに適した形態でまたはコンピュータ実装可能またはプロセッサ実装可能命令(例えば、APIコード)の形態で出力に変換するための出力レンダラ350を含んでもよい。例えば、出力レンダラ350はテキスト会話エンジンを使用してもよく、または、事前に記録されたオーディオデータベースにコンタクトしてダイアログ・マネージャ330の出力に対応するオーディオメッセージを生成してもよい。特定の例において、出力レンダラ350は、ダイアログ・マネージャ330の出力をユーザ・デバイスのディスプレイスクリーンにさらに表示するためのテキスト・メッセージ、画像、またはビデオメッセージとして提示するかまたは提示させてもよい。
他の例において、出力レンダ350は、選択されたアクション(アクションおよび1組のパラメータの名前)をクライアント・サイド140上のダイアログ・システム・インタフェース130に提供する。開発者は、当該選択されたアクションを処理し、ウェブ・サービスへの要求の送信、データベース動作、テキスト・メッセージの表示、オーディオまたはビデオのユーザ・デバイスでの再生、テキストの生成、テキスト会話システムを通じたその処理等のような1つまたは複数の要求された動作を実施するようにダイアログ・システム・インタフェース130を構成してもよい。幾つかの例では、開発者は、当該アクションに関連付けられた履行に従って当該アクションを処理し結果をダイアログ・システム・インタフェース130に提供するようにカスタム・ダイアログ・システム・エンジン120を構成してもよい。
図4は、前述のように新たなダイアログ・システム・エンティティを生成するためのプラットフォーム・インタフェース112の例示的なGUI400を示す。開発者がカスタム・ダイアログ・システム・エンジン120を生成したいとき、彼は、GUI400のようなプラットフォーム・インタフェース112のウェブツールを用いて、ダイアログ・システム・エンティティおよびインテントを定義してもよい。GUI400を用いて、開発者は、キーワードに対する参照値402を入力し、提供された参照値に対するシノニム404をGUI400により提供される対応するフィールドに入力することができる。ダイアログ・システム・エンティティが、キーワード(または参照値)および当該キーワードのシノニム、キーワードおよび当該キーワードの定義、1つのクラスのオブジェクトを定義するキーワードのリスト等を含んでもよい。それらのシノニムおよび/または定義を有するキーワードまたは参照値がダイアログ・システム・エンティティを構成する。
幾つかの例では、各エンティティはタイトルを有することができる。例えば、1つのエンティティに「都市」と名付けることができ、当該エンティティはアーリントン、ボストン、シカゴ等のような都市のリストを含むことができる。他の例において、エンティティをキーワードと名付けることができ、それはシノニムまたはこのキーワードの定義を含むことができる。1例において、「音楽」呼ばれるエンティティが、歌、歌手、歌うこと、音楽家等の用語を含んでもよい。別の例では、「アーチスト」と呼ばれるエンティティが、音楽バンド、音楽アンサンブル、または音楽アーチストのリストを含んでもよい。別の例では、「ビートルズ」と呼ばれる当該エンティティが、「ザ・ビートルズ」、「ビートルズ」、「Fab Four」、「Liverpool Legends」、「ジョンレノン」等のような可能なシノニムのリストを含んでもよい。さらに別の例では、「アーチスト」と呼ばれるエンティティがあってもよく、これが、様々なアーチスト名、アーチスト名シノニム、音楽バンド名等を含んでもよい。
図5は、前述のように新たなダイアログ・システム・インテントを生成するためのプラットフォーム・インタフェース112の例示的なGUI500を示す。ダイアログ・システム・インテントは、ユーザ要求およびダイアログ・システム応答の間の関係を定義してもよく、特定のアクションおよびエンティティの間の関係に基づくルールに関連付けられてもよい。一般に、各インテントを、[Action] @[Entity]または[Action] @[Entities]のコンピュータ可読手続きとして表すことができる。GUI500を用いて、開発者は、ユーザ表現502(例えば、「天気@city」)を追加して、インテントおよびエンティティを示してもよい。ユーザ表現502に基づいて、プラットフォーム110は、機械学習技術を用いて、どのエンティティおよびインテントが例示的な要求において示唆されるかを自動的に判定し、対応するルールを生成する。例えば、開発者は、「Weather forecast for Los Angeles」のような例示的な要求を単に提供してもよい。プラットフォーム110は、「Los Angeles」を(システムまたはユーザ定義された)既存のエンティティにマッチしてもよく、対応する「[Action] @[Entity]」ルールを自動的に生成してもよい。さらにまたはあるいは、開発者は、「What is the weather in @say.geo-city:geo-city-us」のような、1つまたは複数のエンティティが明示的に表される例示的な要求を提供してもよい。図5の例では、アクション506に関連付けられた「天気」およびパラメータは「geo-city-us」および「geo-city」である。開発者はさらに、アクション506を修正し、アクション506に対する履行508を提供することができる。
生成されたルールは、エンティティまたは幾つかのエンティティに関して、特定のアクションがクライアント・サイド140(またはサーバ、ウェブ・サービス等)により実施されるものとすることを意味する。例えば、或るインテントを「looking up forecast for $geo-city-us」として表してもよい。この例において、当該インテントは、ロサンゼルスの予報を探すようにダイアログ・システム・エンジン120に指示する。
幾つかの例では、GUI500は機械学習に対するコントロール510を提供する。機械学習アルゴリズムをトグルすることで、ハードな/厳格なマッチから広いファジーなまたは機械学習されたマッチにわたるマッチの不明瞭さを扱うことができる。
幾つかの例では、プラットフォーム・インタフェース112は、特定のダイアログ・システムのエンド・ユーザまたはエンド・ユーザのグループに関連付けられた要求および処理インテントのログを提供するためのGUIを提供してもよい。図6は、特定のユーザの要求のログを提供するための例示的なGUI600を示す。
様々な例において、プラットフォーム・インタフェース112は、カスタム・ダイアログ・システムの性能の統計的分析のためのツールを開発者に提供してもよい。結果の統計値が、幾つかのセッション、要求の数、(少なくとも1つのインテントがトリガされる)分類された要求の数、(インテントがトリガされない)未分類の要求の数、精度、リコール、要求のF−スコア等を含んでもよい。幾つかの例では、未分類の要求は機械学習クラスタリングに基づいてグループに分割される。
さらなる例において、プラットフォーム・インタフェース112は、開発者または機械学習技術による未分類の要求内のエンティティをマークして新たなエンティティ、インテント、アクションおよび当該要求の履行を修正または生成するためのツールを提供してもよい。プラットフォーム・インタフェース112が、1つまたは複数のカスタム・ダイアログ・システムによる当該要求を再分類するためのツールを含んでもよい。
図7は、1例に従うインテント・パラメータを収集しダイアログ・システムを動作させる方法700を示す処理流れ図である。方法700を、ハードウェア(例えば、意思決定論理、専用論理、プログラム可能論理、特殊用途向け集積回路(ASIC)、およびマイクロコード)、(汎用目的コンピュータシステムまたは専用マシンで実行されるソフトウェアのような)ソフトウェア、またはその両方の組合せを含みうる処理論理により実施することができる。1例において、当該処理論理は、プラットフォーム110、バックエンド・サービス114、カスタム・ダイアログ・システム・エンジン120、コンピューティング・デバイス1000、または任意のその組合せを指す。方法700の以下に記載するステップを、図で説明し図示したものと異なる順序で実装してもよい。さらに、方法700は本明細書で図示していない追加のステップを有してもよいが、これは本開示から当業者には明らかであろう。方法700はまた、以下で図7で概観し図示したものより少ないステップを有してもよい。
方法700は、動作702で、ダイアログ・システム(例えば、カスタム・ダイアログ・システム・エンジン120)がユーザの会話入力を受信するステップで開始することができる。当該会話入力を、ダイアログ・システム・インタフェース130を通じてクライアント・サイド140に提供することができる。当該会話入力を、クライアント・サイド140でまたはダイアログ・システムにより処理することができる。例えば、当該会話入力を認識し、コンピュータ可読テキスト入力に変換することができる。
動作704で、ダイアログ・システム(例えば、カスタム・ダイアログ・システム・エンジン120)は、当該会話入力に関連付けられたダイアログ・システム・インテントを少なくとも1つの予め決定された当該会話入力のインテントキーワードに基づいて識別または決定することができる。換言すれば、ダイアログ・システムは、当該会話入力を処理して、1つまたは複数のインテントキーワードが、当該予め決定されたインテントのうち1つを指すかどうかを判定することができる。例えば、会話入力「Please order a pizza for me」は、(プラットフォーム110を介して開発者により以前に生成されうる)予め決定された「ピザ注文」インテントのトリガまたは検出を引き起こしうるインテントキーワード「order」および「pizza」を含む。ダイアログ・システム・インテントは、インテント・パラメータを収集するためのパラメータ収集ダイアログへの入力点を示すことができる。当該所与の例において、インテント・パラメータは、ピザサイズ、パイ皮のタイプ、トッピングの選択、ソース、配達先、配達時間、ベンダ等を含むことができる。したがって、当該インテント・パラメータをパラメータ名前およびその値に関連付けることができる。当該パラメータ値は数値、単語、フレーズ、音、または画像を含むことができる。幾つかの実装では、当該インテント・パラメータの一部または全部を予め決定された値のリストから選択することができる(例えば、或るインテント・パラメータを予め決定された都市名前のリストから選択することができる)。
動作706で、ダイアログ・システムは、当該会話入力が既に、欠けている要求されたインテント・パラメータの全てを含むかどうかを判定することができる。当該欠けている要求されたインテント・パラメータの全てが動作702で与えられた会話入力に存在すると判定された場合、当該方法は動作708に進むことができる。動作708で、ダイアログ・システムは当該欠けている要求されたインテント・パラメータを当該会話入力から識別し収集することができる。当該収集された要求されたインテント・パラメータはキャッシュまたはメモリに一時的に格納されることができる。
動作710で、当該要求された欠けているインテント・パラメータの全てがいったん収集されると、ダイアログ・システムは、ダイアログ・システムに関連付けられたアクション命令を当該インテントおよびインテント・パラメータに基づいて生成する。当該アクション命令を、ダイアログ・システム、サーバ、ユーザ・デバイス、またはダイアログ・システム・インタフェースに予め決定されたアクションを当該アクション命令および1つまたは複数のインテント・パラメータに基づいて実装させるように構成することができる。上で与えた例において、当該アクション命令は、以前に収集されたインテント・パラメータに基づいてピザを注文するために予め決定されたウェブ・サービス160に送信されうる電子購入注文を指すことができる。したがって、幾つかの例において、当該アクション命令はAPIサービスを引き起こすように構成されたAPI固有応答(またはAPIコード)を含むことができる。例えば、当該アクション命令のAPIコードはJavaスクリプトオブジェクト記法(JSON)フォーマットであることができる。
幾つかの例では、動作710で、当該アクション命令の生成の前に、ダイアログ・システムは応答メッセージを生成しそれをユーザに提供することができる。当該応答メッセージは、当該収集されたインテント・パラメータの1つまたは複数を繰り返し、当該インテント・パラメータが正しいかどうかを確認するようにユーザに問い合わせることができる。例えば、ダイアログ・システムは、「You want to order a large margherita pizza to be delivered to your home in an hour. Is that correct?」のようなダイアログ・システム・インタフェース130を介して配信されるべきテキストまたはオーディオメッセージを生成することができる。ユーザが肯定的に応答する場合、ダイアログ・システムは上述のように当該アクション命令の描画に進むことができる。そうでなければ、ダイアログ・システムはユーザに彼の要求を明確にさせるための1つまたは複数のプロンプトを提供することができる。
動作706で、(動作702で取得された)初期会話入力が、欠けている要求されたインテント・パラメータの全てを含まないと判定された場合、当該方法は図7で示すように動作712に進むことができる。動作712で、ダイアログ・システムは、動作704で識別されたインテントに関連付けられた予め決定されたパラメータ収集ダイアログを開始することができる。当該予め決定されたパラメータ収集ダイアログは、ダイアログ・システムにより欠けている要求されたインテント・パラメータおよび、幾つかの例において、任意のインテント・パラメータを取得するように問い合わせられる幾つかのプロンプト・メッセージを含むことができる。したがって、動作712で、ダイアログ・システムは、1つまたは複数の欠けているインテント・パラメータを入力するようにユーザに促すようにユーザに1つまたは複数のプロンプトを提供する。例えば、動作712で、ダイアログ・システムは、ユーザに「What pizza size would you like - large, medium or small?" or "Tell me what toppings you would like to have?」と問い合わせることができる。
動作714で、ダイアログ・システムは、以前の動作で与えられたプロンプトに対する回答を含む1つまたは複数の追加の会話入力をユーザから受信することができる。ダイアログ・システムは、要求されたインテント・パラメータを当該追加の会話入力または他のソースから取り出すことができる。動作716で、ダイアログ・システムは、全ての要求されたインテント・パラメータが利用可能であるかどうかを判定することができる。当該要求されたインテント・パラメータの全てが利用可能であると判定された場合、当該方法は動作710に進むことができる。そうでなければ、当該要求されたインテント・パラメータの全てが利用可能であるわけではないと判定された場合、当該方法は図7で示すように動作712に戻ることができる。動作712、714、および716は、当該欠けている要求されたインテント・パラメータの全てが収集されるまで繰り返すことができる。
前述のように、プラットフォーム110により、開発者は、全ての要求されたインテント・パラメータの収集を自動化するように自然会話ダイアログ・システムのダイアログ・エージェントを生成または修正することができる。各開発者は、開発者のカスタム・ダイアログ・システム・エンジンおよびダイアログ・エージェントの全てを格納するプラットフォーム110とともに開発者プロフィールを有することができる。図8は、1例に従うパラメータ収集ダイアログ内でインテント・パラメータを収集するためのダイアログ・エージェントを生成するためのプラットフォーム・インタフェース112の例示的なGUI800を示す。
図8で示すように、GUI800は、ダイアログ・システム・インテントを生成させうるアクション可能ボタン802を含む。例えば、開発者は、インテントを生成し、ホテルを電子的に予約しこのインテントがホテル予約を正しく予約するために要求されたインテント・パラメータの全てを収集するためのパラメータ収集ダイアログを生成することができる。先ず、開発者は、図8におけるウィジェット804により示されるように「book a hotel」のような新たに生成されたインテントに名前を付けることができる。さらに、開発者は、GUI800の当該インタフェースを介して、このインテントの起動をトリガできる1つまたは複数の例示的なフレーズまたはキーワードを提供することができる。これらの目的のため、開発者は、ウィジェット806を通じて例示的なフレーズまたはキーワードを提供することができる。「book a hotel」インテントに対する幾つかの例示的なフレーズまたはキーワードは、「book a hotel」、「book a hotel in @sys.geo-city:city」または「book a hotel in @sys.geo-city:city on @sys. date: date」を含む。ここで、@sys.geo-city:city and @sys. date: dateは、それぞれエンティティ「都市」および「日付」を指す。換言すれば、幾つかの例において、インテントをトリガするための例示的なフレーズまたはキーワードを、1つまたは複数のエンティティに関連付けることができる。ボタン808をクリックすることで、開発者はこのインテントに関連付けられた追加の例示的なフレーズまたはキーワードを追加することができる。
さらに、開発者は、予め決定されたアクションのうち1つを選択するか、またはインテントがダイアログ・システムにより実行されたとき実施されるべき新たなアクションを生成することができる。ここで、ウィジェット810は、開発者が、プラットフォーム・インタフェース112の別のGUIを通じてカスタマイズできる予め決定されたまたは生成された新たなアクション「bookhotel」のうち1つを選択したことを示す。さらに、開発者は、それがユーザとの対話の過程で起動されるとき、パラメータ収集ダイアログ内で収集される1つまたは複数のインテント・パラメータを提供することができる。当該インテント・パラメータは「都市」、「日付」等を含むことができる。図8で示すように、当該インテント・パラメータは、GUIウィジェット812を介して提供、識別、または修正される。ボタン814をクリックすることで、開発者は新たなインテント・パラメータをリストに追加することができる。当該インテント・パラメータの各々は幾つかの特性を有することができる。例えば、開発者は、インテント・パラメータが要求される(必須)かまたは任意であるかを指定することができる。さらに、開発者は、パラメータ名、パラメータデータ・タイプ、およびパラメータ値を提供または修正し、1つまたは複数のプロンプト・メッセージを提供することができる。ダイアログ・システムは、パラメータ収集ダイアログの間に、当該インテント・パラメータの各々のプロンプト・メッセージに問い合わせて、(例えば、方法700の動作712および714を参照して上述したように)全ての欠けているインテント・パラメータ値を取得することができる。
図9は、1例に従う、ダイアログ・エージェントのプロンプトを定義するためのプラットフォーム・インタフェース112の例示的なGUIを示す。図で示すように、インテント・パラメータの各々を、パラメータ名(例えば、都市)、パラメータデータ・タイプ(例えば、@sys.geo-city))、パラメータ値(例えば、$city)、および1つまたは複数のプロンプト・メッセージ902に関連付けることができる。ここで、当該パラメータデータ・タイプおよびパラメータ値はダイアログ・システム・エンティティを指すことができる。さらに、プロンプト・メッセージ902は「Where are you going?」および「What is the destination?」と言及することができる。開発者は彼が望むほど多くのプロンプトを提供することができる。当該プロンプトを選択しユーザに配信する順序は任意であるかまたは、開発者により予め決定することができる。
既に述べたように、幾つかのパラメータはユーザに問い合わせてそれらの各値をユーザから収集するために必須(要求された)であることができ、幾つかの他のパラメータは任意であることができる。例えば、「都市」パラメータは必須であることができるが、ホテル・チェーンの名前は任意であることができる。
図10は、本明細書で説明した方法を実装するのに適したコンピューティング・デバイス1000を示す高レベルブロック図である。特に、コンピューティング・デバイス1000を、開発者によりダイアログ・システムを生成し修正し、ダイアログ・システムを実行するために使用してもよい。コンピューティング・デバイス1000が、とりわけ汎用目的コンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバ、ネットブック、モバイル・フォン、スマートフォン、インフォテイメントシステム、スマートテレビデバイスのような多数のタイプのデバイスの1つまたは複数を含むか、それらであるかまたはそれらの統合部分を含んでもよい。幾つかの例では、コンピューティング・デバイス1000を、クライアント・デバイス、サーバ、プラットフォーム110、またはダイアログ・システムのインスタンスとみなすことができる。
図10で示すように、コンピューティング・デバイス1000は、1つまたは複数のプロセッサ1010、メモリ1020、1つまたは複数の大容量記憶デバイス1030、1つまたは複数の入力デバイス1050、1つまたは複数の出力デバイス1060、ネットワークインタフェース1070、1つまたは複数の任意の周辺デバイス1080、および上に列挙した要素を動作可能に相互接続するための通信バス1090を含む。プロセッサ1010を、コンピューティング・デバイス1000内で実行するための機能および/またはプロセス命令を実装するように構成することができる。例えば、プロセッサ1010はメモリ1020に格納された命令および/または記憶デバイス1030に格納された命令を処理してもよい。かかる命令が、オペレーティング・システムまたはソフトウェアアプリケーションのコンポーネントを含んでもよい。
1例に従う、メモリ1020は、動作の間にコンピューティング・デバイス1000内に情報を格納するように構成される。幾つかの例において、メモリ1020は非一時的コンピュータ可読記憶媒体またはコンピュータ可読記憶デバイスを指してもよい。幾つかの例では、メモリ1020は一時メモリであり、これは、メモリ1020の主な目的が長期記憶でなくてもよいことを意味する。メモリ1020はまた、揮発性メモリを指してもよく、これは、メモリ1020が電力を受信しないときに。メモリ1020が格納されたコンテンツを維持しないことを意味する。揮発性メモリの例は、ランダム・アクセスメモリ(RAM)、動的ランダム・アクセスメモリ(DRAM)、静的ランダム・アクセスメモリ(SRAM)、および当業界で公知な他の形態の揮発性メモリを含む。幾つかの例では、メモリ1020は、プロセッサ1010による実行のためにプログラム命令を格納するために使用される。メモリ1020は、1例において、ソフトウェアアプリケーションにより使用される。一般的に、ソフトウェア・アプリケーションは、本明細書で説明したようにインテント・パラメータを収集しダイアログ・システムを動作させるための方法の少なくとも幾つかの動作を実装するのに適したソフトウェアアプリケーションを指す。
大容量記憶デバイス1030はまた、1つまたは複数の一時的または非一時的コンピュータ可読記憶媒体および/またはコンピュータ−可読記憶デバイスを含むことができる。幾つかの例では、大容量記憶デバイス1030は、メモリ1020よりも多くの量の情報を格納するように構成されてもよい。大容量記憶デバイス1030が情報の長期記憶に対して構成されてもよい。幾つかの例では、大容量記憶デバイス1030は不揮発性記憶要素を含む。かかる不揮発性記憶要素の例は、磁気ハード・ディスク、光学的ディスク、固体ディスク、フラッシュ・メモリ、或る形態の電気的にプログラム可能メモリ(EPROM)または電気的に消去可能なおよびプログラム可能メモリ、および当業界で公知な他の形態の不揮発性メモリを含む。
依然として図10を参照すると、コンピューティング・デバイス1000はまた、1つまたは複数の入力デバイス1050を含んでもよい。入力デバイス1050は、触覚、オーディオ、ビデオ、または生体チャネルを通じて入力をユーザから受信するように構成されてもよい。入力デバイス1050の例が、キーボード、キーパッド、マウス、トラックボール、タッチスクリーン、タッチパッド、マイクロフォン、ビデオカメラ、画像センサ、指紋センサ、または、ユーザまたは他のソースから入力を検出し、コンピューティング・デバイス1000またはそのコンポーネントに当該入力を中継できる任意の他のデバイスを含んでもよい。出力デバイス1060は、視覚的または可聴チャネルを通じて出力をユーザに提供するように構成されてもよい。出力デバイス1060が、液晶ディスプレイ(LCD)モニタ、発光ダイオード(LED)モニタ、または有機LEDモニタ、音カード、スピーカ、発光デバイス、プロジェクタ、またはーザに対してインテリジェントでありうる出力を生成できる任意の他のデバイスのようなビデオグラフィックスアダプタカード、ディスプレイを含んでもよい。出力デバイス1060はまた、タッチスクリーン、存在検知ディスプレイ、または当業界で公知な他の入出力可能ディスプレイを含んでもよい。
コンピューティング・デバイス1000はまた、ネットワークインタフェース1070を含むことができる。ネットワークインタフェース1070は、例えば、とりわけ、インターネット、イントラネット、ローカル・エリアネットワーク、広域ネットワーク、携帯電話ネットワーク(例えば、グローバルシステムフォーモバイル通信ネットワーク、ロング・ターム・エボリューション通信ネットワーク、パケット交換通信ネットワーク、回路交換通信ネットワーク)、Bluetooth無線、およびIEEE802.11ベースの無線周波数ネットワークを含む、1つまたは複数の有線、無線、または光学的ネットワークのような1つまたは複数のネットワークを介して外部デバイスと通信するために利用することができる。ネットワークインタフェース1070は、Ethernetカード、光学的トランシーバ、無線周波数トランシーバ、または情報を送受信できる任意の他のタイプのデバイスのようなネットワークインタフェースカードであってもよい。
コンピューティング・デバイス1000のオペレーティング・システムはコンピューティング・デバイス1000またはそのコンポーネントの1つまたは複数の機能を制御してもよい。例えば、当該オペレーティング・システムはソフトウェアアプリケーションと対話してもよく、ソフトウェアアプリケーションおよびプロセッサ1010、メモリ1020、記憶デバイス1030、入力デバイス1050、出力デバイス1060、およびネットワークインタフェース1070の間の1つまたは複数の対話を促進してもよい。当該オペレーティング・システムは、ソフトウェアアプリケーションまたはそのコンポーネントと対話するかまたはそれに接続されてもよい。幾つかの例では、ソフトウェア・アプリケーションは当該オペレーティング・システムに含まれてもよい。
このように、ダイアログ・システムにおけるインテント・パラメータを収集するための方法およびシステムを説明した。特定の例を参照して特定の態様を説明したが、本願の広い趣旨と範囲から逸脱せずにこれらの例に様々な修正および変更を加えうることは明らかであろう。したがって、本明細書および図面は限定的な意味ではなく例示的なものとしてみなされるべきである。
以上の詳細な説明は当該添付図面への参照を含み、これは当該詳細な説明の一部を形成する。このセクションで説明するアプローチはクレームに対する先行技術ではなく、このセクションへの包含により先行技術であるとして認めるものでもない。図面は、本明細書で開示された例に従う例示を示す。これらの例は、当業者が本主題を実施できるようにするために十分な詳細で説明されている。当該例を組み合わせることができ、他の例を利用でき、または構造的に、論理的および動作的変更を、クレームしたものの範囲から逸脱せずに行うことができる。以下の詳細な説明は、したがって、限定的な意味でとらえるべきでhなあく、その範囲は添付の特許請求の範囲とその均等物により定義される。
上で提供した例は、様々なブロック、コンポーネント、回路、ステップ、動作、プロセス、アルゴリズム等により添付図面で参照され、集合的に「要素」と称される。これらの要素を、電子ハードウェア、コンピュータソフトウェア、または任意のその組合せを用いて実装してもよい。かかる要素がハードウェアまたはソフトウェアとして実装されるかどうかは、当該特定のアプリケーションおよびシステム全体に課される設計制約に依存する。
例として、要素、または要素の任意の部分、または要素の任意の組合せを、1つまたは複数のプロセッサを含む「処理システム」で実装してもよい。プロセッサの例は、マイクロプロセッサ、マイクロコントローラ、中央演算装置(CPU)、デジタル信号プロセッサ(DSP)、フィールドプログラム可能ゲートアレイ(FPGA)、プログラム可能論理デバイス(PLD)、状態マシン、ゲート論理、離散ハードウェア回路、および本開示にわたって説明された様々な機能を実施するように構成された他の適切なハードウェアを含む。当該処理システム内の1つまたは複数のプロセッサはソフトウェア、ファームウェア、またはミドルウェア(集合的に「ソフトウェア」と称される)を実行してもよい。「ソフトウェア」という用語は、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア説明言語、またはその他と称されるとに関わらず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアコンポーネント、アプリケーション、ソフトウェア・アプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能、実行スレッド、手続き、関数等を意味するように広く解釈されるものである。
したがって、1つまたは複数の例において、説明した機能をハードウェア、ソフトウェア、または任意のその組合せで実装してもよい。ソフトウェアで実装される場合、当該機能を、非一時的コンピュータ可読媒体に格納するかまたはその上の1つまたは複数の命令またはコードとして符号化してもよい。コンピュータ可読媒体はコンピュータ記憶媒体を含む。記憶媒体は、コンピュータによりアクセスされうる任意の利用可能な媒体であってもよい。限定ではなく例として、かかるコンピュータ可読媒体は、ランダム・アクセスメモリ、読取専用メモリ、電気的に消去可能なプログラム可能ランダム・アクセスメモリ(EEPROM)、コンパクトディスクランダム・アクセスメモリ、または他の光ディスク記憶、磁気ディスク記憶、固体メモリ、または任意の他のデータ記憶デバイス、前述のタイプのコンピュータ可読媒体の組合せ、またはコンピュータによりアクセスされうる命令またはデータ構造の形でコンピュータ実行可能コードを格納するために使用できる任意の他の媒体を含むことができる。
この特許出願の目的のため、「または」および「および」という用語は、特に断れらない限りまたはそれらの使用の文脈により明確に意図されない限り、「および/または」を意味するものとする。「a」という用語は、特に断れらない限りまたは「1つまたは複数の」の使用が明確に不適切でない限り、「1つまたは複数の」を意味するものとする。「comprise」、「comprising」、「includes」、および「including」という用語は交換可能であり、限定を意味するものではない。例えば、「including」という用語は、「〜を含むがこれに限定されない」と解釈されるものとする。
「自然言語ダイアログ・システム」および「ダイアログ・システム」という用語は、交互に使用でき、テキスト、会話、グラフィックス、ハプティクス、ジェスチャ、コンピュータ生成されたアクション、および当該入力および出力チャネルの両方での他の通信モードを用いてヒューマンマシンダイアログ対話を提供するためのコンピュータ実装されたシステムを意味するように解釈されるものであり、ユーザ入力への応答は1つまたは複数のダイアログ・システムエージェントまたはダイアログ・システム・エンジンにより生成され、当該システムは、情報を受信し、処理し、管理し、配信するためのインタフェースを提供する。「チャット情報システム」、「発話ダイアログ・システム」、「会話エージェント」、「チャッタロボット」、「チャッタボット」、「チャットボット」、「チャットエージェント」、「デジタルパーソナルアシスタント」、「自動化されたオンラインアシスタント」等という用語は「ダイアログ・システム」という用語の範囲内にある。
「クライアント・デバイス」および「ユーザ・デバイス」という用語は、モバイル・デバイス、携帯電話、モバイル・フォン、ユーザ機器、ユーザ端末、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、サーバ、パーソナルデジタルアシスタント、音楽プレイヤ、マルチメディアプレイヤ、ポータブルコンピューティング・デバイス、ナビゲーションシステム、ビークルコンピュータ、インフォテイメントシステム、ゲーミングデバイス、ゲーム・コンソール、エンターテインメントシステム、テレビデバイス、ネットワークデバイス、モデム、ルータ等のような、入力および出力の機能を有するクライアント・サイド140上の任意の電子またはコンピューティング・デバイスを意味するように解釈されるものとする。
「ユーザ」という用語は「クライアント・デバイス」および「ユーザ・デバイス」のユーザを意味し、「開発者」という用語は、プラットフォーム110を介して生成され維持されうるダイアログ・システム・エンジン(エージェント)のソフトウェア開発者、エンジニアまたは所有者を意味するように解釈されるものとする。
「ダイアログ・システムエージェント」および「ダイアログ・システム・エンジン」という用語は、交互に使用でき、ダイアログ・システム・インテントおよびダイアログ・システム・エンティティを含むダイアログ・システム要素のような1つまたは複数の予め決定されたルールまたは基準に基づいてユーザ入力を処理するためのコンピュータ実装可能インタフェースを意味するものと解釈することができる。
本明細書で開示された技術的効果は、ユーザ要求を処理し、ユーザ要求に関連付けられた複数のパラメータ(またはパラメータ値)を収集して当該複数のパラメータに基づいてコンピュータ実装されたアクションを生成する際の自然言語ダイアログ・システムに対する改善を提供することができる。
さらに本明細書で開示された技術的効果は、属性を探すためのメモリへの呼出しを減らし、したがってレイテンシを減らしバッテリ寿命を改善し、インタフェース、および音声アクションをセットアップするのに必要なステップ、インタフェース、およびメモリへの呼出しを減らすことでハードウェア性能の改善を提供することができる。
本明細書で説明したシステムまたは方法がユーザに関する個人情報を収集するか、またはパーソナル情報を利用しうる状況において、ユーザに当該集合および/またはかかるパーソナル情報を制御する機会を提供し、かかるデータの収集の一部または全部を制限してもよい。例えば、パラメータの識別のためのコンテキストの利用が可能であるとき、ユーザに、コンテキストデータの一部または全部の収集を制御する能力を提供してもよい。さらに、特定のデータを、個人的に識別可能な情報が除去されるように、それが格納または利用される前に1つまたは複数の方法で処理するかまたは不明瞭にしてもよい。例えば、ユーザのアイデンティティを個人的に識別可能な情報がユーザに対して決定できないように処理してもよく、またはユーザの地理的位置を、ユーザの特定の位置を決定できないように一般化してもよい。したがって、ユーザに、どのように情報がユーザに関して収集されるかおよび本明細書で開示されたシステムおよび方法がどのように使用されるかに関する制御が提供されうる。
本開示は幾つかの詳細を含むが、これらを本開示の範囲またはクレームしたものに対する制限と解釈すべきではなく、本開示の例示的な特徴の説明として解釈すべきである。別々の実装の文脈で本開示で説明した特定の特徴をまた、単一の実装の組合せで提供することができる。反対に、単一の実装の文脈で説明した様々な特徴をまた、複数の実装で別々にまたは任意の適切な部分的組合せで提供することができる。さらに、特徴は特定の組合せで動作するように上述され最初にそのようにクレームされているかもしれないが、クレームされた組合せからの1つまたは複数の特徴を幾つかのケースでは当該組合せから実施してもよく当該クレームされた組合せは部分的組合せまたは部分的組合せの変形に関連してもよい。
同様に、動作を図面において特定の順序で説明したが、これは、所望の結果を実現するために、かかる動作を示した特定の順序でまたは逐次的順序で実施されること、または全ての示された動作が実施されることを要求するものと理解されるべきではない。特定の環境において、マルチタスキングおよび並列処理が有利であるかもよい。さらに、上述の実装における様々なシステムコンポーネントの分離が、かかる分離が全ての実装で要求されると理解されるべきではなく、当該説明されたプログラムコンポーネントおよびシステムを一般に単一のソフトウェア製品に統合するかまたは複数のソフトウェア製品にパッケージ化できることは理解されるべきである。
したがって、本開示の特定の実装を説明した。他の実装は添付の特許請求の範囲内にある。例えば、特許請求の範囲で記載した動作を異なる順序で実施して、依然として所望の結果を実現することができる。幾つかの実装を説明した。それにも関わらず、様々な修正を前記開示の趣旨と範囲から逸脱せずに行いうることは理解される。例えば、上で示したフローの様々な形態を、ステップを再順序付けし、追加し、または削除して使用してもよい。したがって、他の実装は添付の特許請求の範囲内にある。
110 プラットフォーム
112 プラットフォーム・インタフェース
114 バックエンド・サービス
120 カスタム・ダイアログ・システム・エンジン
130 ダイアログ・システム・インタフェース
140 クライアント側
150 通信ネットワーク
160 ウェブ・リソース/ウェブ・サービス

Claims (18)

  1. インテント・パラメータ収集のための方法であって、
    前記方法は、
    ユーザの会話入力を受信するステップと、
    前記会話入力に関連付けられたダイアログ・システム・インテントを少なくとも1つの予め決定されたインテントキーワードに基づいて識別するステップであって、前記ダイアログ・システム・インテントは要求されたインテント・パラメータを有する、ステップと、
    前記ダイアログ・システムの全ての要求されたインテント・パラメータに対するデータが利用可能であるかどうかを判定するステップと、
    前記判定に基づいて、前記ダイアログ・システム・インテントに関連付けられたパラメータ収集ダイアログを選択的に開始するステップであって、前記パラメータ収集ダイアログは、前記ダイアログ・システム・インテントに利用可能でない前記要求されたパラメータに対するデータを収集するように動作可能である、ステップと、
    前記ダイアログ・システム・インテントおよび1つまたは複数の要求されたパラメータに基づいて、アクション命令を生成するステップと、
    を含み、
    前記方法は、
    開発者プラットフォームにより、開発者が、欠けているインテント・パラメータの収集を自動化するための自然会話ダイアログ・システムのダイアログ・エージェントを生成できるようにするステップであって、前記ダイアログ・エージェントは開発者プロフィールに関連付けられる、ステップをさらに含む、方法。
  2. 前記会話入力内の前記要求されたインテント・パラメータのうち少なくとも1つを識別するステップと、
    前記要求されたインテント・パラメータのうち前記少なくとも1つを前記会話入力から抽出するステップと、
    をさらに含む、請求項1に記載の方法。
  3. 前記会話入力が全ての欠けているインテント・パラメータを含むとの判定に基づいて前記パラメータ収集ダイアログを開始することなく、前記要求されたインテント・パラメータを前記会話入力から抽出するステップをさらに含む、請求項1に記載の方法。
  4. 前記パラメータ収集ダイアログは少なくとも1つの予め決定されたプロンプトを含む、請求項1に記載の方法。
  5. 前記少なくとも1つの予め決定されたプロンプトに応答して、前記ユーザの少なくとも1つのさらなる会話入力を受信するステップと、
    欠けているインテント・パラメータの全てが収集されるまで、前記要求されたインテント・パラメータのうち少なくとも1つを前記少なくとも1つの追加の会話入力から抽出するステップと、
    をさらに含む、請求項4に記載の方法。
  6. 前記インテント・パラメータのうち少なくとも1つは、数値、単語、フレーズ、音、および画像のうち少なくとも1つを含む、請求項1に記載の方法。
  7. 前記インテント・パラメータのうち少なくとも1つは予め決定された値のリストから選択される、請求項1に記載の方法。
  8. 前記開発者プラットフォームにより、前記開発者が、
    前記ダイアログ・エージェントを生成し、
    前記ダイアログ・システム・インテント、少なくとも1つのインテント・パラメータ、および前記インテント・パラメータに対する1つまたは複数のプロンプトのうち1つまたは複数を提供する
    ことを可能とするグラフィカル・インタフェースを提供するステップをさらに含む、請求項1に記載の方法。
  9. 前記開発者が、前記開発者プラットフォームにより、ダイアログ・システム・エンティティまたは前記インテント・パラメータに対するデータ・タイプを指定できるようにするステップと、
    前記開発者が、前記開発者プラットフォームにより、前記インテント・パラメータの各々に対する値タイプを指定できるようにするステップと、
    をさらに含む、請求項8に記載の方法。
  10. 前記アクション命令は、サーバまたはユーザ・デバイスに、前記アクション命令および1つまたは複数の要求されたインテント・パラメータに基づいて予め決定されたアクションを実装させるように構成される、請求項1に記載の方法。
  11. 前記アクション命令は、APIサービスを引き起こすように構成されたアプリケーション・プログラミング・インタフェース(API)固有応答を含む、請求項1に記載の方法。
  12. 前記ユーザが前記アクション命令を確認するかまたは明らかにすることを可能とする確認メッセージを提供するステップをさらに含み、前記確認メッセージは1つまたは複数の要求されたインテント・パラメータを記述する、請求項1に記載の方法。
  13. 少なくとも1つのプロセッサとプロセッサ実行可能コードを格納するメモリとを備えた自然会話ダイアログ・システムであって、前記少なくとも1つのプロセッサは、前記プロセッサ実行可能コードを実行する際に、
    会話入力に関連付けられたダイアログ・システム・インテントを少なくとも1つの予め決定されたインテントキーワードに基づいて識別するステップであって、前記ダイアログ・システム・インテントは要求されたインテント・パラメータを有する、ステップと、
    前記ダイアログ・システムの全ての要求されたインテント・パラメータに対するデータが利用可能であるかどうかを判定するステップと、
    前記判定に基づいて、前記ダイアログ・システム・インテントに関連付けられたパラメータ収集ダイアログを選択的に開始するステップであって、前記パラメータ収集ダイアログは、前記ダイアログ・システム・インテントに利用可能でない前記要求されたパラメータに対するデータを収集するように動作可能である、ステップと、
    前記ダイアログ・システム・インテントおよび1つまたは複数の要求されたパラメータに基づいて、アクション命令を生成するステップと、
    を実施するように構成され、
    前記少なくとも1つのプロセッサは、前記プロセッサ実行可能コードの実行の際に、
    開発者プラットフォームにより、開発者が、前記要求されたインテント・パラメータの収集を自動化するための前記自然会話ダイアログ・システムに対するダイアログ・エージェントを生成できるようにする動作を実施するように構成され、前記ダイアログ・エージェントは開発者プロフィールに関連付けられる、自然会話ダイアログ・システム。
  14. 前記少なくとも1つのプロセッサはさらに、前記会話入力が欠けているインテント・パラメータの全てを含むとの判定に基づいて前記パラメータ収集ダイアログを開始することなく、欠けているインテント・パラメータの全てを前記会話入力から取り出すように構成される、請求項13に記載のシステム。
  15. 前記少なくとも1つのプロセッサはさらに、前記パラメータ収集ダイアログに対する少なくとも1つの予め決定されたプロンプトを生成するように構成される、請求項13に記載のシステム。
  16. 前記少なくとも1つのプロセッサはさらに、前記プロセッサ実行可能コードの実行の際に、
    前記少なくとも1つの予め決定されたプロンプトに応答して、ユーザの少なくとも1つの追加の会話入力を受信し、
    欠けているインテント・パラメータの全てが収集されるまで、前記要求されたインテント・パラメータのうち少なくとも1つを前記少なくとも1つの追加の会話入力から取り出す
    動作を実施するように構成される、請求項15に記載のシステム。
  17. 前記少なくとも1つのプロセッサは、前記プロセッサ実行可能コードの実行の際に、
    前記開発者プラットフォームにより、
    前記開発者が前記ダイアログ・エージェントを生成できるようにし、
    前記ダイアログ・システム・インテント、少なくとも1つのインテント・パラメータ、および前記インテント・パラメータの各々に対する前記パラメータ収集ダイアログに対する1つまたは複数のプロンプトのうち少なくとも1つを提供し、
    前記開発者が、前記開発者プラットフォームにより、ダイアログ・システム・エンティティまたは前記インテント・パラメータに対するデータ・タイプを指定できるようにし、
    前記開発者が、前記開発者プラットフォームにより、前記インテント・パラメータの各々に対する値タイプを指定できるようにする
    ためのグラフィカル・インタフェースを提供する動作を実施するように構成される、請求項13に記載のシステム。
  18. 1つまたは複数のプロセッサにより実行されたとき、前記1つまたは複数のプロセッサに、自然会話ダイアログ・システムに対する方法を実装させる命令を格納したプロセッサ可読記憶媒体であって、前記方法は、
    会話入力に関連付けられたダイアログ・システム・インテントを少なくとも1つの予め決定されたインテントキーワードに基づいて識別するステップであって、前記ダイアログ・システム・インテントは要求されたインテント・パラメータを有する、ステップと、
    前記ダイアログ・システムの全ての要求されたインテント・パラメータに対するデータが利用可能であるかどうかを判定するステップと、
    前記判定に基づいて、前記ダイアログ・システム・インテントに関連付けられたパラメータ収集ダイアログを選択的に開始するステップであって、前記パラメータ収集ダイアログは、前記ダイアログ・システム・インテントに利用可能でない前記要求されたパラメータに対するデータを収集するように動作可能である、ステップと、
    前記ダイアログ・システム・インテントおよび1つまたは複数の要求されたパラメータに基づいて、アクション命令を生成するステップと、
    を含み、
    前記方法は、
    開発者プラットフォームにより、開発者が、欠けているインテント・パラメータの収集を自動化するための自然会話ダイアログ・システムのダイアログ・エージェントを生成できるようにするステップであって、前記ダイアログ・エージェントは開発者プロフィールに関連付けられる、ステップをさらに含む、プロセッサ可読記憶媒体。
JP2018520601A 2015-10-21 2016-10-21 ダイアログ・システムにおけるパラメータ収集および自動ダイアログ生成 Active JP6960914B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020091306A JP6942841B2 (ja) 2015-10-21 2020-05-26 ダイアログ・システムにおけるパラメータ収集および自動ダイアログ生成

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562244560P 2015-10-21 2015-10-21
US62/244,560 2015-10-21
PCT/US2016/058193 WO2017070522A1 (en) 2015-10-21 2016-10-21 Parameter collection and automatic dialog generation in dialog systems

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2020091306A Division JP6942841B2 (ja) 2015-10-21 2020-05-26 ダイアログ・システムにおけるパラメータ収集および自動ダイアログ生成

Publications (3)

Publication Number Publication Date
JP2019503526A JP2019503526A (ja) 2019-02-07
JP2019503526A5 true JP2019503526A5 (ja) 2021-09-16
JP6960914B2 JP6960914B2 (ja) 2021-11-05

Family

ID=57209944

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2018520601A Active JP6960914B2 (ja) 2015-10-21 2016-10-21 ダイアログ・システムにおけるパラメータ収集および自動ダイアログ生成
JP2020091306A Active JP6942841B2 (ja) 2015-10-21 2020-05-26 ダイアログ・システムにおけるパラメータ収集および自動ダイアログ生成

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2020091306A Active JP6942841B2 (ja) 2015-10-21 2020-05-26 ダイアログ・システムにおけるパラメータ収集および自動ダイアログ生成

Country Status (9)

Country Link
US (3) US10170106B2 (ja)
EP (1) EP3341933A1 (ja)
JP (2) JP6960914B2 (ja)
KR (2) KR102112814B1 (ja)
CN (2) CN108701454B (ja)
DE (1) DE112016004863T5 (ja)
GB (1) GB2557532A (ja)
RU (1) RU2018113724A (ja)
WO (1) WO2017070522A1 (ja)

Families Citing this family (166)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US9634855B2 (en) 2010-05-13 2017-04-25 Alexander Poltorak Electronic personal interactive device that determines topics of interest using a conversational agent
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
BR112015018905B1 (pt) 2013-02-07 2022-02-22 Apple Inc Método de operação de recurso de ativação por voz, mídia de armazenamento legível por computador e dispositivo eletrônico
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
TWI566107B (zh) 2014-05-30 2017-01-11 蘋果公司 用於處理多部分語音命令之方法、非暫時性電腦可讀儲存媒體及電子裝置
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
CN109792402B (zh) 2016-07-08 2020-03-06 艾赛普公司 自动响应用户的请求
US10083451B2 (en) 2016-07-08 2018-09-25 Asapp, Inc. Using semantic processing for customer support
US10891152B2 (en) * 2016-11-23 2021-01-12 Amazon Technologies, Inc. Back-end task fulfillment for dialog-driven applications
US10565989B1 (en) * 2016-12-16 2020-02-18 Amazon Technogies Inc. Ingesting device specific content
US10109275B2 (en) 2016-12-19 2018-10-23 Asapp, Inc. Word hash language model
US10740373B2 (en) * 2017-02-08 2020-08-11 International Business Machines Corporation Dialog mechanism responsive to query context
US11171892B2 (en) * 2017-02-27 2021-11-09 Ncr Corporation Service assistance and integration
US10332505B2 (en) * 2017-03-09 2019-06-25 Capital One Services, Llc Systems and methods for providing automated natural language dialogue with customers
US10796088B2 (en) * 2017-04-21 2020-10-06 International Business Machines Corporation Specifying a conversational computer agent and its outcome with a grammar
KR102388539B1 (ko) 2017-04-30 2022-04-20 삼성전자주식회사 사용자 발화를 처리하는 전자 장치
US11386274B2 (en) 2017-05-10 2022-07-12 Oracle International Corporation Using communicative discourse trees to detect distributed incompetence
US10839154B2 (en) 2017-05-10 2020-11-17 Oracle International Corporation Enabling chatbots by detecting and supporting affective argumentation
US11586827B2 (en) 2017-05-10 2023-02-21 Oracle International Corporation Generating desired discourse structure from an arbitrary text
US11373632B2 (en) * 2017-05-10 2022-06-28 Oracle International Corporation Using communicative discourse trees to create a virtual persuasive dialogue
US11960844B2 (en) * 2017-05-10 2024-04-16 Oracle International Corporation Discourse parsing using semantic and syntactic relations
US10679011B2 (en) 2017-05-10 2020-06-09 Oracle International Corporation Enabling chatbots by detecting and supporting argumentation
CN110612525B (zh) * 2017-05-10 2024-03-19 甲骨文国际公司 通过使用交流话语树启用修辞分析
US11615145B2 (en) 2017-05-10 2023-03-28 Oracle International Corporation Converting a document into a chatbot-accessible form via the use of communicative discourse trees
US10599885B2 (en) 2017-05-10 2020-03-24 Oracle International Corporation Utilizing discourse structure of noisy user-generated content for chatbot learning
US10817670B2 (en) * 2017-05-10 2020-10-27 Oracle International Corporation Enabling chatbots by validating argumentation
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770427A1 (en) 2017-05-12 2018-12-20 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10275651B2 (en) 2017-05-16 2019-04-30 Google Llc Resolving automated assistant requests that are based on image(s) and/or other sensor data
EP3635578A4 (en) 2017-05-18 2021-08-25 Aiqudo, Inc. SYSTEMS AND PROCEDURES FOR CRWODSOURCING ACTIONS AND COMMANDS
US11056105B2 (en) * 2017-05-18 2021-07-06 Aiqudo, Inc Talk back from actions in applications
US11043206B2 (en) 2017-05-18 2021-06-22 Aiqudo, Inc. Systems and methods for crowdsourced actions and commands
US11340925B2 (en) 2017-05-18 2022-05-24 Peloton Interactive Inc. Action recipes for a crowdsourced digital assistant system
US11436265B2 (en) * 2017-06-13 2022-09-06 Microsoft Technology Licensing, Llc System for presenting tailored content based on user sensibilities
US10839161B2 (en) 2017-06-15 2020-11-17 Oracle International Corporation Tree kernel learning for text classification into classes of intent
US11100144B2 (en) 2017-06-15 2021-08-24 Oracle International Corporation Data loss prevention system for cloud security based on document discourse analysis
CN107342078B (zh) * 2017-06-23 2020-05-05 上海交通大学 对话策略优化的冷启动系统和方法
US10388285B2 (en) 2017-08-31 2019-08-20 International Business Machines Corporation Generating chat bots from web API specifications
US11182412B2 (en) 2017-09-27 2021-11-23 Oracle International Corporation Search indexing using discourse trees
WO2019067878A1 (en) 2017-09-28 2019-04-04 Oracle International Corporation ACTIVATION OF AUTONOMOUS AGENTS TO DISTINGUISH QUESTIONS AND DEMANDS
US11809825B2 (en) 2017-09-28 2023-11-07 Oracle International Corporation Management of a focused information sharing dialogue based on discourse trees
US10853574B2 (en) 2017-09-28 2020-12-01 Oracle International Corporation Navigating electronic documents using domain discourse trees
US10431219B2 (en) * 2017-10-03 2019-10-01 Google Llc User-programmable automated assistant
KR102348124B1 (ko) * 2017-11-07 2022-01-07 현대자동차주식회사 차량의 기능 추천 장치 및 방법
DE102017128651A1 (de) * 2017-12-02 2019-06-06 Tobias Rückert Dialogsystem und Verfahren zur Umsetzung von Anweisungen eines Nutzers
US10497004B2 (en) 2017-12-08 2019-12-03 Asapp, Inc. Automating communications using an intent classifier
US10599640B2 (en) 2017-12-19 2020-03-24 At&T Intellectual Property I, L.P. Predictive search with context filtering
KR101944353B1 (ko) * 2017-12-20 2019-04-17 주식회사 카카오 챗봇 빌더 사용자 인터페이스 제공 방법 및 장치
CN109949800B (zh) * 2017-12-20 2021-08-10 北京京东尚科信息技术有限公司 语音打车方法及系统
US11222632B2 (en) 2017-12-29 2022-01-11 DMAI, Inc. System and method for intelligent initiation of a man-machine dialogue based on multi-modal sensory inputs
US11003860B2 (en) 2017-12-29 2021-05-11 DMAI, Inc. System and method for learning preferences in dialogue personalization
US11504856B2 (en) 2017-12-29 2022-11-22 DMAI, Inc. System and method for selective animatronic peripheral response for human machine dialogue
US11024294B2 (en) 2017-12-29 2021-06-01 DMAI, Inc. System and method for dialogue management
US10489792B2 (en) 2018-01-05 2019-11-26 Asapp, Inc. Maintaining quality of customer support messages
WO2019143614A1 (en) * 2018-01-16 2019-07-25 Google Llc Systems, methods, and apparatuses for providing assistant deep links to effectuate third-party dialog session transfers
US11537645B2 (en) 2018-01-30 2022-12-27 Oracle International Corporation Building dialogue structure by using communicative discourse trees
CN111670435A (zh) 2018-01-30 2020-09-15 甲骨文国际公司 使用交流话语树来检测对解释的请求
CN108376543B (zh) * 2018-02-11 2021-07-13 深圳创维-Rgb电子有限公司 一种电器设备的控制方法、装置、设备和存储介质
US10210244B1 (en) * 2018-02-12 2019-02-19 Asapp, Inc. Updating natural language interfaces by processing usage data
US11331807B2 (en) 2018-02-15 2022-05-17 DMAI, Inc. System and method for dynamic program configuration
KR102445365B1 (ko) * 2018-03-19 2022-09-20 현대자동차주식회사 대화 시스템, 이를 포함하는 차량 및 대화 처리 방법
JP7111818B2 (ja) 2018-03-21 2022-08-02 グーグル エルエルシー セキュアな処理環境内のデータ転送
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
WO2019203859A1 (en) 2018-04-19 2019-10-24 Google Llc Dependency graph conversation modeling for use in conducting human-to-computer dialog sessions with a computer-implemented automated assistant
US10169315B1 (en) 2018-04-27 2019-01-01 Asapp, Inc. Removing personal information from text using a neural network
US10679622B2 (en) 2018-05-01 2020-06-09 Google Llc Dependency graph generation in a networked system
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
CN112106056A (zh) 2018-05-09 2020-12-18 甲骨文国际公司 构造虚构的话语树来提高回答聚敛性问题的能力
US10572232B2 (en) 2018-05-17 2020-02-25 International Business Machines Corporation Automatically converting a textual data prompt embedded within a graphical user interface (GUI) to a widget
US11520989B1 (en) * 2018-05-17 2022-12-06 Workday, Inc. Natural language processing with keywords
EP3576084B1 (de) * 2018-05-29 2020-09-30 Christoph Neumann Effiziente dialoggestaltung
US11455494B2 (en) 2018-05-30 2022-09-27 Oracle International Corporation Automated building of expanded datasets for training of autonomous agents
CN110556102B (zh) * 2018-05-30 2023-09-05 蔚来(安徽)控股有限公司 意图识别和执行的方法、设备、车载语音对话系统以及计算机存储介质
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11157704B2 (en) 2018-06-18 2021-10-26 DataChat.ai Constrained natural language processing
US11645459B2 (en) 2018-07-02 2023-05-09 Oracle International Corporation Social autonomous agent implementation using lattice queries and relevancy detection
US10824658B2 (en) 2018-08-02 2020-11-03 International Business Machines Corporation Implicit dialog approach for creating conversational access to web content
US10915588B2 (en) * 2018-08-02 2021-02-09 International Business Machines Corporation Implicit dialog approach operating a conversational access interface to web content
US11216510B2 (en) 2018-08-03 2022-01-04 Asapp, Inc. Processing an incomplete message with a neural network to generate suggested messages
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US10839159B2 (en) * 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11100407B2 (en) * 2018-10-10 2021-08-24 International Business Machines Corporation Building domain models from dialog interactions
US11636852B2 (en) * 2018-10-10 2023-04-25 Huawei Technologies Co., Ltd. Human-computer interaction method and electronic device
US11562135B2 (en) * 2018-10-16 2023-01-24 Oracle International Corporation Constructing conclusive answers for autonomous agents
CN111104490B (zh) * 2018-10-25 2023-06-06 阿里巴巴集团控股有限公司 参数的删除方法及装置
US11501656B2 (en) * 2018-10-29 2022-11-15 Sestek Ses Ve Iletisim Bilgisayar Tek. San Ve Tic A.S. Interactive and automated training system using real interactions
US10747957B2 (en) 2018-11-13 2020-08-18 Asapp, Inc. Processing communications using a prototype classifier
US11551004B2 (en) 2018-11-13 2023-01-10 Asapp, Inc. Intent discovery with a prototype classifier
US11416785B2 (en) * 2018-12-04 2022-08-16 International Business Machines Corporation Automated interactive support
CN109739481A (zh) * 2018-12-11 2019-05-10 北京奇点机智科技有限公司 生成交互式应用程序的方法及系统
CN109783608B (zh) * 2018-12-20 2021-01-05 出门问问信息科技有限公司 目标假设的确定方法、装置、可读存储介质和电子设备
US11164574B2 (en) 2019-01-03 2021-11-02 International Business Machines Corporation Conversational agent generation
TW202046159A (zh) * 2019-02-08 2020-12-16 美商艾提史畢克斯有限責任公司 用於開發智能工業助理之對話範本的方法、系統及電腦程式產品
US11321536B2 (en) 2019-02-13 2022-05-03 Oracle International Corporation Chatbot conducting a virtual social dialogue
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
WO2020191093A1 (en) * 2019-03-19 2020-09-24 Liveperson, Inc. Dynamic communications routing to disparate endpoints
CN111737408B (zh) * 2019-03-25 2024-05-03 阿里巴巴集团控股有限公司 基于剧本的对话方法、设备及电子设备
CN110046227B (zh) * 2019-04-17 2023-07-18 腾讯科技(深圳)有限公司 对话系统的配置方法、交互方法、装置、设备和存储介质
EP3956827A4 (en) 2019-04-17 2023-01-11 Tempus Labs COLLABORATIVE ARTIFICIAL INTELLIGENCE METHOD AND SYSTEM
US11637792B2 (en) * 2019-04-19 2023-04-25 Oracle International Corporation Systems and methods for a metadata driven integration of chatbot systems into back-end application services
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
CN110096583B (zh) * 2019-05-09 2021-05-14 思必驰科技股份有限公司 多领域对话管理系统及其构建方法
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US10671941B1 (en) * 2019-05-23 2020-06-02 Capital One Services, Llc Managing multifaceted, implicit goals through dialogue
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
CA3045132C (en) * 2019-06-03 2023-07-25 Eidos Interactive Corp. Communication with augmented reality virtual agents
EP4004795A1 (en) * 2019-07-29 2022-06-01 Artificial Intelligence Robotics Pte. Ltd. Stickering method and system for linking contextual text elements to actions
US11449682B2 (en) 2019-08-29 2022-09-20 Oracle International Corporation Adjusting chatbot conversation to user personality and mood
CN110798506B (zh) * 2019-09-27 2023-03-10 华为技术有限公司 执行命令的方法、装置及设备
US11425064B2 (en) 2019-10-25 2022-08-23 Asapp, Inc. Customized message suggestion with user embedding vectors
WO2021096382A2 (ru) * 2019-11-15 2021-05-20 Федеральное Государственное Автономное Образовательное Учреждение Высшего Образования "Московский Физико-Технический Институт" (Национальный Исследовательский Университет) (Мфти) Способ и система управления диалоговым агентом в канале взаимодействия с пользователем
US11775772B2 (en) 2019-12-05 2023-10-03 Oracle International Corporation Chatbot providing a defeating reply
KR20210113488A (ko) * 2020-03-05 2021-09-16 삼성전자주식회사 사용 로그 분석에 의한 보이스 에이전트의 새 기능을 자동적으로 추출하는 방법 및 장치
US11501211B2 (en) 2020-03-13 2022-11-15 Hong Kong Applied Science And Technology Research Institute Co., Ltd Chatbot system with model lifecycle management
CN111312254A (zh) * 2020-03-26 2020-06-19 镁佳(北京)科技有限公司 语音对话方法和装置
US11482223B2 (en) 2020-03-31 2022-10-25 Pricewaterhousecoopers Llp Systems and methods for automatically determining utterances, entities, and intents based on natural language inputs
US11580112B2 (en) 2020-03-31 2023-02-14 Pricewaterhousecoopers Llp Systems and methods for automatically determining utterances, entities, and intents based on natural language inputs
US11095579B1 (en) 2020-05-01 2021-08-17 Yseop Sa Chatbot with progressive summary generation
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11755276B2 (en) 2020-05-12 2023-09-12 Apple Inc. Reducing description length based on confidence
AU2020356799B2 (en) * 2020-06-18 2022-09-08 Citrix Systems, Inc. Autonomous learning of entity values in artificial intelligence conversational systems
US20220019195A1 (en) * 2020-07-15 2022-01-20 Automation Anywhere, Inc. Robotic process automation with conversational user interface
US11539650B2 (en) 2020-07-16 2022-12-27 International Business Machines Corporation System and method for alerts for missing coverage of chatbot conversation messages
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
CN111914075A (zh) * 2020-08-06 2020-11-10 平安科技(深圳)有限公司 基于深度学习的客户标签确定方法、装置、设备及介质
US11816437B2 (en) * 2020-12-15 2023-11-14 International Business Machines Corporation Automatical process application generation
JP2022147362A (ja) * 2021-03-23 2022-10-06 株式会社リコー サービス提供システム、情報処理装置、情報処理方法、及びプログラム
US11683283B2 (en) 2021-03-30 2023-06-20 International Business Machines Corporation Method for electronic messaging
US11533279B2 (en) 2021-03-30 2022-12-20 International Business Machines Corporation Method for electronic messaging using image based noisy content
US20220334709A1 (en) 2021-04-14 2022-10-20 DataChat.ai User interface for data analytics systems
JP6954549B1 (ja) * 2021-06-15 2021-10-27 ソプラ株式会社 エンティティとインテントとコーパスの自動生成装置及びプログラム
CN114265920B (zh) * 2021-12-27 2022-07-01 北京易聊科技有限公司 一种基于信号和场景的智能机器人对话方法及系统

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6078886A (en) * 1997-04-14 2000-06-20 At&T Corporation System and method for providing remote automatic speech recognition services via a packet network
EP1125277A4 (en) * 1998-10-02 2002-02-20 Ibm STRUCTURAL SKELETON FOR EFFICIENT VOICE NAVIGATION BY GENERICALLY HIERARCHICAL OBJECTS
US6868385B1 (en) * 1999-10-05 2005-03-15 Yomobile, Inc. Method and apparatus for the provision of information signals based upon speech recognition
US9076448B2 (en) * 1999-11-12 2015-07-07 Nuance Communications, Inc. Distributed real time speech recognition system
US6912498B2 (en) * 2000-05-02 2005-06-28 Scansoft, Inc. Error correction in speech recognition by correcting text around selected area
JP3949356B2 (ja) * 2000-07-12 2007-07-25 三菱電機株式会社 音声対話システム
US7308404B2 (en) * 2001-09-28 2007-12-11 Sri International Method and apparatus for speech recognition using a dynamic vocabulary
US6999930B1 (en) * 2002-03-27 2006-02-14 Extended Systems, Inc. Voice dialog server method and system
US7302383B2 (en) * 2002-09-12 2007-11-27 Luis Calixto Valles Apparatus and methods for developing conversational applications
US7228275B1 (en) * 2002-10-21 2007-06-05 Toyota Infotechnology Center Co., Ltd. Speech recognition system having multiple speech recognizers
US7548858B2 (en) * 2003-03-05 2009-06-16 Microsoft Corporation System and method for selective audible rendering of data to a user based on user input
US8311835B2 (en) * 2003-08-29 2012-11-13 Microsoft Corporation Assisted multi-modal dialogue
US7266537B2 (en) * 2004-01-14 2007-09-04 Intelligent Results Predictive selection of content transformation in predictive modeling systems
US8024196B1 (en) * 2005-09-19 2011-09-20 Sap Ag Techniques for creating and translating voice applications
US9009046B1 (en) * 2005-09-27 2015-04-14 At&T Intellectual Property Ii, L.P. System and method for disambiguating multiple intents in a natural language dialog system
US8332218B2 (en) * 2006-06-13 2012-12-11 Nuance Communications, Inc. Context-based grammars for automated speech recognition
US9318108B2 (en) * 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US7752043B2 (en) * 2006-09-29 2010-07-06 Verint Americas Inc. Multi-pass speech analytics
JP4451435B2 (ja) * 2006-12-06 2010-04-14 本田技研工業株式会社 言語理解装置、言語理解方法、及び、コンピュータプログラム
US20110060587A1 (en) * 2007-03-07 2011-03-10 Phillips Michael S Command and control utilizing ancillary information in a mobile voice-to-speech application
US8140335B2 (en) * 2007-12-11 2012-03-20 Voicebox Technologies, Inc. System and method for providing a natural language voice user interface in an integrated voice navigation services environment
US8874443B2 (en) * 2008-08-27 2014-10-28 Robert Bosch Gmbh System and method for generating natural language phrases from user utterances in dialog systems
US8700389B2 (en) * 2010-12-23 2014-04-15 Sap Ag Systems and methods for model-based processing of linguistic user inputs using annotations
US9082402B2 (en) * 2011-12-08 2015-07-14 Sri International Generic virtual personal assistant platform
US8892419B2 (en) * 2012-04-10 2014-11-18 Artificial Solutions Iberia SL System and methods for semiautomatic generation and tuning of natural language interaction applications
EP2839391A4 (en) * 2012-04-20 2016-01-27 Maluuba Inc CONVERSATION AGENT
US10096316B2 (en) * 2013-11-27 2018-10-09 Sri International Sharing intents to provide virtual assistance in a multi-person dialog
US10026400B2 (en) 2013-06-27 2018-07-17 Google Llc Generating dialog recommendations for chat information systems based on user interaction and environmental data
US10811004B2 (en) * 2013-03-28 2020-10-20 Nuance Communications, Inc. Auto-generation of parsing grammars from a concept ontology
US9110889B2 (en) * 2013-04-23 2015-08-18 Facebook, Inc. Methods and systems for generation of flexible sentences in a social networking system
US9633317B2 (en) * 2013-06-20 2017-04-25 Viv Labs, Inc. Dynamically evolving cognitive architecture system based on a natural language intent interpreter
US20150242395A1 (en) * 2014-02-24 2015-08-27 Transcriptic, Inc. Systems and methods for equipment sharing
US9275641B1 (en) 2014-09-14 2016-03-01 Speaktoit, Inc. Platform for creating customizable dialog system engines
CN104360897B (zh) * 2014-10-29 2017-09-22 百度在线网络技术(北京)有限公司 对话处理方法和对话管理系统

Similar Documents

Publication Publication Date Title
JP6942841B2 (ja) ダイアログ・システムにおけるパラメータ収集および自動ダイアログ生成
JP2019503526A5 (ja)
US11321116B2 (en) Systems and methods for integrating third party services with a digital assistant
CN112270925B (zh) 用于创建可定制对话系统引擎的平台
US11232265B2 (en) Context-based natural language processing