(57)【要約】  自動アシスタントによって与えられる提案または他の内容の1つまたは複数の内容パラメータに関して、ユーザに対してフィードバックを要請することに関連した方法、装置、およびコンピュータ可読媒体。ユーザのフィードバックは、将来のダイアログセッションにおいて自動アシスタントによって、ユーザに、および/または他のユーザに後で与えられる将来の提案および/または他の内容に影響を及ぼすのに使われ得る。いくつかの実装形態では、ユーザと自動アシスタントとの間のダイアログセッションにおいて、自動アシスタントによって内容がユーザに与えられ、自動アシスタントは、ユーザと自動アシスタントとの間の将来のダイアログセッションにおける、与えられた内容に関連したユーザフィードバックを要請するプロンプトを与える。それらの実装形態のうちのいくつかでは、プロンプトは、事前のダイアログセッションにおいて与えられた内容とは無関係な、将来のダイアログセッションにおける、ユーザからの入力および/または自動アシスタントからの出力に続いて与えられる。
2019537802.tif 000002
【特許請求の範囲】
【請求項１】
1つまたは複数のプロセッサによって実行される方法であって、
ユーザと、前記プロセッサのうちの1つまたは複数によって実装される自動アシスタントとの間のダイアログセッションの一部として、
前記ユーザによって与えられたユーザインターフェース入力に基づく自然言語入力を、ユーザインターフェース入力デバイスを介して受信するステップと、
前記自然言語入力への前記自動アシスタントによる返答として、前記自然言語入力に応答する内容を与えるステップであって、
前記内容は、ユーザインターフェース出力デバイスを介して、前記ユーザへの表示のために与えられ、
前記内容は、複数の候補内容パラメータから前記自動アシスタントによって選択された少なくとも1つの内容パラメータを含む、ステップと、
前記ダイアログセッションから時間的に離れた、前記ユーザと前記自動アシスタントとの間の追加ダイアログセッションの一部として、
前記選択された内容パラメータについてのフィードバックを要請するプロンプトを与えるステップであって、
前記プロンプトは、前記ユーザインターフェース出力デバイスまたは追加ユーザインターフェース出力デバイスを介して、前記ユーザへの表示のために与えられ、
前記プロンプトは、前記自動アシスタントによって以前選択されるとともに、前記ダイアログセッションの一部として、前記ユーザへの表示のために以前与えられた前記内容パラメータに基づいて、前記内容パラメータについてのフィードバックを要請するために生成され、
前記プロンプトを与えたことに基づいて、マイクロフォンを介して与えられた入力を処理するように構成された少なくとも1つの構成要素を先制してアクティブ化するステップであって、前記マイクロフォンは、前記ユーザインターフェース入力デバイスまたは追加ユーザインターフェース入力デバイスである、ステップと、
前記プロンプトに応答する追加入力を受信するステップであって、前記追加入力は、前記マイクロフォンを介して前記ユーザによって与えられた追加ユーザインターフェース入力に基づく、ステップと、
前記追加入力を、前記内容パラメータに関連付けて記憶された値に影響を及ぼすのに使うステップであって、前記値は、前記内容パラメータを含むさらなる内容の将来の提供に影響を及ぼす、ステップとを含む方法。
【請求項２】
前記ユーザは、事前のダイアログセッションの前記内容とは無関係な追加自然言語入力で、前記追加ダイアログセッションを開始する、請求項1に記載の方法。
【請求項３】
前記追加ダイアログセッションの一部として、
前記追加自然言語入力に応答するとともに、事前のダイアログセッションの前記内容とは無関係でもある追加ダイアログセッション出力を与えるステップをさらに含み、
前記プロンプトを与えるステップは、前記追加ダイアログセッション出力を与えたことに続いて起こる、請求項2に記載の方法。
【請求項４】
1つまたは複数の基準が、前記追加自然言語入力、および前記追加ダイアログセッション出力のうちの少なくとも1つによって満足されると判断するステップをさらに含み、
前記プロンプトを与えるステップは、前記基準が満足されると判断したことにさらに基づく、請求項3に記載の方法。
【請求項５】
前記基準は、前記追加ダイアログセッション出力が特定のセマンティックタイプであること、および基準nグラムのセットのうちの少なくとも1つのnグラムの、前記ユーザプロンプトにおける出現のうちの少なくとも1つを含む、請求項4に記載の方法。
【請求項６】
前記内容は、将来、前記ユーザによって働きかけられることになる提案であり、
前記内容パラメータを含む前記内容を与えた後、前記ユーザが前記提案に働きかけたと判断するステップをさらに含み、
前記プロンプトを与えるステップは、前記ユーザが前記提案に働きかけたと判断したことにさらに基づく、請求項1から5のいずれか一項に記載の方法。
【請求項７】
前記ユーザは前記追加ダイアログセッションを開始し、前記プロンプトを与えるステップは、前記ユーザが前記追加ダイアログセッションを開始したことを条件とする、請求項1から6のいずれか一項に記載の方法。
【請求項８】
前記追加ダイアログセッションの一部として、
前記プロンプトを与えるのに先立って、追加ダイアログセッション出力を与えるステップをさらに含み、
前記プロンプトを与えるステップは、前記追加ダイアログセッション出力を与えたことに続いて起こる、請求項1から7のいずれか一項に記載の方法。
【請求項９】
前記ユーザに与えられる追加内容パラメータを、前記ユーザと前記自動アシスタントとの間の、追加の事前のダイアログセッションの一部と識別するステップと、
1つまたは複数の基準に基づいて、前記追加内容パラメータに基づく代替プロンプトではなく、前記内容パラメータに基づく前記プロンプトを与えると判断するステップとをさらに含む、請求項1から8のいずれか一項に記載の方法。
【請求項１０】
前記1つまたは複数の基準は、前記内容パラメータの前記提供および前記追加内容パラメータの前記提供の対応する時間近接度を含む、請求項9に記載の方法。
【請求項１１】
前記1つまたは複数の基準は、前記内容パラメータおよび前記追加内容パラメータに割り当てられたセマンティックタイプを含む、請求項9または請求項10に記載の方法。
【請求項１２】
前記内容は、特定の物理的ロケーションについての、および前記特定のロケーションにおいて消費可能な特定の項目についての提案を含み、前記内容パラメータは前記特定の項目を識別する、請求項1から11のいずれか一項に記載の方法。
【請求項１３】
前記内容は、特定の物理的ロケーションについての提案を含み、前記内容パラメータは、前記特定の物理的ロケーションが属すカテゴリを識別する、請求項1から12のいずれか一項に記載の方法。
【請求項１４】
前記入力および前記追加入力は両方とも、前記ユーザインターフェース入力デバイスを介して生成され、前記内容および前記フィードバックプロンプトは両方とも、前記ユーザインターフェース出力デバイスを介して表示のために与えられる、請求項1から13のいずれか一項に記載の方法。
【請求項１５】
前記ユーザインターフェース入力デバイスは単一のデバイスの前記マイクロフォンを含み、前記ユーザインターフェース出力デバイスは前記単一のデバイスのスピーカを含む、請求項14に記載の方法。
【請求項１６】
前記入力は、第1のコンピューティングデバイスの前記ユーザインターフェース入力デバイスを介して生成され、
前記内容は、前記第1のコンピューティングデバイスの前記ユーザインターフェース出力デバイスを介して表示のために与えられ、
前記プロンプトは、追加コンピューティングデバイスの前記追加ユーザインターフェース出力デバイスを介して表示のために与えられる、請求項1から15のいずれか一項に記載の方法。
【請求項１７】
1つまたは複数のプロセッサによって実行される方法であって、
コンピュータ可読媒体から、ユーザと、前記プロセッサのうちの1つまたは複数によって実装される自動アシスタントとの間の事前のダイアログセッションの一部として、ユーザに以前与えられた内容の記憶された内容パラメータを識別するステップと、
前記ダイアログセッションから時間的に離れた、前記ユーザと前記自動アシスタントとの間の追加ダイアログセッションの一部として、
前記内容パラメータについてのフィードバックを要請するプロンプトを与えるステップであって、
前記プロンプトは、前記ユーザのコンピューティングデバイスのユーザインターフェース出力デバイスを介して、前記ユーザへの表示のために与えられ、
前記プロンプトは、前記内容パラメータが、前記事前のダイアログセッションの一部として、前記ユーザへの表示のために以前与えられたことに基づいて、前記内容パラメータについてのフィードバックを要請するために生成される、ステップと、
前記プロンプトに応答する追加入力を受信するステップであって、前記追加入力は、前記コンピューティングデバイスのユーザインターフェース入力デバイスを介して前記ユーザによって与えられた追加ユーザインターフェース入力に基づく、ステップと、
前記追加入力を、前記内容パラメータに関連付けて記憶された値に影響を及ぼすのに使うステップであって、前記値は、前記内容パラメータを含むさらなる内容の将来の提供に影響を及ぼす、ステップとを含む方法。
【請求項１８】
ユーザと自動アシスタントとの間の事前のダイアログセッションとは時間的に離れた、前記ユーザと前記自動アシスタントとの間の追加ダイアログセッションの一部として、
スピーカを介して、前記事前のダイアログセッションの一部として、前記ユーザへの表示のために以前与えられた内容の内容パラメータについてのフィードバックを要請するプロンプトを与えるステップであって、前記プロンプトは、前記内容パラメータが、前記事前のダイアログセッションの一部として、前記ユーザへの表示のために以前与えられたことに基づいて、前記内容パラメータについてのフィードバックを要請する、ステップと、
前記プロンプトを与えたことに基づいて、マイクロフォンを介して与えられたユーザインターフェース入力を処理するように構成された少なくとも1つの構成要素を先制してアクティブ化するステップとを含む方法。
【請求項１９】
請求項1から18のいずれか一項に記載の方法を実施するように構成された装置。
【請求項２０】
コンピューティング装置によって実行されると、前記コンピューティング装置に、請求項1から19のいずれか一項に記載の方法を実施させる機械可読命令を備えるコンピュータプログラム。
【請求項２１】
少なくとも1つのマイクロフォンと、
少なくとも1つのスピーカと、
ネットワークインターフェースと、
1つまたは複数のプロセッサとを備えるクライアントデバイスであって、前記1つまたは複数のプロセッサは、
ユーザと自動アシスタントとの間の事前のダイアログセッションとは時間的に離れた、前記ユーザと前記自動アシスタントとの間の追加ダイアログセッションの一部として、
前記スピーカを介して、前記事前のダイアログセッションの一部として、前記ユーザへの表示のために以前与えられた内容の内容パラメータについてのフィードバックを要請するプロンプトを与えることであって、
前記プロンプトは、前記内容パラメータが、前記事前のダイアログセッションの一部として、前記ユーザへの表示のために以前与えられたことに基づいて、前記内容パラメータについてのフィードバックを要請する、ことと、
前記プロンプトを与えたことに基づいて、前記マイクロフォンを介して与えられたユーザインターフェース入力を処理するように構成された少なくとも1つの構成要素を先制してアクティブ化することとを行うように構成される、クライアントデバイス。
【請求項２２】
前記1つまたは複数のプロセッサは、
前記マイクロフォンを介して、前記プロンプトに応答する前記ユーザインターフェース入力を受信することと、
前記ネットワークインターフェースを介して、前記追加入力に基づくデータを与えることであって、前記データは、前記内容パラメータと関連付けて記憶されている値であって前記内容パラメータを含むさらなる内容の将来の提供に影響を及ぼす値に影響を及ぼすために与えられる、こととを行うようにさらに構成される、請求項21に記載のクライアントデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、事前の自動化ダイアログセッションにおいて選択された内容に基づいて自動化ダイアログセッション中でプロンプトの提供することに関する。
【背景技術】
【０００２】
自動アシスタント(「パーソナルアシスタントモジュール」、「モバイルアシスタント」、または「チャットボット」としても知られる)は、スマートフォン、タブレットコンピュータ、装着可能デバイス、自動車システム、独立型パーソナルアシスタントデバイスなどのような、様々なコンピューティングデバイスを介してユーザによって対話され得る。自動アシスタントは、ユーザからの入力(たとえば、タイプ入力された、かつ/または発話された自然言語入力)を受信し、応答用内容(たとえば、可視的および/または可聴自然言語出力)で応答する。
【発明の概要】
【課題を解決するための手段】
【０００３】
ダイアログセッション中のユーザからの入力に応答して、自動アシスタントが、入力に応答するとともに、1つまたは複数の要因に基づいて複数の候補内容パラメータから自動アシスタントによって選択される1つまたは複数の内容パラメータを含む、提案および/または他の内容を与えることができる。たとえば、「おいしいバーガーを買えるのはどこ?」という入力に応答して、自動アシスタントは、バーガーを提供する複数の候補レストランを識別し得るが、入力に応答して内容に含めるもののサブセット(たとえば、そのうちの1つ)のみを選択し得る。
【０００４】
本明細書は、自動アシスタントによって与えられる提案または他の内容の1つまたは複数の内容パラメータに関して、ユーザに対してフィードバックを要請することに関連した方法、装置、およびコンピュータ可読媒体を対象とする。ユーザのフィードバックは、将来のダイアログセッションにおいて自動アシスタントによって、ユーザに、および/または他のユーザに後で与えられる将来の提案および/または他の内容に影響を及ぼすのに使われ得る。
【０００５】
いくつかの実装形態では、ユーザと自動アシスタントとの間のダイアログセッションにおいて、自動アシスタントによって内容がユーザに与えられ、自動アシスタントは、ユーザと自動アシスタントとの間の将来のダイアログセッションにおける、与えられた内容に関連したユーザフィードバックを要請するプロンプトを与える。それらの実装形態のうちのいくつかでは、プロンプトは、事前のダイアログセッションにおいて与えられた内容とは無関係な、将来のダイアログセッションにおける、ユーザからの入力および/または自動アシスタントからの出力に続いて与えられる。
【０００６】
一例として、将来のダイアログセッションは、ユーザによって開始することができ、自動アシスタントに、ユーザのカレンダエントリの要約を与え、ユーザにニュース記事を与え、ユーザのために音楽を流すなどのような、何らかの「ルーチンアクション」を実施するよう促し得る。自動アシスタントは、ルーチンアクションの一部または全部を実施し、次いでプロンプトを与え得る。これは、ルーチンアクションに会話型プロンプトを注入することによって、ルーチンアクションに、ある程度の変化を加え、かつ/またはユーザエクスペリエンスを高め得る。その上、上述したように、プロンプトに応答して与えられるユーザのフィードバック(直接または間接)は、ユーザへの表示のために自動アシスタントによって後で与えられる将来の提案または他の内容に影響を及ぼすのに使用することができ、そうすることによって、自動アシスタントによってユーザに与えられる後続内容がユーザにとって適切である見込みが増す。自動アシスタントによって与えられる内容のそのような適切性の向上により、ユーザに所望の内容がより迅速に与えられることが可能になり得、それにより、所望の内容を識別するために場合によっては必要とされ得る、より長引いたダイアログにおいて消費され得る様々な計算リソース(および、自動アシスタントがクライアントデバイスと統合されていない場合は、通信リソース)を減らすことができる。
【０００７】
いくつかの実装形態では、ユーザと、プロセッサのうちの1つまたは複数によって実装される自動アシスタントとの間のダイアログセッションの一部として、ユーザによって与えられたユーザインターフェース入力に基づく自然言語入力を、ユーザインターフェース入力デバイスを介して受信するステップと、自然言語入力への、自動アシスタントによる返答として、自然言語入力に応答する内容を与えるステップとを含む、1つまたは複数のプロセッサによって実施される方法が提供される。内容は、ユーザインターフェース出力デバイスを介して、ユーザへの表示のために与えられ、内容は、複数の候補内容パラメータから自動アシスタントによって選択された少なくとも1つの内容パラメータを含む。方法は、ダイアログセッションから時間的に離れた、ユーザと自動アシスタントとの間の追加ダイアログセッションの一部として、選択された内容パラメータについてのフィードバックを要請するプロンプトを与えるステップと、プロンプトに応答する追加入力を受信するステップと、追加入力を、内容パラメータに関連付けて記憶された値に影響を及ぼすのに使うステップとをさらに含む。内容パラメータに関連付けて記憶された値は、内容パラメータを含む、さらなる内容の将来の提供に影響を及ぼす。プロンプトは、ユーザインターフェース出力デバイスまたは追加ユーザインターフェース出力デバイスを介して、ユーザへの表示のために与えられる。プロンプトは、自動アシスタントによって以前選択されるとともに、ダイアログセッションの一部としてユーザへの表示のために以前与えられた内容パラメータに基づいて、内容パラメータについてのフィードバックを要請するために生成される。プロンプトに応答する追加入力は、ユーザインターフェース入力デバイスまたは追加ユーザインターフェース入力デバイスを介して、ユーザによって与えられた追加ユーザインターフェース入力に基づく。
【０００８】
本明細書で開示する技術のこれらおよび他の実装形態は、任意選択で、以下の特徴のうちの1つまたは複数を含み得る。
【０００９】
いくつかの実装形態では、ユーザは、事前のダイアログセッションの内容とは無関係な追加自然言語入力で、追加ダイアログセッションを開始する。それらの実装形態のうちのいくつかでは、方法は、追加ダイアログセッションの一部として、追加自然言語入力に応答するとともに、事前のダイアログセッションの内容とは無関係でもある追加ダイアログセッション出力を与えるステップをさらに含む。プロンプトを与えるステップは、追加ダイアログセッション出力を与えたことに続いて起こり得る。それらの実装形態のいくつかのバージョンでは、方法は、1つまたは複数の基準が、追加自然言語入力、および追加ダイアログセッション出力のうちの少なくとも1つによって満足されると判断するステップをさらに含む。プロンプトを与えるステップは、基準が満足されると判断したことにさらに基づき得る。基準は、たとえば、特定のセマンティックタイプである追加ダイアログセッション出力および/または基準nグラムのセットのうちの少なくとも1つのnグラムの、ユーザプロンプトにおける出現を含み得る。
【００１０】
いくつかの実装形態では、内容は、将来、ユーザによって働きかけられるべき提案であり、方法は、内容パラメータを含む内容を与えた後、ユーザが提案に働きかけたと判断するステップをさらに含む。プロンプトを与えるステップは、ユーザが提案に働きかけたと判断したことにさらに基づき得る。
【００１１】
いくつかの実装形態では、プロンプトに応答する追加入力を生成するのに使われるユーザインターフェース入力デバイスまたは追加ユーザインターフェース入力デバイスは、マイクロフォンを含み、方法は、プロンプトを与えたことに基づいて、マイクロフォンを介して与えられたユーザインターフェース入力を処理するように構成された少なくとも1つの構成要素を先制してアクティブ化するステップをさらに含む。
【００１２】
いくつかの実装形態では、ユーザは追加ダイアログセッションを開始し、プロンプトを与えるステップは、ユーザが追加ダイアログセッションを開始したことを条件とする。
【００１３】
いくつかの実装形態では、方法は、追加ダイアログセッションの一部として、プロンプトを与えるのに先立って、追加ダイアログセッション出力を与えるステップをさらに含む。プロンプトを与えるステップは、追加ダイアログセッション出力を与えたことに続いて起こり得る。
【００１４】
いくつかの実装形態では、方法は、ユーザと自動アシスタントとの間の、追加の事前のダイアログセッションの一部として、ユーザに与えられた追加内容パラメータを識別するステップと、1つまたは複数の基準に基づいて、追加内容パラメータに基づく代替プロンプトではなく、内容パラメータに基づくプロンプトを与えると判断するステップとをさらに含む。それらの実装形態のうちのいくつかでは、1つまたは複数の基準は、内容パラメータの提供および追加内容パラメータの提供の対応する時間近接度を含む。それらの実装形態のうちのいくつかでは、1つまたは複数の基準は、追加または代替として、内容パラメータおよび追加内容パラメータに割り当てられたセマンティックタイプを含む。
【００１５】
いくつかの実装形態では、内容は、特定の物理的ロケーションについての、および特定のロケーションにおいて消費可能な特定の項目についての提案を含み、内容パラメータは特定の項目を識別する。
【００１６】
いくつかの実装形態では、内容は、特定の物理的ロケーションについての提案を含み、内容パラメータは、特定の物理的ロケーションが属すカテゴリを識別する。
【００１７】
いくつかの実装形態では、入力および追加入力は両方とも、ユーザインターフェース入力デバイスを介して生成され、内容およびフィードバックプロンプトは両方とも、ユーザインターフェース出力デバイスを介して表示のために与えられる。それらの実装形態のうちのいくつかでは、ユーザインターフェース入力デバイスは単一のデバイスのマイクロフォンを含み、ユーザインターフェース出力デバイスは単一のデバイスのスピーカを含む。
【００１８】
いくつかの実装形態では、入力は、第1のコンピューティングデバイスのユーザインターフェース入力デバイスを介して生成され、内容は、第1のコンピューティングデバイスのユーザインターフェース出力デバイスを介して表示のために与えられ、プロンプトは、追加コンピューティングデバイスの追加ユーザインターフェース出力デバイスを介して表示のために与えられる。
【００１９】
いくつかの実装形態では、コンピュータ可読媒体から、ユーザと、プロセッサのうちの1つまたは複数によって実装される自動アシスタントとの間の事前のダイアログセッションの一部として、ユーザに以前与えられた内容の記憶された内容パラメータを識別するステップを含む、1つまたは複数のプロセッサによって実施される方法が提供される。方法は、ダイアログセッションから時間的に離れた、ユーザと自動アシスタントとの間の追加ダイアログセッションの一部として、内容パラメータについてのフィードバックを要請するプロンプトを与えるステップをさらに含む。プロンプトは、ユーザのコンピューティングデバイスのユーザインターフェース出力デバイスを介して、ユーザへの表示のために与えられ、プロンプトは、内容パラメータが、事前のダイアログセッションの一部として、ユーザへの表示のために以前与えられたことに基づいて、内容パラメータについてのフィードバックを要請するために生成される。方法は、追加ダイアログセッションの一部として、プロンプトに応答する追加入力を受信するステップと、追加入力を、内容パラメータに関連付けて記憶された値に影響を及ぼすのに使うステップとをさらに含む。追加入力は、コンピューティングデバイスのユーザインターフェース入力デバイスを介してユーザによって与えられた追加ユーザインターフェース入力に基づき、記憶された値は、内容パラメータを含むさらなる内容の将来の提供に影響を及ぼす。
【００２０】
さらに、いくつかの実装形態は、1つまたは複数のコンピューティングデバイスの1つまたは複数のプロセッサを含み、1つまたは複数のプロセッサは、関連付けられたメモリに記憶された命令を実行するように動作可能であり、命令は、上述した方法のうちのいずれかの実施を引き起こすように構成される。いくつかの実装形態は、上述した方法のうちのいずれかを実施するように1つまたは複数のプロセッサによって実行可能なコンピュータ命令を記憶する1つまたは複数の非一時的コンピュータ可読記憶媒体も含む。
【００２１】
本明細書でより詳細に記載する、上記概念と追加概念のすべての組合せは、本明細書で開示する主題の一部であることを企図されることを諒解されたい。たとえば、本開示の最後に著される、特許請求する主題のすべての組合せが、本明細書で開示する主題の一部であることを企図される。
【図面の簡単な説明】
【００２２】
【図１】本明細書で開示する実装形態が実装され得る例示的な環境のブロック図である。
【図２Ａ】自動アシスタントが、ユーザに、複数の候補内容パラメータから選択された内容パラメータをもつ内容を与えるダイアログセッションの例を示す図である。
【図２Ｂ１】図2Aのものとは別個のダイアログセッションにおけるユーザに、図2Aの選択された内容パラメータに基づくフィードバックプロンプトを与える異なる例を示す図である。
【図２Ｂ２】図2Aのものとは別個のダイアログセッションにおけるユーザに、図2Aの選択された内容パラメータに基づくフィードバックプロンプトを与える異なる例を示す図である。
【図２Ｂ３】図2Aのものとは別個のダイアログセッションにおけるユーザに、図2Aの選択された内容パラメータに基づくフィードバックプロンプトを与える異なる例を示す図である。
【図２Ｂ４】図2Aのものとは別個のダイアログセッションにおけるユーザに、図2Aの選択された内容パラメータに基づくフィードバックプロンプトを与える異なる例を示す図である。
【図３Ａ】自動アシスタントが、ユーザに、複数の候補内容パラメータから選択された内容パラメータをもつ内容を与えるダイアログセッションの別の例を示す図である。
【図３Ｂ】図3Aのものとは別個のダイアログセッションにおけるユーザに、図3Aの選択された内容パラメータに基づくフィードバックプロンプトを与える例を示す図である。
【図４】本明細書で開示する実装形態による例示的方法を示すフローチャートである。
【図５】コンピューティングデバイスの例示的アーキテクチャを示す図である。
【発明を実施するための形態】
【００２３】
ここで図1に移ると、本明細書で開示する技法が実装され得る例示的環境が示されている。例示的環境は、複数のクライアントコンピューティングデバイス1061〜Nおよび自動アシスタント120を含む。自動アシスタント120は、クライアントコンピューティングデバイス1061〜Nとは別個のものとして図1に示されているが、いくつかの実装形態では、自動アシスタント120のすべてまたはいくつかの態様が、クライアントコンピューティングデバイス1061〜Nのうちの1つまたは複数によって実装され得る。たとえば、クライアントデバイス1061は、自動アシスタント120の1つのインスタンスまたはより多くの態様を実装することができ、クライアントデバイス106Nも、自動アシスタント120のそれらの1つまたは複数の態様の別個のインスタンスを実装することができる。自動アシスタント120の1つまたは複数の態様が、クライアントコンピューティングデバイス1061〜Nから離れた1つまたは複数のコンピューティングデバイスによって実装される実装形態では、クライアントコンピューティングデバイス1061〜Nと、自動アシスタント120のそれらの態様は、ローカルエリアネットワーク(LAN)および/またはワイドエリアネットワーク(WAN)(たとえば、インターネット)など、1つまたは複数のネットワークを介して通信し得る。
【００２４】
クライアントデバイス1061〜Nは、たとえば、デスクトップコンピューティングデバイス、ラップトップコンピューティングデバイス、タブレットコンピューティングデバイス、モバイルフォンコンピューティングデバイス、ユーザの車両のコンピューティングデバイス(たとえば、車両内通信システム、車両内娯楽システム、車両内ナビゲーションシステム)、および/またはコンピューティングデバイスを含む、ユーザの装着可能装置(たとえば、コンピューティングデバイスを有するユーザの時計、コンピューティングデバイスを有するユーザの眼鏡、仮想もしくは拡張現実コンピューティングデバイス)のうちの1つまたは複数を含み得る。追加および/または代替クライアントコンピューティングデバイスが提供されてもよい。いくつかの実装形態では、所与のユーザが、コンピューティングデバイスの協調「エコシステム」をまとまって形成する複数のクライアントコンピューティングデバイスを使用して、自動アシスタント120と通信し得る。ただし、簡潔のために、本明細書に記載するいくつかの例は、ユーザが単一のクライアントコンピューティングデバイス106を操作することに焦点を当てる。
【００２５】
クライアントコンピューティングデバイス1061〜Nの各々は、メッセージ交換クライアント1071〜Nのうちの対応する1つなど、様々な異なるアプリケーションを操作することができる。メッセージ交換クライアント1071〜Nは、様々な形で提供することができ、形はクライアントコンピューティングデバイス1061〜Nにわたって変わってよく、かつ/または複数の形が、クライアントコンピューティングデバイス1061〜Nのうちの単一のものにおいて操作され得る。いくつかの実装形態では、メッセージ交換クライアント1071〜Nのうちの1つまたは複数が、ショートメッセージングサービス(「SMS」)および/またはマルチメディアメッセージングサービス(「MMS」)クライアント、オンラインチャットクライアント(たとえば、インスタントメッセンジャ、インターネットリレーチャット、もしくは「IRC」など)、ソーシャルネットワークに関連付けられたメッセージングアプリケーション、自動アシスタント120との会話に専用のパーソナルアシスタントメッセージングサービスなどの形で提供され得る。いくつかの実装形態では、メッセージ交換クライアント1071〜Nのうちの1つまたは複数は、ウェブページまたはウェブブラウザ(図示せず)もしくはクライアントコンピューティングデバイス106の他のアプリケーションによってレンダリングされる他のリソースにより実装され得る。
【００２６】
本明細書でより詳しく記載するように、自動アシスタント120は、1つまたは複数のクライアントデバイス1061〜Nのユーザインターフェース入力および出力デバイスを介して、1人または複数のユーザとのダイアログセッションに関与する。いくつかの実装形態では、自動アシスタント120は、クライアントデバイス1061〜Nのうちの1つの、1つまたは複数のユーザインターフェース入力デバイスを介してユーザによって与えられたユーザインターフェース入力に応答して、ユーザとのダイアログセッションに関与し得る。それらの実装形態のうちのいくつかでは、ユーザインターフェース入力は、自動アシスタント120に明示的に向けられる。たとえば、メッセージ交換クライアント1071〜Nのうちの1つは、自動アシスタント120との会話に専用のパーソナルアシスタントメッセージングサービスであってよく、そのパーソナルアシスタントメッセージングサービスを介して与えられたユーザインターフェース入力は、自動アシスタント120に自動的に与えられてよい。また、たとえば、ユーザインターフェース入力は、自動アシスタント120が呼び出されるべきであることを示す特定のユーザインターフェース入力に基づいて、メッセージ交換クライアント1071〜Nのうちの1つまたは複数の中の自動アシスタント120に明示的に向けられてよい。たとえば、特定のユーザインターフェース入力は、1つまたは複数のタイプ入力された文字(たとえば、@AutomatedAssistant)、ハードウェアボタンおよび/もしくは仮想ボタンとのユーザ対話(たとえば、タップ、ロングタップ)、口頭コマンド(たとえば、「ねえ、自動アシスタント」)、ならびに/または他の特定のユーザインターフェース入力であってよい。いくつかの実装形態では、自動アシスタント120は、ユーザインターフェース入力が自動アシスタント120に明示的に向けられていないときであっても、そのユーザインターフェース入力に応答してダイアログセッションに関与し得る。たとえば、自動アシスタント120は、ユーザインターフェース入力の内容を調べ、いくつかの言葉がユーザインターフェース入力中に存在することに応答して、および/または他の合図に基づいて、ダイアログセッションに関与することができる。
【００２７】
クライアントコンピューティングデバイス1061〜Nの各々および自動アシスタント120は、データおよびソフトウェアアプリケーションの記憶のための1つまたは複数のメモリと、データにアクセスし、アプリケーションを実行するための1つまたは複数のプロセッサと、ネットワークを介した通信を容易にする他の構成要素とを含み得る。クライアントコンピューティングデバイス1061〜Nのうちの1つもしくは複数によって、および/または自動アシスタント120によって実施される動作は、複数のコンピュータシステムに分散されてよい。自動アシスタント120は、たとえば、ネットワークを通して互いと結合される、1つまたは複数のロケーションにある1つまたは複数のコンピュータ上で稼動するコンピュータプログラムとして実装され得る。
【００２８】
自動アシスタント120は、自然言語プロセッサ122、応答用内容エンジン130、およびフィードバックエンジン140を含み得る。いくつかの実装形態では、自動アシスタント120のエンジンおよび/またはモジュールのうちの1つまたは複数は、省かれ、組み合わされ、かつ/または自動アシスタント120とは別個の構成要素中で実装されてよい。自動アシスタント120は、関連付けられたクライアントデバイス1061〜Nを介して、1人または複数のユーザとのダイアログセッションに関与して、応答用内容エンジン130によって生成された応答用内容を与え、かつ/またはフィードバックエンジン140によって生成されたフィードバックプロンプトを与える。
【００２９】
いくつかの実装形態では、応答用内容エンジン130は、自動アシスタント120とのダイアログセッション中にクライアントデバイス1061〜Nのうちの1つの、ユーザによって生成された様々な入力に応答して、応答用内容を生成する。応答用内容エンジン130は、ダイアログセッションの一部として、ユーザに提示するための応答用内容を(たとえば、ユーザのクライアントデバイスとは別個であるとき、1つまたは複数のネットワークを介して)与える。たとえば、応答用内容エンジン130は、クライアントデバイス1061〜Nのうちの1つを介して与えられた自由形式自然言語入力に応答して、応答用内容を生成し得る。本明細書で使用する自由形式入力は、ユーザによって定式化されるとともに、ユーザによる選択用に提示されるオプションのグループに限定されない入力である。
【００３０】
いくつかの入力に応答して、応答用内容エンジン130は、複数の候補内容パラメータから選択される1つまたは複数の内容パラメータをもつ内容を生成し得る。たとえば、与えられる入力は、「良いコーヒーショップへの行き方を教えて」であってよく、応答用内容エンジン130は、1つまたは複数の要因に基づいて、複数の利用可能コーヒーショップから「良いコーヒーショップ」を最初に選択することによって、特定のコーヒーショップまでの行き方を判断することができる。さらに、応答用内容エンジン130は、1つまたは複数の要因に基づいて、複数の候補の行き方(たとえば、最短かそれとも最速か、高速道路を含むかそれとも高速道路を除くか)から選択することによって、行き方を判断することができる。応答用内容エンジン130の実装形態の追加記述を、以下で行う。
【００３１】
いくつかの実装形態では、フィードバックエンジン140は、応答用内容エンジン130によって選択されるとともにダイアログセッションにおいてユーザに与えられた様々な内容パラメータを記憶し、選択された内容パラメータのうちの1つまたは複数に関するフィードバックをユーザに対して要請するプロンプトを生成する。フィードバックエンジン140は、ダイアログセッションの一部として、ユーザに提示するためのフィードバックプロンプトを与える。多くの実装形態において、フィードバックエンジン140は、フィードバックプロンプトの焦点である内容パラメータがユーザに与えられたダイアログセッションとは別個のダイアログセッションの一部として、ユーザに提示するためのフィードバックプロンプトを与える。フィードバックエンジン140は、プロンプトに応答してユーザによって与えられたフィードバックをさらに使用して、ユーザに、および/または他のユーザに、将来のダイアログセッションにおいて自動アシスタント120によって後で与えられる将来の提案および/または他の内容に影響を及ぼすことができる。
【００３２】
上述したように、いくつかの実装形態では、ユーザと自動アシスタントとの間のダイアログセッションにおいて、自動アシスタント120によって、内容がユーザに与えられ、自動アシスタント120は、ユーザと自動アシスタントとの間の将来のダイアログセッションにおいて、与えられた内容に関連したユーザフィードバックを要請するフィードバックプロンプトを与える。それらの実装形態のうちのいくつかでは、プロンプトは、将来のダイアログセッションにおいて、ユーザからの入力および/または自動アシスタント120からの出力に続いて与えられ、その入力および/または出力は、事前のダイアログセッションにおいて与えられた内容とは無関係である。
【００３３】
本明細書で使用するように、「ダイアログセッション」とは、ユーザと自動アシスタント120との間の1つまたは複数のメッセージの論理的自己完結型交換を含み得る。自動アシスタント120は、セッションの間の時間の経過、セッションの間のユーザコンテキスト(たとえば、ロケーション、スケジュールされたミーティングの前/間/後、など)の変化、ユーザと自動アシスタントとの間のダイアログ以外の、ユーザとクライアントデバイスとの間の1つまたは複数の介入対話の検出(たとえば、ユーザが、アプリケーションをしばらくの間切り替え、ユーザが次いで、独立型音声アクティブ化製品から歩き去り、後で戻る)、セッションの間のクライアントデバイスのロック/スリープ、自動アシスタント120の1つまたは複数のインスタンスとインターフェースするのに使われるクライアントデバイスの変化などのような、様々な信号に基づいて、ユーザとの複数のダイアログセッションを区別することができる。
【００３４】
いくつかの実装形態では、自動アシスタント120が、ユーザフィードバックを要請するプロンプトを与えると、自動アシスタント120は、プロンプトに応答して受信されるべきユーザインターフェース入力を処理するように構成されている、(プロンプトがそれを介して与えられる)クライアントデバイスの1つまたは複数の構成要素を先制してアクティブ化することができる。たとえば、ユーザインターフェース入力が、クライアントデバイス1061のマイクロフォンを介して与えられるべきである場合、自動アシスタント120は、マイクロフォンを先制して「オープン」させ(そうすることによって、インターフェース要素にヒットするか、もしくはマイクロフォンをオープンするために「ホットワード」を話す必要を防ぐ)、クライアントデバイス1061のテキストプロセッサに対する局所発話を先制してアクティブ化させ、クライアントデバイス1061と、テキストプロセッサに対する遠隔発話との間の通信セッションを先制して確立させ、かつ/またはグラフィカルユーザインターフェースをクライアントデバイス1061(たとえば、フィードバックを与えるために選択され得る1つもしくは複数の選択可能な要素を含むインターフェース)上でレンダリングさせるための1つまたは複数のコマンドを与えることができる。こうすることにより、構成要素が先制してアクティブ化されなかった場合よりも素早く、ユーザインターフェース入力が与えられ、かつ/または処理されることが可能になり得る。
【００３５】
いくつかの実装形態では、自動アシスタント120は、1つまたは複数の基準を満足する、将来のダイアログセッションにおけるユーザ入力および/または自動アシスタント120の応答用出力に基づいて、その将来のダイアログセッションにおいて、ユーザフィードバックを要請するプロンプトを与え得る。たとえば、任意のユーザ入力との、ならびに/または任意の自然言語入力および/もしくは特定の自然言語入力など、特定のユーザ入力とのダイアログセッションをユーザが開始したときのみ、プロンプトが与えられ得る。また、たとえば、ユーザ入力および/または応答用出力が、1つもしくは複数の特定のセマンティックタイプであるとき、かつ/または1つもしくは複数の他の特定のセマンティックタイプではないときにのみ、プロンプトが与えられ得る。さらに別の例として、ユーザ入力および/または応答用出力が、1つもしくは複数の特定のnグラムを含み、かつ/または1つもしくは複数の他の特定のnグラムを含まないときのみ、プロンプトが与えられ得る。いくつかの実装形態では、基準は、ダイアログセッションのダイアログが、会話型であり、かつ/もしくは軽いときにプロンプトを与える見込みを昇格するように、および/またはダイアログセッションのダイアログが「タスク指向」である(たとえば、ユーザをタスクからそらすのを防止するために)ときにプロンプトを与える見込みを下げるように選択されてよい。
【００３６】
いくつかの実装形態では、基準は、追加または代替として、プロンプトが与えられているユーザのプライバシーを保つように選択されてよい。たとえば、音声ベースの自然言語入力が与えられる場合、基準は、音声ベースの入力がユーザの音声プロファイルに従うこと、および/または音声ベースの入力に特定のバックグラウンドノイズがない(たとえば、他のユーザが存在し得ることを示すバックグラウンドノイズがない)ことであってよい。また、たとえば、基準は、ユーザ入力および/または応答用出力が、ユーザが私的と見なしている状況にユーザがあることを示し得る、ユーザにとって個人的な内容(たとえば、当日のユーザのカレンダ項目の要約を与える応答用出力)を含むことであってよい。
【００３７】
いくつかの実装形態では、ユーザに与えられた複数の別々の提案からの内容パラメータが、所与の将来のダイアログセッションにおいてユーザに与えるべきプロンプトを生成するために、フィードバックエンジン140にとって利用可能であり得る。それらの実装形態のうちのいくつかでは、フィードバックエンジン140は、1つまたは複数の基準に基づいて、それらの複数の提案のサブセット(たとえば、1つ)を、所与のプロンプト中で与えるために選択すればよい。たとえば、与えられた提案の内容パラメータが、プロンプトを生成および/または提供する際に使用されるかどうかは、与えられた提案のカテゴリ(たとえば、食事の提案は、音楽の提案よりも選択される見込みがあり得る)、与えられた提案のサブカテゴリ(たとえば、フランス料理の提案が、メキシコ料理の提案よりも選択される見込みがあり得る)、与えられた提案が与えられた時間(たとえば、より最近の提案が、最近のではない提案よりも選択される見込みがあり得る)、ならびに/または与えられた提案のカテゴリおよび与えられた提案が与えられた時間(たとえば、3日前からの音楽の提案は与えられなくてよいが、3日前からの食事の提案は与えられてよい)に基づき得る。
【００３８】
いくつかの実装形態では、将来、ユーザによって働きかけられるべき、与えられた提案の内容パラメータについてのフィードバックを要請するプロンプトは、ユーザが実際に提案に働きかけたと判断したことに基づいて、自動アシスタント120によって与えられ得る。こうすることにより、ユーザを混乱させ得る、かつ/またはプロンプトを与える際に計算リソースを不必要に消費し得る、ユーザが対話したことがない内容パラメータについてのフィードバックを与えるようユーザが促される危険性を軽減することができる。いくつかの実装形態では、ユーザが提案に働きかけたと判断することは、プロンプトが与えられるダイアログセッションに先立つ、ダイアログセッションにおけるユーザと自動アシスタント120との間のダイアログ(たとえば、ユーザがそれを介して実際に提案に働きかけたダイアログ)に基づき得る。いくつかの実装形態では、ユーザが提案に働きかけたと判断することは、提案に働きかけるために自動アシスタント120を使うことから生成されるわけではない信号など、1つまたは複数の追加または代替信号に基づき得る。たとえば、自動アシスタント120が、訪れるべきコーヒーショップについての提案をユーザに与えると仮定する。コーヒーショップについてのフィードバックを要請するプロンプトが、将来のダイアログセッションにおいてユーザに与えられる前に、ユーザのモバイルクライアントデバイスからのロケーションデータ、ユーザに関連付けられたトランザクションデータ、および/または他の信号に基づいて、ユーザが実際にそのコーヒーショップを訪れたと、最初に判断され得る。
【００３９】
自動アシスタント120の自然言語プロセッサ122は、クライアントデバイス1061〜Nを介してユーザによって生成された自然言語入力を処理し、応答用内容エンジン130および/またはフィードバックエンジン140など、自動アシスタント120の1つまたは複数の他の構成要素による使用のために、注釈付き出力を生成する。たとえば、自然言語プロセッサ122は、クライアントデバイス1061の1つまたは複数のユーザインターフェース入力デバイスを介してユーザによって生成される自然言語自由形式入力を処理することができる。生成された注釈付き出力は、自然言語入力の1つまたは複数の注釈と、任意選択で、自然言語入力の言葉のうちの1つまたは複数(たとえば、すべて)とを含む。
【００４０】
いくつかの実装形態では、自然言語プロセッサ122は、自然言語入力中の様々なタイプの文法情報を識別し、注釈を付けるように構成される。たとえば、自然言語プロセッサ122は、言葉に、それらの文法的役割で注釈を付けるように構成された品詞タグ付け器を含み得る。たとえば、品詞タグ付け器は、各言葉を、その品詞、たとえば「名詞」、「動詞」、「形容詞」、「代名詞」などでタグ付けし得る。また、たとえば、いくつかの実装形態では、自然言語プロセッサ122は、追加および/または代替として、自然言語入力の中の言葉の間の構文的関係を判断するように構成された依存パーサを含み得る。たとえば、依存パーサは、どの言葉が他の言葉を修飾するか、文の主語および動詞など(たとえば、解析ツリー)を判断することができ、そのような依存の注釈を付けることができる。
【００４１】
いくつかの実装形態では、自然言語プロセッサ122は、追加および/または代替として、人々、組織、ロケーションなどへの参照など、1つまたは複数のセグメント中のエンティティ参照に注釈を付けるように構成されたエンティティタグ付け器を含み得る。エンティティタグ付け器は、高レベルの粒度で(たとえば、人々などのエンティティクラスへのすべての参照の識別を可能にするために)および/またはより低レベルの粒度で(たとえば、特定の人など、特定のエンティティへのすべての参照の識別を可能にするために)、エンティティへの参照に注釈を付けることができる。エンティティタグ付け器は、特定のエンティティを決定するのに、自然言語入力の内容に依拠してよく、かつ/または任意選択で、特定のエンティティを決定するのに、知識グラフまたは他のエンティティデータベース(たとえば、内容データベース152)と通信してよい。
【００４２】
いくつかの実装形態では、自然言語プロセッサ122は、追加および/または代替として、1つまたは複数の文脈的合図に基づいて、同じエンティティへの参照をグループ化、または「クラスタ化」するように構成された相互参照決定器を含み得る。たとえば、相互参照決定器は、「Asia Villageの炒め物が好き。それを注文して」という自然言語入力において、言葉「それ」を「Asia Village」に決定するのに使用され得る。
【００４３】
いくつかの実装形態では、自然言語プロセッサ122の1つまたは複数の構成要素は、自然言語プロセッサ122の1つまたは複数の他の構成要素からの注釈に依拠し得る。たとえば、いくつかの実装形態では、固有表現タグ付け器は、特定のエンティティへのすべての言及に注釈を付ける際に、相互参照決定器および/または依存パーサからの注釈に依拠し得る。また、たとえば、いくつかの実装形態では、相互参照決定器は、同じエンティティへの参照をクラスタ化する際に、依存パーサからの注釈に依拠し得る。いくつかの実装形態では、特定の自然言語入力を処理する際、自然言語プロセッサ122の1つまたは複数の構成要素は、特定の自然言語入力の他の、関連のある事前の入力および/または他の関連データを、1つまたは複数の注釈を判断するのに使うことができる。
【００４４】
上述したように、応答用内容エンジン130は、クライアントデバイス1061〜Nのうちの1つの、ユーザとのダイアログセッション中に与えるべき提案および/または他の内容を生成する際、1つまたは複数のリソースを使用する。応答用内容エンジン130は、アクションモジュール132、エンティティモジュール134、内容生成モジュール136、および属性モジュール138を含み得る。
【００４５】
応答用内容エンジン130のアクションモジュール132は、クライアントコンピューティングデバイス1061〜Nから受信された自然言語入力および/または自然言語プロセッサ122によって与えられた自然言語入力の注釈を使用して、自然言語入力に関連した少なくとも1つのアクションを判断する。いくつかの実装形態では、アクションモジュール132は、自然言語入力の中に含まれる1つまたは複数の言葉に基づいてアクションを判断し得る。たとえば、アクションモジュール132は、1つまたは複数のコンピュータ可読媒体中で、自然言語入力の中に含まれる1つまたは複数の言葉にアクションがマップされることに基づいてアクションを判断し得る。たとえば、「レストランの予約をする」というアクションが、「ブッキングして」、「予約して」、「予約」、「テーブルをおさえて」などのような1つまたは複数の言葉にマップされ得る。また、たとえば、「日々の報告をする」というアクションが、「今日の予定を教えて」、「今日は何があるの」、「おはよう」などのような1つまたは複数の言葉にマップされ得る。さらに別の事例として、「おしゃべりをする」というアクションが、「こんにちは」、「調子はどう」などのような1つまたは複数の言葉にマップされ得る。
【００４６】
いくつかの実装形態では、アクションモジュール132は、ダイアログセッションの自然言語入力に基づいてエンティティモジュール134によって判断された1つまたは複数の候補エンティティに少なくとも部分的に基づいて、アクションを判断し得る。たとえば、「ブッキングする」という自然言語入力と、「ブッキングする」が、「レストランの予約をする」、「ホテルの予約をする」、「約束をする」などのような複数の別々のアクションにマップされることとを仮定する。そのような状況において、アクションモジュール132は、エンティティモジュール134によって判断された候補エンティティに基づいて、アクションのうちのどれが正しいアクションであるかを判断し得る。たとえば、エンティティモジュール134が、複数のレストランのみを候補エンティティとして判断した場合、アクションモジュール132は、「レストランの予約をする」というアクションが正しいアクションであると判断し得る。
【００４７】
エンティティモジュール134は、ユーザと自動アシスタント120との間のダイアログセッション中にユーザインターフェース入力デバイスを介して1人または複数のユーザによって与えられた入力に基づいて、候補エンティティを判断する。エンティティモジュール134は、候補エンティティを判断する際に、および/またはそれらの候補エンティティを精製する際に、1つまたは複数のリソースを使用する。たとえば、エンティティモジュール134は、自然言語入力自体、自然言語プロセッサ122によって与えられる注釈、属性モジュール138によって与えられる属性、および/または内容データベース152の内容を使用することができる。
【００４８】
内容データベース152は、1つまたは複数の非一時的コンピュータ可読媒体上に設けることができ、複数のエンティティ、エンティティの各々のプロパティ、および任意選択でそれらのエンティティの間の関係を定義することができる。たとえば、内容データベース152は、特定のレストランの識別子と、ロケーション、料理のタイプ、提供可能な料理、営業時間、別名、予約を受け付けるかどうか、そのレストランの格付け、価格指示などのような、そのレストランの1つまたは複数のプロパティとを含み得る。内容データベース152は、追加または代替として、1つもしくは複数のエンティティおよび/または1つもしくは複数のアクションに各々が適用可能な複数のプロトコルを含み得る。たとえば、各プロトコルは、関連付けられたアクションを実施するための、および/または関連付けられた1つのエンティティ/複数のエンティティを用いて関連付けられたアクションを実施するための、1つまたは複数の必要な、および/または所望の内容パラメータを定義し得る。
【００４９】
内容生成モジュール136は、1人または複数のユーザとのダイアログに、関連付けられたクライアントデバイスを介して関与して、アクションを実施するための提案を生成し、かつ/または他の内容を生成する。内容生成モジュール136は任意選択で、内容を生成する際に1つまたは複数のリソースを使用する。たとえば、内容生成モジュール136は、ダイアログセッション中のユーザの現在および/または過去の自然言語入力、自然言語プロセッサ122によって与えられたその入力の注釈、属性モジュール138によって与えられた属性、エンティティモジュール134によって判断された1つもしくは複数のエンティティ、および/またはアクションモジュール132によって判断された1つもしくは複数のアクションを使用することができる。
【００５０】
内容生成モジュール136は、ダイアログセッションにおいて、複数の候補内容パラメータから選択された1つまたは複数の内容パラメータを含む内容を生成し、与える。内容生成モジュール136は、与えられた内容の選択された内容パラメータを、本明細書に記載するように、フィードバックプロンプトを生成する際に使用するために、フィードバックエンジン140にさらに与えることができる。
【００５１】
一例として、ダイアログセッションにおける与えられる入力は、「良いコーヒーショップへの行き方を教えて」であってよく、内容生成モジュール136は、1つまたは複数の要因に基づいて、複数の利用可能コーヒーショップから「良いコーヒーショップ」を(たとえば、アクションモジュール132からの候補アクションおよび/またはエンティティモジュール134からの候補エンティティに基づいて)最初に選択することによって、特定のコーヒーショップへの行き方を判断することができる。さらに、内容生成モジュール136は、1つまたは複数の要因に基づいて、複数の候補の行き方(たとえば、最短それとも最速の経路、高速道路を含むかそれとも高速道路を除くか)から選択することによって、行き方を判断することができる。内容生成モジュール136は任意選択で、特定のコーヒーショップおよび/または行き方を判断する際に、1つまたは複数の外部構成要素と通信することができる。内容生成モジュール136は、選択された内容パラメータをフィードバックエンジン140に与えればよい。たとえば、内容生成モジュール136は、選択された特定のコーヒーショップを示す内容パラメータを与えることができ、選択された行き方の1つまたは複数のパラメータを示す(たとえば、「最速経路」の行き方であることを示す)内容パラメータを与えることができる。
【００５２】
別の例として、与えられる入力は、「今日の予定を教えて」であってよく、内容生成モジュール136は、ユーザの1つもしくは複数のカレンダエントリ、ユーザ向けの地域の天気、ユーザに合わせた1つもしくは複数のニュース記事、および/または入力に応答して与えるための他の内容を選択すればよい。内容生成モジュール136は、内容のタイプ(たとえば、「カレンダエントリ」、「ニュースの話題」)、内容の個々のおよび/または全体サイズ(たとえば、時間の長さ)などのような、様々な要因に基づいて内容を選択し得る。内容生成モジュール136は、選択された内容パラメータをフィードバックエンジン140に与えればよい。たとえば、内容生成モジュール136は、「カレンダエントリ」および「ニュース記事」がユーザに与えられたことを示す内容パラメータを与えることができ、かつ/またはダイアログセッションにおける内容全体の可聴提示の長さが「2分」だったことを示す内容パラメータを与えることができる。
【００５３】
属性モジュール138は、自動アシスタント120とのダイアログセッションに関与するユーザに適用可能な1つまたは複数の属性を判断し、それらの属性を、ダイアログセッションにおいてユーザに与えるべき内容を生成する際に使用するために、応答用内容エンジン130の1つまたは複数の他の構成要素に与える。属性は、応答用内容エンジン130の他の構成要素によって、たとえば、アクション用の特定のエンティティを判断する際に、アクションについての1つもしくは複数の基準を判断する際に、および/または1人もしくは複数のユーザとのダイアログ用の出力を生成する際に使用され得る。属性モジュール138は、ユーザにとって個人的である、および/またはユーザを含むユーザのグループに適用可能である1つまたは複数の属性を記憶することができる属性データベース156と通信する。本明細書に記載するように、属性データベース156の様々な属性の値は、フィードバックプロンプトに応答して1人または複数のユーザによって与えられる入力に基づいて影響を及ぼされ得る。たとえば、属性データベース156の属性は、特定のユーザに対する特定のレストランの望ましさを示す、その特定のレストランに関連付けられた値を含み得る。値は、特定のレストランに向けられたフィードバックプロンプトに応答して特定のユーザによって与えられるとともにダイアログセッションにおいて特定のユーザに与えられる入力に基づき得る。属性データベース156は、追加または代替として、ユーザにとって個人的である他の属性を含み得るが、その値は、フィードバックプロンプトへの応答によって必ずしも影響を及ぼされるわけではない。たとえば、そのような属性は、ユーザの現在のロケーション(たとえば、GPSもしくは他のロケーションデータに基づく)、ユーザの時間制約(たとえば、ユーザの電子カレンダに基づく)、および/または複数のインターネットサービスにわたるユーザ活動に基づくユーザの属性を含み得る。
【００５４】
上述のように、フィードバックエンジン140は、応答用内容エンジン130によって選択されるとともにダイアログセッションにおいてユーザに与えられた様々な内容パラメータを記憶し、内容パラメータのうちの1つまたは複数に関するフィードバックをユーザに対して要請するプロンプトを生成する。フィードバックエンジン140は、提供内容パラメータモジュール142、プロンプト生成モジュール144、およびフィードバックモジュール146を含み得る。
【００５５】
提供内容パラメータモジュール142は、提供内容パラメータデータベース154に、ユーザとのダイアログセッションにおいてユーザへの表示のために与えられる内容の内容パラメータを、ユーザと関連付けて記憶する。たとえば、「良いコーヒーショップはどれ?」というダイアログセッションにおいて与えられた入力に対して、内容生成モジュール136は、複数の利用可能コーヒーショップから「良いコーヒーショップ」を選択し、選択された「良いコーヒーショップ」を示す応答用出力を与え、選択された「良いコーヒーショップ」を示す内容パラメータをフィードバックエンジン140に与え得る。提供内容パラメータモジュール142は、与えられた内容パラメータを、ユーザと関連付けて、提供内容パラメータデータベース154に記憶すればよい。
【００５６】
プロンプト生成モジュール144は、提供内容パラメータデータベース154中にユーザと関連付けて記憶されている内容パラメータのうちの1つまたは複数に関するフィードバックをユーザに対して要請するフィードバックプロンプトを生成する。いくつかの実装形態では、プロンプト生成モジュール144は、フィードバックプロンプトがいつおよび/またはどのようにユーザに与えられるべきかをさらに判断する。たとえば、プロンプト生成モジュール144は、ダイアログセッションが、フィードバックプロンプトの焦点である内容パラメータがユーザに与えられたダイアログセッションとは別個であること、ダイアログセッションのユーザ入力および/もしくは応答用出力が1つもしくは複数の基準を満足することに基づいて、ユーザが、内容パラメータが基づく提案に働きかけたことを検証したことに基づいて、ならびに/または他の基準に基づいて、ダイアログセッションの一部として、ユーザへの表示のためにフィードバックプロンプトを与えると判断し得る。プロンプト生成モジュール144は、応答用内容エンジン130と連携して、応答用内容エンジン130によって管理されるいくつかのダイアログセッションにおいて、生成されたフィードバックプロンプトに介入することができる。いくつかの実装形態では、プロンプト生成モジュール144および/またはフィードバックエンジン140の他の構成要素は、応答用内容エンジン130中に含まれ得る。
【００５７】
いくつかの実装形態では、ユーザに与えられた複数の別々の提案からの内容パラメータが、所与のダイアログセッションにおいてユーザに与えるべきプロンプトを生成するために、プロンプト生成モジュール144にとって利用可能であり得る。それらの実装形態のうちのいくつかでは、プロンプト生成モジュール144は、1つまたは複数の基準に基づいて、それらの複数の提案のサブセット(たとえば、1つ)を、所与のプロンプト中で与えるために選択すればよい。
【００５８】
フィードバックモジュール146は、プロンプトに応答してユーザによって与えられたフィードバックを使用して、ユーザに、および/または他のユーザに、将来のダイアログセッションにおいて自動アシスタント120によって後で与えられる将来の提案および/または他の内容に影響を及ぼす。いくつかの実装形態では、フィードバックモジュール146は、フィードバックの1つまたは複数のインスタンスを使用して、属性データベース156の1つまたは複数の属性に関連付けられた値を調節する。調節された値は、ユーザにとって個人的および/またはユーザのグループ(たとえば、すべてのユーザ)に適用可能であり得る。いくつかの実装形態では、フィードバックモジュール146は、フィードバックの1つまたは複数のインスタンスが、関連付けられた属性に対して有する影響を判断する際に、自然言語プロセッサ122によって与えられた注釈を使用することができる。たとえば、自然言語プロセッサ122は、感情分類器を含むことができ、与えられるフィードバックの感情を示す注釈を与えることができ、フィードバックモジュール146は、示された感情を、値を調節するのに使用することができる。たとえば、「コーヒーショップAはどうでしたか」というフィードバックプロンプトおよびユーザが与えた「良かったよ」というフィードバックに対して、フィードバックモジュール146は、「良かったよ」が、非常に肯定的なフィードバックに関連付けられていることを示す注釈を受け取り得る。そのような注釈に基づいて、フィードバックモジュール146は、「コーヒーショップA」に関連付けられた属性の値を昇格することができる。
【００５９】
ここで図2A、図2B1、図2B2、図2B3、および図2B4を参照して、本明細書で開示する様々な実装形態の例について記載する。図2Aは、自動アシスタントが、ユーザに、複数の候補内容パラメータから選択された内容パラメータをもつ内容を与えるダイアログセッションの例を示す。図2B1〜図2B4は各々、別個のダイアログセッションにおいてユーザにフィードバックプロンプトを与える異なる例を示し、ここでフィードバックプロンプトは、選択された内容パラメータに基づく。
【００６０】
図2Aは、1つまたは複数のマイクロフォンおよび1つまたは複数のスピーカを含むコンピューティングデバイス210を示し、本明細書に記載する実装形態に従って、マイクロフォンおよびスピーカを介して、コンピューティングデバイス210のユーザ101と自動アシスタント120との間で起こり得るダイアログセッションの例を示す。自動アシスタント120の1つまたは複数の態様が、コンピューティングデバイス210上および/またはコンピューティングデバイス210とネットワーク通信する1つもしくは複数のコンピューティングデバイス上で実装され得る。
【００６１】
図2Aにおいて、ユーザは、ユーザと自動アシスタント120との間のダイアログセッションを開始するために、「午後6時に夕食を注文してくれる?」という自然言語入力280Aを与える。自然言語入力280Aに応答して、自動アシスタント120は、「わかりました、どんな食事がいいですか」という自然言語出力282Aを与える。ユーザは次いで、ユーザがメキシコ料理が好きであることを示す自然言語入力280Bを与える。自動アシスタント120は次いで、ユーザが自動アシスタントに特定のレストランを選んでほしいかどうかをユーザに尋ねる自然言語出力282Bを与え、それに対して、ユーザは、自然言語入力280Cで肯定的に応答する。
【００６２】
自動アシスタント120は次いで、提案である自然言語出力282Cを与える。自然言語出力282Cの提案は、複数の候補「メキシコ料理」レストランから選択された特定のレストラン(Cafe Lupe)を含み、その特定のレストランにおいて提供可能な複数の候補料理から選択された特定の料理(「ブリトー」)をさらに含む。
【００６３】
ユーザは次いで、自動アシスタント120に、ブリトーおよびフライドポテトをいくらかCafe Lupeに注文するよう命じる自然言語入力280Dを与える。自動アシスタント120は次いで、入力280Dのユーザの要求が自動アシスタント120によって(任意選択で、1つまたは複数の追加外部構成要素を介して)満たされたことを確認するための自然言語出力282Dを与える。
【００６４】
図2Aのダイアログセッションにおいて、自動アシスタント120は、複数の候補オプションから、ロケーション「Cafe Lupe」および料理タイプ「ブリトー」を選択しており、それらの選択を、ダイアログセッションの一部としてユーザに提示する。さらに、自動アシスタント120は、ユーザが同じダイアログセッションにおいて(Cafe Lupeにブリトーを注文することによって)提案に働きかけたので、ユーザが提案に働きかけたと判断してよい。ロケーションおよび料理タイプを勧めたことに基づいて、ならびに任意選択で、提案されたロケーションおよび料理タイプにユーザが働きかけたと判断したことに基づいて、自動アシスタント120は、提案されたロケーションおよび料理タイプを示す内容パラメータを記憶し得る。たとえば、自動アシスタント120は、提供内容パラメータデータベース154中に、ユーザと関連付けて、それらの選択および提供された内容パラメータの指示を記憶し得る。
【００６５】
図2B1は、図2Aのダイアログセッションに応答して記憶された「Cafe Lupe」内容パラメータに基づいて、ユーザにフィードバックプロンプトを与える一例を挙げる。図2B1において、ユーザは、ユーザと自動アシスタント120との間のダイアログセッションを開始するために、「今日の予定を教えて」という自然言語入力280A1を与える。図2B1のダイアログセッションは、図2Aのものとは別個である。たとえば、図2B1のダイアログセッションは、図2Aのダイアログセッションからの少なくとも閾時間量の経過に基づいて、および/または他の基準に基づいて、別個のダイアログセッションであると判断され得る。
【００６６】
自動アシスタント120は、地域の天気予報および交通情報とともに、ユーザのカレンダの要約を含む応答型自然言語出力282A1で、自然言語入力280A1に応答する。入力280A1および出力282A1が図2Aのダイアログセッションの内容とは無関係であっても、自動アシスタント120は次いで、「Cafe Lupe」内容パラメータについてのフィードバックを要請するフィードバックプロンプト282B1を与える。本明細書に記載するように、自動アシスタント120は、図2B1のダイアログセッションが図2Aのものとは別個であること、入力280A1および/もしくは出力282A1が、「ルーチン」と見なされるなど、1つもしくは複数の基準を満足すること、ならびに/または他の基準など、様々な基準に基づいて、フィードバックプロンプト282B1を与え得る。
【００６７】
ユーザは、フィードバックプロンプト282B1に肯定的な自然言語入力280B1で応答し、自動アシスタントは、確認用自然言語出力282C1で返答する。自動アシスタント120は、肯定的な自然言語入力280B1を、「Cafe Lupe」内容パラメータに関連付けられた値に肯定的に影響を及ぼすのに使用し得る。たとえば、自動アシスタント120は、「Cafe Lupe」および/またはCafe Lupeと同様のレストランが、ユーザとの将来のダイアログセッションにおいて、および/または他のユーザとの将来のダイアログセッションにおいて提供される見込みを増すように値を調節し得る。
【００６８】
図2B2は、図2Aのダイアログセッションに応答して記憶された「ブリトー」内容パラメータに基づいて、ユーザにフィードバックプロンプトを与える例を挙げる。図2B2のダイアログセッションは、図2B1のものの代わりに、またはそれに加えて起こるものであってよい。図2B2において、ユーザは、ユーザと自動アシスタント120との間のダイアログセッションを開始するために、「おはよう」という自然言語入力280A2を与える。図2B2のダイアログセッションは、図2Bのものとは別個である。たとえば、図2B1のダイアログセッションは、図2Aのダイアログセッションからの少なくとも閾時間量の経過に基づいて、および/または他の基準に基づいて、別個のダイアログセッションであると判断され得る。
【００６９】
自動アシスタント120は、「おはよう、ジョン」という応答用内容を含む応答型自然言語出力282A2で、自然言語入力280A2に応答する。入力280A2が図2Aのダイアログセッションの内容とは無関係であっても、自然言語出力282A2は、「昨夜のCafe Lupeのブリトーはどうでしたか?」というフィードバックプロンプトも含む。本明細書に記載するように、自動アシスタント120は、様々な基準に基づいて、出力282A2に含まれるフィードバックプロンプトを与え得る。
【００７０】
ユーザは、出力282A2に、肯定的な自然言語入力280B2で応答する。自動アシスタントは、確認用文言「良かったです」と、Cafe Lupeでの別の人気料理についての提案とを含む自然言語出力282B2で返答する。自動アシスタント120は、肯定的な自然言語入力280B2を、「ブリトー」内容パラメータに関連付けられた値に肯定的に影響を及ぼすのに使用し得る。たとえば、自動アシスタント120は、「ブリトー」が、ユーザとの将来のダイアログセッションにおいて、および/または他のユーザとの将来のダイアログセッションにおいて、Cafe Lupeでの、および/または他のレストランでの料理として勧められる見込みを増すように値を調節し得る。
【００７１】
図2B3は、図2Aのダイアログセッションに応答して記憶された「ブリトー」内容パラメータに基づいて、ユーザにフィードバックプロンプトを与える別の例を挙げる。図2B3のダイアログセッションは、図2B1および/または図2B2のものの代わりに、またはそれに加えて起こるものであってよい。図2B3において、ユーザは、ユーザと自動アシスタント120との間のダイアログセッションを開始するために、「何か音楽をかけて」という自然言語入力280A3を与える。図2B2のダイアログセッションは、図2Aのものとは別個である。
【００７２】
自動アシスタント120は、自然言語入力280A3に、応答用の歌(音符で示す)を含む応答用出力282A3で応答する。入力280A3が図2Aのダイアログセッションの内容とは無関係であっても、出力282A3は、「ところで、昨夜のCafe Lupeのブリトーはどうでしたか?」というフィードバックプロンプトも含む。フィードバックプロンプトは、応答用の歌の全部または一部を流した後で与えられ得る。本明細書に記載するように、自動アシスタント120は、様々な基準に基づいて、出力282A3に含まれるフィードバックプロンプトを与え得る。
【００７３】
ユーザは、出力282A3に、肯定的な自然言語入力280B3で応答する。自動アシスタントは、確認用文言「それは良かったです」を含む出力282B3で返答し、次いで、応答用の歌または追加の歌を流し続ける。自動アシスタント120は、肯定的な自然言語入力280B3を、「ブリトー」内容パラメータに関連付けられた値に肯定的に影響を及ぼすのに使用し得る。
【００７４】
図2B4は、図2Aのダイアログセッションに応答して記憶された「Cafe Lupe」内容パラメータに基づいて、ユーザにフィードバックプロンプトを与える別の例を挙げる。図2B4のダイアログセッションは、図2B1、図2B2、および/または図2B3のものの代わりに、またはそれに加えて起こるものであってよい。
【００７５】
図2B4は、図2Aのユーザ101の別のクライアントデバイス310およびクライアントデバイス310の表示画面340を示す。クライアントデバイス310は、自動アシスタント120および/またはその別のインスタンス(内容パラメータデータベース154中の、ユーザ101のエントリへのアクセスを有する)を含み、かつ/またはそれらと通信し得る。表示画面340は、ユーザが仮想キーボードによりユーザインターフェース入力を生成するために選択し得る返答インターフェース要素388と、ユーザがマイクロフォンによりユーザインターフェース入力を生成するために選択し得る音声返答インターフェース要素389とを含む。いくつかの実装形態では、ユーザは、音声返答インターフェース要素389を選択せずに、マイクロフォンによりユーザインターフェース入力を生成し得る。たとえば、ダイアログセッション中、マイクロフォンによる可聴ユーザインターフェース入力についてのアクティブな監視が、ユーザが音声返答インターフェース要素389を選択する必要をなくすために起こり得る。それらの実装形態のうちのいくつかでは、および/または他の実装形態では、音声返答インターフェース要素389は省かれてよい。その上、いくつかの実装形態では、返答インターフェース要素388は、追加および/または代替として省かれてよい(たとえば、ユーザは、可聴ユーザインターフェース入力のみを与えることができる)。表示画面340は、クライアントデバイス310に1つまたは複数のアクションを実施させるためにユーザによって対話され得るシステムインターフェース要素381、382、383も含む。
【００７６】
図2B4において、ユーザは、ユーザと自動アシスタント120との間のダイアログセッションを開始するために、「明日はどうなりそうかな」という自然言語入力280A4を与える。図2B2のダイアログセッションは、図2Aのものとは別個である。いくつかの実装形態では、自動アシスタント120は、セッションが別個のクライアントデバイスを介して起きたことに基づいて、別個のダイアログセッションであると判断し得る。
【００７７】
自動アシスタント120は、自然言語入力280A4に、ユーザのカレンダの要約を含む応答用出力282A4で応答する。入力280A4および出力282A4が図2Aのダイアログセッションの内容とは無関係であっても、自動アシスタントは次いで、「ところで、Cafe Lupeは気に入りましたか?」というフィードバックプロンプト282B4を与える。ユーザは、フィードバックプロンプト282B4に、肯定的な自然言語入力280B4で応答する。いくつかの実装形態では、自然言語入力280B4は自由形式入力であってよい。いくつかの他の実装形態では、自動アシスタント120は、ダイアログにおいて、ユーザによる選択のための複数のオプションを提示し得る。たとえば、自動アシスタント120は、フィードバックプロンプト282B4との組み合わせで、「気に入った」、「気に入らなかった」、および「OKだった」という複数のオプションを含むインターフェースを与えることができ、ユーザは、対応する応答型入力を与えるために、オプションのうちの1つを選択すればよい。
【００７８】
図2B1〜図2B4は、ユーザが肯定的なフィードバックを与え、結果として、対応する内容パラメータを昇格する例を与える。ただし、ユーザは代替として、対応する内容パラメータを降格する否定的フィードバックを与え得ることが理解されよう。
【００７９】
ここで図3Aおよび図3Bを参照して、本明細書で開示する様々な実装形態の追加例について記載する。図3Aは、自動アシスタントが、ユーザに、複数の候補内容パラメータから選択された内容パラメータをもつ内容を与えるダイアログセッションの例を示す。図3Bは、別個のダイアログセッションにおいてユーザにフィードバックプロンプトを与える例を示し、ここでフィードバックプロンプトは、選択された内容パラメータに基づく。
【００８０】
図3Aは、図2B4に示したのと同じクライアントデバイス310を示す。図3Aでは、ユーザ(「あなた」)と、追加ユーザ(「トム」)と、自動アシスタント120(「自動アシスタント」)との間のダイアログセッションが行われている。ユーザは、追加ユーザに向けられた、「午前中にコーヒーをどう?」という自然言語入力380A1を与える。追加ユーザは、「もちろん」という応答型自然言語入力381A1を与える。
【００８１】
ユーザは次いで、「@AutomatedAssistant」を入力380A2に含めることによって、自動アシスタント120をダイアログセッションに呼び出し、自動アシスタント120に、「良いコーヒーショップを選んで」と要求する。それに応答して、自動アシスタント120は、高く評価されているとともにユーザおよび追加ユーザに近い「Hypothetical Roasters」についての提案を含む出力382A1を与える。出力382A1は、ユーザ(クライアントデバイス310を介して)と追加ユーザ(対応するクライアントデバイスを介して)の両方への表示のために与えられ得る。自動アシスタント120は、ロケーション「Hypothetical Roasters」を複数の候補オプションから選択する。さらに、自動アシスタント120は、ユーザに関連付けられたさらなる信号(たとえば、ユーザが「Hypothetical Roasters」までの案内要求を発行した、ユーザのロケーションデータが「Hypothetical Roasters」への訪問を示す、および/または他の信号)に基づいて、ユーザが提案に働きかけたと判断し得る。ロケーションを勧めたことに基づいて、および任意選択で、ユーザが提案されたロケーションに働きかけたと判断したことに基づいて、自動アシスタント120は、ユーザと関連付けて、提案されたロケーションを示す内容パラメータを記憶し得る。たとえば、自動アシスタント120は、提供内容パラメータデータベース154中に、ユーザと関連付けて、それらの選択および提供された内容パラメータの指示を記憶し得る。自動アシスタント120は、追加または代替として、追加ユーザと関連付けて、提案されたロケーションを示す内容パラメータを(任意選択で、追加ユーザが提案されたロケーションに働きかけたと判断した後で)記憶し得る。
【００８２】
図3Bは、図3Aのものとは別個のダイアログセッションにおけるユーザ101に、図3Aの選択された内容パラメータに基づくフィードバックプロンプトを与える例を示す。図3Bにおいて、ユーザ101は、「帰宅経路の様子は?」という自然言語入力380B1を、別個のコンピューティングデバイス210に与える。図3Bのダイアログセッションは、図3Aのものとは別個である。たとえば、図3Bのダイアログセッションは、別個のコンピューティングデバイス210を介して起こったことに基づいて、別個のダイアログセッションであると判断され得る。
【００８３】
自動アシスタント120は、自然言語入力380B1に、現在の交通状況の概要を含む応答型自然言語出力382B1で応答する。入力380B1および出力382B1が図3Aのダイアログセッションの内容とは無関係であっても、自動アシスタント120は次いで、「Hypothetical Roasters」内容パラメータについてのフィードバックを要請するフィードバックプロンプト382B2を与える。本明細書に記載するように、自動アシスタント120は、図3Bのダイアログセッションが図3Aのものとは別個であること、入力380B1および/もしくは出力382B1が、「ルーチン」と見なされるなど、1つもしくは複数の基準を満足すること、ならびに/または他の基準など、様々な基準に基づいて、フィードバックプロンプト382B2を与え得る。
【００８４】
ユーザは、出力382B1に、否定的な自然言語入力380B2で応答する。自動アシスタントは、ユーザが「Hypothetical Roasters」について気に入らなかった何か特定のものがあるかどうかについてのフィードバックを要請するさらなるフィードバックプロンプト382B3を与える。ユーザは、出力382B3に、「Hypothetical Roasters」が混雑しすぎだったことを特定するさらなる自然言語入力380B3で応答する。自動アシスタント120は、否定的な自然言語入力380B2を、「Hypothetical Roasters」内容パラメータに関連付けられた値に否定的に影響を及ぼすのに使用し得る。自動アシスタント120は、追加または代替として、自然言語入力380B3を、混雑レベルを示す内容パラメータに関連付けられた値に影響を及ぼすのに使用し得る。たとえば、自動アシスタント120は、1つまたは複数の時間において「大混雑」に関連付けられたレストランが、それらの1つまたは複数の時間に勧められる見込みを、ユーザとの将来のダイアログセッションにおいて、および/または他のユーザとの将来のダイアログセッションにおいて低下させるように値を調節し得る。
【００８５】
図3Bは、クライアントデバイス310のユーザ101との例を示す。ただし、自動アシスタント120の別個のインスタンスが、追加および/または代替として、図3Aの追加ユーザ(「トム」)に、選択された内容パラメータが追加ユーザと関連付けて提供内容パラメータデータベース154に記憶されていることに基づいて、追加ユーザのクライアントデバイスのうちの1つを介してフィードバックプロンプトを与える。
【００８６】
様々な図において与えられる例は、ロケーション提案に焦点を当てているが、本明細書に記載する技法は、他のタイプの提案および/または他の内容用に実装され得る。一例として、「何かブルーグラスをかけて」というユーザ入力に応答して、自動アシスタント120は、応答して流すためのブルーグラスアルバムAを選択し得る。自動アシスタント120は次いで、将来のダイアログセッションにおいて、「ブルーグラスアルバムAはどうでしたか?」というプロンプトを与え得る。別の例として、「現在のニュース」というユーザ入力に応答して、自動アシスタント120は、応答して与えるための現在のニュースを、ソースAから選択し得る。自動アシスタント120は次いで、「ニュースのソースAは良かったですか、それとも別のソースがいいですか?」などのプロンプトを、将来のダイアログにおいて与え得る。別の例として、「現在のニュース」というユーザ入力に応答して、自動アシスタント120は、応答して与えるための5つのニュース記事を選択し得る。自動アシスタント120は次いで、「さっき与えたニュース記事の数はどうでしたか、もっと多いか少ない方がいいですか?」などのプロンプトを、将来のダイアログセッションにおいて与え得る。さらに別の例として、「コーヒーショップまで案内して」というユーザ入力に応答して、自動アシスタント120は、最も近いコーヒーショップを選択し、そのコーヒーショップまでの行き方を与え得る。自動アシスタント120は次いで、「昨日、最も近いコーヒーショップまでの行き方を教えました。今後は、少し離れていてももっと評価の高いコーヒーショップの方がいいですか?」などのプロンプトを、次の日にダイアログセッションにおいて与え得る。
【００８７】
図4は、本明細書で開示する実装形態による例示的方法400を示すフローチャートである。便宜上、フローチャートの動作は、動作を実施するシステムを参照して記載される。このシステムは、自動アシスタント120の1つまたは複数の構成要素など、様々なコンピュータシステムの様々な構成要素を含み得る。その上、方法400の動作は特定の順序で示されているが、これは限定的であることは意図していない。1つまたは複数の動作が、並べ替えられ、省かれ、または追加されてよい。
【００８８】
ブロック452において、システムは、ダイアログセッション中にユーザによって与えられたユーザインターフェース入力に基づく自然言語入力を受信する。
【００８９】
ブロック454において、システムは、自然言語入力に応答するとともに、複数の候補内容パラメータから選択された少なくとも1つの内容パラメータを含む内容を生成する。
【００９０】
ブロック456において、システムは、内容を、ダイアログセッションの一部として、表示のためにユーザに与え、内容の選択された内容パラメータを記憶する。
【００９１】
ブロック458において、システムは、ユーザを含む追加ダイアログセッションを識別する。いくつかの実装形態では、ブロック458はブロック460を含んでよく、ここでシステムは、追加ダイアログセッションの一部として、追加内容を、ユーザへの表示のために生成し、与える。
【００９２】
ブロック462において、システムは、ユーザへの表示のために、追加ダイアログセッションの一部として、記憶されている選択された内容パラメータについてのフィードバックを要請するプロンプトを与える。
【００９３】
ブロック464において、システムは、プロンプトに応答するとともに、ユーザによって与えられたユーザインターフェース入力に基づく追加入力を、追加ダイアログセッション中に受信する。
【００９４】
ブロック466において、システムは、選択された内容パラメータと関連付けて記憶された値に影響を及ぼすのに、追加入力を使う。
【００９５】
図5は、本明細書に記載する技法の1つまたは複数の態様を実施するために任意選択で使用され得る例示的コンピューティングデバイス510のブロック図である。いくつかの実装形態では、クライアントコンピューティングデバイス、自動アシスタント120、および/または他の構成要素のうちの1つまたは複数が、例示的コンピューティングデバイス510の1つまたは複数の構成要素を含み得る。
【００９６】
コンピューティングデバイス510は通常、バスサブシステム512を介していくつかの周辺デバイスと通信する少なくとも1つのプロセッサ514を含む。これらの周辺デバイスは、たとえば、メモリサブシステム525およびファイル記憶サブシステム526を含む記憶サブシステム524と、ユーザインターフェース出力デバイス520と、ユーザインターフェース入力デバイス522と、ネットワークインターフェースサブシステム516とを含み得る。入力および出力デバイスは、コンピューティングデバイス510とのユーザ対話を可能にする。ネットワークインターフェースサブシステム516は、外側ネットワークへのインターフェースを提供し、他のコンピューティングデバイス中の対応するインターフェースデバイスに結合される。
【００９７】
ユーザインターフェース入力デバイス522は、キーボード、マウス、トラックボールなどのポインティングデバイス、タッチパッド、もしくはグラフィックスタブレット、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システム、マイクロフォンなどのオーディオ入力デバイス、および/または他のタイプの入力デバイスを含み得る。概して、「入力デバイス」という用語の使用は、すべての可能なタイプのデバイスと、コンピューティングデバイス510中に、または通信ネットワーク上に情報を入力する方法とを含むことを意図している。
【００９８】
ユーザインターフェース出力デバイス520は、ディスプレイサブシステム、プリンタ、ファックスマシン、またはオーディオ出力デバイスなどの非視覚的ディスプレイを含み得る。ディスプレイサブシステムは、ブラウン管(CRT)、液晶ディスプレイ(LCD)などのフラットパネルデバイス、投影デバイス、または可視画像を作成するための何らかの他の機構を含み得る。ディスプレイサブシステムは、オーディオ出力デバイスを介するなどして、非視覚的ディスプレイも提供し得る。概して、「出力デバイス」という用語の使用は、すべての可能なタイプのデバイスと、コンピューティングデバイス510からユーザに、または別の機械もしくはコンピューティングデバイスに情報を出力する方法とを含むことを意図している。
【００９９】
記憶サブシステム524は、本明細書に記載するモジュールの一部または全部の、機能性を提供するプログラミングおよびデータ構造体を記憶する。たとえば、記憶サブシステム524は、図4の方法の選択された態様を実施するための論理を含み得る。
【０１００】
これらのソフトウェアモジュールは概して、プロセッサ514によって単独で、または他のプロセッサとの組合せで実行される。記憶サブシステム524において使われるメモリ525は、プログラム実行中の命令およびデータの記憶のためのメインランダムアクセスメモリ(RAM)530と、固定命令が記憶される読出し専用メモリ(ROM)532とを含むいくつかのメモリを含み得る。ファイル記憶サブシステム526が、プログラムおよびデータファイルのための永続記憶をもたらすことができ、ハードディスクドライブ、フロッピーディスクドライブを、関連付けられた取り外し可能媒体、CD-ROMドライブ、光ドライブ、または取り外し可能メディアカートリッジとともに含み得る。いくつかの実装形態の機能性を実装するモジュールは、ファイル記憶サブシステム526によって記憶サブシステム524に、またはプロセッサ514によってアクセス可能な他の機械に記憶され得る。
【０１０１】
バスサブシステム512は、コンピューティングデバイス510の様々な構成要素およびサブシステムを、意図したように互いと通信させるための機構を提供する。バスサブシステム512は、単一のバスとして概略的に示されているが、バスサブシステムの代替実装形態は複数のバスを使うことができる。
【０１０２】
コンピューティングデバイス510は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、またはどの他のデータ処理システムもしくはコンピューティングデバイスを含む様々なタイプであってもよい。コンピュータおよびネットワークの絶えず変わる性質により、図5に示すコンピューティングデバイス510の記述は、いくつかの実装形態を示す目的のための具体例としてのみ意図している。コンピューティングデバイス510の多くの他の構成は、図5に示すコンピューティングデバイスよりも多いか、またはそれよりも少ない構成要素を有することが可能である。
【０１０３】
本明細書で論じるいくつかの実装形態が、ユーザについての個人情報(たとえば、他の電子通信から抽出されるユーザデータ、ユーザのソーシャルネットワークについての情報、ユーザのロケーション、ユーザの時間、ユーザの生体情報、ならびにユーザの活動および人口統計情報)を収集するか、または使い得る状況では、ユーザは、情報が収集されるかどうか、個人情報が記憶されるかどうか、個人情報が使われるかどうか、および情報がユーザについてどのように収集され、記憶され、使われるかを制御するための1つまたは複数の機会を与えられる。つまり、本明細書で論じるシステムおよび方法は、関連ユーザからそうするための明示的認可を受信したときのみ、ユーザ個人情報を収集し、記憶し、かつ/または使う。たとえば、ユーザは、プログラムまたは特徴が、その特定のユーザまたはプログラムもしくは特徴に関連する他のユーザについてのユーザ情報を収集するかどうかに対する制御を与えられる。個人情報が収集されるべき各ユーザには、そのユーザに適した情報集合体に対する制御を可能にするための、情報が収集されるかどうかに関する、および情報のどの部分が収集されるべきかに関する許可または認可を与えるための、1つまたは複数のオプションが提示される。たとえば、ユーザには、1つまたは複数のそのような制御オプションが通信ネットワークを介して与えられ得る。さらに、特定のデータが、記憶され、または使われる前に、個人的に識別可能な情報が削除されるように1つまたは複数のやり方で扱われ得る。一例として、ユーザのアイデンティティが、個人を識別可能な情報がどれも判断することができないように扱われ得る。別の例として、ユーザの具体的なロケーションを判断することができないように、ユーザの地理的ロケーションが、より大きい領域に一般化され得る。
【０１０４】
いくつかの実装形態を、本明細書に記載し、示したが、機能を実施し、かつ/または本明細書に記載する結果および/もしくは利点のうちの1つもしくは複数を取得するための様々な他の手段および/または構造が使用されてよく、そのような変更および/または修正の各々は、本明細書に記載する実装形態の範囲内であると見なされる。より全般的には、本明細書に記載するすべてのパラメータ、寸法、材料、および構成は、例示的であることを意図しており、実際のパラメータ、寸法、材料、および/または構成は、本教示が使われる具体的な1つのアプリケーションまたは複数のアプリケーションに依存する。ルーチン実験のみを使って、本明細書に記載する具体的な実装形態に対する多くの等価物を、当業者は理解し、または確かめることができよう。したがって、上記の実装形態は例示の目的でのみ提示されていること、ならびに添付の請求項およびその等価物の範囲内において、具体的に記載し、特許請求するのとは違うように実装形態が実践され得ることが理解されよう。本開示の実装形態は、本明細書に記載する各個々の特徴、システム、物品、材料、キット、および/または方法を対象とする。さらに、2つ以上のそのような特徴、システム、物品、材料、キット、および/または方法のどの組合せも、そのような特徴、システム、物品、材料、キット、および/または方法が互いに矛盾しない場合は、本開示の範囲に含まれる。
【符号の説明】
【０１０５】
106  クライアントコンピューティングデバイス、クライアントデバイス
107  メッセージ交換クライアント
120  自動アシスタント
122  自然言語プロセッサ
130  応答用内容エンジン
132  アクションモジュール
134  エンティティモジュール
136  内容生成モジュール
138  属性モジュール
140  フィードバックエンジン
142  提供内容パラメータモジュール
144  プロンプト生成モジュール
146  フィードバックモジュール
152  内容データベース
154  提供内容パラメータデータベース、内容パラメータデータベース
156  属性データベース
210  コンピューティングデバイス
310  クライアントデバイス
381  システムインターフェース要素
382  システムインターフェース要素
383  システムインターフェース要素
388  返答インターフェース要素
389  音声返答インターフェース要素
510  コンピューティングデバイス
512  バスサブシステム
514  プロセッサ
516  ネットワークインターフェースサブシステム
520  ユーザインターフェース出力デバイス
522  ユーザインターフェース入力デバイス
524  記憶サブシステム
525  メモリサブシステム、メモリ
526  ファイル記憶サブシステム
530  メインランダムアクセスメモリ(RAM)
532  読出し専用メモリ(ROM)
【図１】
2019537802.tif 000003
【図２Ａ】
2019537802.tif 000004
【図２Ｂ１】
2019537802.tif 000005
【図２Ｂ２】
2019537802.tif 000006
【図２Ｂ３】
2019537802.tif 000007
【図２Ｂ４】
2019537802.tif 000008
【図３Ａ】
2019537802.tif 000009
【図３Ｂ】
2019537802.tif 000010
【図４】
2019537802.tif 000011
【図５】
2019537802.tif 000012
【手続補正書】
【提出日】令和1年7月19日(2019.7.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
1つまたは複数のプロセッサによって実行される方法であって、
ユーザと、前記ユーザの1つまたは複数のクライアントコンピューティングデバイスから離れた1つまたは複数のプロセッサによって実装される自動アシスタントとの間のダイアログセッションの一部として、
前記ユーザによって与えられたユーザインターフェース入力に基づく自然言語入力を、前記1つまたは複数のクライアントコンピューティングデバイスのユーザインターフェース入力デバイスを介して受信するステップと、
前記自然言語入力への前記自動アシスタントによる返答として、前記自然言語入力に応答する内容を与えるステップであって、
前記内容は、前記1つまたは複数のクライアントコンピューティングデバイスのユーザインターフェース出力デバイスを介して、前記ユーザへの表示のために与えられ、
前記内容は、複数の候補内容パラメータから前記自動アシスタントによって選択された少なくとも1つの内容パラメータを含む、ステップと、
前記ダイアログセッションから時間的に離れているとともに、前記ダイアログセッションの前記内容とは無関係な追加自然言語入力で前記ユーザによって開始される、前記ユーザと前記自動アシスタントとの間の追加ダイアログセッションの一部として、
前記選択された内容パラメータについてのフィードバックを要請するプロンプトを与えるステップであって、前記プロンプトを与えるステップは、前記ユーザが前記追加ダイアログセッションを開始したことを条件とし、
前記プロンプトは、前記1つまたは複数のクライアントコンピューティングデバイスの前記ユーザインターフェース出力デバイスまたは追加ユーザインターフェース出力デバイスを介して、前記ユーザへの表示のために与えられ、
前記プロンプトは、前記自動アシスタントによって以前選択されるとともに、前記ダイアログセッションの一部として、前記ユーザへの表示のために以前与えられた前記内容パラメータに基づいて、前記内容パラメータについてのフィードバックを要請するために生成される、ステップと、
前記プロンプトを与えたことに基づいて、マイクロフォンを先制してアクティブ化するステップであって、前記マイクロフォンは、前記1つまたは複数のクライアントコンピューティングデバイスの前記ユーザインターフェース入力デバイスまたは追加ユーザインターフェース入力デバイスである、ステップと、
前記プロンプトに応答する追加入力を受信するステップであって、前記追加入力は、前記マイクロフォンを介して前記ユーザによって与えられた追加ユーザインターフェース入力に基づく、ステップと、
前記追加入力を、前記内容パラメータに関連付けて記憶された値に影響を及ぼすのに使うステップであって、前記値は、前記内容パラメータを含むさらなる内容の将来の提供に影響を及ぼす、ステップとを含む方法。
【請求項２】
前記追加ダイアログセッションの一部として、
前記追加自然言語入力に応答するとともに、ダイアログセッションの前記内容とは無関係でもある追加ダイアログセッション出力を与えるステップをさらに含み、
前記プロンプトを与えるステップは、前記追加ダイアログセッション出力を与えたことに続いて起こる、請求項1に記載の方法。
【請求項３】
1つまたは複数の基準が、前記追加自然言語入力、および前記追加ダイアログセッション出力のうちの少なくとも1つによって満足されると判断するステップをさらに含み、
前記プロンプトを与えるステップは、前記1つまたは複数の基準が、前記追加自然言語入力、および前記追加ダイアログセッション出力のうちの前記少なくとも1つによって満足されると判断したことにさらに基づく、請求項2に記載の方法。
【請求項４】
前記基準は、前記追加ダイアログセッション出力が特定のセマンティックタイプであること、および基準nグラムのセットのうちの少なくとも1つのnグラムの、前記プロンプトにおける出現のうちの少なくとも1つを含む、請求項3に記載の方法。
【請求項５】
前記内容は、将来、前記ユーザによって働きかけられることになる提案であり、
前記内容パラメータを含む前記内容を与えた後、前記ユーザが前記提案に働きかけたと判断するステップをさらに含み、
前記プロンプトを与えるステップは、前記ユーザが前記提案に働きかけたと判断したことにさらに基づく、請求項1から4のいずれか一項に記載の方法。
【請求項６】
前記追加ダイアログセッションの一部として、
前記プロンプトを与えるのに先立って、追加ダイアログセッション出力を与えるステップをさらに含み、
前記プロンプトを与えるステップは、前記追加ダイアログセッション出力を与えたことに続いて起こる、請求項1から5のいずれか一項に記載の方法。
【請求項７】
前記ユーザに与えられる追加内容パラメータを、前記ユーザと前記自動アシスタントとの間の、追加の事前のダイアログセッションの一部と識別するステップと、
1つまたは複数の基準に基づいて、前記追加内容パラメータに基づく代替プロンプトではなく、前記内容パラメータに基づく前記プロンプトを与えると判断するステップとをさらに含む、請求項1から6のいずれか一項に記載の方法。
【請求項８】
前記1つまたは複数の基準は、前記内容パラメータの前記提供および前記追加内容パラメータの前記提供の対応する時間近接度を含む、請求項7に記載の方法。
【請求項９】
前記1つまたは複数の基準は、前記内容パラメータおよび前記追加内容パラメータに割り当てられたセマンティックタイプを含む、請求項7または請求項8に記載の方法。
【請求項１０】
前記内容は、特定の物理的ロケーションについての、および前記特定のロケーションにおいて消費可能な特定の項目についての提案を含み、前記内容パラメータは前記特定の項目を識別する、請求項1から9のいずれか一項に記載の方法。
【請求項１１】
前記内容は、特定の物理的ロケーションについての提案を含み、前記内容パラメータは、前記特定の物理的ロケーションが属すカテゴリを識別する、請求項1から10のいずれか一項に記載の方法。
【請求項１２】
前記自然言語入力および前記追加入力は両方とも、前記ユーザインターフェース入力デバイスを介して生成され、前記内容および前記プロンプトは両方とも、前記ユーザインターフェース出力デバイスを介して表示のために与えられる、請求項1から11のいずれか一項に記載の方法。
【請求項１３】
前記ユーザインターフェース入力デバイスは単一のデバイスの前記マイクロフォンを含み、前記ユーザインターフェース出力デバイスは前記単一のデバイスのスピーカを含む、請求項12に記載の方法。
【請求項１４】
前記自然言語入力は、第1のコンピューティングデバイスの前記ユーザインターフェース入力デバイスを介して生成され、
前記内容は、前記第1のコンピューティングデバイスの前記ユーザインターフェース出力デバイスを介して表示のために与えられ、
前記プロンプトは、追加コンピューティングデバイスの前記追加ユーザインターフェース出力デバイスを介して表示のために与えられる、請求項1から13のいずれか一項に記載の方法。
【請求項１５】
1つまたは複数のプロセッサによって実行される方法であって、
コンピュータ可読媒体から、ユーザと、前記ユーザの1つまたは複数のクライアントコンピューティングデバイスから離れた1つまたは複数のプロセッサによって実装される自動アシスタントとの間の事前のダイアログセッションの一部として、ユーザに以前与えられた内容の記憶された内容パラメータを識別するステップと、
前記事前のダイアログセッションから時間的に離れているとともに、前記事前のダイアログセッションの前記内容とは無関係な追加自然言語入力で前記ユーザによって開始される、前記ユーザと前記自動アシスタントとの間の追加ダイアログセッションの一部として、
前記内容パラメータについてのフィードバックを要請するプロンプトを与えるステップであって、前記プロンプトを与えるステップは、前記ユーザが前記追加ダイアログセッションを開始したことを条件とし、
前記プロンプトは、前記1つまたは複数のクライアントコンピューティングデバイスのユーザインターフェース出力デバイスを介して、前記ユーザへの表示のために与えられ、
前記プロンプトは、前記内容パラメータが、前記事前のダイアログセッションの一部として、前記ユーザへの表示のために以前与えられたことに基づいて、前記内容パラメータについてのフィードバックを要請するために生成され、前記プロンプトを与えたことに基づいて、前記1つまたは複数のクライアントコンピューティングデバイスのマイクロフォンを先制してアクティブ化する、ステップと、
前記プロンプトに応答する追加入力を受信するステップであって、前記追加入力は、前記マイクロフォンを介して前記ユーザによって与えられた追加ユーザインターフェース入力に基づく、ステップと、
前記追加入力を、前記内容パラメータに関連付けて記憶された値に影響を及ぼすのに使うステップであって、前記値は、前記内容パラメータを含むさらなる内容の将来の提供に影響を及ぼす、ステップとを含む方法。
【請求項１６】
1つまたは複数のプロセッサによって実行される方法であって、
ユーザと、前記ユーザの前記1つまたは複数のクライアントコンピューティングデバイスから離れた1つまたは複数のプロセッサによって実装される自動アシスタントとの間の追加ダイアログセッションであって、前記追加ダイアログセッションは、前記ユーザと前記自動アシスタントとの間の事前のダイアログセッションとは時間的に離れており、前記事前のダイアログセッションの内容とは無関係な追加自然言語入力で、前記ユーザによって開始される、追加ダイアログセッションの一部として、
スピーカを介して、前記事前のダイアログセッションの一部として、前記ユーザへの表示のために以前与えられた内容の内容パラメータについてのフィードバックを要請するプロンプトを与えるステップであって、前記プロンプトは、前記内容パラメータが、前記事前のダイアログセッションの一部として、前記ユーザへの表示のために以前与えられたことに基づいて、前記内容パラメータについてのフィードバックを要請し、前記プロンプトを与えるステップは、前記ユーザが前記追加ダイアログセッションを開始したことを条件とする、ステップと、
前記プロンプトを与えたことに基づいて、マイクロフォンを先制してアクティブ化するステップとを含む方法。
【請求項１７】
請求項1から16のいずれか一項に記載の方法を実施するように構成された装置。
【請求項１８】
コンピューティング装置によって実行されると、前記コンピューティング装置に、請求項1から16のいずれか一項に記載の方法を実施させる機械可読命令を備えるコンピュータプログラム。
【請求項１９】
少なくとも1つのマイクロフォンと、
少なくとも1つのスピーカと、
ネットワークインターフェースと、
1つまたは複数のプロセッサとを備えるクライアントデバイスであって、前記1つまたは複数のプロセッサは、
ユーザと、前記クライアントデバイスから離れた1つまたは複数のプロセッサによって実装される自動アシスタントとの間の追加ダイアログセッションであって、前記追加ダイアログセッションは、前記ユーザと前記自動アシスタントとの間の事前のダイアログセッションとは時間的に離れており、前記事前のダイアログセッションの内容とは無関係な追加自然言語入力で、前記ユーザによって開始される、追加ダイアログセッションの一部として、
前記スピーカを介して、前記事前のダイアログセッションの一部として、前記ユーザへの表示のために以前与えられた内容の内容パラメータについてのフィードバックを要請するプロンプトを与えることであって、前記1つまたは複数のプロセッサが前記プロンプトを与えるように構成されることは、前記ユーザが前記追加ダイアログセッションを開始したことを条件とし、
前記プロンプトは、前記内容パラメータが、前記事前のダイアログセッションの一部として、前記ユーザへの表示のために以前与えられたことに基づいて、前記内容パラメータについてのフィードバックを要請する、ことと、
前記プロンプトを与えたことに基づいて、前記マイクロフォンを先制してアクティブ化することとを行うように構成される、クライアントデバイス。
【請求項２０】
前記1つまたは複数のプロセッサは、
前記マイクロフォンを介して、前記プロンプトに応答するユーザインターフェース入力を受信することと、
前記ネットワークインターフェースを介して、前記追加自然言語入力に基づくデータを与えることであって、前記データは、前記内容パラメータと関連付けて記憶されている値であって前記内容パラメータを含むさらなる内容の将来の提供に影響を及ぼす値に影響を及ぼすために与えられる、こととを行うようにさらに構成される、請求項19に記載のクライアントデバイス。
【国際調査報告】
2019537802.tif 000013
2019537802.tif 000014