(57)【要約】  スタンドアロンマルチモダルアシスタントデバイスを使用して表示するためのコンテンツを選択することに関する技術について説明する。様々な実装形態では、未確認のユーザがディスプレイを備えたスタンドアロンマルチモダルアシスタントデバイスと併存しているとして検出され得る。その検出に基づいて、様々な実装形態では、1人または複数の登録ユーザをターゲットにした複数のデータ項目が取得され得る。1人または複数の登録ユーザは、スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタントにとってアクセス可能なアカウントを有し得る。複数のデータ項目は、登録ユーザのアカウントに基づいて取得され得る。複数のデータ項目は、登録ユーザ関係の優先順位および非登録ユーザ関係の優先順位など、様々な信号に基づいてランク付けされ得る。ランク付けされた複数のデータ項目を示すグラフィカル情報がディスプレイ上にレンダリングされ得る。
2021509749.tif 000002
【特許請求の範囲】
【請求項１】
1つまたは複数のプロセッサによって実装される方法であって、
未確認のユーザがスタンドアロンマルチモダルアシスタントデバイスと併存していることを検出するステップであって、前記スタンドアロンマルチモダルアシスタントデバイスがディスプレイを備える、検出するステップと、
前記検出に基づいて、
1人または複数の登録ユーザをターゲットにした複数のデータ項目を取得するステップであって、前記1人または複数の登録ユーザが、前記スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタントにとってアクセス可能なアカウントを有し、前記複数のデータ項目が、前記登録ユーザの前記アカウントに基づいて取得される、取得するステップと、
前記複数のデータ項目に関連する優先順位に基づいて、前記複数のデータ項目をランク付けするステップであって、前記優先順位が、前記1人または複数の登録ユーザとは無関係である、ランク付けするステップと、
前記ランク付けされた複数のデータ項目を示すグラフィカル情報を前記ディスプレイ上にレンダリングするステップと
を含む、方法。
【請求項２】
前記検出に基づいて、前記ディスプレイを非アクティブ状態からアクティブ状態に遷移させるステップをさらに含む、請求項1に記載の方法。
【請求項３】
前記検出するステップが、前記未確認のユーザから自然言語入力を受信するステップを含む、請求項1または2に記載の方法。
【請求項４】
前記検出するステップが、存在センサーから信号を受信するステップを含む、請求項1から3のいずれか一項に記載の方法。
【請求項５】
前記存在センサーが、カメラ、マイクロフォン、およびパッシブ赤外線センサーのうちの1つまたは複数を含む、請求項4に記載の方法。
【請求項６】
前記未確認のユーザの識別情報を判定するステップと、
前記識別情報に基づいて、前記取得されたデータ項目をさらにランク付けするステップと
をさらに含む、請求項1から5のいずれか一項に記載の方法。
【請求項７】
前記ユーザの前記判定された識別情報が、前記取得されたデータ項目がどのようにランク付けされるかに対して、前記1人または複数の登録ユーザとは無関係である前記優先順位よりも大きな影響力を及ぼす、請求項6に記載の方法。
【請求項８】
前記ランク付けされた複数のデータ項目を示す前記情報が、複数のグラフィカル要素を含み、各グラフィカル要素が、前記複数のデータ項目のそれぞれのデータ項目を表す、請求項1から7のいずれか一項に記載の方法。
【請求項９】
前記ディスプレイが、タッチスクリーンを備え、前記複数のグラフィカル要素のうちの1つ複数が対話型である、請求項8に記載の方法。
【請求項１０】
1つまたは複数のプロセッサによって実装される方法であって、
ある人物がスタンドアロンマルチモダルアシスタントデバイスと併存していることを検出するステップであって、前記スタンドアロンマルチモダルアシスタントデバイスがディスプレイを備える、検出するステップと、
前記スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタントにとってアクセス可能なアカウントを有する、複数の登録ユーザの所与の登録ユーザであるとして前記人物を識別するステップと、
前記検出および前記識別に基づいて、
前記複数の登録ユーザをターゲットにした複数のデータ項目を取得するステップであって、前記複数のデータ項目が、前記登録ユーザの前記アカウントに基づいて取得される、取得するステップと、
前記所与の登録ユーザの識別情報に基づいて、前記複数のデータ項目をランク付けするステップと、
前記ランク付けされた複数のデータ項目を示す情報を前記ディスプレイ上にレンダリングするステップと
を含む、方法。
【請求項１１】
前記ランク付けされた複数のデータ項目を示す前記情報が、複数のグラフィカル要素を含み、各グラフィカル要素が、前記複数のデータ項目のそれぞれのデータ項目を表す、請求項10に記載の方法。
【請求項１２】
前記複数のグラフィカル要素が、複数のグラフィカルカードまたはグラフィカルタイルを含む、請求項11に記載の方法。
【請求項１３】
前記所与の登録ユーザから入力を受信するステップであって、前記入力が、前記複数のグラフィカル要素の所与のグラフィカル要素に対して作用し、前記所与のグラフィカル要素が、前記複数の登録ユーザのうちの異なる登録ユーザをターゲットにした、前記ランク付けされた複数のデータ項目のうちのデータ項目に関連する、受信するステップと、
前記入力に基づいて、前記所与のグラフィカル要素を前記ディスプレイから除去するステップと、
別の人物が前記スタンドアロンマルチモダルアシスタントデバイスと併存していることをその後に検出するステップと、
前記別の人物を、前記異なる登録ユーザとして識別するステップと、
前記所与のグラフィカル要素を前記ディスプレイ上にレンダリングするステップと
をさらに含む、請求項11または12に記載の方法。
【請求項１４】
前記ランク付けされた複数のデータ項目を示す前記情報が、前記自動アシスタントを用いて前記所与の登録ユーザによって開始された未完了のタスクを表すグラフィカル要素を含む、請求項10から13のいずれか一項に記載の方法。
【請求項１５】
前記グラフィカル要素が、前記自動アシスタントとの音声関与によって前記タスクの完了を開始するために選択可能である、請求項14に記載の方法。
【請求項１６】
前記グラフィカル要素が、前記ディスプレイ上にレンダリングされたグラフィカルユーザインターフェースとの対話によって前記タスクの完了を開始するために選択可能である、請求項14または15に記載の方法。
【請求項１７】
1つまたは複数のプロセッサと、前記1つまたは複数のプロセッサに動作可能に結合されたメモリとを含む、システムであって、前記メモリが命令を記憶し、前記命令が、前記1つまたは複数のプロセッサによる前記命令の実行に応答して、前記1つまたは複数のプロセッサに、
未確認のユーザがスタンドアロンマルチモダルアシスタントデバイスと併存していることを検出する動作であって、前記スタンドアロンマルチモダルアシスタントデバイスがディスプレイを備える、検出する動作と、
前記検出に基づいて、
前記ディスプレイを非アクティブ状態からアクティブ状態に遷移させる動作と、
1人または複数の登録ユーザをターゲットにした複数のデータ項目を取得する動作であって、前記1人または複数の登録ユーザが、前記スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタントにとってアクセス可能なアカウントを有し、前記複数のデータ項目が、前記登録ユーザの前記アカウントに基づいて取得される、取得する動作と、
前記複数のデータ項目に関連する優先順位に基づいて、前記複数のデータ項目をランク付けする動作であって、前記優先順位が、前記1人または複数の登録ユーザとは無関係である、ランク付けする動作と、
前記ランク付けされた複数のデータ項目を示すグラフィカル情報を前記ディスプレイ上にレンダリングする動作と
を実行させる、システム。
【請求項１８】
前記未確認のユーザの識別情報を判定し、
前記識別情報に基づいて、前記取得されたデータ項目をさらにランク付けする
ための命令をさらに含み、
前記ユーザの前記判定された識別情報が、前記取得されたデータ項目がどのようにランク付けされるかに対して、前記1人または複数の登録ユーザとは無関係である前記優先順位よりも大きな影響を及ぼす
請求項17に記載のシステム。
【請求項１９】
命令を含む、少なくとも1つの非一時的コンピュータ可読媒体であって、前記命令が、1つまたは複数のプロセッサによる前記命令の実行に応答して、前記1つまたは複数のプロセッサに、
ある人物がスタンドアロンマルチモダルアシスタントデバイスと併存していることを検出する動作であって、前記スタンドアロンマルチモダルアシスタントデバイスがディスプレイを備える、検出する動作と、
前記スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタントにとってアクセス可能なアカウントを有する、複数の登録ユーザの所与の登録ユーザであるとして前記人物を識別する動作と、
前記検出および前記識別に基づいて、
前記複数の登録ユーザをターゲットにした複数のデータ項目を取得する動作であって、前記複数のデータ項目が、前記登録ユーザの前記アカウントに基づいて取得される、取得する動作と、
前記所与の登録ユーザの識別情報に基づいて、前記複数のデータ項目をランク付けする動作と、
前記ランク付けされた複数のデータ項目を示す情報を前記ディスプレイ上にレンダリングする動作と
を実行させる、少なくとも1つの非一時的コンピュータ可読媒体。
【請求項２０】
前記ランク付けされた複数のデータ項目を示す前記情報が、複数のグラフィカル要素を含み、各グラフィカル要素が、前記複数のデータ項目のそれぞれのデータ項目を表し、前記複数のグラフィカル要素のうちの少なくとも1つがタッチセンシティブである、請求項19に記載の少なくとも1つの非一時的コンピュータ可読媒体。
【請求項２１】
前記少なくとも1つのタッチセンシティブグラフィカル要素が、前記自動アシスタントを用いて前記所与の登録ユーザによって前に開始された未完了のタスクを示し、前記少なくとも1つのタッチセンシティブグラフィカル要素が、前記自動アシスタントとの音声関与によって前記タスクの完了を開始するために選択可能である、請求項20に記載の少なくとも1つの非一時的コンピュータ可読媒体。
【請求項２２】
命令を含む、少なくとも1つの非一時的コンピュータ可読媒体であって、前記命令が、1つまたは複数のプロセッサによる前記命令の実行に応答して、前記1つまたは複数のプロセッサに、請求項1から16のいずれか一項に記載の方法を実行させる、少なくとも1つの非一時的コンピュータ可読媒体。
【請求項２３】
1つまたは複数のプロセッサと、前記1つまたは複数のプロセッサに動作可能に結合されたメモリとを含む、システムであって、前記メモリが命令を記憶し、前記命令が、前記1つまたは複数のプロセッサによる前記命令の実行に応答して、前記1つまたは複数のプロセッサに請求項1から16のいずれか一項に記載の方法を実行させる、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アシスタントデバイスのディスプレイにレンダリングするコンテンツの選択に関する。
【背景技術】
【０００２】
人々は、本明細書で「自動アシスタント」と呼ばれる(「チャットボット」、「対話型パーソナルアシスタント」、「インテリジェントパーソナルアシスタント」、「パーソナルボイスアシスタント」、「会話型エージェント(conversational agents)」などとも呼ばれる)対話型ソフトウェアアプリケーションを用いて人間対コンピュータ対話に関与することができる。たとえば、(自動アシスタントと対話するときには「ユーザ」と呼ばれることがあり、または会議の文脈では「参加者」と呼ばれることがある)人間は、テキストに変換され、次いで処理される音声発話であり得る自由形式の自然言語入力を使用して、かつ/またはタイプ入力された自由形式の自然言語入力によって、命令、クエリ、および/または要求(本明細書で「クエリ」と総称される)を提供することができる。
【０００３】
自動アシスタントに音声で関与する能力をユーザに提供するスタンドアロン音声応答スピーカは、家庭内で、またビジネスにおいてますます普及してきている。これらのデバイスは、一般に、存在する場合でも、恐らくは消音ボタン、音量を調整するためのタッチセンシティブインターフェースなど以外には、ごく少数のハードウェア入力機構を含む。これらのスピーカの目標は、音楽を再生する、リマインダをセットアップする、(たとえば、特定の情報を取得するために)探索を実行する、天気予報を要求する、タイマーをセットする、スマートホームデバイス(たとえば、照明、サーモスタット、ロックなど)を制御する、アラームをセットする、リスト(たとえば、買い物リスト)を作成する、商品および/またはサービスを注文するなど、様々なタスクを実行するために、キーボードまたはマウスなどのユーザインターフェース要素と物理的に対話することをユーザに要求せずに、ユーザが自動アシスタントと容易に音声で関与することを可能にすることである。多くの点で、スタンドアロン音声応答スピーカは、ヒューマンパーソナルアシスタントと極めて同様に機能することが多い。
【０００４】
従来のスタンドアロン音声応答スピーカには、一般に、本格的なディスプレイが欠如している。従来のスタンドアロン音声応答スピーカは、多くても、単純なメッセージを伝えるために基本的な色および/または動画を利用することができる、発光ダイオードなどの比較的単純な視覚的出力機構を含む傾向がある。次世代のスタンドアロン音声応答スピーカは、ディスプレイまたはさらにタッチスクリーンディスプレイなど、よりロバストな視覚的出力機構を含み得る。これらのデバイスは、スタンドアロン音声応答スピーカと対照的に、本明細書で「スタンドアロンマルチモダルアシスタントデバイス(standalone multi-modal assistant devices)」と呼ばれる。従来のスタンドアロン対話型スピーカの場合と同様に、スタンドアロンマルチモダルアシスタントデバイスは、音声で対話するように設計可能であり、一般に、キーボード、マウス、または他の複雑な物理的入力構成要素を含まないことになる。しかしながら、いくつかは、タッチスクリーンを含むことがある。
【０００５】
一般的なアシスタンスを提供するヒューマンパーソナルアシスタントと同種のスタンドアロン音声応答スピーカがサービスする一般的な機能に沿って、スタンドアロンマルチモダルアシスタントデバイスのディスプレイをコンテンツで埋めるときには注意が払われるべきである。たとえば、いくつかのスタンドアロンマルチモダルデバイスは、付近の未確認の人物の検出に応答して、ディスプレイをアクティブ化し得る。(たとえば、音声認識を使用して)併存している人物が識別される前には、1人または複数の特定の登録ユーザをターゲットにするか、またはさもなければ彼らによって制御されるコンテンツ(以下で、「ターゲットコンテンツ」と呼ばれる)を含み得る、どのコンテンツがディスプレイ上に提示されるべきかが明瞭でないことがある。そしてターゲットコンテンツが表示された後、その人物が次いで識別され得る。これは、他の登録ユーザをターゲットにしたコンテンツが引き続き表示されるべきであるかどうか、またはディスプレイを識別された人物をターゲットにしたコンテンツに限定すべきかどうかという問題を提起する。場合によっては、その人物は、識別されるのに先立って、たとえば、そのコンテンツをスワイプする(すなわち、退ける)ことによって、そのコンテンツと対話することがある。これは、退けられたコンテンツが、それらの人々が未確認であるか、または異なるユーザとして識別されるのかにかかわらず、他の人々に引き続き提示されるべきであるかどうかという問題を提起する。
【発明の概要】
【課題を解決するための手段】
【０００６】
スタンドアロンマルチモダルアシスタントデバイスを使用して表示するためのコンテンツを選択するための技法について本明細書で説明する。様々な実装形態では、スタンドアロンマルチモダルアシスタントデバイスは、そのディスプレイをアクティブ化すること、たとえば、付近の人物の検出に応答して、ディスプレイを非アクティブ状態(たとえば、スリープ)からアクティブ状態に遷移させることができる。スタンドアロンマルチモダルアシスタントデバイスは、カメラ、マイクロフォン、パッシブ赤外線(「PIR:passive infrared」)センサー、人々が携行するデバイス(たとえば、モバイルフォン、スマートウォッチ)によって放出された信号など、様々な技法を使用して付近の人々を検出することができる。
【０００７】
様々なコンテンツは、アクティブ化時にディスプレイ上にレンダリングされ得る。いくつかの実装形態では、天気予報、一般的なニュース項目、交通情報(特定のユーザのスケジュールされた旅行経路に対して選択されていないとき)など、特定のユーザをターゲットにしない一般的なコンテンツがレンダリングされ得る。追加または代替として、いくつかの実装形態では、1人または複数のユーザは、スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタントに登録しているアカウント(たとえば、オンラインプロファイル)を有することがある。この登録により、自動アシスタントは、登録ユーザの制御下のコンテンツなど、個々の登録ユーザをターゲットにしたコンテンツに対するアクセスを有し得る。1つまたは複数の個別のデータ項目を含み得る、このターゲットコンテンツは、たとえば、自動アシスタントが自然言語出力を使用してこのコンテンツを登録ユーザに音声認識可能に提示し得る方法と同様に、ディスプレイ上に提示され得る。このように、デバイスとの追加のユーザ対話を必要とせずにコンテンツを提示することが可能であり、それにより、そのような対話を解釈しそれに応答する際の計算負荷を低減するだけでなく、コンテンツがアクセスされ得る速度および効率性を改善する。
【０００８】
データ項目は、汎用であれ、または特定の登録ユーザをターゲットにしたものであれ、様々な方法で表示され得る。いくつかの実装形態では、データ項目は、スマートフォン、タブレット、スマートウォッチなどの上にレンダリングされるものと同様に、「カード」または「タイル」などのグラフィカル要素によって表され得る。いくつかのカード/タイルは、たとえば、カード/タイルに関連するデータ項目を修正するために使用可能なソフトウェアインターフェースを開始するために、追加情報を取得するために、カード/タイルを非常に重要なものとして標示するためになど、対話型であり得る。カード/タイルは、追加または代替として、たとえば、(タッチスクリーンであり得る)ディスプレイ上でスワイプされることによって、退けられてもよい。いくつかの実装形態では、あるカード/タイルを別のカード/タイル上にスワイプすることによって、複数のカード/タイルを組み合わせて、たとえば、グラフィカル「ビン」にすることが可能である。データ項目は、同様に、ポップアップウィンドウ、「ティッカースタイル(ticker-style)」リーダなどを(たとえば、ディスプレイの上部または下部に)使用するなど、他の方法で視覚的に提示されてもよい。
【０００９】
スタンドアロンマルチモダルアシスタントデバイスのディスプレイが最初にアクティブ化されるとき、多くの場合、登録されたどのユーザがそのデバイスと併存しているのか、または併存している人物が登録ユーザであるかどうかさえ知られていないことがある。したがって、いくつかの実装形態では、たとえば、登録ユーザのプライバシーを保護するために、(前に説明した)汎用データ項目のみがグラフィカル要素として提示され得る。しかしながら、家庭またはビジネスのシナリオでは、個々のユーザプライバシーはそれほど重要でない場合があり、場合によっては、(たとえば、家族の一員が家族の他の構成員が会議中であることを知るように)登録ユーザが他の登録ユーザをターゲットにしたコンテンツを見ることが望ましい場合すらある。したがって、いくつかの実装形態では、複数の登録ユーザをターゲットにした複数のデータ項目は、たとえば、その登録ユーザのアカウントに関連するオンラインリソースから取得され、ディスプレイ上にグラフィカル要素としてレンダリングされることが可能である。いくつかの実装形態では、これらのターゲットデータ項目を表すグラフィカル要素は、汎用データ項目を表すグラフィカル要素と組み合わせてレンダリングされてよい。他の実装形態では、ターゲットデータ項目を表すグラフィカル要素は、単独でレンダリングされてよい。
【００１０】
いくつかの実装形態では、ターゲットおよび/または汎用データ項目は、グラフィカル要素として表示されるのに先立ってランク付けされ得る。データ項目は、データ項目に割り当てられた優先順位など、様々な基準に基づいてランク付けされ得る。様々な実装形態では、データ項目の優先順位は、たとえば、登録ユーザによって手動で割り当てられてよく、または、たとえば、データ項目に関連するデータおよび/または時間に基づいて自動的に割り当てられてもよい。たとえば、明日発生する第1の次回のイベントに関連するデータ項目に、一週間以内に発生する第2の次回のイベントに関連する別のデータ項目よりも高い優先順位を割り当てることができる。
【００１１】
いくつかの実装形態では、優先順位は、登録ユーザ関係であってよく、または非登録ユーザ関係であってもよい。スタンドアロンマルチモダルアシスタントデバイスと対話している人物の識別情報が知られているとき、登録ユーザ関係の優先順位は、より大きな影響を、データ項目、特にターゲットデータ項目のランク付けに及ぼし得る。スタンドアロンマルチモダルアシスタントデバイスと併存している人物が未確認であるとき、データ項目に関連する次回の日付のみに基づくデータ項目に割り当てられた優先順位など、非登録ユーザ関係の優先順位はより大きな影響をランク付けに及ぼし得る。
【００１２】
たとえば、スタンドアロンマルチモダルアシスタントデバイスの近傍で登録ユーザが検出されたと仮定する。さらに、スタンドアロンマルチモダルアシスタントデバイスが即時にまたは比較的迅速に登録ユーザを識別することが可能であると仮定する。これは、たとえば、(たとえば、登録ユーザが室内に足を踏み入れたと同時に)自動アシスタントに対して起動フレーズを発話したことからその登録ユーザの存在が検出されたために、または登録ユーザのモバイルフォンが、彼らの存在の検出と彼らの識別の両方を行うために使用された信号を放出するために、発生し得る。
【００１３】
このシナリオでは、スタンドアロンマルチモダルアシスタントデバイスは、その上で少なくとも部分的に動作する自動アシスタントにより、そのディスプレイがアクティブ化されたとき、登録ユーザの識別情報を知る。それは、スタンドアロンマルチモダルアシスタントデバイスが、その特定の登録ユーザが存在するという事実に基づいて、ターゲットデータ項目をランク付けすることが即時に可能であることを意味する。したがって、その登録ユーザを具体的にターゲットにしたデータ項目は、たとえば、汎用データ項目および/または異なる登録ユーザをターゲットにしたデータ項目よりも高くランク付けされ得る。
【００１４】
次に、登録ユーザが、汎用データ項目または異なる登録ユーザをターゲットにしたデータ項目を表すグラフィカル要素をスワイプすると仮定する。同じ登録ユーザが去り、次いで第2のセッションのために後で戻る(また、スタンドアロンマルチモダルアシスタントデバイスによって識別される)場合、データ項目を表すグラフィカル要素は、ディスプレイ上に再度レンダリングされ得る。しかしながら、その登録ユーザは前に無関心を示したため、この第2のセッションの間、スワイプされたデータ項目は、他のグラフィカル要素とともにディスプレイ上にグラフィカル要素としてレンダリングされないことになる可能性が高くなる。
【００１５】
スワイプされたデータ項目が異なる第2の登録ユーザをターゲットにした(たとえば、第1の登録ユーザは夫であり、第2の登録ユーザは妻である)と仮定する。さらに、第1の登録ユーザが第2の登録ユーザをターゲットにしたデータ項目をスワイプした後の何らかの時点で、第2の登録ユーザがスタンドアロンマルチモダルアシスタントデバイスと併存しているとして識別されたと仮定する。いくつかの実装形態では、第1の登録ユーザが前にそのグラフィカル要素を退けたにもかかわらず、スワイプされたデータ項目を表すグラフィカル要素は第2の登録ユーザに提示され得るが、これは、そのデータ項目が第2のユーザをターゲットにしていたからである。概して、この機能性は、他の人がそのコンテンツをスワイプしたために登録ユーザが彼らを具体的にターゲットにしたコンテンツを見逃すことになる機会を除去または低減する。たとえば、未確認の人物が、特定の登録ユーザをターゲットにしたデータ項目を表すグラフィカル要素をスワイプする同様のシナリオでは、その特定の登録ユーザが後でスタンドアロンマルチモダルアシスタントデバイスと併存していると識別された場合、スワイプされたコンテンツは再度提示され得る。
【００１６】
これらの例示的な使用事例は、限定的であることを意味しない。いくつかの他の事例について本明細書で説明する。
【００１７】
いくつかの実装形態では、1つまたは複数のプロセッサによって実行される方法が提供され、この方法は、未確認のユーザがスタンドアロンマルチモダルアシスタントデバイスと併存していることを検出するステップであって、スタンドアロンマルチモダルアシスタントデバイスがディスプレイを備える、検出するステップと、その検出に基づいて、1人または複数の登録ユーザをターゲットにした複数のデータ項目を取得するステップであって、1人または複数の登録ユーザが、スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタントにとってアクセス可能なアカウントを有し、複数のデータ項目が、登録ユーザのアカウントに基づいて取得される、取得するステップと、複数のデータ項目に関連する優先順位に基づいて、複数のデータ項目をランク付けするステップであって、優先順位が1人または複数の登録ユーザとは無関係である、ランク付けするステップと、ランク付けされた複数のデータ項目を示すグラフィカル情報をディスプレイ上にレンダリングするステップとを含む。
【００１８】
本明細書で開示する技法のこれらのおよび他の実装形態は、以下の特徴のうちの1つまたは複数を随意に含み得る。
【００１９】
様々な実装形態では、この方法は、検出に基づいて、ディスプレイを非アクティブ状態からアクティブ状態に遷移させるステップをさらに含み得る。様々な実装形態では、検出するステップは、未確認のユーザから自然言語入力を受信するステップを含む。様々な実装形態では、検出するステップは、存在センサーから信号を受信するステップを含み得る。様々な実装形態では、存在センサーは、カメラ、マイクロフォン、およびパッシブ赤外線センサーのうちの1つまたは複数を含み得る。
【００２０】
様々な実装形態では、この方法は、未確認のユーザの識別情報を判定するステップをさらに含み、識別情報に基づいて、取得されたデータ項目をランク付けするステップをさらに含むことができる。様々な実装形態では、ユーザの判定された識別情報は、取得されたデータ項目がランク付けされる方法に対して、1人または複数の登録ユーザとは無関係である優先順位よりも大きな影響を及ぼし得る。
【００２１】
様々な実装形態では、ランク付けされた複数のデータ項目を示す情報は、複数のグラフィカル要素を含んでよく、各グラフィカル要素は、複数のデータ項目のそれぞれのデータ項目を表す。様々な実装形態では、ディスプレイは、タッチスクリーンを含んでよく、複数のグラフィカル要素のうちの1つまたは複数は対話型である。
【００２２】
別の態様では、方法は、ある人物がスタンドアロンマルチモダルアシスタントデバイスと併存していることを検出するステップであって、スタンドアロンマルチモダルアシスタントデバイスが、ディスプレイを備える、検出するステップと、スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタントにとってアクセス可能なアカウントを有する、複数の登録ユーザの所与の登録ユーザとしてその人物を識別するステップと、その検出および識別に基づいて、複数の登録ユーザをターゲットにした複数のデータ項目を取得するステップであって、複数のデータ項目が、登録ユーザのアカウントに基づいて取得される、取得するステップと、所与の登録ユーザの識別情報に基づいて、複数のデータ項目をランク付けするステップと、ランク付けされた複数のデータ項目を示す情報をディスプレイ上にレンダリングするステップとを含み得る。
【００２３】
様々な実装形態では、ランク付けされた複数のデータ項目を示す情報は、複数のグラフィカル要素を含んでよく、各グラフィカル要素は、複数のデータ項目のそれぞれのデータ項目を表す。様々な実装形態では、複数のグラフィカル要素は、複数のグラフィカルカードまたはグラフィカルタイルを含み得る。
【００２４】
様々な実装形態では、この方法は、所与の登録ユーザから入力を受信するステップであって、入力が、複数のグラフィカル要素の所与のグラフィカル要素に対して作用し、所与のグラフィカル要素が、複数の登録ユーザのうちの異なる登録ユーザをターゲットにした、ランク付けされた複数のデータ項目のうちのデータ項目に関連する、受信するステップと、その入力に基づいて、所与のグラフィカル要素をディスプレイから除去するステップと、別の人物がスタンドアロンマルチモダルアシスタントデバイスと併存していることをその後に検出するステップと、その別の人物を、異なる登録ユーザとして識別するステップと、所与のグラフィカル要素をディスプレイ上にレンダリングするステップとをさらに含み得る。
【００２５】
様々な実装形態では、ランク付けされた複数のデータ項目を示す情報は、自動アシスタントを用いて所与の登録ユーザによって開始された未完了のタスクを示すグラフィカル要素を含み得る。様々な実装形態では、グラフィカル要素は、自動アシスタントとの音声関与を介してタスクの完了を開始するために選択可能であり得る。様々な実装形態では、グラフィカル要素は、ディスプレイ上にレンダリングされたグラフィカルユーザインターフェースとの対話によってタスクの完了を開始するために選択可能であり得る。
【００２６】
加えて、いくつかの実装形態は、1つまたは複数のコンピューティングデバイスの1つまたは複数のプロセッサを含み、1つまたは複数のプロセッサは、関連するメモリ内に記憶された命令を実行するように動作可能であり、これらの命令は、前述の方法のうちのいずれかを実行させるように構成される。いくつかの実装形態は、前述の方法のうちのいずれかを実行するために1つまたは複数のプロセッサによって実行可能なコンピュータ命令を記憶した、1つまたは複数の非一時的コンピュータ可読記憶媒体をやはり含む。
【００２７】
前述の概念、および本明細書でより詳細に説明する追加の概念のすべての組合せが本明細書で開示する主題の部分として企図されることを諒解されたい。たとえば、本開示の最後に出現する特許請求される主題のすべての組合せは、本明細書で開示する主題の部分として企図される。
【図面の簡単な説明】
【００２８】
【図１】本明細書で開示する実装形態が実装され得る例示的な環境のブロック図である。
【図２】様々な実装形態に従って実装され得る例示的な状態機械を示す図である。
【図３】様々な実装形態による、本明細書で説明する技法があるシナリオでどのように採用され得るかの例を示す図である。
【図４】様々な実装形態による、本明細書で説明する技法があるシナリオでどのように採用され得るかの例を示す図である。
【図５】様々な実装形態による、本明細書で説明する技法があるシナリオでどのように採用され得るかの例を示す図である。
【図６】様々な実装形態による、本明細書で説明する技法があるシナリオでどのように採用され得るかの例を示す図である。
【図７】本明細書で開示する実装形態による例示的な方法を示すフローチャートである。
【図８】コンピューティングデバイスの例示的なアーキテクチャを示す図である。
【発明を実施するための形態】
【００２９】
次に、図1を参照すると、本明細書で開示する技法が実装され得る例示的な環境を示す。この例示的な環境は、1つまたは複数のクライアントコンピューティングデバイス1061〜Nを含む。各クライアントデバイス106は、自動アシスタントクライアント118のそれぞれのインスタンスを実行し得る。自然言語プロセッサ122など、1つまたは複数のクラウドベースの自動アシスタント構成要素119は、概して110において示される、1つまたは複数のローカルおよび/またはワイドエリアネットワーク(たとえば、インターネット)を介してクライアントデバイス1061〜Nに通信可能に結合された、1つまたは複数のコンピューティングシステム(「クラウド」コンピューティングシステムと総称される)上で実装され得る。
【００３０】
自動アシスタントクライアント118のインスタンスは、1つまたは複数のクラウドベースの自動アシスタント構成要素119とのその対話によって、ユーザの観点から、ユーザがそれを用いて人間対コンピュータ対話に関与し得る自動アシスタント120の論理インスタンスであるように見えるものを形成し得る。そのような自動アシスタント120の2つのインスタンスを図1に示す。破線で囲まれた第1の自動アシスタント120Aは、第1のクライアントデバイス1061を動作させている第1のユーザ(図示せず)にサービスし、自動アシスタントクライアント1181および1つまたは複数のクラウドベースの自動アシスタント構成要素119を含む。破線-破線-点で囲まれた第2の自動アシスタント120Bは、別のクライアントデバイス106Nを動作させている第2のユーザ(図示せず)にサービスし、自動アシスタントクライアント118Nおよび1つまたは複数のクラウドベースの自動アシスタント構成要素119を含む。したがって、いくつかの実装形態では、クライアントデバイス106上で実行している自動アシスタントクライアント118に関与する各ユーザは、事実上、自動アシスタント120の自らの独自の論理インスタンスに関与し得ることを理解されたい。簡単かつ簡潔にするために、本明細書で、特定のユーザに「サービス」するとして使用される「自動アシスタント」という用語は、ユーザが動作させるクライアントデバイス106上で実行している自動アシスタントクライアント118と(複数の自動アシスタントクライアント118の間で共有され得る)1つまたは複数のクラウドベースの自動アシスタント構成要素119との組合せを指す。いくつかの実装形態では、自動アシスタント120は、そのユーザが自動アシスタント120のその特定のインスタンスによって実際に「サービスされ」ているかどうかにかかわらず、任意のユーザからの要求に応答し得ることをやはり理解されたい。
【００３１】
クライアントデバイス1061〜Nは、たとえば、デスクトップコンピューティングデバイス、ラップトップコンピューティングデバイス、タブレットコンピューティングデバイス、モバイルフォンコンピューティングデバイス、ユーザの車両のコンピューティングデバイス(たとえば、車内通信システム、車内娯楽システム、車内ナビゲーションシステム)、スタンドアロン音声応答スピーカ、スタンドアロンマルチモダルアシスタントデバイス、スマートテレビジョンなどのスマートアプリケーション、および/またはコンピューティングデバイス(たとえば、コンピューティングデバイスを有するユーザのウォッチ、コンピューティングデバイスを有するユーザの眼鏡、仮想または拡張現実のコンピューティングデバイス)を含むユーザのウェアラブル装置のうちの1つまたは複数を含み得る。追加のおよび/または代替のクライアントコンピューティングデバイスが提供されてもよい。
【００３２】
本開示のために、図1では、第1のクライアントデバイス1061は、それを介して自動アシスタント120Aが自然言語出力を提供し得るスピーカ1091を含むスタンドアロン音声応答スピーカである。上述のように、第1のクライアントデバイス1061は、音量および/または消音構成要素など、基本的なハードウェア入力構成要素のみを含んでよく、キーボードまたはマウスなど、より複雑なハードウェア入力構成要素は含まない。第2のクライアントデバイス106Nは、スピーカ109Nおよびディスプレイ111Nを備えたスタンドアロンマルチモダルアシスタントデバイスの形態をとり、(いくつかの実装形態ではタッチスクリーンであるディスプレイ111の他には)複雑な物理的入力構成要素がやはり欠如していることがある。本明細書で説明する技法について、106Nなどのスタンドアロンマルチモダルアシスタントデバイスを使用して実行される文脈で説明することになるが、これは、限定的であることを意味しない。本明細書で説明する技法は、主に音声交換によって対話することを意味する車両コンピューティングデバイスなど、他のフォームファクタ(ただし依然として標準的なキーボードおよびマウスが欠如した)を有するクライアントデバイス上で実装され得る。
【００３３】
本明細書でより詳細に説明するように、自動アシスタント120は、1つまたは複数のクライアントデバイス1061〜Nのユーザインターフェース入力デバイスおよびユーザインターフェース出力デバイスを介して1人または複数のユーザと人間対コンピュータダイアログセッションに関与する。クライアントデバイス106Nなどのスタンドアロンマルチモダルアシスタントデバイスの場合、これらの入力デバイスは、マイクロフォン(図示せず)およびディスプレイ111(ディスプレイ111がタッチスクリーンである実装形態において)、ならびに付近の人物の存在を検出するために使用され得る他のパッシブセンサー(たとえば、PIR、カメラ)に限定され得る。いくつかの実装形態では、自動アシスタント120は、クライアントデバイス1061〜Nのうちの1つの、1つまたは複数のユーザインターフェース入力デバイスを介してユーザによって提供されたユーザインターフェース入力に応答して、ユーザとの人間対コンピュータ対話セッションに関与し得る。それらの実装形態のいくつかでは、ユーザインターフェース入力は、明示的に自動アシスタント120を対象とする。たとえば、特定のユーザインターフェース入力は、ハードウェアボタンおよび/または仮想ボタン(たとえば、タップ、ロングタップ)、口頭コマンド(たとえば、「おい、自動アシスタント」)、および/または他の特定のユーザインターフェース入力を用いたユーザ対話であり得る。
【００３４】
いくつかの実装形態では、自動アシスタント120は、ユーザがコマンド、検索などを発話することができるように、対話型音声応答(「IVR:interactive voice response」)に関与し得、自動アシスタントは、自然言語処理および/または1つまたは複数の文法を利用して、発話をテキストに変換し、それに応じて、そのテキストに応答することができる。いくつかの実装形態では、自動アシスタント120は、追加または代替として、発話をテキストに変換せずに発話に応答し得る。たとえば、自動アシスタント120は、音声入力を埋め込みに変換し、(音声入力内に存在する1つまたは複数のエンティティを示す)エンティティ表現、および/または他の「非テキスト」表現に変換し、そのような非テキスト表現に対して動作し得る。したがって、音声入力から変換されたテキストに基づいて動作するとして本明細書で説明する実装形態は、追加および/または代替として、直接的に音声入力に対して、かつ/または音声入力の他の非テキスト表現に対して動作し得る。
【００３５】
クライアントコンピューティングデバイス1061〜N、およびクラウドベースの自動アシスタント構成要素119を動作させているコンピューティングデバイスの各々は、データおよびソフトウェアアプリケーションを記憶するための1つまたは複数のメモリ、データにアクセスし、アプリケーションを実行するための1つまたは複数のプロセッサ、およびネットワークを介した通信を円滑にする他の構成要素を含み得る。クライアントコンピューティングデバイス1061〜Nのうちの1つまたは複数によって、かつ/または自動アシスタント120によって実行される動作は、複数のコンピュータシステムにわたって分散され得る。自動アシスタント120は、たとえば、ネットワークを介して互いに結合された1つまたは複数の場所内で1つまたは複数のコンピュータ上で実行しているコンピュータプログラムとして実装され得る。
【００３６】
上述のように、様々な実装形態では、クライアントコンピューティングデバイス1061-Nの各々は、自動アシスタントクライアント118を動作させることができる。様々な実装形態では、各自動アシスタントクライアント118は、対応する音声捕捉/テキスト対音声(「TTS:text-to-speech」)/STTモジュール114を含み得る。他の実装形態では、音声捕捉/TTS/STTモジュール114の1つまたは複数の態様は、自動アシスタントクライアント118とは別個に実装され得る。
【００３７】
各音声捕捉/TTS/STTモジュール114は、1つまたは複数の機能を実行するように、たとえば、(場合によっては、存在センサー105を備え得る)マイクロフォンを介してユーザの音声を捕捉し、その捕捉されたオーディオをテキスト(および/または、他の表現または埋め込み)に変換し、かつ/またはテキストを音声に変換するように構成され得る。たとえば、いくつかの実装形態では、クライアントデバイス106は、コンピューティングリソース(たとえば、プロセッササイクル、メモリ、バッテリーなど)の点で比較的制約され得るため、各クライアントデバイス106に対して局所的な音声捕捉/TTS/STTモジュール114は、有限数の異なる音声フレーズ、特に、自動アシスタント120を起動させるフレーズをテキストに(または、より低い次元の埋め込みなど、他の形態に)変換するように構成され得る。他の音声入力は、クラウドベースのTTSモジュール116および/またはクラウドベースのSTTモジュール117を含み得るクラウドベースの自動アシスタント構成要素119に送られてよい。
【００３８】
クラウドベースのSTTモジュール117は、クラウドの実質的に無制限のリソースを活用して、音声捕捉/TTS/STTモジュール114によって補足されたオーディオデータを(次いで、自然言語プロセッサ122に提供され得る)テキストに変換するように構成され得る。クラウドベースのTTSモジュール116は、クラウドの実質的に無制限のリソースを活用して、テキストデータ(たとえば、自動アシスタント120によって編成された自然言語応答)をコンピュータ生成された音声出力に変換するように構成され得る。いくつかの実装形態では、TTSモジュール116は、たとえば、1つまたは複数のスピーカを使用して、直接出力されるように、コンピュータ生成された音声出力をクライアントデバイス106に提供し得る。他の実装形態では、自動アシスタント120によって生成されたテキストデータ(たとえば、自然言語応答)は、音声捕捉/TTS/STTモジュール114に提供され得、音声捕捉/TTS/STTモジュール114は、次いで、テキストデータを、局所的に出力される、コンピュータ生成された音声に変換し得る。
【００３９】
自動アシスタント120(および、具体的には、クラウドベースの自動アシスタント構成要素119)は、自然言語プロセッサ122、前述のTTSモジュール116、前述のSTTモジュール117、ダイアログ状態トラッカー124、ダイアログマネージャ126、および自然言語生成器128(いくつかの実装形態では、TTSモジュール116と組み合わせられてよい)、ならびに本開示に特に関連するコンテンツ表示エンジン130を含み得る。いくつかの実装形態では、自動アシスタント120のエンジンおよび/またはモジュールのうちの1つまたは複数は、省略されてよく、組み合わされてよく、かつ/または自動アシスタント120とは別個である構成要素内で実装されてよい。
【００４０】
いくつかの実装形態では、自動アシスタント120は、自動アシスタント120との人間対コンピュータ対話セッションの間に、クライアントデバイス1061〜Nのうちの1つのユーザによって生成された様々な入力に応答して応答コンテンツを生成する。自動アシスタント120は、ダイアログセッションの一部としてユーザに提示するための応答コンテンツを(たとえば、ユーザのクライアントデバイスとは別個であるとき、1つまたは複数のネットワークを介して)提供し得る。たとえば、自動アシスタント120は、クライアントデバイス1061-Nのうちの1つを介して提供された自由形式の自然言語入力に応答して、応答コンテンツを生成し得る。本明細書で使用される自由形式の入力は、ユーザによって編成され、ユーザによる選択のために提示されるオプションのグループに制約されない入力である。
【００４１】
本明細書で使用される「ダイアログセッション」は、ユーザと自動アシスタント120との間の1つまたは複数のメッセージの論理的に自己完結型の交換、および/または自動アシスタント120による1つまたは複数の応答活動の履行を含み得る。自動アシスタント120は、セッション間の時間の経過、セッション間のユーザコンテキスト(たとえば、場所、スケジュールされた会議の前/最中/後、など)の変更、そのユーザと自動アシスタントとの間のダイアログ以外のユーザとクライアントデバイスとの間に介在する1つまたは複数の対話の検出(たとえば、ユーザがアプリケーションをしばらく切り替える、ユーザがスタンドアロン音声応答スピーカまたはスタンドアロンマルチモダルアシスタントデバイスから立ち去り、次いで後でそこに戻る)、セッション間のクライアントデバイスのロック/スリープ、自動アシスタント120の1つまたは複数のインスタンスと対話するために使用されるクライアントデバイスの変更など、様々な信号に基づいてユーザとの複数のダイアログセッションを区別し得る。
【００４２】
自動アシスタント120の自然言語プロセッサ122(代替として「自然言語理解エンジン」と呼ばれる)は、クライアントデバイス1061〜Nを介してユーザによって生成された自由形式の自然言語入力を処理し、いくつかの実装形態では、自動アシスタント120の1つまたは複数の他の構成要素による使用のために注釈付き出力を生成し得る。たとえば、自然言語プロセッサ122は、クライアントデバイス1061の1つまたは複数のユーザインターフェース入力デバイスを介してユーザによって生成された自由形式の自然言語入力を処理することができる。生成された注釈付き出力は、自然言語入力の1つまたは複数の注釈、および随意に自然言語入力の用語のうちの1つまたは複数(たとえば、すべて)を含み得る。
【００４３】
いくつかの実装形態では、自然言語プロセッサ122は、自然言語入力内の様々なタイプの文法情報を識別して注釈を付けるように構成される。たとえば、自然言語プロセッサ122は、その文法上の役割で用語に注釈を付けるように構成された品詞タガー(tagger)(図示せず)を含み得る。たとえば、品詞タガーは、「名詞」、「動詞」、「形容詞」、「代名詞」などの品詞で各用語にタグ付けすることができる。また、たとえば、いくつかの実装形態では、自然言語プロセッサ122は、追加および/または代替として、自然言語入力内の用語間の構文関係を判定するように構成された係り受け解析装置(dependency parser)(図示せず)を含み得る。たとえば、係り受け解析装置は、どの用語が他の用語を修飾するか、文の主語および動詞、などを判定することができ(たとえば、解析木)、そのような係り受けに注釈を付けることができる。
【００４４】
いくつかの実装形態では、自然言語プロセッサ122は、追加および/または代替として、(たとえば、文学の登場人物、著名人、公人などを含む)人々、組織、場所(現実および架空)などの参照など、1つまたは複数のセグメント内のエンティティ参照に注釈を付けるように構成されたエンティティタガー(図示せず)を含み得る。いくつかの実装形態では、エンティティに関するデータは、知識グラフ(図示せず)など、1つまたは複数のデータベース内に記憶され得る。いくつかの実装形態では、知識グラフは、周知のエンティティ(および、場合によっては、エンティティ属性)を表すノード、ならびにノードを接続し、エンティティ間の関係を表すエッジを含み得る。たとえば、「バナナ」ノードは、「フルーツ」ノードに(たとえば、子として)接続され得、「フルーツ」ノードは、次に、「農産物」および/または「食料」ノードに(たとえば、子として)接続され得る。別の例として、「Hypothetical Cafe」と呼ばれるレストランは、その住所、提供される食品のタイプ、時間、連絡情報などの属性をやはり含むノードによって表され得る。「Hypothetical Cafe」ノードは、いくつかの実装形態では、エッジによって、「レストラン」ノード、「ビジネス」ノード、そのレストランが位置する街および/または州を表すノードなど、(たとえば、子対親の関係を表す)1つまたは複数の他のノードに接続され得る。
【００４５】
自然言語プロセッサ122のエンティティタガーは、(たとえば、人々など、エンティティクラスのすべての参照の識別を可能にするために)高いレベルの粒度で、かつ/または(たとえば、特定の人物など、特定のエンティティのすべての参照の識別を可能にするために)低いレベルの粒度でエンティティの参照に注釈を付けることができる。エンティティタガーは、特定のエンティティを転換する(resolve)ために自然言語入力のコンテンツに依存し得、かつ/または特定のエンティティを転換するために知識グラフまたは他のエンティティデータベースと随意に通信し得る。
【００４６】
いくつかの実装形態では、自然言語プロセッサ122は、追加および/または代替として、1つまたは複数の文脈上の手掛かりに基づいて、同じエンティティの参照をグループ化するか、または「クラスタ化」するように構成された相互参照レゾルバ(coreference resolver)(図示せず)を含み得る。たとえば、相互参照レゾルバを利用して、自然言語入力「私たちが前回あそこで食事をとったときHypothetical Cafeが気に入りました」において「あそこ」という用語を「Hypothetical Cafe」に転換することができる。
【００４７】
いくつかの実装形態では、自然言語プロセッサ122の1つまたは複数の構成要素は、自然言語プロセッサ122の1つまたは複数の他の構成要素からの注釈に依存し得る。たとえば、いくつかの実装形態では、指定されたエンティティタガーは、特定のエンティティのすべての言及に注釈を付ける際に、相互参照レゾルバおよび/または係り受け解析器からの注釈に依存し得る。また、たとえば、いくつかの実装形態では、相互参照レゾルバは、同じエンティティの参照をクラスタ化する際に、係り受け解析器からの注釈に依存し得る。いくつかの実装形態では、特定の自然言語入力を処理する際に、自然言語プロセッサ122の1つまたは複数の構成要素は、関連する前の入力および/または特定の自然言語入力外の他の関係データを使用して、1つまたは複数の注釈を判定し得る。
【００４８】
いくつかの実装形態では、ダイアログ状態トラッカー124は、たとえば、人間対コンピュータ対話セッションの過程にわたる、複数のダイアログセッションにわたる、かつ/または会議ダイアログセッションの間の、1つまたは複数のユーザの目標(または「意図」)の信用状態を含む「ダイアログ状態」を追跡するように構成され得る。ダイアログ状態を判定する際に、いくつかのダイアログ状態トラッカーは、ダイアログセッション内のユーザ発話およびシステム発話に基づいて、ダイアログ内でインスタンス化されたスロットに対して最も可能性が高い値を判定することを求めることができる。いくつかの技法は、スロットのセットおよびそれらのスロットに関連する値のセットを定義する固定されたオントロジーを利用する。いくつかの技法は、追加または代替として、個々のスロットおよび/または領域に合うように適合され得る。たとえば、いくつかの技法は、各領域内の各スロットタイプに対してモデルをトレーニングすることを要求し得る。
【００４９】
ダイアログマネージャ126は、たとえば、ダイアログ状態トラッカー124によって提供された現在のダイアログ状態を、複数の候補応答活動の1つまたは複数の「応答活動」にマッピングするように構成され得、次いで、それらの応答活動が自動アシスタント120によって実行される。応答活動は、現在のダイアログ状態に応じて、様々な形態で出現し得る。たとえば、最後の順番(たとえば、最終的なユーザ所望のタスクが実行されるとき)に先立って発生するダイアログセッションの順番に対応する初期および中間のダイアログ状態は、自動アシスタント120が追加の自然言語ダイアログを出力することを含めて、様々な応答活動にマッピングされ得る。この応答ダイアログは、たとえば、ユーザは、そのユーザが実行することを意図するとダイアログ状態トラッカー124が確信するある活動(たとえば、スロットを満たすこと)に関するパラメータを提供するという要求を含み得る。いくつかの実装形態では、応答活動は、「要求する」(たとえば、スロットを満たすためのパラメータを求める)、「提供する」(たとえば、活動または活動の過程をユーザに示唆する)、「選択する」、「知らせる」(たとえば、ユーザに要求された情報を提供する)、「一致なし」(たとえば、ユーザの最後の入力が理解されなかったことをユーザに通知する)などの活動を含み得る。
【００５０】
様々な実装形態では、コンテンツ表示エンジン130は、スタンドアロンマルチモダルアシスタントデバイス106Nなど、ディスプレイ111を備えたクライアントデバイス106を使用してレンダリングするためのコンテンツを選択するように構成され得る。コンテンツ表示エンジン130は、汎用コンテンツ、および本明細書で「ターゲットコンテンツ」と呼ばれるもののうちの1つまたは両方の表示を選択し得る。汎用コンテンツは、特定の人物をターゲットにしないデータ項目を表すグラフィカル要素(たとえば、テキスト、タイル、動画、カードなど)を含み得る。汎用コンテンツは、天候関連情報、一般的なニュース記事、ジョーク、雑項目などのようなものを含み得る。
【００５１】
ターゲットコンテンツは、対照的に、1人または複数の特定の人々を対象とする。たとえば、図1では、ユーザアカウントエンジン132は、たとえば、1人または複数の所謂「登録ユーザ」によって制御される、ユーザプロファイルインデックス134またはその他の中に記憶されたコンテンツに対するアクセスを自動アシスタント120に提供するように構成され得る。登録ユーザは、たとえば、その登録ユーザの制御に関連する、かつ/またはさもなければ、その登録ユーザの制御下にある情報を含む、インデックス134内に記憶されたオンラインプロファイルを有し得る。これは、登録ユーザのオンラインカレンダー、登録ユーザの電子メール、登録ユーザのソーシャルメディアアカウントおよび/または活動、登録ユーザのテキストメッセージ、登録ユーザの選好、登録ユーザの関心、登録ユーザによって作成されたかつ/または登録ユーザによって少なくとも部分的に制御された文書、登録ユーザによって制御されたスマートアプライアンス(たとえば、照明、ロック、サーモスタット)、登録ユーザに関連するタスク/リマインダ、登録ユーザがアクセス可能なメディアライブラリ、登録ユーザと自動アシスタント120との間の過去のダイアログセッション(たとえば、記録、論じた話題、会話の文脈など)を示すデータ、(たとえば、登録ユーザが動作させる1つまたは複数のデバイスの位置座標センサーによって生成された)登録ユーザの現在のかつ/または過去の場所など、幅広い情報を含み得る。登録ユーザに関連するすべての情報をインデックス134内に記憶する必要はない。この情報は、追加または代替として、他の場所に記憶されてよい。自動アシスタント120がユーザ制御されたリソースにアクセスできるように、そのアカウントが自動アシスタント120に「登録される」という意味で、ユーザのアカウントは「登録され」得る。
【００５２】
様々な実装形態では、コンテンツ表示エンジン130は、登録ユーザのアカウントに関連する(すなわち、彼らのオンラインプロファイルに関連する)情報にアクセスする(たとえば、そこから、プルする、プッシュされる)ように構成され得る。たとえば、コンテンツ表示エンジン130は、登録ユーザのオンラインカレンダーからの次回のイベント、登録ユーザのリマインダリストからのリマインダ、登録ユーザの買い物リスト、登録ユーザによる過去の媒体消費(たとえば、聴いた歌、観たビデオなど)、登録ユーザによって作成されたかつ/または登録ユーザに関するソーシャルメディア掲示などのデータ項目を取得し得る。これらのデータ項目は、たとえば、スタンドアロンマルチモダルアシスタントデバイス106Nのディスプレイ111上に表示され得るターゲットグラフィカル要素を生成するために、たとえば、コンテンツ表示エンジン130によって使用され得る。コンテンツ表示エンジン130はクラウドベースの自動アシスタント構成要素119の一部として示されるが、これは限定的であることを意味しない。様々な実装形態では、コンテンツ表示エンジン130は、1つまたは複数のクライアントデバイス106上など、異なるコンピューティングシステム上で全体的にまたは一部実装され得る。
【００５３】
様々な実装形態では、スタンドアロンマルチモダルアシスタントデバイス106Nのディスプレイ111は、付近の人物の検出に応答して、非アクティブ状態(たとえば、わずかな電力を使用するか、または電力を全く使用しない、スリープ)からアクティブ状態(たとえば、コンテンツのレンダリング)に遷移し得る。スタンドアロンマルチモダルアシスタントデバイス106Nは、PIRセンサー、マイクロフォン(雑音を検出するため)、カメラ、人物が携行するデバイスによって放出された信号など、付近の人物を検出するために様々なセンサーに依存し得る。
【００５４】
図2は、様々な実装形態による、たとえば、ディスプレイ111および/またはコンテンツ表示エンジン130によって実装され得る1つの例示的な状態図を示す。状態図は、4つの状態、すなわち、「表示オフ」、「周囲(AMBIENT)」、「ホーム」、および「活動要求」を含む。「表示オフ」は、ディスプレイ111が、たとえば、わずかな電力を使用するか、または電力を全く使用しないスリープ状態に留まるデフォルト状態であり得る。スタンドアロンマルチモダルアシスタントデバイス106Nが、付近に人々がいない状態で孤立した状態に留まる間、「表示オフ」は現在の状態に留まることができる。いくつかの実装形態では、現在の状態が「表示オフ」である間、ユーザ(存在するものとしてまだ検出されていない)は、たとえば、呼出しフレーズに続き、現在の状態を「活動要求」状態に直接遷移し得る特定の要求を話すことによって、依然として自動アシスタント120に活動を要求し得る。
【００５５】
いくつかの実装形態では、1人または複数の人物が付近に検出されたとき(すなわち、「占有」)、現在の状態は「周囲」状態に遷移し得る。「周囲」状態で、コンテンツ表示エンジン130は、たとえば、その美的な魅力に基づいて選択され得る周囲コンテンツを表示し得る。たとえば、コンテンツ表示エンジン130は、従来のコンピューティングデバイス上にスクリーンセーバとして表示されることが多い風景または他の類似のコンテンツの1つまたは複数のデジタル画像および/またはビデオを表示し得る。いくつかの実装形態では、占有が、たとえば、少なくとも所定の時間期間にわたって、スタンドアロンマルチモダルアシスタントデバイスともはや併存していないと判定された場合、現在の状態は、「周囲」から「表示オフ」に再び遷移し得る。図2に示すように、いくつかの実装形態では、現在の状態が「周囲」である場合、ユーザは、たとえば、呼出しフレーズに続き、現在の状態を「活動要求」状態に遷移し得る特定の要求を話すことによって、依然として、自動アシスタント120から活動を要求することができる。他の実装形態では、「周囲」状態が存在しないことがあり、人物の併存(占有)の検出に応答して、現在の状態は「表示オフ」から「ホーム」に直接遷移し得る。
【００５６】
「ホーム」状態で、コンテンツ表示エンジン130は、上記で説明した汎用および/またはターゲットデータ項目を表す様々なグラフィカル要素を表示し得る。いくつかの実装形態では、データ項目は、(たとえば、ディスプレイ111がタッチスクリーンであるか否かに応じて)対話型であってもまたはそうでなくてもよい、カードまたはタイルとして表示され得る。先に述べたように、データ項目は、場合によっては、データ項目に(自動的にまたは手動で)割り当てられた優先順位、(判定された場合)併存している人物の識別情報、時刻、時期など、様々な基準に基づいてランク付けされ得る。データ項目がカードとして、たとえば、スタック内に提示されるとき、たとえば、下位のカードが比較的低い優先順位を有する状態で、一番上のカードが最高の優先順位であることにより、ランク付けが反映され得る。たとえば、ディスプレイ111の一部分を占有するタイルとしてデータ項目が提示されるとき、たとえば、タイルの配置(たとえば、左上または右上が最高優先順位であり得る)および/またはタイルのサイズ(たとえば、タイルが大きければ大きいほど、優先順位が高まる)でランク付けが反映され得る。
【００５７】
「ホーム」状態の間、ユーザが、たとえば、タイルまたはカードをタップすることによってデータ項目を表すグラフィカル要素のうちの1つまたは複数に関与した場合、現在の状態は、「活動要求」状態に遷移し得る。同様に、ユーザが自動アシスタント120に対して音声要求を発話した場合(たとえば、「OK、アシスタント、…って何ですか?」)、現在の状態は、「活動要求」状態に遷移し得る。いくつかの実装形態では、併存しているユーザが、少なくとも所定の時間間隔にわたって、自動アシスタント120と音声で関与せず、ディスプレイ111上にレンダリングされたデータ項目と対話してもいない場合(すなわち、「タイムアウト」)、現在の状態は、「ホーム」から「周囲」に再度遷移することが可能であり、または「周囲」状態が存在しない場合には、「表示オフ」に遷移することすら可能である。「ホーム」状態から「周囲」(または、「表示オフ」)状態への遷移をトリガし得る他のイベントは、ユーザからの特定の要求(たとえば、ディスプレイ上の終了ボタンをタップすること)、併存しているユーザが「周囲」に再度遷移する意図をシグナリングし得る、戻るジェスチャー(たとえば、カメラまたは他のセンサーの前で手を振る)からの特定の要求などを含むが、これらに限定されない。
【００５８】
「活動要求」状態において、いくつかの実施形態では、要求された活動またはタスクに関するコンテンツが、たとえば、ディスプレイ全体にわたって、または新しいデータ項目のカードまたはタイルとして、ディスプレイ111上にレンダリングされ得る。たとえば、併存しているユーザがキッチンタイマーを5分に設定させる音声要求を発話したと仮定する。いくつかの実装形態では、ディスプレイ全体、またはその一部分(たとえば、カードまたはタイル)は、キッチンタイマーにどの程度の時間が残っているかを表示し得る。併存しているユーザが著名人に関する情報に対して音声要求を発話したと仮定する。いくつかの実装形態では、応答コンテンツは、自動アシスタント120による自然言語出力として音声で提供され得、かつ/またはディスプレイ上にレンダリングされ得る。いくつかの実装形態では、自動アシスタント120が応答コンテンツを可聴的に提供すると同時に、ユーザの要求または応答コンテンツに関する他のコンテンツ(ただし、必ずしもユーザによって具体的に要求されるとは限らない)が表示され得る。たとえば、ユーザがその著名人の誕生日について尋ねた場合、その著名人の誕生日が可聴的に出力され得ると同時に、その著名人に関する他の情報(たとえばその著名人が主演する映画の上映時間へのディープリンク、その著名人の写真など)がディスプレイ111上にレンダリングされ得る。他の実装形態では、ディスプレイ111は、(実際には「活動要求」状態を有さない)「活動要求」状態にある間、「ホーム」状態から変更されない状態に留まることができ、ユーザは、自動アシスタント120から可聴応答のみを受信することができる。
【００５９】
現在の状態は、様々なイベントに応答して、「活動要求」状態から「ホーム」状態に(または、「周囲」状態もしくは「表示オフ」状態にすら)遷移し得る。たとえば、要求された活動は完了し得る(たとえば、キッチンタイマーは取り消され得るか、またはキッチンタイマーが経過し、併存しているユーザによって無音化され得る)。そのような遷移をトリガし得る他のイベントは、タイムアウト、戻るジェスチャー、「ホーム」状態に戻る特定の要求などを含む。
【００６０】
いくつかの実装形態では、自動アシスタント120によって実行される活動および/またはタスクは、完了しない場合があり、かつ/または保留状態に留まる場合がある。たとえば、ユーザは、歌またはビデオを途中で休止することがある。別の例として、ユーザは、いくつかのスロットが活動パラメータで満たされることを要求するタスクの要求を開始することが可能であったが、要求されたスロットのすべてを満たすことができない可能性がある。たとえば、ユーザはピザを注文し始めることが可能であったが、中止して、部屋を去り、何のトッピングを望むかを他の人に尋ねるか、または他の人々から支払情報を要求することがある。十分な時間が経過した場合、タイムアウトが発生し得、現在の状態は、「活動要求」状態または「ホーム」状態から「周囲」状態または「表示オフ」状態に遷移し得る。
【００６１】
様々な実装形態では、未完了のタスクを表すターゲットデータ項目を生成することができ、そのタスクを完了するための対話型の対応するグラフィカル要素がレンダリングされ得る。たとえば、ユーザがピザ注文の完了に戻るとき、いくつかの実装形態では、未完了の注文を表す新しいタイルまたはカードがディスプレイ111上にレンダリングされ得る。場合によっては、たとえば、自動アシスタント120が満たされていないスロット値(たとえば、ピザのトッピング、支払情報など)をユーザから音声で要求することで、注文プロセスを継続するために、ユーザはこの新しいタイルまたはカードをタップし得る。いくつかの実装形態では、別のユーザが室内に入り、データ項目を表すグラフィカル要素がそのユーザに提示された場合に、未完了のタスクデータ項目を表すグラフィカル要素が提示されても提示されなくてもよいように、未完了のタスクを表すこの新しいデータ項目は、要求側のユーザをターゲットにし得る。
【００６２】
図3は、ユーザ302が付近に検出されたとき、ディスプレイ311を備えたスタンドアロンマルチモダルアシスタントデバイス306がどのように動作し得るかの一例を示す。この例では、ユーザ302は、たとえば、PIRセンサー、マイクロフォン、カメラなど、存在センサー(図示せず)を使用して、アシスタントデバイス306によって単に検出されている。この例では、スタンドアロンマルチモダルアシスタントデバイス306は、ユーザの占有の検出に応答して、前に説明した「表示オフ」状態から「周囲」状態に遷移した。したがって、ディスプレイ311上にレンダリングされるコンテンツは、時間(4:15)、日付(日曜、7月13日)、および外部温度(52度)など、汎用コンテンツを含む。また、ディスプレイ311上には、山の景色の画像もレンダリングされる。上述のように、従来のスクリーンセーバと同様に、スタンドアロンマルチモダルアシスタントデバイス306が「周囲」状態にある間に、様々な画像および/または動画がディスプレイ311上にレンダリングされ得る。
【００６３】
図4は、たとえば、ユーザ302の特定の識別情報が判定されるのに先立って「ホーム」状態にあるとき、図3のスタンドアロンマルチモダルアシスタントデバイス306がどのように動作し得るかの一例を示す。いくつかの実装形態では、「周囲」状態が存在しない場合があり、スタンドアロンマルチモダルアシスタントデバイス306は、ユーザ302の存在の検出に応答して、図4に示す「ホーム」状態に直接遷移し得る。この例では、カードおよび/またはタイルとして、3つのグラフィカル要素450が示されている。第1のグラフィカル要素450Aは、買い物リストを含む。第1のグラフィカル要素450Aの基礎をなすデータ項目は、ターゲットデータであり得、場合によっては、複数のユーザをターゲットにし得る。たとえば、家族は、家族のいずれかの構成員が編集する(たとえば、商品を追加する、商品を除去する)ことができる、共有された買い物リストを保持することがある。
【００６４】
第2のグラフィカル要素450Bは、Thadという名の登録ユーザをターゲットにした歯科医の予約を含む。第3のグラフィカル要素450Cは、Joannaという名のユーザをターゲットにした美容院の予約を含む。ユーザ302の識別情報はまだ判定されていないため、グラフィカル要素450A〜Cは、ユーザ302の識別情報に基づいてランク付けされていない。代わりに、それらをランク付けするために、他の信号が使用され得る。たとえば、Thadの歯科医の予約は、Joannaの美容院の予約よりも早く発生するため、Joannaの美容院の予約よりも高くランク付けされる(したがって、それより上位にレンダリングされる)。
【００６５】
次に、スタンドアロンマルチモダルアシスタントデバイス306はユーザ302がThadであると判定することができると仮定する。たとえば、ユーザ302は、ユーザ302がThadであると判定するために(たとえば、インデックス134内に記憶された)登録ユーザの音声プロファイルに対して照合される(スタンドアロンマルチモダルアシスタントデバイスまたは他のものに向けて)発話を行うことができる。追加または代替として、Thad(302)は、スタンドアロンマルチモダルアシスタントデバイス306によって検出される信号(たとえば、Wi-Fi、Bluetooth、RFIDなど)を放出するスマートフォンまたはスマートウォッチなど、モバイルデバイスを動作させている可能性がある。どちらの事例であっても、図4のグラフィカル要素450は、同様の配置で依然としてレンダリングされ得るが、これは、Thadの予約が最短にスケジュールされているため、既にThadの予約に最高優先順位が与えられているためである。しかしながら、いくつかの実装形態では、Thadは併存しているユーザであることが知られているため、「Thad」と言う名前を含むグラフィカル要素450Bの代わりに、「あなた」という用語を代わりに含んでもよい(これは図6に示されている)。
【００６６】
図5は、異なるユーザ303が存在するとして検出され、Joannaとして識別されるとき、図3〜図4のスタンドアロンマルチモダルアシスタントデバイス306が「ホーム」状態でどのように動作し得るかの一例を示す。同じグラフィカル要素450A〜Cが示されている。しかしながら、それらはここでは異なってランク付けされている。具体的には、グラフィカル要素450Cによって表されるJoannaの美容院の予約は、グラフィカル要素450Bによって表されるThadの歯科医の予約より後に発生するが、Joannaは併存しているユーザとして検出されているため、グラフィカル要素450Cは、ここでは、より高くランク付けされている。言い換えれば、Joannaの検出された識別情報は、グラフィカル要素450Bおよび450Cの基礎となる予約に関連する相対的な時間的緊急性よりも大きな影響をランク付けに及ぼす。
【００６７】
次に、図4において、Thadがグラフィカル要素450C(Joannaの美容院の予約)をスワイプしたと仮定する。それにより、Thadの存在下では図4のグラフィカル要素450Cをもはやレンダリングさせないことになる。場合によっては、異なるグラフィカル要素(図示せず)がそれに置き替わった可能性がある。図5に戻ると、Joannaがスタンドアロンマルチモダルアシスタントデバイス306と併存していると検出されたとき、Thadが前にスワイプしたにもかかわらず、グラフィカル要素450Cがレンダリングされ得る。これは、グラフィカル要素450Cの基礎となるデータ項目が、Thadではなく、Joannaをターゲットにしているためである。したがって、Thadがグラフィカル要素450Cをスワイプすることは、Joannaがその要素をスワイプするまで(または、予約がもはや関連しない十分な時間が経過するまで)、Thadが併存しているとして検出されるときはいつでもレンダリングされることを防ぐことができるが、Joannaが併存しているとして検出されるときには、グラフィカル要素450Cは、ディスプレイ311上に引き続きレンダリングされることになる。
【００６８】
図6では、同じスタンドアロンマルチモダルデバイス306は、併存しているユーザ302をThadとして認識し、現在「ホーム」状態にある。この例では、ピザ注文のタスクを開始するために、スタンドアロンマルチモダルアシスタントデバイス306、または自動アシスタントインターフェース(118)を提供する(たとえば、スタンドアロンマルチモダルアシスタントデバイス306を含むクライアントデバイスの協調エコシステムの)別のクライアントデバイスのいずれかを使用して、Thadが前に自動アシスタント120に関与したと仮定する。たとえば、Thadは何のトッピングを好むかを様々な家族の構成員に尋ねる必要があったため、Thadは注文を完了しなかったとさらに仮定する。図6では、この未完了のタスクは、満たされているスロット(たとえば、クラストスタイル=厚い、サイズ=ラージ)および満たされていないスロット値(トッピング=???)など、未完了のタスクに関する情報を含むグラフィカル要素450Dとして提示されている。様々な実装形態では、Thad(302)は、グラフィカル要素450D上をタップして、タスクの完了を開始することができる。いくつかの実装形態では、これは、自動アシスタント120が何らかの見逃したスロット値を音声認識可能に要求することができることを含み得る。追加または代替として、いくつかの実装形態では、Thadは、ディスプレイ311と対話して、タスクを完了することができる。やはり図6に示すのは、新しいグラフィカル要素450Eである。Thadをターゲットにし得るグラフィカル要素450Eは、ThadのソーシャルメディアアカウントにプッシュされたThadの友人によって掲載されたソーシャルメディア更新の形態でデータ項目を表している。
【００６９】
図7は、本明細書で開示する実装形態による例示的な方法700を示すフローチャートである。便宜上、フローチャートの動作について、それらの動作を実行するシステムを参照しながら説明する。このシステムは、自動アシスタント120を実装するコンピューティングシステムの、かつ/またはクライアントデバイス(たとえば、106、306)の1つまたは複数の構成要素など、様々なコンピュータシステムの様々な構成要素を含み得る。その上、方法700の動作は特定の順序で示されているが、これは限定的であることを意味しない。1つまたは複数の動作は、並べ替えられてよく、省かれてよく、または追加されてもよい。
【００７０】
ブロック702において、システムは、占有の監視を実行し得る。たとえば、システムは、PIRセンサー、カメラ、マイクロフォンなどのセンサーからの信号を監視し得る。信号に対する潜在的に急激な変化に基づいて、かつ/または様々な従来の存在検出技法を使用して、ブロック704において、システムは、占有を検出する場合もまたは検出しない場合もある。たとえば、いくつかの実装形態では、存在センサーは、連続的であることに加えて、またはその代わりに、たとえば、エネルギー、コンピューティングリソースなどを節約するために、周期的に動作し得る。各センサー動作の間、占有が検出されない場合、方法700はブロック702に戻り得る。
【００７１】
しかしながら、少なくとも1人の人物の占有がブロック704において検出された場合、方法700は、ブロック706に進むことができる。ブロック706において、システムは、スタンドアロンマルチモダルデバイス(たとえば、106N、306)のディスプレイ(たとえば、111、311)を非アクティブ状態(たとえば、オフ、スリープなど)からアクティブ状態に遷移させることができる。「周囲」状態が採用されるいくつかの実装形態では、ディスプレイは、最初、汎用データ項目に関連するグラフィカル情報で、かつ/または一般的なスクリーンセーバスタイルの風景でポピュレートされ得る。他の実装形態では、ディスプレイは、最初、「ホーム」状態に進み得る。
【００７２】
ブロック706の後に示されるが、その前に、または同時に、発生し得るブロック708において、システムは、たとえば、ユーザアカウントエンジン132によって、1人または複数の登録ユーザをターゲットにした複数のデータ項目を取得し得る。本明細書で述べるように、様々な実装形態では、1人または複数の登録ユーザは、スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタント(120)にとってアクセス可能なアカウントを有し得る。複数のデータ項目は、登録ユーザのアカウントに基づいて取得可能であり、リマインダ、買い物リスト、登録ユーザが特に関心を持つ新しい商品、ソーシャルメディア更新、予約、着信通信(たとえば、電子メール、テキスト)など、様々な異なるものを含み得る。
【００７３】
ブロック710において、システムは、検出された人物の識別情報が検出されるかどうかを判定し得る。たとえば、検出された人物が発話を行った場合、システムは、話者の音声と前に記憶された音声プロファイルの照合を試行することができる。いくつかの実装形態では、発話の次元削減された埋め込みを生成し、登録ユーザによって提供された発話から前に生成された1つまたは複数の他の次元削減された基準埋め込みと比較することができる。追加または代替として、検出された人物は、基準熱シグネチャと照合し得る、PIRセンサーによって生成された熱シグネチャなど、他の信号を使用して、(カメラが利用可能であるとき)顔認識によって、人物が携行するクライアントデバイスが放出する信号を検出することによって、特定の登録ユーザが一定の時間に付近にいることがスケジュールされていることを(たとえば、オンラインカレンダーを介して)判定することなどによって、識別され得る。
【００７４】
ブロック710において、検出された人物が識別された場合、方法700はブロック712に進む。ブロック712において、システムは、たとえば、コンテンツ表示エンジン130によって、検出された識別情報に基づいて、複数のデータ項目をランク付けし得る。ブロック714において、システムは、1人または複数の登録ユーザとは無関係である複数のデータ項目に関連する優先順位に基づいて、複数のデータ項目をさらにランク付けし得る。いくつかの実装形態では、検出された人物の判定された識別情報は、1人または複数の登録ユーザとは無関係である優先順位よりも大きな影響をランク付けに及ぼし得る。ブロック710において、検出された人物の識別情報が検出されない場合、いくつかの実装形態では、ブロック712は省かれてよく、方法700は直接ブロック714に進むことができる。
【００７５】
ブロック716において、システムは、ランク付けされた複数のデータ項目を示すグラフィカル情報をディスプレイ上にレンダリングし得る。このグラフィカル情報は、カード、タイル、ティッカーテープ、ポップアップウィンドウ、通知などのグラフィカル要素を含み得る。本明細書で述べるように、ディスプレイがタッチスクリーンである実装形態では、これらのグラフィカル要素のうちの1つまたは複数は、ユーザがそれらのグラフィカル要素の上をタップして、追加の情報を取得するように、かつ/もしくは他の活動を実行するように、ならびに/またはそれらのグラフィカル要素をスワイプして退けるように、対話型であり得る。
【００７６】
図8は、本明細書で説明する技法の1つまたは複数の態様を実行するために随意に利用され得る例示的なコンピューティングデバイス810のブロック図である。コンピューティングデバイス810は、一般に、バスサブシステム812を介していくつかの周辺デバイスと通信する、少なくとも1つのプロセッサ814を含む。これらの周辺デバイスは、たとえば、メモリサブシステム825およびファイル記憶サブシステム826を含む記憶サブシステム824と、ユーザインターフェース出力デバイス820と、ユーザインターフェース入力デバイス822と、ネットワークインターフェースサブシステム816とを含み得る。入力デバイスおよび出力デバイスは、コンピューティングデバイス810とのユーザ対話を可能にする。ネットワークインターフェースサブシステム816は、外部ネットワークに対するインターフェースを提供し、他のコンピューティングデバイス内の対応するインターフェースデバイスに結合される。
【００７７】
ユーザインターフェース入力デバイス822は、キーボード、マウスなどのポインティングデバイス、トラックボール、タッチパッド、またはグラフィカルタブレット、スキャナ、ディスプレイ内に組み込まれたタッチスクリーン、音声認識システム、マイクロフォンなどの音声入力デバイス、および/または他のタイプの入力デバイスを含み得る。概して、「入力デバイス」という用語の使用は、すべての考えられるタイプのデバイス、および情報をコンピューティングデバイス810内にまたは通信ネットワーク上に入力するための方法を含むことを意図する。
【００７８】
ユーザインターフェース出力デバイス820は、ディスプレイサブシステム、プリンタ、ファックス機械、またはオーディオ出力デバイスなどの非視覚的ディスプレイを含み得る。ディスプレイサブシステムは、陰極線管(CRT)、液晶ディスプレイ(LCD)などのフラットパネルデバイス、投影デバイス、または視覚画像を作成するためのいくつかの他の機構を含み得る。ディスプレイサブシステムは、オーディオ出力デバイスを介するなどして、非視覚的な表示を提供してもよい。概して、「出力デバイス」という用語の使用は、すべての考えられるタイプのデバイス、および情報をコンピューティングデバイス810からユーザに、もしくは別の機械に、またはコンピューティングデバイスに出力する方法を含むことを意図する。
【００７９】
記憶サブシステム824は、本明細書で説明するモジュールのうちのいくつかまたはすべての機能性を提供するプログラミング構造およびデータ構造を記憶する。たとえば、記憶サブシステム824は、図7の方法の選択された態様を実行するため、ならびに図1に示した様々な構成要素を実装するための論理を含み得る。
【００８０】
これらのソフトウェアモジュールは、概して、プロセッサ814によって単独で、または他のプロセッサと組み合わせて実行される。記憶サブシステム824内で使用されるメモリ825は、プログラム実行の間に命令およびデータを記憶するためのメインランダムアクセスメモリ(RAN)830、および固定命令が記憶される読取り専用メモリ(ROM)832を含むいくつかのメモリを含み得る。ファイル記憶サブシステム826は、プログラムファイルおよびデータファイルに対して永続的記憶を提供することができ、ハードディスクドライブ、関連するリムーバブルメディアとともにフロッピーディスクドライブ、CD-ROMドライブ、光ドライブ、またはリムーバブルメディアカートリッジを含み得る。いくつかの実装形態の機能性を実装するモジュールは、ファイル記憶サブシステム826によって記憶サブシステム824内に、またはプロセッサ814によってアクセス可能な他の機械の中に記憶され得る。
【００８１】
バスサブシステム812は、コンピューティングデバイス810の様々な構成要素およびサブシステムに互いと意図されるように通信させるための機構を提供する。バスサブシステム812は、単一のバスとして概略的に示されているが、バスサブシステムの代替実装形態は、複数のバスを使用し得る。
【００８２】
コンピューティングデバイス810は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、または任意の他のデータ処理システムもしくはデータ処理コンピューティングデバイスを含めて、様々なタイプのものであってよい。コンピュータおよびネットワークの絶えず変化する性質により、図8に示すコンピューティングデバイス810の記述は、いくつかの実装形態を示すための特定の例として単に意図される。図8に示すコンピューティングデバイスよりも多数のまたは少数の構成要素を有するコンピューティングデバイス810の多くの他の構成が可能である。
【００８３】
本明細書で論じるいくつかの実装形態がユーザに関する個人情報(たとえば、他の電子通信から抽出されたユーザデータ、ユーザのソーシャルネットワークに関する情報、ユーザの場所、ユーザの時間、ユーザの生体情報、ならびにユーザの活動および人口統計情報、ユーザ間の関係など)を収集して使用することができる状況において、情報が収集されるかどうか、個人情報が記憶されるかどうか、個人情報が使用されるかどうか、およびユーザに関する情報がどのように収集され、記憶され、使用されるかを制御するための1つまたは複数の機会がユーザに提供される。すなわち、本明細書で論じるシステムおよび方法は、関連するユーザからそれを行うための明示的な認可を受領したときのみ、ユーザの個人情報を収集、記憶、および/または使用する。
【００８４】
たとえば、プログラムまたは特徴が、その特定のユーザ、またはそのプログラムまたは特徴に関連する他のユーザに関するユーザ情報を収集するかどうかに対する制御がユーザに提供される。個人情報が収集されることになる各ユーザには、その情報が収集されるかどうかに関して、かつその情報のどの部分が収集されるべきかに関して、許可または認可を提供するために、そのユーザに関連する情報収集に対する制御を可能にするための1つまたは複数のオプションが提示される。たとえば、通信ネットワーク上で1つまたは複数のそのような制御オプションがユーザに提供され得る。加えて、一定のデータは、個人的に識別可能な情報が除去されるように、そのデータが記憶または使用される前に、1つまたは複数の方法で処理され得る。一例として、個人的に識別可能な情報が判定され得ないように、ユーザの識別情報は処理され得る。別の例として、ユーザの詳しい場所が判定され得ないように、ユーザの地理的場所はより大きな領域に一般化され得る。
【００８５】
いくつかの実装形態が本明細書で説明され示されてきたが、本明細書で説明した、機能を実行するため、および/または結果および/または1つまたは複数の利点を取得するために様々な他の手段および/または構造を利用することが可能であり、そのような変種および/または修正の各々が本明細書で説明した実装形態の範囲内であると見なされる。より一般的に、本明細書で説明した、すべてのパラメータ、寸法、材料、および構成は、例示的であることを意味し、実際のパラメータ、寸法、材料、および/または構成は、この/これらの教示が使用される特定の1つまたは複数の適用例に左右されることになる。当業者は、通常の実験以上の実験を使用せずに、本明細書で説明した特定の実装形態に対する多くの均等物を認識するであろうし、またはそれらを確認することが可能であろう。したがって、前述の実装形態は、例示としてのみ提示され、添付の特許請求の範囲およびそれに対する均等物の範囲内で、具体的に説明され、特許請求される実装形態以外の実装形態を別様に実践することが可能であることを理解されよう。本開示の実装形態は、本明細書で説明したそれぞれ個々の特徴、システム、物品、材料、キット、および/または方法に関する。加えて、2つ以上のそのような特徴、システム、物品、材料、キット、および/または方法の任意の組合せは、そのような特徴、システム、物品、材料、キット、および/または方法が相互に矛盾がない場合、本開示の範囲内に含まれる。
【符号の説明】
【００８６】
105  存在センサー
1061〜N  クライアントコンピューティングデバイス
1061  第1のクライアントデバイス、クライアントデバイス
106N  別のクライアントデバイス、第2のクライアントデバイス、クライアントデバイス、スタンドアロンマルチモダルアシスタントデバイス
1091  スピーカ
109N  スピーカ
111  ディスプレイ
111N  ディスプレイ
114  音声捕捉/テキスト対音声(「TTS」)/STTモジュール
116  TTSモジュール
117  STTモジュール
118  自動アシスタントクライアント
1181  自動アシスタントクライアント
118N  自動アシスタントクライアント
119  クラウドベースの自動アシスタント構成要素
120  自動アシスタント
120A  第1の自動アシスタント、自動アシスタント
120B  第2の自動アシスタント
122  自然言語プロセッサ
124  ダイアログ状態トラッカー
126  ダイアログマネージャ
128  自然言語生成器
130  コンテンツ表示エンジン
132  ユーザアカウントエンジン
134  ユーザプロファイルインデックス、インデックス
302  ユーザ
303  ユーザ
306  スタンドアロンマルチモダルアシスタントデバイス、アシスタントデバイス
311  ディスプレイ
450  グラフィカル要素
450A〜E  グラフィカル要素
450A  第1のグラフィカル要素
450B  第2のグラフィカル要素
450C  第3のグラフィカル要素
700  方法
810  コンピューティングデバイス
812  バスサブシステム
814  プロセッサ
816  ネットワークインターフェースサブシステム
820  ユーザインターフェース出力デバイス
822  ユーザインターフェース入力デバイス
824  記憶サブシステム
825  メモリサブシステム、メモリ
826  ファイル記憶サブシステム
830  メインランダムアクセスメモリ(RAM)
832  読取り専用メモリ(ROM)
【図１】
2021509749.tif 000003
【図２】
2021509749.tif 000004
【図３】
2021509749.tif 000005
【図４】
2021509749.tif 000006
【図５】
2021509749.tif 000007
【図６】
2021509749.tif 000008
【図７】
2021509749.tif 000009
【図８】
2021509749.tif 000010
【手続補正書】
【提出日】令和2年8月25日(2020.8.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
1つまたは複数のプロセッサによって実装される方法であって、
未確認のユーザがスタンドアロンマルチモダルアシスタントデバイスと併存していることを検出するステップであって、前記スタンドアロンマルチモダルアシスタントデバイスがディスプレイを備える、検出するステップと、
前記検出に基づいて、
1人または複数の登録ユーザをターゲットにした複数のデータ項目を取得するステップであって、前記1人または複数の登録ユーザが、前記スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタントにとってアクセス可能なアカウントを有し、前記複数のデータ項目が、前記登録ユーザの前記アカウントに基づいて取得される、取得するステップと、
前記複数のデータ項目に関連する優先順位に基づいて、前記複数のデータ項目をランク付けするステップであって、前記優先順位が、前記1人または複数の登録ユーザとは無関係である、ランク付けするステップと、
前記ランク付けされた複数のデータ項目を示すグラフィカル情報を前記ディスプレイ上にレンダリングするステップと
を含む、方法。
【請求項２】
前記検出に基づいて、前記ディスプレイを非アクティブ状態からアクティブ状態に遷移させるステップをさらに含む、請求項1に記載の方法。
【請求項３】
前記検出するステップが、前記未確認のユーザから自然言語入力を受信するステップを含む、請求項1または2に記載の方法。
【請求項４】
前記検出するステップが、存在センサーから信号を受信するステップを含む、請求項1から3のいずれか一項に記載の方法。
【請求項５】
前記存在センサーが、カメラ、マイクロフォン、およびパッシブ赤外線センサーのうちの1つまたは複数を含む、請求項4に記載の方法。
【請求項６】
前記未確認のユーザの識別情報を判定するステップと、
前記識別情報に基づいて、前記取得されたデータ項目をさらにランク付けするステップと
をさらに含む、請求項1から5のいずれか一項に記載の方法。
【請求項７】
前記ユーザの前記判定された識別情報が、前記取得されたデータ項目がどのようにランク付けされるかに対して、前記1人または複数の登録ユーザとは無関係である前記優先順位よりも大きな影響力を及ぼす、請求項6に記載の方法。
【請求項８】
前記ランク付けされた複数のデータ項目を示す前記グラフィカル情報が、複数のグラフィカル要素を含み、各グラフィカル要素が、前記複数のデータ項目のそれぞれのデータ項目を表す、請求項1から7のいずれか一項に記載の方法。
【請求項９】
前記ディスプレイが、タッチスクリーンを備え、前記複数のグラフィカル要素のうちの1つ複数が対話型である、請求項8に記載の方法。
【請求項１０】
1つまたは複数のプロセッサによって実装される方法であって、
ある人物がスタンドアロンマルチモダルアシスタントデバイスと併存していることを検出するステップであって、前記スタンドアロンマルチモダルアシスタントデバイスがディスプレイを備える、検出するステップと、
前記スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタントにとってアクセス可能なアカウントを有する、複数の登録ユーザの所与の登録ユーザであるとして前記人物を識別するステップと、
前記検出および前記識別に基づいて、
前記複数の登録ユーザをターゲットにした複数のデータ項目を取得するステップであって、前記複数のデータ項目が、前記登録ユーザの前記アカウントに基づいて取得される、取得するステップと、
前記所与の登録ユーザの識別情報に基づいて、前記複数のデータ項目をランク付けするステップと、
前記ランク付けされた複数のデータ項目を示す情報を前記ディスプレイ上にレンダリングするステップと
を含む、方法。
【請求項１１】
前記ランク付けされた複数のデータ項目を示す前記情報が、複数のグラフィカル要素を含み、各グラフィカル要素が、前記複数のデータ項目のそれぞれのデータ項目を表す、請求項10に記載の方法。
【請求項１２】
前記複数のグラフィカル要素が、複数のグラフィカルカードまたはグラフィカルタイルを含む、請求項11に記載の方法。
【請求項１３】
前記所与の登録ユーザから入力を受信するステップであって、前記入力が、前記複数のグラフィカル要素の所与のグラフィカル要素に対して作用し、前記所与のグラフィカル要素が、前記複数の登録ユーザのうちの異なる登録ユーザをターゲットにした、前記ランク付けされた複数のデータ項目のうちのデータ項目に関連する、受信するステップと、
前記入力に基づいて、前記所与のグラフィカル要素を前記ディスプレイから除去するステップと、
別の人物が前記スタンドアロンマルチモダルアシスタントデバイスと併存していることをその後に検出するステップと、
前記別の人物を、前記異なる登録ユーザとして識別するステップと、
前記所与のグラフィカル要素を前記ディスプレイ上にレンダリングするステップと
をさらに含む、請求項11または12に記載の方法。
【請求項１４】
前記ランク付けされた複数のデータ項目を示す前記情報が、前記自動アシスタントを用いて前記所与の登録ユーザによって開始された未完了のタスクを表すグラフィカル要素を含む、請求項10から13のいずれか一項に記載の方法。
【請求項１５】
前記グラフィカル要素が、前記自動アシスタントとの音声関与によって前記タスクの完了を開始するために選択可能である、請求項14に記載の方法。
【請求項１６】
前記グラフィカル要素が、前記ディスプレイ上にレンダリングされたグラフィカルユーザインターフェースとの対話によって前記タスクの完了を開始するために選択可能である、請求項14または15に記載の方法。
【請求項１７】
1つまたは複数のプロセッサと、前記1つまたは複数のプロセッサに動作可能に結合されたメモリとを含む、システムであって、前記メモリが命令を記憶し、前記命令が、前記1つまたは複数のプロセッサによる前記命令の実行に応答して、前記1つまたは複数のプロセッサに、
未確認のユーザがスタンドアロンマルチモダルアシスタントデバイスと併存していることを検出する動作であって、前記スタンドアロンマルチモダルアシスタントデバイスがディスプレイを備える、検出する動作と、
前記検出に基づいて、
前記ディスプレイを非アクティブ状態からアクティブ状態に遷移させる動作と、
1人または複数の登録ユーザをターゲットにした複数のデータ項目を取得する動作であって、前記1人または複数の登録ユーザが、前記スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタントにとってアクセス可能なアカウントを有し、前記複数のデータ項目が、前記登録ユーザの前記アカウントに基づいて取得される、取得する動作と、
前記複数のデータ項目に関連する優先順位に基づいて、前記複数のデータ項目をランク付けする動作であって、前記優先順位が、前記1人または複数の登録ユーザとは無関係である、ランク付けする動作と、
前記ランク付けされた複数のデータ項目を示すグラフィカル情報を前記ディスプレイ上にレンダリングする動作と
を実行させる、システム。
【請求項１８】
前記未確認のユーザの識別情報を判定し、
前記識別情報に基づいて、前記取得されたデータ項目をさらにランク付けする
ための命令をさらに含み、
前記ユーザの前記判定された識別情報が、前記取得されたデータ項目がどのようにランク付けされるかに対して、前記1人または複数の登録ユーザとは無関係である前記優先順位よりも大きな影響を及ぼす
請求項17に記載のシステム。
【請求項１９】
命令を含む、少なくとも1つの非一時的コンピュータ可読媒体であって、前記命令が、1つまたは複数のプロセッサによる前記命令の実行に応答して、前記1つまたは複数のプロセッサに、
ある人物がスタンドアロンマルチモダルアシスタントデバイスと併存していることを検出する動作であって、前記スタンドアロンマルチモダルアシスタントデバイスがディスプレイを備える、検出する動作と、
前記スタンドアロンマルチモダルアシスタントデバイス上で少なくとも部分的に動作する自動アシスタントにとってアクセス可能なアカウントを有する、複数の登録ユーザの所与の登録ユーザであるとして前記人物を識別する動作と、
前記検出および前記識別に基づいて、
前記複数の登録ユーザをターゲットにした複数のデータ項目を取得する動作であって、前記複数のデータ項目が、前記登録ユーザの前記アカウントに基づいて取得される、取得する動作と、
前記所与の登録ユーザの識別情報に基づいて、前記複数のデータ項目をランク付けする動作と、
前記ランク付けされた複数のデータ項目を示す情報を前記ディスプレイ上にレンダリングする動作と
を実行させる、少なくとも1つの非一時的コンピュータ可読媒体。
【請求項２０】
前記ランク付けされた複数のデータ項目を示す前記情報が、複数のグラフィカル要素を含み、各グラフィカル要素が、前記複数のデータ項目のそれぞれのデータ項目を表し、前記複数のグラフィカル要素のうちの少なくとも1つがタッチセンシティブである、請求項19に記載の少なくとも1つの非一時的コンピュータ可読媒体。
【請求項２１】
前記少なくとも1つのタッチセンシティブグラフィカル要素が、前記自動アシスタントを用いて前記所与の登録ユーザによって前に開始された未完了のタスクを示し、前記少なくとも1つのタッチセンシティブグラフィカル要素が、前記自動アシスタントとの音声関与によって前記タスクの完了を開始するために選択可能である、請求項20に記載の少なくとも1つの非一時的コンピュータ可読媒体。
【請求項２２】
命令を含む、少なくとも1つの非一時的コンピュータ可読媒体であって、前記命令が、1つまたは複数のプロセッサによる前記命令の実行に応答して、前記1つまたは複数のプロセッサに、請求項1から16のいずれか一項に記載の方法を実行させる、少なくとも1つの非一時的コンピュータ可読媒体。
【請求項２３】
1つまたは複数のプロセッサと、前記1つまたは複数のプロセッサに動作可能に結合されたメモリとを含む、システムであって、前記メモリが命令を記憶し、前記命令が、前記1つまたは複数のプロセッサによる前記命令の実行に応答して、前記1つまたは複数のプロセッサに請求項1から16のいずれか一項に記載の方法を実行させる、システム。
【国際調査報告】
2021509749.tif 000011
2021509749.tif 000012