(57)【要約】  コンピューティングデバイスにおいて自動化されたアシスタントを呼び出すために、選択可能な要素を使用するための方法、装置、システム、およびコンピュータ可読媒体が提供される。コンピューティングデバイスの動作中、ユーザは、特定の呼出しフレーズに従って自動化されたアシスタントを呼び出すことができることを認識しない場合がある。自動化されたアシスタントの機能をユーザに通知するために、選択時に自動化されたアシスタントを初期化することができる選択可能な要素をユーザに提示することができる。さらに、選択可能な要素は呼出しフレーズをテキスト形式で提供できるため、ユーザは、呼出しフレーズを話すことによって自動化されたアシスタントを呼び出すための能力を認識する。選択可能な要素は、ユーザに関連付けられる様々なデバイスにおいて提示することができ、自動化されたアシスタントは、選択可能な要素が提示されるデバイスとは別のデバイスにおいて初期化することができる。
2020518905.tif 000002
【特許請求の範囲】
【請求項１】
コンピューティングデバイスによって、サーバデバイスから、前記コンピューティングデバイスのグラフィカルユーザインターフェースにおいて選択可能な要素を提供するための命令を受信するステップであって、前記選択可能な要素が、発話されると、自動化されたアシスタントを、前記自動化されたアシスタントが出力を別個のコンピューティングデバイスに提供する動作状態に移行する呼出しフレーズに関連付けられる、ステップと、
前記コンピューティングデバイスの前記グラフィカルユーザインターフェースに前記選択可能な要素を表示するステップと、
前記グラフィカルユーザインターフェースにおいて、前記選択可能な要素の選択を受信するステップと、
前記選択を受信するステップに応じて、前記別個のコンピューティングデバイスに前記出力を提供させるために、前記自動化されたアシスタントを前記動作状態に移行させるステップとを備える、
コンピュータで実行される方法。
【請求項２】
前記サーバデバイスにユーザの資格情報を提供するステップと、
前記サーバデバイスから、前記ユーザの前記資格情報に基づいて、前記ユーザに関連付けられるコンピューティングデバイスのディレクトリを受信するステップであって、前記ディレクトリが前記別個のコンピューティングデバイスを含む、ステップとをさらに備える、
請求項1に記載のコンピュータで実行される方法。
【請求項３】
前記別個のコンピューティングデバイスに出力を提供させるために、前記自動化されたアシスタントの1つまたは複数の機能に基づいて、前記ユーザに関連付けられるコンピューティングデバイスの前記ディレクトリから前記別個のコンピューティングデバイスを選択するステップをさらに備える、
請求項2に記載のコンピュータで実行される方法。
【請求項４】
前記動作状態において、前記自動化されたアシスタントが前記別個のコンピューティングデバイスでアプリケーションを起動する、
請求項1から3のいずれか一項に記載のコンピュータで実行される方法。
【請求項５】
前記選択を受信するステップに応じて、前記コンピューティングデバイスまたは前記別個のコンピューティングデバイスに前記呼出しフレーズを音声で出力させるステップをさらに備える、
請求項1から4のいずれか一項に記載のコンピュータで実行される方法。
【請求項６】
前記選択可能な要素が前記呼出しフレーズの視覚的表現を含む、
請求項1から5のいずれか一項に記載のコンピュータで実行される方法。
【請求項７】
前記グラフィカルユーザインターフェースに表示されるコンテンツを識別するデータを前記サーバデバイスに提供するステップであって、前記呼出しフレーズの少なくとも一部が前記コンテンツを記述するステップをさらに備える、
請求項6に記載のコンピュータで実行される方法。
【請求項８】
前記別個のコンピューティングデバイスが前記呼出しフレーズにおいて識別される、
請求項1から7のいずれか一項に記載のコンピュータで実行される方法。
【請求項９】
メモリと1つまたは複数のプロセッサとを備えるシステムであって、前記メモリが、前記1つまたは複数のプロセッサに以下の処理を実行させるための命令を記憶し、前記処理が、
コンピューティングデバイスのグラフィカルユーザインターフェースにおいて選択可能な要素を提供するステップであって、前記選択可能な要素が、発話されると、自動化されたアシスタントを、前記自動化されたアシスタントが出力を別個のコンピューティングデバイスに提供する動作状態に移行する呼出しフレーズに関連付けられる、ステップと、
前記コンピューティングデバイスの前記グラフィカルユーザインターフェースに前記選択可能な要素を表示するステップと、
前記グラフィカルユーザインターフェースにおいて、前記選択可能な要素の選択を受信するステップと、
前記選択を受信するステップに応じて、前記別個のコンピューティングデバイスに前記出力を提供させるために、前記自動化されたアシスタントを前記動作状態に移行させるステップとを含む、
システム。
【請求項１０】
前記処理が、
サーバデバイスにユーザの資格情報を提供するステップと、
前記サーバデバイスから、前記ユーザの前記資格情報に基づいて、前記ユーザに関連付けられるコンピューティングデバイスのディレクトリを受信するステップであって、前記ディレクトリが前記別個のコンピューティングデバイスを含む、ステップとをさらに含む、
請求項9に記載のシステム。
【請求項１１】
前記別個のコンピューティングデバイスに出力を提供させるために、前記自動化されたアシスタントの1つまたは複数の機能に基づいて、前記ユーザに関連付けられるコンピューティングデバイスの前記ディレクトリから前記別個のコンピューティングデバイスを選択するステップをさらに備える、
請求項10に記載のシステム。
【請求項１２】
前記動作状態において、前記自動化されたアシスタントが前記別個のコンピューティングデバイスでアプリケーションを起動する、
請求項9から11のいずれか一項に記載のシステム。
【請求項１３】
前記処理が、
前記選択を受信するステップに応じて、前記コンピューティングデバイスまたは前記別個のコンピューティングデバイスに前記呼出しフレーズを音声で出力させるステップをさらに含む、
請求項9から12のいずれか一項に記載のシステム。
【請求項１４】
前記選択可能な要素が前記呼出しフレーズの視覚的表現を含む、
請求項9から13のいずれか一項に記載のシステム。
【請求項１５】
前記処理が、
前記グラフィカルユーザインターフェースに表示されるコンテンツを識別するデータをサーバデバイスに提供するステップであって、前記呼出しフレーズの少なくとも一部が、前記コンテンツを記述する、ステップをさらに含む、
請求項14に記載のシステム。
【請求項１６】
前記別個のコンピューティングデバイスが前記呼出しフレーズにおいて識別される、
請求項9から15のいずれか一項に記載のシステム。
【請求項１７】
1つまたは複数のプロセッサに以下の処理を実行させるための命令を備えるコンピュータ可読記憶媒体であって、前記処理が、
コンピューティングデバイスによって、サーバデバイスから、前記コンピューティングデバイスのグラフィカルユーザインターフェースにおいて選択可能な要素を提供するための命令を受信するステップであって、前記選択可能な要素が、発話されると、自動化されたアシスタントを、前記自動化されたアシスタントが出力を別個のコンピューティングデバイスに提供する動作状態に移行する呼出しフレーズに関連付けられる、ステップと、
前記コンピューティングデバイスの前記グラフィカルユーザインターフェースに前記選択可能な要素を表示するステップと、
前記グラフィカルユーザインターフェースにおいて、前記選択可能な要素の選択を受信するステップと、
前記選択を受信するステップに応じて、前記別個のコンピューティングデバイスに前記出力を提供させるために、前記自動化されたアシスタントを前記動作状態に移行させるステップとを含む、
コンピュータ可読記憶媒体。
【請求項１８】
前記処理が、
前記サーバデバイスにユーザの資格情報を提供するステップと、
前記サーバデバイスから、前記ユーザの前記資格情報に基づいて、前記ユーザに関連付けられるコンピューティングデバイスのディレクトリを受信するステップであって、前記ディレクトリが前記別個のコンピューティングデバイスを含む、ステップとをさらに含む、
請求項17に記載のコンピュータ可読記憶媒体。
【請求項１９】
前記動作状態において、前記自動化されたアシスタントが前記別個のコンピューティングデバイスでアプリケーションを起動する、
請求項17または18に記載のコンピュータ可読記憶媒体。
【請求項２０】
前記処理が、
前記選択を受信するステップに応じて、前記コンピューティングデバイスまたは前記別個のコンピューティングデバイスに前記呼出しフレーズを音声で出力させるステップをさらに含む、
請求項17から19のいずれか一項に記載のコンピュータ可読記憶媒体。
【請求項２１】
1つまたは複数のプロセッサに、請求項1から8のいずれか一項に記載の方法を実行させるための命令を備える、
コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、コンピューティングデバイスにおいて自動化されたアシスタントを呼び出すために、選択可能な要素を使用するための方法、装置、システム、およびコンピュータ可読媒体を提供する。
【背景技術】
【０００２】
人間は、本明細書で「自動化されたアシスタント」と呼ばれる(「デジタルエージェント」、「チャットボット」、「対話型パーソナルアシスタント」、「インテリジェントパーソナルアシスタント」、「会話型エージェント」などとも呼ばれる)対話型ソフトウェアアプリケーションを使用して人間とコンピュータの対話を行う場合がある。たとえば、人間(自動化されたアシスタントと対話する場合は「ユーザ」と呼ばれ得る)は、自然な話し言葉入力(すなわち、発話)を使用してコマンドおよび/または要求を提供することがあり、それは、場合によってはテキストに変換され、次いで処理され得る。このようにして、必ずしもユーザがキーボードやマウスなどの周辺デバイスを物理的に操作する必要はなく、ユーザはコンピューティングデバイスの機能を呼び出す能力を有する。そのような自動化されたアシスタントは、コンピューティングデバイスにプリロードされ、ユーザによって話された音声フレーズに応答することができる。しかしながら、多くの場合、ユーザは、自動化されたアシスタントを呼び出すために利用可能な様々な話せるフレーズを認識していないか、そのような話せるフレーズを発音することができない場合がある。さらに、多くのコンピューティングデバイスによって所有される機能の範囲が拡大しているため、ほとんどのユーザは、利用可能な機能の全体を学習するための便利なリソースを有していない場合がある。その結果、ユーザは自動化されたアシスタントの多くのサービス可能な機能を見逃す可能性があり、そのような機能を実装するために提供されるコンピュータリソースが効率的に利用されない可能性があることを意味する。さらに、特定の環境はクエリを快適に発言するにはうるさすぎる場合があり、ユーザは、たとえば職場またはカフェでは、プライバシーを保護するために特定の時間にクエリを発言しないことを選択する場合がある。
【発明の概要】
【課題を解決するための手段】
【０００３】
本開示は、一般に、呼出しフレーズに関連付けられる選択可能な要素を提供することによって、自動化されたアシスタントの機能をユーザに紹介するための方法、装置、およびコンピュータ可読媒体(一時的および非一時的)を対象とする。選択可能な要素は、ユーザが最初に音声で自動化されたアシスタントに要請する必要なしに、自動化されたアシスタントがサービス要求(たとえば、「空港に行くタクシーを呼んでください」)を初期化および/または完了する状態などの特定の動作状態に、自動化されたアシスタントを移行することができる。
【０００４】
ユーザがたとえばウェブページのブラウジング、電子メールの閲覧、多岐にわたるアプリケーションの動作などを行う際に、選択可能な要素(たとえば、テキストまたはグラフィカルハイパーリンク)をモバイルデバイスのグラフィカルユーザインターフェース(「GUI」)において提供することができる。ユーザがウェブブラウザをナビゲートして、近隣の店舗に対応するウェブページに移動すると仮定する。ウェブページ上のリンクまたは他の選択可能な要素は、「この近隣の店舗への道順を教えてください」などの呼出しフレーズを表示することができる。ユーザに自動化されたアシスタントとの会話を続けるよう促す可聴応答を提供するために、リンクをクリックすることによって、(必ずしもそうとは限らないが、通常は、別のコンピューティングデバイス上で)自動化されたアシスタントを初期化することができる。その後、ユーザはリンクに依存する必要はないが、むしろ選択可能な要素において以前に紹介された呼出しフレーズを使用して自動化されたアシスタントを開始することができる。
【０００５】
いくつかの実装形態では、第1のデバイスでユーザに選択可能な要素が示され得る。ユーザが選択可能な要素を選択することに応じて、第2のデバイス上の自動化されたアシスタントは特定の動作状態に移行することができる。これにより、ユーザは他のデバイスで自動化されたアシスタントを開始することを促すことができるが、自動化されたアシスタントを呼び出すための機能があることを認識していない場合がある。さらに、いくつかの実装形態は複数の言語を処理することができる。たとえば、選択可能な要素は、ユーザの好みの言語で呼出しフレーズを含むことができ、彼らのデバイスの他の機能はあまり馴染みのない言語を表示しているにもかかわらず、自動化されたアシスタントを呼び出すために好みの言語を自由に使用することができることをユーザに認識させることができる。あるいは、選択可能な要素は、ユーザの好みの言語(たとえば、ユーザのローカルウェブブラウザによって翻訳されたもの)での呼出しフレーズを含むことができるが、選択可能な要素を選択することに応じて、自動化されたアシスタントは、自動化されたアシスタントにとってより馴染みのある言語で呼出しフレーズ(たとえば、「標準的な」呼出しフレーズ)を発音する方法をユーザに指示することができる。
【０００６】
いくつかの実装形態では、サードパーティデバイス(たとえば、サードパーティのセルラーデバイス)で動作するアプリケーションは、別のデバイスで自動化されたアシスタントを呼び出すための呼出しフレーズを含む選択可能な要素を提供することができる。このシナリオでは、ユーザは、サードパーティデバイスにおいて閲覧されるコンテンツに基づいて呼び出される自動化されたアシスタントの能力を紹介される。たとえば、ユーザはサードパーティデバイスのアプリケーション上でプレイリストをコンパイルすることができ、アプリケーションは「私が今コンパイルしたプレイリストを再生してください」という呼出しフレーズで選択可能な要素を提示することができる。選択可能な要素をクリックすると、サードパーティデバイスよりも音楽を再生するためにより適した別のデバイスで自動化されたアシスタントを初期化することができる。あるいは、別のデバイスが利用可能ではない場合、自動化されたアシスタントに対応するウェブアプリケーションをサードパーティデバイスにおいて初期化することができる。このようにして、ユーザは、サードパーティデバイスにおいて閲覧されているコンテンツを利用するために、自動化されたアシスタントを呼び出すための能力を認識することができる。
【０００７】
さらに他の実装形態では、選択可能な要素に含まれる呼出しフレーズを、学習されたユーザの好みおよび傾向に基づいて、経時的に適応させることができる。その結果、ユーザは、自動化されたアシスタントを呼び出すために、重複した一般的な要求を行うのではなく、より具体的なフレーズを話すことができることを認識するであろう。たとえば、ユーザは自動化されたアシスタントにプレイリストから音楽を再生するように要請し得る。しかしながら、プレイリスト上のアーティストが他のアーティスト(たとえば、レッドツェッペリン)よりも多く再生される場合、ユーザに、「レッドツェッペリンを再生してください」という呼出しフレーズを含む選択可能な要素を提示されることができる。このようにして、選択可能な要素の呼出しフレーズを適応させることによって、ユーザは、自動化されたアシスタントがより具体的な要求を理解することを認識することができる。別の例として、ユーザは、ユーザが毎日仕事から帰宅したときに通知できるホームアシスタントデバイス(たとえば、スタンドアロン対話型スピーカ)を持っている場合がある。ユーザが毎日帰宅すると、ユーザは常にホームアシスタントデバイスに、ユーザが車の中で聞いていたポッドキャストの再生を続けるように要求し得る。しかしながら、ユーザがこの要求を繰り返し行う必要をなくすために、選択可能な要素を車のユーザインターフェースにおいて、「アシスタント、私がポッドキャストを聞きながら帰宅するときは常に、私の家の中でポッドキャストの再生を続けてください。」という呼出しフレーズとともに提供することができる。ユーザがユーザインターフェースにおいて選択可能な要素を選択すると、ホームアシスタントデバイスはポッドキャストの再生を続け、任意選択で、新しい自動化ルールが確立されたことを音声で確認することができる。このようにして、自動化されたアシスタントの機能は、学習されたユーザの好みに応じて、選択可能な要素における呼出しフレーズを適応させることによって、ユーザに示すことができる。
【０００８】
いくつかの実施形態では、最初の選択可能な要素が選択され、自動化されたアシスタントが初期化された後、ユーザを応答に導くために、応答要素に新しいフレーズを提供することができる。応答要素を提供することによって、ユーザは、自動化されたアシスタントが理解できる可聴応答を認識することができる。さらに、応答要素は、自動化されたアシスタントに応答する際にユーザが入力できるプレースホルダで応答フレーズを示すことができる。たとえば、ユーザが翌朝のカレンダにおいて早朝会議をスケジューリングした後、「明日の朝にアラームを設定してください」という呼出しフレーズを含む選択可能な要素をユーザに提示することができる。選択可能な要素を選択すると、自動化されたアシスタントが初期化され、自動化されたアシスタントが「OK、何時にアラームを設定したいですか?」というフレーズでユーザに音声で照会することができる。ユーザがしきい値期間後に音声で応答しない場合、「アラームを[ここでアラームの時間を言う]に設定してください。」という応答フレーズで、応答要素をユーザに提示することができる。応答要素は、任意選択で選択可能または選択不可であってよい。このようにして利用可能な応答を提示することによって、自動化されたアシスタントへの応答方法がわからない場合でも、ユーザは常にある程度の視覚的ガイダンスを確実に得ることができる。
【０００９】
したがって、いくつかの実装形態では、方法は、コンピューティングデバイスによって、サーバデバイスから、コンピューティングデバイスのグラフィカルユーザインターフェースにおいて選択可能な要素を提供するための命令を受信するステップなどのステップを含むことができる。選択可能な要素は、発話されると、自動化されたアシスタントを、自動化されたアシスタントが出力を別個のコンピューティングデバイスに提供する動作状態に移行する呼出しフレーズに関連付けることができる。本方法は、コンピューティングデバイスのグラフィカルユーザインターフェースに選択可能な要素を表示するステップと、グラフィカルユーザインターフェースにおいて、選択可能な要素の選択を受信するステップも含むことができる。本方法は、選択を受信するステップに応じて、別個のコンピューティングデバイスに出力を提供させるために、自動化されたアシスタントを動作状態に移行させるステップをさらに含むことができる。
【００１０】
さらに、いくつかの実装形態は、メモリと、メモリに記憶された命令を実行するように動作可能な1つまたは複数のプロセッサとを含む装置を含み、命令は前述の方法のうちのいずれかを実行するように構成される。いくつかの実装形態はまた、前述の方法のうちのいずれかを実行するために1つまたは複数のプロセッサによって実行可能なコンピュータ命令を記憶する非一時的コンピュータ可読ストレージ媒体を含む。
【００１１】
本明細書でより詳細に説明される前述の概念および追加の概念のすべての組合せは、本明細書で開示される主題の一部として企図されることを理解されたい。たとえば、本開示の最後に現れる特許請求された主題のすべての組合せは、本明細書で開示される主題の一部として企図される。
【００１２】
本明細書で使用される「エージェント」は、自動化されたアシスタントとは別個の1つまたは複数のコンピューティングデバイスおよび/あるいはソフトウェアを指す。状況によっては、エージェントはサードパーティ(3P)エージェントであり得、自動化されたアシスタントを管理するパーティとは別のパーティによって管理される。エージェントは、自動化されたアシスタントからの呼出し要求を受信する(たとえば、ネットワークを介して、および/またはAPIを介して)ように構成される。呼出し要求の受信に応じて、エージェントは呼出し要求に基づいて応答コンテンツを生成し、応答コンテンツに基づく出力の提供のために応答コンテンツを送信する。たとえば、エージェントは、自動化されたアシスタントによる、応答コンテンツに基づく出力の提供のために、応答コンテンツを自動化されたアシスタントに送信し得る。別の例として、エージェント自体が出力を提供することができる。たとえば、ユーザはクライアントデバイスを介して自動化されたアシスタントと対話することができ(たとえば、自動化されたアシスタントは、クライアントデバイス上に、および/またはクライアントデバイスとのネットワーク通信において実装することができ)、エージェントは、クライアントデバイスにインストールされたアプリケーションであってもよく、クライアントデバイスから遠隔で実行可能なアプリケーションであってもよいが、クライアントデバイスで「ストリーミング可能」である。アプリケーションが呼び出されると、クライアントデバイスによって実行すること、および/またはクライアントデバイスによって最前面に表示することができる(たとえば、そのコンテンツがクライアントデバイスの表示を引き継ぐことができる)。
【００１３】
エージェントを呼び出すステップは、呼出しパラメータの値(たとえば、インテントパラメータの値、インテントスロットパラメータの値、および/または他のパラメータの値)を含み、エージェントに、1つまたは複数のユーザインターフェース出力デバイスを介して(たとえば、自動化されたアシスタントとの対話において利用されるユーザインターフェース出力デバイスのうちの1つまたは複数を介して)ユーザに提示するコンテンツを生成させる、呼出し要求を送信するステップ(たとえば、アプリケーションプログラミングインターフェース(API)を利用して)を含むことができる。エージェントによって生成された応答コンテンツは、呼出し要求の呼出しパラメータに合わせて調整することができる。
【００１４】
本開示の手法は、いくつかの利点を提供することができる。たとえば、選択可能な要素を提供することによって、代替の入力が不適切であるか、または望ましくない場合に、ユーザとの対話を行うことを可能にする改良されたインターフェースを実現することができる。さらに、いくつかの態様では、複数のコンピューティングデバイスの調整が促進され得、各デバイスのコンテキストおよび/または機能を反映する適切な対話が提供される。さらに、選択可能な要素の提供により、ユーザは、通常なら発見および/または実装が困難な機能を識別できるようになり、各コンピューティングデバイスにおいて利用可能なリソースのより良い利用が可能になる。たとえば、コンピューティングデバイスがユーザに知られていない機能を備えている場合、それらの機能を促進するために提供されるリソースは、非効率的に使用される可能性があり、そのような機能の発見を支援することによって、本開示はこの影響を軽減し得る。
【図面の簡単な説明】
【００１５】
【図１】クライアントデバイスに表示される選択可能な要素を使用して、自動化されたアシスタントを初期化するためのシステムを示す図である。
【図２Ａ】ユーザにサービスを提供するために自動化されたアシスタントを初期化することができる選択可能な要素の実装形態を示す図である。
【図２Ｂ】ユーザにサービスを提供するために自動化されたアシスタントを初期化することができる選択可能な要素の実装形態を示す図である。
【図２Ｃ】ユーザにサービスを提供するために自動化されたアシスタントを初期化することができる選択可能な要素の実装形態を示す図である。
【図３Ａ】第2のデバイスにおいて自動化されたアシスタントを初期化するために、第1のデバイスにおいてユーザに表示される選択可能な要素を使用することができるデバイスの斜視図である。
【図３Ｂ】第2のデバイスにおいて自動化されたアシスタントを初期化するために、第1のデバイスにおいてユーザに表示される選択可能な要素を使用することができるデバイスの斜視図である。
【図３Ｃ】第2のデバイスにおいて自動化されたアシスタントを初期化するために、第1のデバイスにおいてユーザに表示される選択可能な要素を使用することができるデバイスの斜視図である。
【図４Ａ】異なる言語で自動化されたアシスタントを呼び出すことができる選択可能な要素を提供するためのシステムを示す図である。
【図４Ｂ】異なる言語で自動化されたアシスタントを呼び出すことができる選択可能な要素を提供するためのシステムを示す図である。
【図５】選択可能な要素から自動化されたアシスタントを初期化するための方法を示す図である。
【図６】選択可能な要素が表示される別のデバイスにおいて自動化されたアシスタントを初期化するための方法を示す図である。
【図７】コンピューティングデバイスにおいて提供されるコンテンツの言語とは異なる言語を理解する自動化されたアシスタントを初期化するための方法を示す図である。
【図８】例示的なコンピュータシステムのブロック図である。
【発明を実施するための形態】
【００１６】
本明細書で説明する実装は、ユーザが最初に音声で自動化されたアシスタントに要請する必要なしに、自動化されたアシスタントのサービス要求を初期化するための呼出しフレーズを伝える選択可能な要素を提供することによって、自動化されたアシスタントの機能を初心者ユーザに紹介するためのシステム、方法、および装置に関する。多くのコンピューティングデバイスでは、自動化されたアシスタントは、何らかのデジタルサービスを使用しようとしているユーザにガイダンスを提供することができる。自動化されたアシスタントは特定の音声フレーズによって呼び出すことができるが、多くの場合、ユーザはすべてのフレーズとそれらの機能に精通していない場合がある。さらに、ユーザは自動化されたアシスタントに何をしてほしいのかを知っているかもしれないが、コマンドの作成に関係する単語を正確に発音できないか、自動化されたアシスタントがユーザの好みの言語を受け入れているかいないかを認識していない場合がある。ユーザに自動化されたアシスタントの特定の機能を紹介するために、まず話す必要なしに自動化されたアシスタントによって受け入れられるコマンドをユーザに認識させるために、呼出しフレーズを伝える選択可能な要素をユーザに提示することができる。ユーザが呼出しフレーズを伝える選択可能な要素を物理的に作動させる(たとえば、クリックする)と、自動化されたアシスタントが初期化され、ユーザが呼出しフレーズを話したかのように音声で応答することができる。
【００１７】
ユーザがたとえばウェブページのブラウジング、電子メールの閲覧、多岐にわたるアプリケーションの動作などを行う際に、選択可能な要素(たとえば、テキストまたはグラフィカルハイパーリンク)をモバイルデバイスのグラフィカルユーザインターフェース(GUI)において提供することができる。ユーザがウェブブラウザをナビゲートして、近隣の店舗に対応するウェブページに移動すると仮定する。ウェブページ上のリンクまたは他の選択可能な要素は、「この近隣の店舗への道順を教えてください」などの呼出しフレーズを表示することができる。ユーザに自動化されたアシスタントとの会話を続けるよう促す可聴応答を提供するために、リンクをクリックすることによって、自動化されたアシスタントを初期化することができる。その後、ユーザはリンクに依存する必要はないが、選択可能な要素において以前に紹介された呼出しフレーズを使用して自動化されたアシスタントを開始する。
【００１８】
いくつかの実装形態では、第1のデバイスでユーザに選択可能な要素が示され得る。ユーザが選択可能な要素を選択することに応じて、第2のデバイス上の自動アシスタンは、出力を提供する特定の動作状態に移行することができる。これにより、ユーザは他のデバイスで自動化されたアシスタントを開始することを促すことができるが、自動化されたアシスタントを呼び出すための機能があることを認識していない場合がある。さらに、いくつかの実装形態は複数の言語を処理することができる。たとえば、選択可能な要素は、ユーザの好みの言語で呼出しフレーズを含むことができ、彼らのデバイスの他の機能はあまり馴染みのない言語を表示しているにもかかわらず、自動化されたアシスタントを呼び出すために自分たちの好みの言語を自由に使用することができることをユーザに認識させることができる。あるいは、選択可能な要素は、ユーザの好みの言語(たとえば、ユーザのローカルウェブブラウザによって翻訳されたもの)での呼出しフレーズを含むことができるが、選択可能な要素を選択することに応じて、自動化されたアシスタントは、自動化されたアシスタントにとって馴染みのある言語で、いわゆる「標準」バージョンの呼出しフレーズを暗唱する方法をユーザに指示することができる。
【００１９】
所与のコンテキストに適した選択可能な要素を提供するために、デバイスのシステムに、ユーザへの自動化されたアシスタントの導入の管理を任せることができる。デバイスのシステムは、アカウントデータベースにアクセスできる少なくとも1つのサーバと、1つまたは複数のアシスタント(または、クライアント)デバイスを含むことができる。特定のアシスタントデバイスにおいて自動化されたアシスタントを呼び出すための呼出しフレーズを伝える選択可能な要素をユーザに提示するために、アシスタント(または、クライアント)デバイスを使用することができる。サーバは、アカウントデータベースを照会し、ログイン資格情報に関連付けられる任意の他のアシスタントデバイスを識別するために、アシスタントデバイスからのログイン資格情報を使用することができる。たとえば、ユーザのログイン資格情報は、ユーザによって動作されるアシスタント(または、クライアント)デバイスの調整された「エコシステム」においてアクティブ化されるユーザカウントに関連付けられ得る。その後、ユーザがクリック可能な呼出しフレーズを選択することに応じて、サーバはログイン資格情報に関連付けられるアシスタントデバイスから適切なアシスタントデバイスを識別することができる。サーバによって識別されるアシスタントデバイスは、クリック可能な呼出しフレーズに関連付けられるアクションを実行するために最適であると決定されたものとすることができる。たとえば、セルラー電話は旅行中にテレビよりも簡単に持ち運べるので、セルラー電話は道順を与えるためにテレビよりも適したアシスタントデバイスとすることができる。アシスタントデバイスがサーバによって識別されると、サーバは、選択可能な要素によって伝達されたコマンドに応答する方法に関する命令をアシスタントデバイスに送信することができる。アシスタントデバイスからの応答は、ユーザとアシスタントデバイスとの間の可聴交換を促進するために、可聴応答とすることができる。アシスタントデバイスからの応答はまた、アシスタントデバイスのインターフェースにおける変更を含むことができる。たとえば、ユーザが道順の要求に対応する選択可能な要素をクリックすると、アシスタントデバイスはルートを表示し、「あなたが要求した道順はこちらです」などの応答フレーズを話すことによって応答することができる。アシスタントデバイスはまた、ユーザが自分の声で応答するように促すために、ユーザへの質問で応答することができる。
【００２０】
応答は、システムのサーバに記憶されているデータに基づくことができる。サーバは、1つまたは複数の自動化されたアシスタントを動作するためのモジュールと、各自動化されたアシスタントが使用できるプリロードされた呼出しフレーズおよび応答とを含むことができる。サーバは、ユーザによって使用されているアシスタントデバイス、ユーザによって閲覧されているコンテンツ、ユーザによって作動される選択可能な要素、および/またはアシスタントデバイスの動作環境に関連する任意の他の機能に応じて、適切な自動化されたアシスタントを選択することができる。たとえば、サーバは、異なる言語で支援を提供する自動化されたアシスタントに対応するモジュールを含むことができ、自動化されたアシスタントの選択は、選択可能な要素の言語に基づくことができる。
【００２１】
選択可能な要素は、アシスタントサービスが有効になっているアシスタントデバイスにログインしているユーザに示すことができる。しかしながら、選択可能な要素の展開は特定の状況に制限される場合がある。たとえば、選択可能な要素の表示は、ユーザによって閲覧されているコンテンツと、ユーザによって使用されているアシスタントデバイスのタイプによって異なり得る。家を離れてセルラー電話でビデオをストリーミングしているユーザは、彼らがテレビにより近くなるまで家のテレビでコンテンツをストリーミングするための呼出しフレーズを示されない場合がある。ユーザが帰宅すると、「このビデオを私のテレビで再生してください」などの情報を伝える選択可能な要素をユーザのセルラー電話に表示することができる。選択可能な要素を作動させると、テレビはビデオを再生し、「あなたが要求したビデオはこちらです」などの可聴応答も提供することができる。いくつかの実装形態では、選択可能な要素を提示しているデバイスは、初期化されるデバイスの画像を表示することができる。たとえば、セルラー電話において「このビデオを再生してください」というフレーズを提供する選択可能な要素はまた、テレビを表すアイコンを含むことができる。サーバは、選択可能な要素による初期化に最適なデバイスがどれかに応じて、表示する適切なアイコンを識別することができる。たとえば、「サリーに電話してください」というフレーズを含む選択可能な要素は、ユーザが自分のセルラー電話からほとんどの電話をかけることがサーバによって知られているときに、セルラー電話を表すアイコンを組み込むことができる。さらに、「私の税金を申告してください」というフレーズを含む選択可能な要素は、サーバがユーザのラップトップコンピュータでアクティブである税務アプリケーションまたはウェブサイトを認識しているときに、ラップトップコンピュータを表すアイコンを組み込むことができる。
【００２２】
いくつかの実装形態では、サードパーティデバイス(たとえば、サードパーティのセルラーデバイス)で動作するアプリケーションは、別のデバイスで自動化されたアシスタントを呼び出すための呼出しフレーズを含む選択可能な要素を提供することができる。このシナリオでは、ユーザは、サードパーティデバイスにおいて閲覧されるコンテンツに基づいて呼び出される自動化されたアシスタントの能力を紹介される。たとえば、ユーザはサードパーティデバイスのアプリケーション上でプレイリストをコンパイルすることができ、アプリケーションは「私が今コンパイルしたプレイリストを再生してください」という呼出しフレーズで選択可能な要素を提示することができる。選択可能な要素をクリックすると、サードパーティデバイスよりも音楽を再生するためにより適した別のデバイスで自動化されたアシスタントを初期化することができる。あるいは、別のデバイスが利用可能ではない場合、自動化されたアシスタントに対応するウェブアプリケーションをサードパーティデバイスにおいて初期化することができる。このようにして、ユーザは、サードパーティデバイスにおいて閲覧されているコンテンツを利用するために、自動化されたアシスタントを呼び出すための能力を認識することができる。
【００２３】
さらに他の実装形態では、選択可能な要素に含まれる呼出しフレーズを、学習されたユーザの好みおよび傾向に基づいて、経時的に適応させることができる。その結果、ユーザは、自動化されたアシスタントを呼び出すために、重複した一般的な要求を行うのではなく、より具体的なフレーズを話すことができることを認識する。たとえば、ユーザは自動化されたアシスタントにプレイリストから音楽を再生するように要請し得る。しかしながら、プレイリスト上のアーティストが他のアーティスト(たとえば、レッドツェッペリン)よりも多く再生される場合、ユーザに、「レッドツェッペリンを再生してください」という呼出しフレーズを含む選択可能な要素を提示することができる。このようにして、選択可能な要素の呼出しフレーズを適応させることによって、ユーザは、自動化されたアシスタントがより具体的な要求を理解することを認識することができる。別の例として、ユーザは、ユーザが毎日仕事から帰宅したときに通知できる自動化されたアシスタントを動作するスタンドアロン対話型スピーカを持っている場合がある。ユーザが毎日帰宅すると、ユーザは常にスタンドアロン対話型スピーカに、ユーザが車の中で聞いていたポッドキャストの再生を続けるように要求し得る。しかしながら、ユーザがこの要求を繰り返し行う必要をなくすために、選択可能な要素を車内の車両ナビゲーションシステムのGUIにおいて、「アシスタント、私がポッドキャストを聞きながら帰宅するときは常に、私の家の中でポッドキャストの再生を続けてください。」という呼出しフレーズとともに提供することができる。ユーザがGUIにおいて選択可能な要素を選択すると、スタンドアロン対話型スピーカはポッドキャストの再生を続け、任意選択で、新しい自動化ルールが確立されたことを音声で確認することができる。このようにして、自動化されたアシスタントの機能は、学習されたユーザの好みに応じて、選択可能な要素における呼出しフレーズを適応させることによって、ユーザに示すことができる。
【００２４】
いくつかの実施形態では、最初の選択可能な要素が選択され、自動化されたアシスタントが初期化された後、ユーザを応答に導くために、応答要素に新しいフレーズを提供することができる。応答要素を提供することによって、ユーザは、自動化されたアシスタントが理解することになる可聴応答を認識することができる。さらに、応答要素は、自動化されたアシスタントに応答する際にユーザが入力できるプレースホルダで応答フレーズを示すことができる。たとえば、ユーザが翌朝のカレンダにおいて早朝会議をスケジューリングした後、「明日の朝にアラームを設定してください」という呼出しフレーズを含む選択可能な要素をユーザに提示することができる。選択可能な要素を選択すると、自動化されたアシスタントが初期化され、自動化されたアシスタントが「OK、何時にアラームを設定したいですか?」というフレーズでユーザに音声で照会することができる。ユーザがしきい値期間後に音声で応答しない場合、「アラームを[ここでアラームの時間を言う]に設定してください。」という応答フレーズで、応答要素をユーザに提示することができる。応答要素は、任意選択で選択可能な要素であってよい。このようにして利用可能な応答を提示することによって、自動化されたアシスタントへの応答方法がわからない場合でも、ユーザは常にある程度の視覚的ガイダンスを確実に得ることができる。
【００２５】
図1は、クライアントデバイス102に表示される選択可能な要素118を使用して、自動化されたアシスタント106を初期化するためのシステム100を示している。クライアントデバイス102の各々は、たとえば、デスクトップコンピューティングデバイス、ラップトップコンピューティングデバイス、タブレットコンピューティングデバイス、モバイル電話コンピューティングデバイス、参加者の車両のコンピューティングデバイス(たとえば、車載通信システム、車載エンターテイメントシステム、車載ナビゲーションシステム)、またはコンピューティングデバイスを含む参加者のウェアラブル機器(たとえば、コンピューティングデバイスを有する参加者の時計、コンピューティングデバイスを有する参加者の眼鏡)であり得る。追加のおよび/または代替のクライアントデバイス102を提供することができる。サーバデバイス104、および/またはサーバデバイス104上の自動化されたアシスタント106は、たとえばネットワーク114を通じて通信する1つまたは複数のコンピュータに実装することができる。ユーザは、クライアントデバイス102を介してサーバデバイス104と対話することができる。各クライアントデバイス102は、ローカルエリアネットワーク(LAN)、またはインターネットなどのワイドエリアネットワーク(WAN)などの1つまたは複数のネットワーク114を通じてサーバデバイス104に結合されたコンピュータシステムとすることができる。
【００２６】
ユーザアカウントデータベース116は、ネットワーク114を介してサーバデバイス104および/またはクライアントデバイス102に接続することができる。本明細書では、「データベース」という用語は、データの任意のコレクションを指すために広く使用される。データベースのデータは任意の特定の方法で構造化することができ、データは1つまたは複数の地理的位置のストレージデバイスに記憶することができる。したがって、たとえば、ユーザアカウントデータベース116は、データの複数のコレクションを含むことができ、それらの各々は、異なる方法で編成およびアクセスすることができる。
【００２７】
クライアントデバイス102のユーザは、データの記録、メディアへのアクセス、別のクライアントデバイス102の制御などのタスク、および/またはコンピュータシステムに適した任意の他のタスクを実行するために、クライアントデバイス102上の1つまたは複数のソフトウェアアプリケーション(図示せず)を動作することができる。クライアントデバイス102を動作している間、ユーザは、話す、四肢を動かす、オブジェクトを動かす、自動化されたアシスタント106および/または参加者がアクセス可能なメッセージングアプリケーション(たとえば、SMS、MMS、インスタントメッセージング、チャットなど)にテキストおよび/または画像を入力するなど、様々な方法で自動化されたアシスタント106を要請することができる。しかしながら、特定のシナリオにおいて、ユーザが自動化されたアシスタント106を要請する能力を認識していない場合、クライアントデバイス102のグラフィカルユーザインターフェース(GUI)において選択可能な要素118をユーザに提供することができる。選択可能な要素118は、選択可能な要素118が選択されたときにクライアントデバイス102とサーバデバイス104とを対話させるGUIにおいて提供されるグラフィカル機能(たとえば、リンク、画像、ボタン、カード、ポップアップ通知など)とすることができる。選択可能な要素118は、たとえば、テキスト、画像、ビデオ、音声、埋込み情報(たとえば、メタ情報および/またはハイパーリンク)、および/または埋込み命令(たとえば、JavaScript(登録商標)などのECMAScript実装形態)などのコンテンツを含むことができる。
【００２８】
クライアントデバイス102のGUIにおいて選択可能な要素118を提供するために、いくつかの実装形態では、アカウントデータ(たとえば、ログイン資格情報またはユーザ識別子)を、ネットワーク114を介してクライアントデバイス102からサーバデバイス104に提供することができる。サーバデバイス104は、ユーザアカウントデータベース116に照会するために、アカウントデータを使用することができる。サーバデバイス104は、ユーザのアカウントデータベース116において、たとえば、アカウントに関連付けられるデバイス(たとえば、前述のデバイスの調整されたエコシステム)、ユーザの好み、学習されたユーザのスケジュール、ユーザの連絡先、ユーザのデバイスにおいて閲覧されたメディア、および/またはユーザのアカウントに関連付けて記憶することができる任意の他のデータなど、ユーザのアカウントに関連付けられる情報を識別することができる。サーバデバイス104は、選択可能な要素118をクライアントデバイス102に提供する方法、および自動化されたアシスタント106が選択可能な要素118の選択にどのように応答できるかに関する決定を下すために、ユーザアカウントデータベース116からの情報を使用することができる。サービスデバイス104およびユーザアカウントデータベース116は図1において別々に示されているが、これは限定することを意味するものではなく、これらのコンポーネントは同じコンピューティングシステム上で実装されてもよく、および/または様々な方法で複数のコンピューティングシステムにわたって分散されてもよい。
【００２９】
1つまたは複数の自動化されたアシスタント106の動作は、サーバデバイス104に記憶されたデータに従って実行することができる。いくつかの実装形態では、ユーザカウントは1つまたは複数の異なる自動化されたアシスタント106に関連付けることができ、各自動化されたアシスタント106はユーザに同様または異なるサービスを提供することができる。他の実装形態では、ユーザカウントは単一の自動化されたアシスタント106またはエージェントに関連付けられてもよく、ならびに/あるいは単一の自動化されたアシスタント106は複数のユーザカウントおよび/またはエージェントにサービスまたは対話してもよい(そのような場合、自動化されたアシスタント106は、現在サービスを提供しているユーザカウントまたはエージェントに応じて異なるデータにアクセスし得る)。たとえば、自動化されたアシスタント106に対するユーザからの応答は、自動化されたアシスタント106によって処理され、ユーザにサービスを提供するために1つまたは複数のエージェントに送信することができる。自動化されたアシスタント106は、ユーザの話し言葉に対応する音声データを受信し、受信した言語データに音声データを変換することができる(自然)言語処理エンジン108を含むか、それに従って動作することができる。受信した言語データは、自動化されたアシスタント106にコマンドを実行させることができるコマンド(たとえば、自然言語入力)に対応することができる。たとえば、自動化されたアシスタント106は、ユーザへの情報の提供、ユーザに関連付けられるデバイスの制御、ユーザのアカウントに関連付けて記憶されたデータの編集、および/またはコンピュータシステムによって実行することができる任意の他のアクションなど、ユーザからのコマンドの受信に応じて様々なアクションを実行することができる。自動化されたアシスタント106はまた、クライアントデバイス102に、自動化されたアシスタント106が動作を実行する前、最中、および/または後に可聴応答を提供させることができる。自動化されたアシスタント106からの応答は、自動化されたアシスタント106の応答コンテンツエンジン110によって生成することができる。応答コンテンツエンジン110は、ユーザが自動化されたアシスタント106と通信しているときに応答
を提供するために、サーバデバイス104、クライアントデバイス102、および/またはユーザアカウントデータベース116からのデータを使用することができる。さらに、応答コンテンツエンジン110によって使用されるデータは、ユーザのアカウントに関連付けられていないデータソース(たとえば、一般的なインターネット検索、多岐にわたるウェブサービスなど)からのものであり得る。応答コンテンツエンジン110によって生成された応答は、自動化されたアシスタント106によって出力される可聴応答(たとえば、話し言葉)であり得るが、応答はまた非可聴(たとえば、画像、テキスト、ビデオ、触覚フィードバック)であり得る。たとえば、自動化されたアシスタント106を要請するユーザへの応答は、クライアントデバイス102のGUIに現れるテキストまたは選択可能な要素118の形態であり得る。
【００３０】
サーバデバイス104は、選択可能な要素118の提示および動作に関連するコンテンツおよびデータを生成するための選択可能な要素エンジン112を含むことができる。選択可能な要素118のコンテンツは、ユーザアカウントデータベース116、1つまたは複数のクライアントデバイス102、サーバデバイス104、および/あるいは選択可能な要素118に含めるための情報を提供することができる任意の他のデータソースからのデータに基づくことができる。クライアントデバイス102のために選択可能な要素エンジン112によって提供される選択可能な要素118は、ユーザを支援するために1つまたは複数の自動化されたアシスタント106を初期化するために使用することができる。選択可能な要素118のコンテンツおよび動作は、ユーザがクライアントデバイス102をどのように動作しているかに基づくことができる。たとえば、ユーザは、通常なら自動化されたアシスタント106によって実行できる機能を実行するために、クライアントデバイス102を使用することができる。機能に関連するデータは、ネットワーク114を介してサーバデバイス104に送信することができる。サーバデバイス104の選択可能な要素エンジン112は、自動化されたアシスタント106を初期化することができる選択可能な要素118を生成するための基礎として機能に関連するデータを使用することができる。
【００３１】
選択可能な要素118のコンテンツは、ユーザによってクライアントデバイス102に音声で話される場合、自動化されたアシスタント106を初期化する呼出しフレーズを含むことができる。選択可能な要素118のコンテンツおよび動作に対応するデータは、クライアントデバイス102に送り返すことができ、クライアントデバイス102は、クライアントデバイス102のGUIにおいて選択可能な要素118を表示することができる。ユーザが選択可能な要素118を選択すると、自動化されたアシスタント106は初期化され、機能の実行を支援することができる。このようにして、ユーザは、機能を実行するために自動化されたアシスタント106を初期化することができる呼出しフレーズを通知され得る。その後、ユーザは、クライアントデバイス102を使用して自分で機能を手動で実行するのではなく、呼出しフレーズを話すよう促される。
【００３２】
図2A〜図2Cは、ユーザ202にサービスを提供するために自動化されたアシスタントを初期化することができる選択可能な要素212の実装形態を示す図である。具体的には、図2Aは、コンピュータシステム204のグラフィカルユーザインターフェース(GUI)208に表示されているアプリケーション206を使用するユーザ202の斜視図200を示す。アプリケーション206は、ウェブブラウザ、ワードプロセッシングアプリケーション、スケジューリングアプリケーション、メディアアプリケーション、ゲームアプリケーション、マップアプリケーション、サードパーティアプリケーション、コントローラアプリケーション、電子メールアプリケーション、メッセージングアプリケーション、および/またはコンピューティングシステムにおいて動作可能な任意の他のアプリケーションとすることができる。アプリケーション206がウェブブラウザである場合、コンピュータシステム204は、ユーザ202に関連付けられるアカウントデータを、ユーザ202の好みを管理し、ユーザ202の傾向を識別するサーバに送信することができる。ユーザ202は、たとえば、ユーザ202が食べたいレストランを識別するウェブサイトにナビゲートすることができる。ユーザは気付かないかもしれないが、コンピュータシステム204は、レストランへの道順をユーザ202に提供することができる自動化されたアシスタントを初期化することができる。コンピュータシステム204は、ユーザ202がコンピュータシステム204において呼出しフレーズを話すことに応じて、自動化されたアシスタントを初期化することができる。しかしながら、ユーザ202が呼出しフレーズを話さないか、そうでなければそのような機能を認識していない場合、選択可能な要素212は、コンピュータシステム204のGUI208において提示され、同時にアプリケーション206がGUI208において表示される。図2Bの斜視図210に示されるように、選択可能な要素212は、呼出しフレーズを含むテキストを表示することができる。呼出しフレーズは、たとえば、レストランを識別するウェブサイトなど、ユーザ202によって閲覧されているメディアに基づくことができる。呼出しフレーズおよび/または選択可能な要素212を提供するための命令は、コンピュータシステム212、コン
ピュータシステム212に接続されたサーバデバイス、および/または自動化されたアシスタントを制御および/またはホストすることができる任意の他のデバイスによって提供することができる。呼出しフレーズは、「このレストランへの道順を教えてください」などのコマンドとすることができる。選択可能な要素212において呼出しフレーズを伝えることによって、ユーザ202は、道順を見つけるのを助けるために自動化されたアシスタント106を呼び出す能力を認識することができる。さらに、図2Cの斜視図214に示されるように、選択可能な要素212をクリックすることによって、ユーザ202は自動化されたアシスタントとの会話を開始することができる。
【００３３】
図2Cは、ユーザ202が選択可能な要素212を選択したことに応じて、コンピュータシステム204から来る可聴出力218を示している。可聴出力218は、ユーザ202が選択可能な要素212を選択することに応じて自動化されたアシスタントによって提供されるスピーチに対応することができる。選択可能な要素212をクリックすることによって、自動化されたアシスタントは、ユーザ202がコンピュータシステム204に呼出しフレーズを話したかのように呼出しフレーズを受信する。ユーザ202が選択可能な要素212をクリックすると、選択可能な要素212はGUI208から消えることができ、アプリケーション206はGUI208において展開することができる。自動化されたアシスタントからの可聴出力218は、ユーザ202に道順を提供し、および/またはレストランへの旅行の詳細に関してユーザ202に照会することができる。たとえば、自動化されたアシスタントは、ユーザ202がレストランまで歩くつもりなのか、それともレストランまで運転するつもりなのかを尋ねることができる。ユーザ202がしきい値期間の後にクエリに応答しない場合、自動化されたアシスタントからのクエリに応答するために、別の選択可能な要素212をテキスト(たとえば、「歩きたい」)で提示することができる。ユーザ202によって選択された場合、他の選択可能な要素212は、自動化されたアシスタント106に別の可聴出力218を提供させることができる。たとえば、他の選択可能な要素212のテキストが「レストランへの歩く道順を教えてください」というフレーズに対応した場合、自動化されたアシスタントは、コンピュータシステム204を通じてユーザ202に歩く道順を与え始めることができる。
【００３４】
いくつかの実装形態では、自動化されたアシスタントの動作に関連するデータは、コンピュータシステム204、および/またはコンピュータシステム204と通信しているサーバデバイスに記憶することができる。さらに、サーバデバイスが自動化されたアシスタントを動作するためのデータを含む場合、サーバデバイスは、自動化されたアシスタントからの出力を提供するために、ユーザのアカウントに関連付けられる異なるコンピュータシステムから選択することができる。たとえば、サーバデバイスは、コンピュータシステム204が携帯可能であり、ユーザ202がコンピュータシステム204の使用と同時に道順を求めていることを知ることができるため、サーバデバイスは、道順を提供するために図2A〜図2Cのコンピュータシステム204を選択することができる。あるいは、ユーザ202がコンピュータシステム204とは別のデバイスに適切な機能を有するアプリケーションを動作している場合、サーバデバイスまたはコンピュータシステム204は、自動化されたアシスタントからの出力を提供するためのデバイスを選択することができる。たとえば、自動化されたアシスタントの動作に関連するデータは、コンピュータシステム204に記憶することができ、コンピュータシステム204は家庭用監視アプリケーションを含むことができる。ユーザ202が家庭用監視アプリケーションを動作している間、選択可能な要素を家庭用監視デバイスに提示することができる。家庭用監視デバイスにおける選択可能な要素の提示は、コンピュータシステム204において実行されるアクションに基づくことができ、コンピュータシステム204は、ユーザ202のアカウントに関連付けられるデバイスのディレクトリを記憶することができる。選択可能な要素は、家庭用監視デバイスにおいて自動化されたアシスタントを呼び出すことができる呼出しフレーズを含むことができる。たとえば、呼出しフレーズは、「家の温度を70度に調整してください」などのテキストを含むことができる。ユーザ202が家庭用監視デバイスにおいて選択可能な要素をクリックすると、それに応じて家の温度を調整することができ、自動化されたアシスタントは、家庭用監視デバイスから「私は家の温度を調整しました」などの可聴出力を提供することができる。いくつかの実装形態では、呼出しフレーズにおけ
るテキストは、サーバデバイスによって記憶されている傾向および好みに基づくことができる。たとえば、呼出しフレーズテキストからの「70度」というテキストは、サーバデバイスおよび/またはコンピュータシステム204によって記憶されるように、温度を70度に調整するためにユーザ202が以前に家庭用監視アプリケーションを使用した頻度に基づくことができる。
【００３５】
図3A〜図3Cは、第2のデバイス304において自動化されたアシスタントを初期化するために、第1のデバイス302においてユーザ306に表示される選択可能な要素を使用することができるデバイスの斜視図である。第1のデバイス302および第2のデバイス304の各々は、ユーザ306が、コンピュータシステム(たとえば、ユーザ306によって動作されるコンピューティングデバイスの前述の調整されたエコシステムのメンバー)からアプリケーションを制御することを可能にするコンピュータシステムとすることができる。さらに、第1のデバイス302および第2のデバイス304は、ネットワークを介して接続することができる。第1のデバイス302を動作している間、ユーザ202は、コンピュータシステムのグラフィカルユーザインターフェース(GUI)308によって提供され得る任意のグラフィカルコンテンツに対応することができるアプリケーションコンテンツ310を閲覧することができる。たとえば、アプリケーションコンテンツ310は、ユーザ306が彼らの家の中で再生したいビデオのプレイリストとすることができる。ユーザ306は、第2のデバイス304がビデオのプレイリストを再生できることを認識し得るが、プレイリストの再生開始を助けるために、自動化されたアシスタントが第2のデバイス304において動作することができることを認識しない場合がある。このようにして、ユーザ306が自動化されたアシスタントを使用するように促すために、呼出しフレーズを含む選択可能な要素を第1のデバイス302においてユーザ306に提示することができる。
【００３６】
第1のデバイス302は、第2のデバイス304、ならびにサーバデバイスを含むネットワークに接続することができる。ユーザ306は、第1のデバイス302において提供され、その後サーバデバイスに送信されるアカウントデータを使用してサーバデバイスにログインすることができる。サーバデバイスは、ユーザ306のアカウントに関連付けられるデバイスのディレクトリを含むユーザアカウントデータベースを照会するために、アカウントデータを使用することができる。デバイスのディレクトリは、少なくとも第1のデバイス302および第2のデバイス304を識別するエントリを含むことができる。このようにして、サーバデバイスは、自動化されたアシスタントがどこから初期化されるかを制御することができる。第2のデバイス304は第1のデバイス302よりも大きな表示領域を有するため、サーバデバイスは、第2のデバイス304がユーザ306にとってアクセス可能な場合、ユーザ306によって選択されたビデオを出力するために、第2のデバイス304を選択することができる。さらに、ユーザ306がビデオのプレイリストに関連するアプリケーションコンテンツ310を閲覧しているとき、サーバデバイスは、自動化されたアシスタントを初期化することができる選択可能な要素の動作および提示に対応するデータを第1のデバイス302に提供することができる。たとえば、選択可能な要素の動作に関連するデータは、自動化されたアシスタントの出力を第2のデバイス304において提供させるために、第1のデバイス302または第2のデバイス304によって実行可能な命令を含むことができる。さらに、選択可能な要素の提示に関連するデータは、「第2のデバイスにおいてビデオのプレイリストを再生してください」などの呼出しフレーズのテキストを含むことができる。
【００３７】
図3Bは、GUI308において選択可能な要素314を備えるアプリケーションコンテンツ310を閲覧しているユーザ306の斜視図312を示している。選択可能な要素314は、自動化されたアシスタントの特定の機能を認識していない場合、ユーザ306が呼出しフレーズを話すように促すために、呼出しフレーズとともにGUI308において表示することができる。この例では、ユーザ306は、呼出しフレーズを第2のデバイス304に話すことによって、自動化されたアシスタントを第2のデバイス304において初期化することができることを認識していない。したがって、ユーザ306が第1のデバイス302においてアプリケーションコンテンツ310を閲覧していることがサーバデバイスに通知されるため、サーバデバイスは第1のデバイス302に選択可能な要素314を表示させることができる。ユーザ306によって選択されると、選択可能な要素314は、まるでユーザ306が第2のデバイス304に呼出しフレーズを音声で話したかのように、自動化されたアシスタントに第2のデバイス304において初期化させることができる。さらに、自動化されたアシスタントは、呼出しフレーズに対応するコマンドを実行させることができる。たとえば、呼出しフレーズが「第2のデバイスにおいてビデオのプレイリストを再生してください」である場合、図3Cの斜視図316に示されるように、自動化されたアシスタントは、第2のデバイス304に、ビデオのプレイリスト内のビデオに対応するビデオコンテンツ318を表示させることができる。
【００３８】
具体的には、図3Cは、ユーザ306が第1のデバイス302において選択可能な要素314をクリックした後に、ユーザ306が第2のデバイス304において表示されるビデオコンテンツ318を閲覧している斜視図316を提供する。任意選択で、いくつかの実装形態では、第2のデバイス304は、自動化されたアシスタントが第2のデバイス304において助けることができる他の機能をユーザ306に通知することができる呼出しフレーズ320を表示することができる。たとえば、ユーザ306が選択可能な要素314を選択し、自動化されたアシスタント106がビデオコンテンツ318を表示させた後、ユーザ306はプレイリスト内の特定のビデオをスキップしたい場合がある。スキップ機能は、ユーザ306の指示で自動化されたアシスタントによって実行することができる。この機能をユーザ306に通知するために、サーバデバイス、第1のデバイス302、または第2のデバイス304は、呼出しフレーズ320に「プレイリスト内の次のビデオにスキップしてください」というテキストを表示させることができる。あるいは、呼出しフレーズ320は、「第2のデバイス304においてビデオの音量を上げてください」というテキストを表示することができる。呼出しフレーズを提供するための命令は、サーバデバイスから第2のデバイスに、あるいは任意で、第1のデバイス302または第2のデバイス304に提供することができる。命令は、自動化されたアシスタントを動作しているデバイスによって任意選択で生成することができる。
【００３９】
いくつかの実装形態では、自動化されたアシスタントは、ユーザ306に関連する好みおよび傾向のデータにアクセスし、呼出しフレーズ320に、ユーザ306の傾向により具体的なテキストを含めることができる。たとえば、自動化されたアシスタントは、ユーザ306によって最も多く再生されたビデオ(たとえば、レッドツェッペリンのビデオ)がビデオのプレイリスト内にあることを示すサーバデバイスにおいてデータにアクセスすることができる。自動化されたアシスタントは、次に呼出しフレーズ320または選択可能な要素314に「レッドツェッペリンのビデオを再生してください」というテキストを表示させることができる。このようにして、ユーザ306は、自動化されたアシスタントを呼び出すためのより具体的な要求を第1のデバイス302および第2のデバイス304に提供することができることを通知され得る。いくつかの実装形態では、呼出しフレーズ320は、クリック可能またはクリック不可能なグラフィック要素の一部とすることができる。たとえば、いくつかの実装形態では、呼出しフレーズ320を有するグラフィック要素は、ユーザ306が呼出しフレーズ320を第2のデバイス304に話すように促すためにクリック不可能とすることができる。
【００４０】
図4Aおよび図4Bは、異なる言語で自動化されたアシスタントを呼び出すことができる選択可能な要素を提供するためのシステムを示す図である。具体的には、図4Aは、ネットワーク404を介して接続されたサーバデバイス402、クライアントデバイス406、およびユーザアカウントデータベース412を含むシステムの図400を示している。クライアントデバイス406は、第1の言語でクライアントデバイス406のディスプレイコンポーネント408においてコンテンツを表示することができる任意のコンピュータシステム204であり得る。たとえば、ディスプレイコンポーネント408は、第1の言語コンテンツ410を有するアプリケーションを表示するグラフィカルユーザインターフェース(GUI)414を含むことができる。第1の言語は、人間によって話したり書いたりすることができる英語、ドイツ語、スペイン語、フランス語、日本語、ペルシア語、および/またはいずれか他の言語であり得る。サーバデバイス402は、クライアントデバイス406において機能を実行するために使用することができる1つまたは複数の自動化されたアシスタントに対応する1つまたは複数のモジュールを含むことができる。ユーザは、いくつかの異なる言語で話すことができる呼出しフレーズを通じて、自動化されたアシスタントと通信することができる。しかしながら、いくつかの実装形態では、自動化されたアシスタントによって理解される言語は制限される場合がある。したがって、自動化されたアシスタントによって理解される言語で自動化されたアシスタントに要請するようにユーザに教えるために、選択可能な要素を提供することができる。選択可能な要素は、ユーザによって好まれる言語である第1の言語で提示することができるが、自動化されたアシスタントは、ユーザによって音声で話されると自動化されたアシスタントが理解する第2の言語で応答することができる。たとえば、第1の言語はドイツ語であり得、第1の言語コンテンツ410は、ユーザの好みに応じて、ドイツ語のテキストで表示されているメールアプリケーションに対応することができる。メールアプリケーションを使用するために、ユーザはログイン資格情報をクライアントデバイス406に提供することができ、次いで、クライアントデバイス406はログイン資格情報をサーバデバイス402に
送信することができる。サーバデバイス402は、ユーザアカウントデータベース412を照会し、ユーザの言語の好みを決定するために、ログイン資格情報を使用することができる。言語の好みが、たとえば英語などの、自動化されたアシスタントによって理解される言語に対応しない場合、サーバデバイス402は、選択可能な要素に対応するデータをクライアントデバイス406に提供することができる。選択可能な要素は、第1の言語で記述された呼出しフレーズを含むことができるが、選択されると、ユーザに第2の言語で自動化されたアシスタントを呼び出す方法を通知するために、自動化されたアシスタントにオーディオコンポーネント416から第2の言語で話させることができる。
【００４１】
図4Bは、自動化されたアシスタントを初期化するために使用され得る第2の言語選択可能な要素420として表示される選択可能な要素を示す図418を提供する。ユーザが第2の言語選択可能な要素420を選択することに応じて、自動化されたアシスタントは、第2の言語選択可能な要素420において識別されるコマンドを実行し、ユーザのためにコマンドを音声で暗唱することができる。たとえば、ユーザがドイツ語でメールアプリケーションを閲覧している間、第2の言語選択可能な要素420は、「Bitte liest du diese email」というテキストを含む呼出しフレーズを含むことができ、これは「このメールを読んでください」を意味することができる。自動化されたアシスタントは、英語で呼出しフレーズを暗唱し、コマンドを実行する(たとえば、電子メールのテキストを音声で暗唱する)ことができる。これは、バイリンガルユーザが、自動化されたアシスタントが他の言語を理解する機能を認識するようになるために役立つ。
【００４２】
いくつかの実装形態では、自動化されたアシスタントによって理解される、話される呼出しフレーズの数を増やすために、サーバデバイス402および/またはクライアントデバイス406を使用することができる。サーバデバイス402は、処理されたスピーチをサーバデバイス402および/またはクライアントデバイス406の機能に関連付け、アプリケーションテキストをサーバデバイス402および/またはクライアントデバイス406の機能に関連付け、ならびに/あるいは自動化されたアシスタントによって理解される呼出しフレーズを管理する、ユーザのスピーチを処理するための1つまたは複数の言語処理モジュールを含むことができる。自動化されたアシスタントによって理解される、話される呼出しフレーズの数を増やすために、これらのモジュールを使用することができる。たとえば、ユーザは、クライアントデバイス406において、複数のテキストエントリを有するGUIを含むソーシャルネットワークアプリケーションを第1の言語で閲覧することができる。クライアントデバイス406および/またはサーバデバイス402は、ソーシャルネットワークアプリケーションに表示されるビデオを再生するなど、自動化されたアシスタントによって実行することができる機能に相関するテキストエントリを識別することができる。しかしながら、自動化されたアシスタントは第1の言語を理解できない場合があり、代わりに第2の言語で提供される呼出しフレーズに依存する場合がある。言い換えれば、ユーザが第1の言語ではなく第2の言語で呼出しフレーズを話すと、自動化されたアシスタントはすでに機能を実行できる可能性がある。このシナリオでは、ユーザに第1の言語で選択可能な要素を提供し、第1の言語で選択可能な要素の呼出しフレーズを話すように促すことができる。プロンプトは選択可能な要素に含めることができ、「好みの言語でコマンドを記録したいですか?」というフレーズを含むことができる。もしユーザが同意すれば、クライアントデバイス406および/またはサーバデバイス402は、自動化されたアシスタントが第1の言語で理解できる呼出しフレーズの数を増やすために、ユーザから受信したスピーチを処理することができる。次いで、処理されたスピーチに関連するデータを機能に関連付けて記憶することができるため、第1の言語または第2
の言語のいずれかで機能を実行するために自動化されたアシスタントを呼び出すことができる。あるいは、選択可能な要素は、自動化されたアシスタントによって好まれる言語で呼出しフレーズを暗唱する方法をユーザに教えるために、自動化されたアシスタントに、選択可能な要素の呼出しフレーズを第2の言語で暗唱させることができる。
【００４３】
図5は、選択可能な要素から自動化されたアシスタントを初期化するための方法500を示す図である。方法500は、コンピュータシステム、装置、および/または自動化されたアシスタントを制御するために適した任意の他のデバイスによって実行することができる。コンピュータシステムは、本明細書で説明される様々なエンジン、データベース、およびモジュールを含む、様々なコンピュータシステムの様々なコンポーネントを含むことができる。さらに、方法500の動作は特定の順序で示されているが、これは限定することを意味するものではない。1つまたは複数の動作の順序が変更、省略、または追加され得る。方法500は、コンピューティングデバイスのグラフィカルユーザインターフェースにおいて選択可能な要素を提供するための命令を受信するブロック502を含むことができる。命令は、コンピューティングデバイスに接続されているサーバデバイスによって提供することができる。ブロック504において、選択可能な要素をコンピューティングデバイスのグラフィカルユーザインターフェースに表示することができる。選択可能な要素は、自動化されたアシスタントに要請するための呼出しフレーズに対応するテキストを含むことができる。呼出しフレーズは、自動化されたアシスタントによって理解および実行することができるコマンドを含むことができる。たとえば、コマンドは、コンピューティングデバイスおよび/またはサーバデバイスに記憶されたデータを使用してアクションを実行するように自動化されたアシスタントに指示することができる。ブロック506において、選択可能な要素の選択をグラフィカルユーザインターフェースにおいて受信することができる。選択は、タッチスクリーン、キーボード、タッチパッド、および/またはコンピューティングデバイスの周辺デバイスを使用して行うことができる。さらに、ブロック508において、自動化されたアシスタントは、選択の受信に応じて動作状態に移行することができる。動作状態は、自動化されたアシスタントがユーザからの話される呼出しフレーズに応答することができるアクティブな動作状態とすることができる。あるいは、動作状態は、自動化されたアシスタントが選択の受信に応じてアクションを実行するアクティブな動作状態とすることができる。
【００４４】
図6は、選択可能な要素が提供される異なるコンピューティングデバイスにおいて自動化されたアシスタントを初期化するための方法600を示す図である。方法600は、コンピュータシステム、装置、および/または自動化されたアシスタントを制御するために適した任意の他のデバイスによって実行することができる。コンピュータシステムは、本明細書で説明される様々なエンジン、データベース、およびモジュールを含む、様々なコンピュータシステムの様々なコンポーネントを含むことができる。さらに、方法600の動作は特定の順序で示されているが、これは限定することを意味するものではない。1つまたは複数の動作の順序が変更、省略、または追加され得る。方法600は、ネットワークに接続された第1のコンピューティングデバイスのグラフィカルユーザインターフェースにおいて選択可能な要素を提供するブロック602を含むことができる。選択可能な要素は、選択可能な要素に表示されるテキストにおいて識別される機能を実行するために、自動化されたアシスタントを呼び出すことができるリンクに対応することができる。方法600は、第1のコンピューティングデバイスのグラフィカルユーザインターフェースにおいて選択可能な要素の選択を受信するブロック604をさらに含むことができる。さらに、方法600は、自動化されたアシスタントを呼び出すためにネットワーク上の第2のコンピューティングデバイスを識別するブロック606を含むことができる。第2のコンピューティングデバイスは、ユーザのアカウントデータに関連付けて記憶されているデバイスのディレクトリから識別することができる。さらに、第2のコンピューティングデバイスは、第1のコンピューティングデバイスよりも選択可能な要素の選択に応答することがより適切であるかどうかに基づいて識別することができる。たとえば、第1のコンピューティングデバイスがセルラーデバイスであり、第2のコンピューティングデバイスがテレビであり、選択可能な要素がビデオを再生するコマンドに対応する場合、テレビはビデオを再生するためにより適しているため、自動化されたアシスタントを呼び出すためにテレビを選択することができる。あるいは、第1のコンピューティングデバイスがテレビであり、第2のコンピューティングデバイスがポータブルデバイスであり、選択可能な要素が指示を提供するコマンドに対応する場合、ポータブルデバイスは旅行中により簡単に携帯できるため、自動化されたアシスタントを呼び出すためにポータブルデバイスを選択することができる。ブロック608において、自動化されたアシスタントは、第2のコンピューティングデバイスにおいて動作状態に移行することができる。動作状態は、自動化されたアシスタントがアクションを第2のコンピューティングデバイスで実行させるアクティブな動作状態であり得る。アクティブな動作状態にある間、自動化されたアシスタントは、話される呼出しフレーズおよび別の選択可能な要素の任意の後続の選択に応答することができる。
【００４５】
図7は、コンピューティングデバイスにおいて提供されるコンテンツの言語とは異なる言語を理解する自動化されたアシスタントを初期化するための方法700を示す図である。方法700は、コンピュータシステム、サーバデバイス、装置、および/または自動化されたアシスタントを制御するために適した任意の他のデバイスによって実行することができる。コンピュータシステムは、本明細書で説明される様々なエンジン、データベース、およびモジュールを含む、様々なコンピュータシステムの様々なコンポーネントを含むことができる。さらに、方法700の動作は特定の順序で示されているが、これは限定することを意味するものではない。1つまたは複数の動作の順序が変更、省略、または追加され得る。方法700は、コンピューティングデバイスのグラフィカルユーザインターフェースにおいて表示されるコンテンツの第1の言語を識別するブロック702を含むことができる。第1の言語は、人間によって理解することができる書き言葉に対応することができ、コンテンツは、コンピューティングデバイスにおいて動作しているアプリケーションのインターフェースにおいてで提供することができる。たとえば、アプリケーションは、特定のスケジュールされたイベントの件名などのコンテンツをドイツ語で表示するカレンダプリケーションとすることができる。ブロック704において、第1の言語は、自動化されたアシスタントの第2の言語とは異なると決定される。第2の言語は、第1の言語とは異なる任意の言語とすることができる。たとえば、第2の言語は英語とすることができ、これは、自動化されたアシスタントを動作しているデバイスに音声で話されると、自動化されたアシスタントによって理解され得る。ブロック706において、選択可能な要素を、コンピューティングデバイスのグラフィカルユーザインターフェースにおいて第1の言語で表示することができる。たとえば、選択可能な要素は、第1の言語で提供される呼出しフレーズに対応するテキストを含むボタンまたはリンクとすることができる。ユーザが自動化されたアシスタントによって制御することができる機能を有するアプリケーションを動作しているときに、選択可能な要素を提供することができる。たとえば、アプリケーションがカレンダプリケーションを使用している場合、選択可能な要素は、「来月のカレンダを開いてください」を意味するドイツ語の呼出しフレーズを含むことができる。ブロック708において、選択可能な要素の選択に応じて、自動化されたアシスタントは第2の言語で応答することができる。いくつかの実装形態では、自動化されたアシスタントの応答は、第1の言語と第2の言語の両方を含むことができる。たとえば、第1の言語では、自動化されたアシスタントが「コマンドが第2の言語で話される方法を示します」と言うことができ、その後、第2の言語で、自動化されたアシスタントが呼出しフレーズを話すことができる。このようにして、ユーザが、自動化されたアシスタントによって好まれる言語で呼出しフレーズを話すように促されることができる。
【００４６】
図8は、例示的なコンピュータシステム810のブロック図800である。コンピュータシステム810は、通常、バスサブシステム812を介していくつかの周辺デバイスと通信する少なくとも1つのプロセッサ814を含む。これらの周辺デバイスは、たとえば、メモリサブシステム825およびファイルストレージサブシステム826を含むストレージサブシステム824、ユーザインターフェース出力デバイス820、ユーザインターフェース入力デバイス822、およびネットワークインターフェースサブシステム816を含み得る。入力デバイスおよび出力デバイスは、コンピュータシステム810とのユーザ対話を可能にする。ネットワークインターフェースサブシステム816は、外部ネットワークへのインターフェースを提供し、他のコンピュータシステムにおける対応するインターフェースデバイスに結合される。
【００４７】
ユーザインターフェース入力デバイス822は、キーボード、マウス、トラックボール、タッチパッド、またはグラフィックタブレットなどのポインティングデバイス、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システム、マイク、および/または他のタイプの入力デバイスなどのオーディオ入力デバイスを含み得る。一般に、「入力デバイス」という用語の使用は、コンピュータシステム810または通信ネットワークに情報を入力するためのすべての可能なタイプのデバイスおよび方法を含むことが意図される。
【００４８】
ユーザインターフェース出力デバイス820は、ディスプレイサブシステム、プリンタ、ファックス機、または音声出力デバイスなどの非視覚的ディスプレイを含み得る。ディスプレイサブシステムは、陰極線管(CRT)、液晶ディスプレイ(LCD)などのフラットパネルデバイス、投影デバイス、または可視画像を作成するための何らかの他のメカニズムを含み得る。ディスプレイサブシステムはまた、音声出力デバイスなどを介して非視覚的ディスプレイを提供し得る。一般に、「出力デバイス」という用語の使用は、コンピュータシステム810からユーザあるいは別の機械またはコンピュータシステムに情報を出力するためのすべての可能なタイプのデバイスおよび方法を含むことを意図している。
【００４９】
ストレージサブシステム824は、本明細書で説明されるモジュールの一部またはすべての機能を提供するプログラミングおよびデータ構造を記憶する。たとえば、ストレージサブシステム824は、方法500、600、700の選択された態様を実行すること、ならびに/あるいは本明細書で論じられるサーバデバイス、クライアントデバイス、データベース、エンジン、および/またはモジュールのうちの1つまたは複数を実装することを行うためのロジックを含むことができる。
【００５０】
これらのソフトウェアモジュールは一般に、単独で、または他のプロセッサと組み合わせてプロセッサ814によって実行される。ストレージサブシステム824において使用されるメモリ825は、プログラム実行中に命令およびデータを記憶するためのメインランダムアクセスメモリ(RAM)830と、固定命令が記憶される読出し専用メモリ(ROM)832を含むいくつかのメモリを含むことができる。ファイルストレージサブシステム826は、プログラムおよびデータファイルの永続ストレージを提供することができ、ハードディスクドライブ、関連付けられるリムーバブルメディアとともにフロッピーディスクドライブ、CD-ROMドライブ、光学ドライブ、またはリムーバブルメディアカートリッジを含み得る。特定の実装形態の機能を実装するモジュールは、ストレージサブシステム824内のファイルストレージサブシステム826によって、またはプロセッサ814によってアクセス可能な他の機械に記憶され得る。
【００５１】
バスサブシステム812は、コンピュータシステム810の様々なコンポーネントおよびサブシステムが意図したとおりに互いに通信するためのメカニズムを提供する。バスサブシステム812は単一のバスとして概略的に示されているが、バスサブシステムの代替の実装形態は複数のバスを使用し得る。
【００５２】
コンピュータシステム810は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、あるいは任意の他のデータ処理システムまたはコンピューティングデバイスを含む、様々なタイプのものであり得る。コンピュータおよびネットワークの絶えず変化する性質のため、図8に示されるコンピュータシステム810の説明は、いくつかの実装形態を説明するための特定の例としてのみ意図されている。コンピュータシステム810の他の多くの構成は、図8に示されるコンピュータシステムよりも多数または少数のコンポーネントを有することが可能である。
【００５３】
本書に記載のシステムがユーザに関する個人情報を収集する状況、または個人情報を利用し得る状況では、ユーザは、プログラムまたは機能がユーザ情報(たとえば、ユーザのソーシャルネットワーク、ソーシャルアクションまたはソーシャルアクティビティ、職業、ユーザの好み、あるいはユーザの現在の地理的位置に関する情報)を収集するかどうかを制御する機会、あるいはユーザにより関連性の高い可能性があるコンテンツをサーバから受信するかどうか、および/または受信する方法を制御する機会が提供され得る。また、特定のデータは、記憶または使用される前に1つまたは複数の方法で扱われ得るため、個人情報は削除される。たとえば、ユーザの個人情報は、ユーザの個人識別可能な情報を決定できないように扱われてもよく、ユーザの特定の地理的位置を決定できないように、地理的位置情報が取得される場所(都市、郵便番号、または州レベルなど)でユーザの地理的位置が一般化されてもよい。したがって、ユーザは、ユーザに関する情報の収集方法および/または使用方法を制御し得る。
【００５４】
本明細書ではいくつかの実装形態を説明および図示したが、機能を実行し、および/または結果を取得するための様々な他の手段および/または構造、および/または本明細書で説明した利点のうちの1つまたは複数が利用され得、そのような変形および/または変更の各々は、本書に記載される実装形態の範囲内であると見なされる。より一般的には、本明細書で説明するすべてのパラメータ、寸法、材料、および構成は例示であり、実際のパラメータ、寸法、材料、および/または構成は、教示が使用される特定の用途に依存することを意味する。当業者は、日常的な実験のみを使用して、本明細書に記載された特定の実装形態に対する多くの同等物を認識するか、確認することができるであろう。したがって、前述の実装形態は例としてのみ提示されており、添付の特許請求の範囲およびその均等物の範囲内で、具体的に説明および特許請求されている以外の実装形態が実践され得ることを理解されたい。本開示の実装形態は、本明細書に記載の各個々の特徴、システム、物品、材料、キット、および/または方法を対象とする。加えて、そのような機能、システム、物品、材料、キット、および/または方法の2つ以上の任意の組合せは、そのような機能、システム、物品、材料、キット、および/または方法が相互に矛盾しない場合、本開示の範囲内に含まれる。
【符号の説明】
【００５５】
100  システム
102  クライアントデバイス
104  サーバデバイス
106  自動化されたアシスタント
108  (自然)言語処理エンジン
110  応答コンテンツエンジン
112  選択可能な要素エンジン
114  ネットワーク
116  ユーザアカウントデータベース
118  選択可能な要素
200  斜視図
202  ユーザ
204  コンピュータシステム
206  アプリケーション
208  グラフィカルユーザインターフェース(GUI)
210  斜視図
212  選択可能な要素
214  斜視図
218  可聴出力
302  第1のデバイス
304  第2のデバイス
306  ユーザ
308  グラフィカルユーザインターフェース(GUI)
310  アプリケーションコンテンツ
312  斜視図
314  選択可能な要素
316  斜視図
318  ビデオコンテンツ
320  呼出しフレーズ
400  図
402  サーバデバイス
404  ネットワーク
406  クライアントデバイス
408  ディスプレイコンポーネント
410  第1の言語コンテンツ
412  ユーザアカウントデータベース
414  グラフィカルユーザインターフェース(GUI)
416  オーディオコンポーネント
418  図
420  第2の言語選択可能な要素
500  方法
600  方法
700  方法
800  ブロック図
810  コンピュータシステム
812  バスサブシステム
814  プロセッサ
816  ネットワークインターフェースサブシステム
820  ユーザインターフェース出力デバイス
822  ユーザインターフェース入力デバイス
824  ストレージサブシステム
825  メモリサブシステム
826  ファイルストレージサブシステム
【図１】
2020518905.tif 000003
【図２Ａ】
2020518905.tif 000004
【図２Ｂ】
2020518905.tif 000005
【図２Ｃ】
2020518905.tif 000006
【図３Ａ】
2020518905.tif 000007
【図３Ｂ】
2020518905.tif 000008
【図３Ｃ】
2020518905.tif 000009
【図４Ａ】
2020518905.tif 000010
【図４Ｂ】
2020518905.tif 000011
【図５】
2020518905.tif 000012
【図６】
2020518905.tif 000013
【図７】
2020518905.tif 000014
【図８】
2020518905.tif 000015
【国際調査報告】
2020518905.tif 000016
2020518905.tif 000017