(57)【要約】   デジタルアシスタントを動作させるためのシステム及び処理が提供される。一実施例では、方法は、第１の発話入力をユーザから受信することを含む。方法は、コンテクスト情報を特定することと、第１の発話入力及びコンテクスト情報に基づいてユーザ意図を判定することとを更に含む。方法は、ユーザ意図が、検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定することを更に含む。検索処理は、データを検索するように構成されており、オブジェクト管理処理は、オブジェクトを管理するように構成されている。方法は、ユーザ意図が検索処理を使用してタスクを実行することであるとの判定に従って、検索処理を使用してタスクを実行することと、ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであるとの判定に従って、オブジェクト管理処理を使用してタスクを実行することとを更に含む。【選択図】図１９Ａ
2019522250.tif 000002
【特許請求の範囲】
【請求項１】
デジタルアシスタントサービスを提供する方法であって、
１つ以上のプロセッサ及びメモリを有するユーザデバイスにおいて、
第１の発話入力をユーザから受信することと、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定することと、
前記第１の発話入力及び前記コンテクスト情報に基づいてユーザ意図を判定することと、
前記ユーザ意図が、検索処理を使用してタスクを実行することであるか又はオブジェクト管理処理を使用してタスクを実行することであるかを判定することであって、前記検索処理は、前記ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成されており、前記オブジェクト管理処理は、前記ユーザデバイスと関連付けられたオブジェクトを管理するように構成されている、ことと、
前記ユーザ意図が前記検索処理を使用して前記タスクを実行することであるとの判定に従って、前記検索処理を使用して前記タスクを実行することと、
前記ユーザ意図が前記オブジェクト管理処理を使用して前記タスクを実行することとの前記判定に従って、前記オブジェクト管理処理を使用して前記タスクを実行することと、
を含む、方法。
【請求項２】
前記第１の発話入力を受信する前に、
前記ユーザデバイスと関連付けられたディスプレイ上で、前記デジタルアシスタントサービスを呼び出すためのアフォーダンスを表示することを更に含む、請求項１に記載の方法。
【請求項３】
所定のフレーズを受信したことに応じて前記デジタルアシスタントを呼び出すことを更に含む、請求項２に記載の方法。
【請求項４】
前記アフォーダンスの選択を受信したことに応じて前記デジタルアシスタントを呼び出すことを更に含む、請求項２に記載の方法。
【請求項５】
前記ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定することと、
前記実施可能な意図と関連付けられた１つ以上のパラメータを判定することと、
を含む、請求項１に記載の方法。
【請求項６】
前記コンテクスト情報は、ユーザ特有データ、１つ以上のオブジェクトと関連付けられたメタデータ、センサデータ、及びユーザデバイス構成データのうちの少なくとも１つを含む、請求項１に記載の方法。
【請求項７】
前記ユーザ意図が前記検索処理を使用して又は前記オブジェクト管理処理を使用して前記タスクを実行することであると判定することは、
前記発話入力が前記検索処理又は前記オブジェクト管理処理を表す１つ以上のキーワードを含むか否かを判定することを含む、請求項１に記載の方法。
【請求項８】
前記ユーザ意図が前記検索処理を使用して又は前記オブジェクト管理処理を使用して前記タスクを実行することであると判定することは、
前記タスクが検索することと関連付けられているか否かを判定することと、
前記タスクが検索することと関連付けられているとの判定に従って、前記タスクを実行することが前記検索処理を必要とするか否かを判定することと、
前記タスクは検索することと関連付けられていないとの判定に従って、前記タスクが少なくとも１つのオブジェクトを管理することと関連付けられているか否かを判定することと、
を含む、請求項１に記載の方法。
【請求項９】
前記タスクは、検索することと関連付けられ、前記方法は、
前記タスクを実行することが前記検索処理を必要としないとの判定に従って、
前記検索処理又は前記オブジェクト管理処理を選択するために発話要求を出力することと、
前記ユーザから、前記検索処理又は前記オブジェクト管理処理の前記選択を示す第２の発話入力を受信することと、
を更に含む、請求項８に記載の方法。
【請求項１０】
前記タスクは、検索することと関連付けられ、前記方法は、
前記タスクを実行することが前記検索処理を必要としないとの判定に従って、所定の構成に基づいて、前記タスクが前記検索処理又は前記オブジェクト管理処理を使用して実行されるか否かを判定することを更に含む、請求項８に記載の方法。
【請求項１１】
前記タスクは、検索することと関連付けられず、前記方法は、
前記タスクが前記少なくとも１つのオブジェクトを管理することと関連付けられていないとの判定に従って、
前記ユーザデバイスに利用可能な第４の処理を使用して前記タスクを実行することができるか否かを判定すること、
前記ユーザとのダイアログを開始することと、
のうちの少なくとも１つを実行することを更に含む、請求項８に記載の方法。
【請求項１２】
前記検索処理を使用して前記タスクを実行することは、
前記検索処理を使用して少なくとも１つのオブジェクトを検索することを含む、請求項１に記載の方法。
【請求項１３】
前記少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む、請求項１２に記載の方法。
【請求項１４】
前記ファイルは、写真、音声、又はビデオのうちの少なくとも１つを含む、請求項１３に記載の方法。
【請求項１５】
前記ファイルは、前記ユーザデバイスの内部又は外部に記憶されている、請求項１３に記載の方法。
【請求項１６】
前記フォルダ又は前記ファイルのうちの少なくとも１つを検索することは、前記フォルダ又は前記ファイルと関連付けられたメタデータに基づいている、請求項１３に記載の方法。
【請求項１７】
前記少なくとも１つのオブジェクトは、通信を含む、請求項１２に記載の方法。
【請求項１８】
前記通信は、電子メール、メッセージ、通知、及びボイスメールのうちの少なくとも１つを含む、請求項１７に記載の方法。
【請求項１９】
前記通信と関連付けられたメタデータを検索することを更に含む、請求項１７に記載の方法。
【請求項２０】
前記少なくとも１つのオブジェクトは、連絡先又はカレンダのうちの少なくも１つを含む、請求項１２に記載の方法。
【請求項２１】
前記少なくとも１つのオブジェクトは、アプリケーションを含む、請求項１２に記載の方法。
【請求項２２】
前記少なくとも１つのオブジェクトは、オンライン情報のソースを含む、請求項１２に記載の方法。
【請求項２３】
前記タスクは、検索することと関連付けられ、前記オブジェクト管理処理を使用して前記タスクを実行することは、
前記オブジェクト管理処理を使用して前記少なくとも１つのオブジェクトを検索することを含む、請求項１に記載の方法。
【請求項２４】
前記少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む、請求項２３に記載の方法。
【請求項２５】
前記ファイルは、写真、音声、又はビデオのうちの少なくとも１つを含む、請求項２４に記載の方法。
【請求項２６】
前記ファイルは、前記ユーザデバイスの内部又は外部に記憶されている、請求項２４に記載の方法。
【請求項２７】
前記フォルダ又は前記ファイルのうちの少なくとも１つを検索することは、前記フォルダ又は前記ファイルと関連付けられたメタデータに基づいている、請求項２４に記載の方法。
【請求項２８】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記オブジェクト管理処理をインスタンス化することを含み、前記オブジェクト管理処理をインスタンス化することは、前記オブジェクト管理処理を呼び出すこと、前記オブジェクト管理処理の新たなインスタンスを生成すること、又は前記オブジェクト管理処理の既存のインスタンスを実行することを含む、請求項１に記載の方法。
【請求項２９】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記少なくとも１つのオブジェクトを作成することを含む、請求項１に記載の方法。
【請求項３０】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記少なくとも１つのオブジェクトを記憶することを含む、請求項１に記載の方法。
【請求項３１】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記少なくとも１つのオブジェクトを圧縮することを含む、請求項１に記載の方法。
【請求項３２】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記少なくとも１つのオブジェクトを第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に移動することを含む、請求項１に記載の方法。
【請求項３３】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記少なくとも１つのオブジェクトを第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に複製することを含む、請求項１に記載の方法。
【請求項３４】
前記オブジェクト管理処理を使用して前記タスクを実行することは、物理又は仮想記憶装置に記憶された前記少なくとも１つのオブジェクトを削除することを含む、請求項１に記載の方法。
【請求項３５】
前記オブジェクト管理処理を使用して前記タスクを実行することは、物理又は仮想記憶装置に記憶された少なくとも１つのオブジェクトを復元することを含む、請求項１に記載の方法。
【請求項３６】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記少なくとも１つのオブジェクトをマーク付けすることを含み、前記少なくとも１つのオブジェクトをマーク付けすることは、可視的である、又は前記少なくとも１つのオブジェクトのメタデータと関連付けられていることのうちの少なくとも１つである、請求項１に記載の方法。
【請求項３７】
前記オブジェクト管理処理を使用して前記タスクを実行することは、バックアップのための所定の期間に従って前記少なくとも１つのオブジェクトをバックアップすることを含む、請求項１に記載の方法。
【請求項３８】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記ユーザデバイスに通信可能に接続された１つ以上の電子デバイスの間で前記少なくとも１つのオブジェクトを共有することを含む、請求項１に記載の方法。
【請求項３９】
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した結果に基づいて応答を提供することを更に含む、請求項１に記載の方法。
【請求項４０】
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に基づいて前記応答を提供することは、
前記検索処理又は前記オブジェクト管理処理を使用して前記タスクを実行した前記結果を提供する第１のユーザインタフェースを表示することを含む、請求項３９に記載の方法。
【請求項４１】
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に基づいて前記応答を提供することは、
前記検索処理を使用して前記タスクを実行した前記結果と関連付けられたリンクを提供することを含む、請求項３９に記載の方法。
【請求項４２】
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に基づいて前記応答を提供することは、
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に従って発話出力を提供することを含む、請求項３９に記載の方法。
【請求項４３】
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に基づいて前記応答を提供することは、
前記ユーザが前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果を操作することを可能にするアフォーダンスを提供することを含む、請求項３９に記載の方法。
【請求項４４】
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に基づいて前記応答を提供することは、
前記タスクを実行した前記結果を使用して動作する第３の処理をインスタンス化することを含む、請求項３９に記載の方法。
【請求項４５】
検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に基づいて前記応答を提供することは、
信用レベルを判定することと、
前記信用レベルの前記判定に従って前記応答を提供することと、
を含む、請求項３９に記載の方法。
【請求項４６】
前記信用レベルは、前記第１の発話入力及び前記ユーザデバイスと関連付けられたコンテクスト情報に基づいて前記ユーザ意図を判定する精度を表す、請求項４５に記載の方法。
【請求項４７】
前記信用レベルは、前記ユーザ意図が、前記検索処理を使用して又は前記オブジェクト管理処理を使用して前記タスクを実行することであるかを判定する精度を表す、請求項４５に記載の方法。
【請求項４８】
前記信用レベルは、前記検索処理又は前記オブジェクト管理処理を使用して前記タスクを実行する精度を表す、請求項４５に記載の方法。
【請求項４９】
前記信用レベルの前記判定に従って前記応答を提供することは、
前記信用レベルが閾値信用レベル以上であるか否かを判定することと、
前記信用レベルが前記閾値信用レベル以上であるとの判定に従って、第１の応答を提供することと、
前記信用レベルが閾値信用レベル未満であるとの判定に従って、第２の応答を提供することと、
を含む、請求項４５から４８のいずれか一項に記載の方法。
【請求項５０】
１つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、命令を含み、前記命令は、電子デバイスの１つ以上のプロセッサによって実行されるとき、
前記電子デバイスに、
第１の発話入力をユーザから受信させ、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定させ、
前記第１の発話入力及び前記コンテクスト情報に基づいてユーザ意図を判定させ、
前記ユーザ意図が、前記ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成された検索処理を使用してタスクを実行することであるか、又は前記ユーザデバイスと関連付けられたオブジェクトを管理するように構成されたオブジェクト管理処理を使用してタスクを実行することであるかを判定させ、
前記ユーザ意図が前記検索処理を使用して前記タスクを実行することであるとの判定に従って、前記検索処理を使用して前記タスクを実行させ、
前記ユーザ意図が前記オブジェクト管理処理を使用して前記タスクを実行することであるとの前記判定に従って、前記オブジェクト管理処理を使用して前記タスクを実行させる、
非一時的コンピュータ可読記憶媒体。
【請求項５１】
電子デバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を備え、前記１つ以上のプログラムは、
第１の発話入力をユーザから受信し、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定し、
前記第１の発話入力及び前記コンテクスト情報に基づいてユーザ意図を判定し、
前記ユーザ意図が、前記ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成された検索処理を使用してタスクを実行することであるか、又は前記ユーザデバイスと関連付けられたオブジェクトを管理するように構成されたオブジェクト管理処理を使用してタスクを実行することであるかを判定し、
前記ユーザ意図が前記検索処理を使用して前記タスクを実行することであるとの判定に従って、前記検索処理を使用して前記タスクを実行し、
前記ユーザ意図が前記オブジェクト管理処理を使用して前記タスクを実行することとの前記判定に従って、前記オブジェクト管理処理を使用して前記タスクを実行する、
命令を含む、電子デバイス。
【請求項５２】
電子デバイスであって、
第１の発話入力をユーザから受信する手段と、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定する手段と、
前記第１の発話入力及び前記コンテクスト情報に基づいてユーザ意図を判定する手段と、
前記ユーザ意図が、検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定する手段であって、前記検索処理は、前記ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成されており、前記オブジェクト管理処理は、前記ユーザデバイスと関連付けられたオブジェクトを管理するように構成されている、手段と、
前記ユーザ意図が前記検索処理を使用して前記タスクを実行することであるとの判定に従って、前記検索処理を使用して前記タスクを実行する手段と、
前記ユーザ意図が前記オブジェクト管理処理を使用して前記タスクを実行することであるとの前記判定に従って、前記オブジェクト管理処理を使用して前記タスクを実行する手段と、
を備える、電子デバイス。
【請求項５３】
電子デバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を備え、前記１つ以上のプログラムは、請求項１から４９のいずれか一項に記載の方法を実行する命令を含む、電子デバイス。
【請求項５４】
電子デバイスであって、
請求項１から４９のいずれか一項に記載の方法を実行する手段を備える、電子デバイス。
【請求項５５】
電子デバイスの１つ以上のプロセッサによって実行される１つ以上のプログラムを含む非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、命令を含み、前記命令は、前記１つ以上のプロセッサによって実行されるとき、前記電子デバイスに請求項１から４９のいずれか一項に記載の方法を実行させる、非一時的コンピュータ可読記憶媒体。
【請求項５６】
デジタルアシスタントを動作させるシステムであって、前記システムは、請求項１から４９のいずれか一項に記載の方法を実行する手段を備える、システム。
【請求項５７】
電子デバイスであって、
第１の発話入力をユーザから受信するように構成された受信ユニットと、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定し、
前記第１の発話入力及び前記コンテクスト情報に基づいてユーザ意図を判定し、
前記ユーザ意図が、前記ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成された検索処理を使用してタスクを実行することであるか、又は前記ユーザデバイスと関連付けられたオブジェクトを管理するように構成されたオブジェクト管理処理を使用してタスクを実行することであるかを判定し、
前記ユーザ意図が前記検索処理を使用して前記タスクを実行することであるとの判定に従って、前記検索処理を使用して前記タスクを実行し、
前記ユーザ意図が前記オブジェクト管理処理を使用して前記タスクを実行することであるとの前記判定に従って、前記オブジェクト管理処理を使用して前記タスクを実行する、
ように構成された、プロセッシングユニットと、
を備える、電子デバイス。
【請求項５８】
前記第１の発話入力を受信する前に、
前記ユーザデバイスと関連付けられたディスプレイ上で、前記デジタルアシスタントサービスを呼び出すためのアフォーダンスを表示することを更に備える、請求項５７に記載の電子デバイス。
【請求項５９】
所定のフレーズを受信したことに応じて前記デジタルアシスタントをインスタンス化することを更に備える、請求項５８に記載の電子デバイス。
【請求項６０】
前記アフォーダンスの選択を受信したことに応じて前記デジタルアシスタントをインスタンス化することを更に備える、請求項５８に記載の電子デバイス。
【請求項６１】
前記ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定することと、
前記実施可能な意図と関連付けられた１つ以上のパラメータを判定することと、
を含む、請求項５７に記載の電子デバイス。
【請求項６２】
前記コンテクスト情報は、ユーザ特有データ、１つ以上のオブジェクトと関連付けられたメタデータ、センサデータ、及びユーザデバイス構成データのうちの少なくとも１つを含む、請求項５７に記載の電子デバイス。
【請求項６３】
前記ユーザ意図が、前記検索処理を使用して又は前記オブジェクト管理処理を使用して前記タスクを実行することであるかを判定することは、
前記発話入力が前記検索処理又は前記オブジェクト管理処理を表す１つ以上のキーワードを含むか否かを判定することを含む、請求項５７に記載の電子デバイス。
【請求項６４】
前記ユーザ意図が、前記検索処理を使用して又は前記オブジェクト管理処理を使用して前記タスクを実行することであるかを判定することは、
前記タスクが検索することと関連付けられているか否かを判定することと、
前記タスクが検索することと関連付けられているとの判定に従って、前記タスクを実行することが前記検索処理を必要とするか否かを判定することと、
前記タスクは検索することと関連付けられていないとの判定に従って、前記タスクが少なくとも１つのオブジェクトを管理することと関連付けられているか否かを判定することと、
を含む、請求項５７に記載の電子デバイス。
【請求項６５】
前記タスクは、検索することと関連付けられ、前記電子デバイスは、
前記タスクを実行することが前記検索処理を必要としないとの判定に従って、
前記検索処理又は前記オブジェクト管理処理を選択するために発話要求を出力することと、
前記ユーザから、前記検索処理又は前記オブジェクト管理処理の前記選択を示す第２の発話入力を受信することと、
を更に備える、請求項６４に記載の電子デバイス。
【請求項６６】
前記タスクは、検索することと関連付けられ、前記電子デバイスは、
前記タスクを実行することが前記検索処理を必要としないとの判定に従って、所定の構成に基づいて、前記タスクが前記検索処理を使用して実行されるか又は前記オブジェクト管理処理を使用して実行されるかを判定することを更に備える、請求項６４に記載の電子デバイス。
【請求項６７】
前記タスクは、検索することと関連付けられず、前記電子デバイスは、
前記タスクが前記少なくとも１つのオブジェクトを管理することと関連付けられていないとの判定に従って、
前記ユーザデバイスに利用可能な第４の処理を使用して前記タスクを実行することができるか否かを判定することと、
前記ユーザとのダイアログを開始することと、
のうちの少なくとも１つを実行することを更に備える、請求項６４に記載の電子デバイス。
【請求項６８】
前記検索処理を使用して前記タスクを実行することは、
前記検索処理を使用して少なくとも１つのオブジェクトを検索することを含む、請求項５７に記載の電子デバイス。
【請求項６９】
前記少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む、請求項６８に記載の電子デバイス。
【請求項７０】
前記ファイルは、写真、音声、又はビデオのうちの少なくとも１つを含む、請求項６９に記載の電子デバイス。
【請求項７１】
前記ファイルは、前記ユーザデバイスの内部又は外部に記憶されている、請求項６９に記載の電子デバイス。
【請求項７２】
前記フォルダ又は前記ファイルのうちの少なくとも１つを検索することは、前記フォルダ又は前記ファイルと関連付けられたメタデータに基づいている、請求項６９に記載の電子デバイス。
【請求項７３】
前記少なくとも１つのオブジェクトは、通信を含む、請求項６８に記載の電子デバイス。
【請求項７４】
前記通信は、電子メール、メッセージ、通知、又はボイスメールのうちの少なくとも１つを含む、請求項７３に記載の電子デバイス。
【請求項７５】
前記通信と関連付けられたメタデータを検索することを更に備える、請求項７３に記載の電子デバイス。
【請求項７６】
前記少なくとも１つのオブジェクトは、連絡先又はカレンダのうちの少なくとも１つを含む、請求項６８に記載の電子デバイス。
【請求項７７】
前記少なくとも１つのオブジェクトは、アプリケーションを含む、請求項６８に記載の電子デバイス。
【請求項７８】
前記少なくとも１つのオブジェクトは、オンライン情報のソースを含む、請求項６８に記載の電子デバイス。
【請求項７９】
前記タスクは、検索することと関連付けられ、前記オブジェクト管理処理を使用して前記タスクを実行することは、
前記オブジェクト管理処理を使用して前記少なくとも１つのオブジェクトを検索することを含む、請求項５７に記載の電子デバイス。
【請求項８０】
前記少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む、請求項７９に記載の電子デバイス。
【請求項８１】
前記ファイルは、写真、音声、又はビデオのうちの少なくとも１つを含む、請求項８０に記載の電子デバイス。
【請求項８２】
前記ファイルは、前記ユーザデバイスの内部又は外部に記憶されている、請求項７９に記載の電子デバイス。
【請求項８３】
前記フォルダ又は前記ファイルのうちの少なくとも１つを検索することは、前記フォルダ又は前記ファイルと関連付けられたメタデータに基づいている、請求項７９に記載の電子デバイス。
【請求項８４】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記オブジェクト管理処理をインスタンス化することを含み、前記オブジェクト管理処理をインスタンス化することは、前記オブジェクト管理処理を呼び出すこと、前記オブジェクト管理処理の新たなインスタンスを生成すること、又は前記オブジェクト管理処理の既存のインスタンスを実行することを含む、請求項５７に記載の電子デバイス。
【請求項８５】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記少なくとも１つのオブジェクトを作成することを含む、請求項５７に記載の電子デバイス。
【請求項８６】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記少なくとも１つのオブジェクトを記憶することを含む、請求項５７に記載の電子デバイス。
【請求項８７】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記少なくとも１つのオブジェクトを圧縮することを含む、請求項５７に記載の電子デバイス。
【請求項８８】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記少なくとも１つのオブジェクトを第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に移動することを含む、請求項５７に記載の電子デバイス。
【請求項８９】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記少なくとも１つのオブジェクトを第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に複製することを含む、請求項５７に記載の電子デバイス。
【請求項９０】
前記オブジェクト管理処理を使用して前記タスクを実行することは、物理又は仮想記憶装置に記憶された前記少なくとも１つのオブジェクトを削除することを含む、請求項５７に記載の電子デバイス。
【請求項９１】
前記オブジェクト管理処理を使用して前記タスクを実行することは、物理又は仮想記憶装置に記憶された少なくとも１つのオブジェクトを復元することを含む、請求項５７に記載の電子デバイス。
【請求項９２】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記少なくとも１つのオブジェクトをマーク付けすることを含み、前記少なくとも１つのオブジェクトをマーク付けすることは、可視的である、又は前記少なくとも１つのオブジェクトのメタデータと関連付けられていることのうちの少なくとも１つである、請求項５７に記載の電子デバイス。
【請求項９３】
前記オブジェクト管理処理を使用して前記タスクを実行することは、バックアップのための所定の期間に従って前記少なくとも１つのオブジェクトをバックアップすることを含む、請求項５７に記載の電子デバイス。
【請求項９４】
前記オブジェクト管理処理を使用して前記タスクを実行することは、前記ユーザデバイスに通信可能に接続された１つ以上の電子デバイスの間で前記少なくとも１つのオブジェクトを共有することを含む、請求項５７に記載の電子デバイス。
【請求項９５】
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した結果に基づいて応答を提供することを更に備える、請求項５７に記載の電子デバイス。
【請求項９６】
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に基づいて前記応答を提供することは、
前記検索処理又は前記オブジェクト管理処理を使用して前記タスクを実行した前記結果を提供する第１のユーザインタフェースを表示することを含む、請求項９５に記載の電子デバイス。
【請求項９７】
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に基づいて前記応答を提供することは、
前記検索処理を使用して前記タスクを実行した前記結果と関連付けられたリンクを提供することを含む、請求項９５に記載の電子デバイス。
【請求項９８】
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に基づいて前記応答を提供することは、
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に従って発話出力を提供することを含む、請求項９５に記載の電子デバイス。
【請求項９９】
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に基づいて前記応答を提供することは、
前記ユーザが前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果を操作することを可能にするアフォーダンスを提供することを含む、請求項９５に記載の電子デバイス。
【請求項１００】
前記検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に基づいて前記応答を提供することは、
前記タスクを実行した前記結果を使用して動作する第３の処理をインスタンス化することを含む、請求項９５に記載の電子デバイス。
【請求項１０１】
検索処理又は前記オブジェクト管理処理を使用して、前記タスクを実行した前記結果に基づいて前記応答を提供することは、
信用レベルを判定することと、
前記信用レベルの前記判定に従って前記応答を提供することと、
を含む、請求項９５に記載の電子デバイス。
【請求項１０２】
前記信用レベルは、前記第１の発話入力及び前記ユーザデバイスと関連付けられたコンテクスト情報に基づいて前記ユーザ意図を判定する精度を表す、請求項１０１に記載の電子デバイス。
【請求項１０３】
前記信用レベルは、前記ユーザ意図が前記検索処理を使用して又は前記オブジェクト管理処理を使用して前記タスクを実行することであるかを判定する精度を表す、請求項１０１に記載の電子デバイス。
【請求項１０４】
前記信用レベルは、前記検索処理又は前記オブジェクト管理処理を使用して前記タスクを実行する精度を表す、請求項１０１に記載の電子デバイス。
【請求項１０５】
前記信用レベルの前記判定に従って前記応答を提供することは、
前記信用レベルが閾値信用レベル以上であるか否かを判定することと、
前記信用レベルが前記閾値信用レベル以上であるとの判定に従って、第１の応答を提供することと、
前記信用レベルが閾値信用レベル未満であるとの判定に従って、第２の応答を提供することと、
を含む、請求項１０１から１０４のいずれか一項に記載の電子デバイス。
【請求項１０６】
デジタルアシスタントサービスを提供する方法であって、
１つ以上のプロセッサ及びメモリを有するユーザデバイスにおいて、
タスクを実行するために発話入力をユーザから受信することと、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定することと、
前記発話入力及び前記ユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定することと、
ユーザ意図に従って、前記タスクが前記ユーザデバイス、又は前記ユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定することと、
前記タスクが前記ユーザデバイスにおいて実行され、前記タスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、前記タスクを実行するための前記コンテンツを受信することと、
前記タスクが前記第１の電子デバイスにおいて実行され、前記タスクを実行するための前記コンテンツが前記第１の電子デバイスに対してリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを前記第１の電子デバイスに提供することと、
を含む、方法
【請求項１０７】
前記ユーザデバイスは、複数のユーザインタフェースを提供するように構成されている、請求項１０６に記載の方法。
【請求項１０８】
前記ユーザデバイスは、ラップトップコンピュータ、デスクトップコンピュータ、又はサーバを含む、請求項１０６に記載の方法。
【請求項１０９】
前記第１の電子デバイスは、ラップトップコンピュータ、デスクトップコンピュータ、サーバ、スマートフォン、タブレット、セットトップボックス、又は時計を含む、請求項１０６に記載の方法。
【請求項１１０】
前記発話入力を受信する前に、
前記ユーザデバイスのディスプレイ上で、前記デジタルアシスタントを呼び出すためのアフォーダンスを表示することを更に含む、請求項１０６に記載の方法。
【請求項１１１】
所定のフレーズを受信したことに応じて前記デジタルアシスタントをインスタンス化することを更に含む、請求項１１０に記載の方法。
【請求項１１２】
前記アフォーダンスの選択を受信したことに応じて前記デジタルアシスタントをインスタンス化することを更に含む、請求項１１０に記載の方法。
【請求項１１３】
前記ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定することと、
前記実施可能な意図と関連付けられた１つ以上のパラメータを判定することと、
請求項１０６に記載の方法。
【請求項１１４】
前記コンテクスト情報は、ユーザ特有データ、センサデータ、及びユーザデバイス構成データのうちの少なくとも１つを含む、請求項１０６に記載の方法。
【請求項１１５】
前記タスクが前記ユーザデバイス又は前記第１の電子デバイスにおいて実行されるかを判定することは、前記発話入力に含まれる１つ以上のキーワードに基づいている、請求項１０６に記載の方法。
【請求項１１６】
前記タスクが前記ユーザデバイス又は前記第１の電子デバイスにおいて実行されるかを判定することは、
前記ユーザデバイスにおいて前記タスクを実行することが実行基準を満たすかを判定することと、
前記ユーザデバイスにおいて前記タスクを実行することが前記実行基準を満たすとの判定に従って、前記タスクが前記ユーザデバイスにおいて実行されると判定することと、
を含む、請求項１０６に記載の方法。
【請求項１１７】
前記ユーザデバイスにおいて前記タスクを実行することが前記実行基準を満たさないとの判定に従って、
前記第１の電子デバイスにおいて前記タスクを実行することが前記実行基準を満たすかを判定することを更に含む、請求項１１６に記載の方法。
【請求項１１８】
前記第１の電子デバイスにおいて前記タスクを実行することが前記実行基準を満たすとの判定に従って、前記タスクが前記第１の電子デバイスにおいて実行されると判定することと、
前記第１の電子デバイスにおいて前記タスクを前記実行することが前記実行基準を満たさないとの判定に従って、
前記第２の電子デバイスにおいて前記タスクを実行することが前記実行基準を満たすかを判定することと、
を更に含む、請求項１１７に記載の方法。
【請求項１１９】
前記実行基準は、１つ以上のユーザ優先度に基づいて判定される、請求項１１６に記載の方法。
【請求項１２０】
前記実行基準は、前記デバイス構成データに基づいて判定される、請求項１１６に記載の方法。
【請求項１２１】
前記実行基準は、動的に更新される、請求項１１６に記載の方法。
【請求項１２２】
前記タスクが前記ユーザデバイスにおいて実行され、前記タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを受信することは、
前記コンテンツの少なくとも一部を前記第１の電子デバイスから受信することを含み、前記コンテンツの少なくとも一部は、前記第１電子デバイスに記憶されている、請求項１０６に記載の方法。
【請求項１２３】
前記タスクが前記ユーザデバイスにおいて実行され、前記タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを受信することは、
前記コンテンツの少なくとも一部を第３の電子デバイスから受信することを含む、請求項１０６に記載の方法。
【請求項１２４】
前記タスクが前記第１の電子デバイスにおいて実行され、前記タスクを実行するための前記コンテンツが前記第１の電子デバイスに対してリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを前記第１の電子デバイスに提供することは、
前記コンテンツの少なくとも一部を前記ユーザデバイスから前記第１の電子デバイスに提供することを含み、前記コンテンツの少なくとも一部は、前記ユーザデバイスに記憶されている、請求項１０６に記載の方法。
【請求項１２５】
前記タスクが前記第１の電子デバイスにおいて実行され、前記タスクを実行するための前記コンテンツが前記第１の電子デバイスに対してリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを前記第１の電子デバイスに提供することは、
前記コンテンツの少なくとも一部を第４の電子デバイスから前記第１の電子デバイスに提供させることを含み、前記コンテンツの少なくとも一部は、前記第４の電子デバイスに記憶されている、請求項１０６に記載の方法。
【請求項１２６】
前記タスクは、前記ユーザデバイスにおいて実行され、前記方法は、前記受信されたコンテンツを使用して前記ユーザデバイスにおいて第１の応答を提供することを更に含む、請求項１０６に記載の方法。
【請求項１２７】
前記ユーザデバイスにおいて前記第１の応答を提供することは、
前記ユーザデバイスにおいて前記タスクを実行することを含む、請求項１２６に記載の方法。
【請求項１２８】
前記ユーザデバイスにおいて前記タスクを実行することは、前記ユーザデバイスに対して部分的にリモートに実行されたタスクの続きである、請求項１２７に記載の方法。
【請求項１２９】
前記ユーザデバイスにおいて前記第１の応答を提供することは、
前記ユーザデバイスにおいて実行される前記タスクと関連付けられた第１のユーザインタフェースを表示することを含む、請求項１２６に記載の方法。
【請求項１３０】
前記ユーザデバイスにおいて前記第１の応答を提供することは、
前記ユーザデバイスにおいて実行される前記タスクと関連付けられたリンクを提供することを含む、請求項１２６に記載の方法。
【請求項１３１】
前記ユーザデバイスにおいて前記第１の応答を提供することは、
前記ユーザデバイスにおいて実行される前記タスクに従って発話出力を提供することを含む、請求項１２６に記載の方法。
【請求項１３２】
前記タスクは、前記第１の電子デバイスにおいて実行され、前記方法は、前記ユーザデバイスにおいて第２の応答を提供することを更に含む、請求項１０６に記載の方法。
【請求項１３３】
前記ユーザデバイスにおいて前記第２の応答を提供することは、
前記第１の電子デバイスにおいて前記タスクを実行させることを含む、請求項１３２に記載の方法。
【請求項１３４】
前記第１の電子デバイスにおいて実行される前記タスクは、前記第１の電子デバイスに対してリモートに実行されたタスクの続きである、請求項１３３に記載の方法。
【請求項１３５】
前記ユーザデバイスにおいて前記第２の応答を提供することは、
前記第１の電子デバイスにおいて実行される前記タスクに従って発話出力を提供することを含む、請求項１３２に記載の方法。
【請求項１３６】
前記ユーザデバイスにおいて前記第２の応答を提供することは、
前記ユーザが前記タスクの実行のための別の電子デバイスを選択することを可能にするアフォーダンスを提供することを含む、条項１３２〜１３５のいずれか一つに記載の方法。
【請求項１３７】
１つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、命令を含み、前記命令は、電子デバイスの１つ以上のプロセッサによって実行されるとき、
前記電子デバイスに、
タスクを実行するために発話入力をユーザから受信させ、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定させ、
前記発話入力及び前記ユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定させ、
ユーザ意図に従って、前記タスクが前記ユーザデバイス、又は前記ユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定させ、
前記タスクが前記ユーザデバイスにおいて実行され、前記タスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、前記タスクを実行するための前記コンテンツを受信させ、
前記タスクが前記第１の電子デバイスにおいて実行され、前記タスクを実行するための前記コンテンツが前記第１の電子デバイスに対してリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを前記第１の電子デバイスに提供させる、
非一時的コンピュータ可読記憶媒体。
【請求項１３８】
ユーザデバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を備え、前記１つ以上のプログラムは、
タスクを実行するために発話入力をユーザから受信し、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定し、
前記発話入力及び前記ユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定し、
ユーザ意図に従って、前記タスクが前記ユーザデバイス、又は前記ユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定し、
前記タスクが前記ユーザデバイスにおいて実行され、前記タスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、前記タスクを実行するための前記コンテンツを受信し、
前記タスクが前記第１の電子デバイスにおいて実行され、前記タスクを実行するための前記コンテンツが前記第１の電子デバイスに対してリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを前記第１の電子デバイスに提供する、
命令を含む、ユーザデバイス。
【請求項１３９】
ユーザデバイスであって、
タスクを実行するために発話入力をユーザから受信する手段と、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定する手段と、
前記発話入力及び前記ユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定する手段と、
ユーザ意図に従って、前記タスクが前記ユーザデバイス、又は前記ユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定する手段と、
前記タスクが前記ユーザデバイスにおいて実行され、前記タスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、前記タスクを実行するための前記コンテンツを受信する手段と、
前記タスクが前記第１の電子デバイスにおいて実行され、前記タスクを実行するための前記コンテンツが前記第１の電子デバイスに対してリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを前記第１の電子デバイスに提供する手段と、
を備える、ユーザデバイス。
【請求項１４０】
ユーザデバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を備え、前記１つ以上のプログラムは、請求項１０６から１３６のいずれか一項に記載の方法を実行する命令を含む、ユーザデバイス。
【請求項１４１】
ユーザデバイスであって、
請求項１０６から１３６のいずれか一項に記載の方法を実行する手段を備える、ユーザデバイス。
【請求項１４２】
電子デバイスの１つ以上のプロセッサによって実行される１つ以上のプログラムを含む非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、命令を含み、前記命令は、前記１つ以上のプロセッサによって実行されるとき、前記電子デバイスに請求項１０６から１３６のいずれか一項に記載の方法を実行させる、非一時的コンピュータ可読記憶媒体。
【請求項１４３】
デジタルアシスタントを動作させるシステムであって、前記システムは、請求項１０６から１３６のいずれか一項に記載の方法を実行する手段を備える、システム。
【請求項１４４】
ユーザデバイスであって、
タスクを実行するために発話入力をユーザから受信するように構成された受信ユニットと、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定し、
前記発話入力及び前記ユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定し、
ユーザ意図に従って、前記タスクが前記ユーザデバイス、又は前記ユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定し、
前記タスクが前記ユーザデバイスにおいて実行され、前記タスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、前記タスクを実行するための前記コンテンツを受信し、
前記タスクが前記第１の電子デバイスにおいて実行され、前記タスクを実行するための前記コンテンツが前記第１の電子デバイスに対してリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを前記第１の電子デバイスに提供する、
ように構成されたプロセシングユニットと、
を備える、ユーザデバイス。
【請求項１４５】
前記ユーザデバイスは、複数のユーザインタフェースを提供するように構成されている、請求項１４４に記載のユーザデバイス。
【請求項１４６】
前記ユーザデバイスは、ラップトップコンピュータ、デスクトップコンピュータ、又はサーバを含む、請求項１４４に記載のユーザデバイス。
【請求項１４７】
前記第１の電子デバイスは、ラップトップコンピュータ、デスクトップコンピュータ、サーバ、スマートフォン、タブレット、セットトップボックス、又は時計を含む、請求項１４４に記載のユーザデバイス。
【請求項１４８】
前記発話入力を受信する前に、
前記ユーザデバイスのディスプレイ上で、前記デジタルアシスタントを呼び出すためのアフォーダンスを表示することを更に備える、請求項１４４に記載のユーザデバイス。
【請求項１４９】
所定のフレーズを受信したことに応じて前記デジタルアシスタントをインスタンス化することを更に備える、請求項１４８に記載のユーザデバイス。
【請求項１５０】
前記アフォーダンスの選択を受信したことに応じて前記デジタルアシスタントをインスタンス化することを更に備える、請求項１４８に記載のユーザデバイス。
【請求項１５１】
前記ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定することと、
前記実施可能な意図と関連付けられた１つ以上のパラメータを判定することと、
を含む、請求項１４４に記載のユーザデバイス。
【請求項１５２】
前記コンテクスト情報は、ユーザ特有データ、センサデータ、及びユーザデバイス構成データのうちの少なくとも１つを含む、請求項１４４に記載のユーザデバイス。
【請求項１５３】
前記タスクが前記ユーザデバイス又は前記第１の電子デバイスにおいて実行されるかを判定することは、前記発話入力に含まれる１つ以上のキーワードに基づいている、請求項１４４に記載のユーザデバイス。
【請求項１５４】
前記タスクが前記ユーザデバイス又は前記第１の電子デバイスにおいて実行されるかを判定することは、
前記ユーザデバイスにおいて前記タスクを実行することが実行基準を満たすかを判定することと、
前記ユーザデバイスにおいて前記タスクを実行することが前記実行基準を満たすとの判定に従って、前記タスクが前記ユーザデバイスにおいて実行されると判定することと、
を含む、請求項１４４に記載のユーザデバイス。
【請求項１５５】
前記ユーザデバイスにおいて前記タスクを実行することが前記実行基準を満たさないとの判定に従って、
前記第１の電子デバイスにおいて前記タスクを実行することが前記実行基準を満たすかを判定することを更に備える、請求項１５４に記載のユーザデバイス。
【請求項１５６】
前記第１の電子デバイスにおいて前記タスクを実行することが前記実行基準を満たすとの判定に従って、前記タスクが前記第１の電子デバイスにおいて実行されると判定することと、
前記第１の電子デバイスにおいて前記タスクを前記実行することが前記実行基準を満たさないとの判定に従って、
前記第２の電子デバイスにおいて前記タスクを実行することが前記実行基準を満たすかを判定することと、
を更に備える、請求項１５５に記載のユーザデバイス。
【請求項１５７】
前記実行基準は、１つ以上のユーザ優先度に基づいて判定される、請求項１５４に記載のユーザデバイス。
【請求項１５８】
前記実行基準は、前記デバイス構成データに基づいて判定される、請求項１５４に記載のユーザデバイス。
【請求項１５９】
前記実行基準は、動的に更新される、請求項１５４に記載のユーザデバイス。
【請求項１６０】
前記タスクが前記ユーザデバイスにおいて実行され、前記タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを受信することは、
前記コンテンツの少なくとも一部を前記第１の電子デバイスから受信することを含み、前記コンテンツの少なくとも一部は、前記第１電子デバイスに記憶されている、請求項１４４に記載のユーザデバイス。
【請求項１６１】
前記タスクが前記ユーザデバイスにおいて実行され、前記タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを受信することは、
前記コンテンツの少なくとも一部を第３の電子デバイスから受信することを含む、請求項１４４に記載のユーザデバイス。
【請求項１６２】
前記タスクが前記第１の電子デバイスにおいて実行され、前記タスクを実行するための前記コンテンツが前記第１の電子デバイスに対してリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを前記第１の電子デバイスに提供することは、
前記コンテンツの少なくとも一部を前記ユーザデバイスから前記第１の電子デバイスに提供することを含み、前記コンテンツの少なくとも一部は、前記ユーザデバイスに記憶されている、請求項１４４に記載のユーザデバイス。
【請求項１６３】
前記タスクが前記第１の電子デバイスにおいて実行され、前記タスクを実行するための前記コンテンツが前記第１の電子デバイスに対してリモートに位置するとの判定に従って、前記タスクを実行するための前記コンテンツを前記第１の電子デバイスに提供することは、
前記コンテンツの少なくとも一部を第４の電子デバイスから前記第１の電子デバイスに提供させることを含み、前記コンテンツの少なくとも一部は、前記第４の電子デバイスに記憶されている、請求項１４４に記載のユーザデバイス。
【請求項１６４】
前記タスクは、前記ユーザデバイスにおいて実行され、前記ユーザデバイスは、前記受信されたコンテンツを使用して前記ユーザデバイスにおいて第１の応答を提供することを更に備える、請求項１４４に記載のユーザデバイス。
【請求項１６５】
前記ユーザデバイスにおいて前記第１の応答を提供することは、
前記ユーザデバイスにおいて前記タスクを実行することを含む、請求項１６４に記載のユーザデバイス。
【請求項１６６】
前記ユーザデバイスにおいて前記タスクを実行することは、前記ユーザデバイスに対して部分的にリモートに実行されたタスクの続きである、請求項１６５に記載のユーザデバイス。
【請求項１６７】
前記ユーザデバイスにおいて前記第１の応答を提供することは、
前記ユーザデバイスにおいて実行される前記タスクと関連付けられた第１のユーザインタフェースを表示することを含む、請求項１６４に記載のユーザデバイス。
【請求項１６８】
前記ユーザデバイスにおいて前記第１の応答を提供することは、
前記ユーザデバイスにおいて実行される前記タスクと関連付けられたリンクを提供することを含む、請求項１６４に記載のユーザデバイス。
【請求項１６９】
前記ユーザデバイスにおいて前記第１の応答を提供することは、
前記ユーザデバイスにおいて実行される前記タスクに従って発話出力を提供することを含む、請求項１６４に記載のユーザデバイス。
【請求項１７０】
前記タスクは、前記第１の電子デバイスにおいて実行され、前記ユーザデバイスは、前記ユーザデバイスにおいて第２の応答を提供することを更に備える、請求項１４４に記載のユーザデバイス。
【請求項１７１】
前記ユーザデバイスにおいて前記第２の応答を提供することは、
前記第１の電子デバイスにおいて前記タスクを実行させることを含む、請求項１７０に記載のユーザデバイス。
【請求項１７２】
前記第１の電子デバイスにおいて実行される前記タスクは、前記第１の電子デバイスに対してリモートに実行されたタスクの続きである、請求項１７１に記載のユーザデバイス。
【請求項１７３】
前記ユーザデバイスにおいて前記第２の応答を提供することは、
前記第１の電子デバイスにおいて実行される前記タスクに従って発話出力を提供することを含む、請求項１７０に記載のユーザデバイス。
【請求項１７４】
前記ユーザデバイスにおいて前記第２の応答を提供することは、
前記ユーザが前記タスクの実行のための別の電子デバイスを選択することを可能にするアフォーダンスを提供することを含む、条項１７０〜１７３のいずれか一つに記載のユーザデバイス。
【請求項１７５】
デジタルアシスタントサービスを提供する方法であって、
１つ以上のプロセッサ及びメモリを有するユーザデバイスにおいて、
前記ユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信することであって、前記ユーザデバイスは、複数のユーザインタフェースを同時に提供するように構成されている、ことと、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定することと、
前記発話入力及びコンテクスト情報に基づいてユーザ意図を判定することと、
前記ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定することと、
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への発話応答を提供することと、
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた処理をインスタンス化することと、
を含む、方法。
【請求項１７６】
前記発話入力を受信する前に、
前記ユーザデバイスのディスプレイ上で、前記デジタルアシスタントを呼び出すためのアフォーダンスを表示することを更に含む、請求項１７５に記載の方法。
【請求項１７７】
所定のフレーズを受信したことに応じて前記デジタルアシスタントサービスを呼び出すことを更に含む、請求項１７６に記載の方法。
【請求項１７８】
前記アフォーダンスの選択を受信したことに応じて前記デジタルアシスタントサービスをインスタンス化することを更に含む、請求項１７６に記載の方法。
【請求項１７９】
前記ユーザデバイスの前記１つ以上のシステム構成は、音声構成を含む、請求項１７５に記載の方法。
【請求項１８０】
前記ユーザデバイスの前記１つ以上のシステム構成は、日付及び時間構成を含む、請求項１７５に記載の方法。
【請求項１８１】
前記ユーザデバイスの前記１つ以上のシステム構成は、聞き取り構成を含む、請求項１７５に記載の方法。
【請求項１８２】
前記ユーザデバイスの前記１つ以上のシステム構成は、表示構成を含む、請求項１７５に記載の方法。
【請求項１８３】
前記ユーザデバイスの前記１つ以上のシステム構成は、入力デバイス構成を含む、請求項１７５に記載の方法。
【請求項１８４】
前記ユーザデバイスの前記１つ以上のシステム構成は、ネットワーク構成を含む、請求項１７５に記載の方法。
【請求項１８５】
前記ユーザデバイスの前記１つ以上のシステム構成は、通知構成を含む、請求項１７５に記載の方法。
【請求項１８６】
前記ユーザデバイスの前記１つ以上のシステム構成は、プリンタ構成を含む、請求項１７５に記載の方法。
【請求項１８７】
前記ユーザデバイスの前記１つ以上のシステム構成は、セキュリティ構成を含む、請求項１７５に記載の方法。
【請求項１８８】
前記ユーザデバイスの前記１つ以上のシステム構成は、バックアップ構成を含む、請求項１７５に記載の方法。
【請求項１８９】
前記ユーザデバイスの前記１つ以上のシステム構成は、アプリケーション構成を含む、請求項１７５に記載の方法。
【請求項１９０】
前記ユーザデバイスの前記１つ以上のシステム構成は、ユーザインタフェース構成を含む、請求項１７５に記載の方法。
【請求項１９１】
前記ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定することと、
前記実施可能な意図と関連付けられた１つ以上のパラメータを判定することと、
を含む、請求項１７５に記載の方法。
【請求項１９２】
前記コンテクスト情報は、ユーザ特有データ、デバイス構成データ、及びセンサデータのうちの少なくとも１つを含む、請求項１７５に記載の方法。
【請求項１９３】
前記ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定することは、
前記ユーザ意図がシステム構成を変えることであるか否かを判定することを含む、請求項１７５に記載の方法。
【請求項１９４】
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への前記発話応答を提供することは、
前記情報の要求に従って１つ以上のシステム構成の状況を取得することと、
１つ以上のシステム構成の前記状況に従って前記発話応答を提供することと、
を含む、請求項１７５に記載の方法。
【請求項１９５】
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への前記発話応答を提供することに加え、
前記１つ以上のシステム構成の前記状況に従って情報を提供する第１のユーザインタフェースを表示することを更に含む、請求項１７５に記載の方法。
【請求項１９６】
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への前記発話応答を提供することに加え、
前記情報の要求と関連付けられたリンクを提供することを更に含む、請求項１７５に記載の方法。
【請求項１９７】
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた前記処理をインスタンス化することは、
前記処理を使用して前記タスクを実行することを含む、請求項１７５に記載の方法。
【請求項１９８】
前記タスクを実行した結果に従って第１の発話出力を提供することを更に含む、請求項１９７に記載の方法。
【請求項１９９】
前記ユーザが前記タスクを実行した結果を操作することを可能にする第２のユーザインタフェースを提供することを更に含む、請求項１９７に記載の方法。
【請求項２００】
前記第２のユーザインタフェースは、前記タスクを実行した前記結果と関連付けられたリンクを含む、請求項１９９に記載の方法。
【請求項２０１】
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた前記処理をインスタンス化することは、
前記ユーザが前記タスクを実行することを可能にする第３のユーザインタフェースを提供することを含む、請求項１７５に記載の方法。
【請求項２０２】
前記第３のユーザインタフェースは、前記ユーザが前記タスクを実行することを可能にするリンクを含む、請求項２０１に記載の方法。
【請求項２０３】
前記第３のユーザインタフェースと関連付けられた第２の発話出力を提供することを更に含む、請求項２０１から２０２のいずれか一項に記載の方法。
【請求項２０４】
１つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、命令を含み、前記命令は、電子デバイスの１つ以上のプロセッサによって実行されるとき、
前記電子デバイスに、
複数のユーザインタフェースを同時に提供するように構成されている前記ユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信させ、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定させ、
前記発話入力及びコンテクスト情報に基づいてユーザ意図を判定させ、
前記ユーザ意図が、情報の要求を示すか又はタスクを実行する要求を示すかを判定させ、
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への発話応答を提供させ、
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた処理をインスタンス化させる、
非一時的コンピュータ可読記憶媒体。
【請求項２０５】
電子デバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を備え、前記１つ以上のプログラムは、
複数のユーザインタフェースを同時に提供するように構成されている前記ユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信し、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定し、
前記発話入力及びコンテクスト情報に基づいてユーザ意図を判定し、
前記ユーザ意図が、情報の要求を示すか又はタスクを実行する要求を示すかを判定し、
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への発話応答を提供し、
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた処理をインスタンス化する、
命令を含む、電子デバイス。
【請求項２０６】
電子デバイスであって、
前記ユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信する手段であって、前記ユーザデバイスは、複数のユーザインタフェースを同時に提供するように構成されている、手段と、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定する手段と、
前記発話入力及びコンテクスト情報に基づいてユーザ意図を判定する手段と、
前記ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定する手段と、
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への発話応答を提供する手段と、
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた処理をインスタンス化する手段と、
を備える、電子デバイス。
【請求項２０７】
電子デバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を備え、前記１つ以上のプログラムは、請求項１７５から２０３のいずれか一項に記載の方法を実行する命令を含む、電子デバイス。
【請求項２０８】
電子デバイスであって、
請求項１７５から２０３のいずれか一項に記載の方法を実行する手段を備える、電子デバイス。
【請求項２０９】
電子デバイスの１つ以上のプロセッサによって実行される１つ以上のプログラムを含む非一時的コンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、命令を含み、前記命令は、前記１つ以上のプロセッサによって実行されるとき、前記電子デバイスに請求項１７５から２０３のいずれか一項に記載の方法を実行させる、非一時的コンピュータ可読記憶媒体。
【請求項２１０】
デジタルアシスタントを動作させるシステムであって、前記システムは、請求項１７５から２０３のいずれか一項に記載の方法を実行する手段を備える、システム。
【請求項２１１】
電子デバイスであって、
前記ユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信するように構成された受信ユニットであって、前記ユーザデバイスは、複数のユーザインタフェースを同時に提供するように構成されている、受信ユニットと、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定し、
前記発話入力及びコンテクスト情報に基づいてユーザ意図を判定し、
前記ユーザ意図が、情報の要求を示すか又はタスクを実行する要求を示すかを判定し、
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への発話応答を提供し、
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた処理をインスタンス化する、
ように構成されたプロセシングユニットと、
を備える、電子デバイス。
【請求項２１２】
前記発話入力を受信する前に、
前記ユーザデバイスのディスプレイ上で、前記デジタルアシスタントを呼び出すためのアフォーダンスを表示することを更に備える、請求項２１１に記載の電子デバイス。
【請求項２１３】
所定のフレーズを受信したことに応じて前記デジタルアシスタントサービスを呼び出すことを更に備える、請求項２１２に記載の電子デバイス。
【請求項２１４】
前記アフォーダンスの選択を受信したことに応じて前記デジタルアシスタントサービスをインスタンス化することを更に備える、請求項２１２に記載の電子デバイス。
【請求項２１５】
前記ユーザデバイスの前記１つ以上のシステム構成は、音声構成を含む、請求項２１１に記載の電子デバイス。
【請求項２１６】
前記ユーザデバイスの前記１つ以上のシステム構成は、日付及び時間構成を含む、請求項２１１に記載の電子デバイス。
【請求項２１７】
前記ユーザデバイスの前記１つ以上のシステム構成は、聞き取り構成を含む、請求項２１１に記載の電子デバイス。
【請求項２１８】
前記ユーザデバイスの前記１つ以上のシステム構成は、表示構成を含む、請求項２１１に記載の電子デバイス。
【請求項２１９】
前記ユーザデバイスの前記１つ以上のシステム構成は、入力デバイス構成を含む、請求項２１１に記載の電子デバイス。
【請求項２２０】
前記ユーザデバイスの前記１つ以上のシステム構成は、ネットワーク構成を含む、請求項２１１に記載の電子デバイス。
【請求項２２１】
前記ユーザデバイスの前記１つ以上のシステム構成は、通知構成を含む、請求項２１１に記載の電子デバイス。
【請求項２２２】
前記ユーザデバイスの前記１つ以上のシステム構成は、プリンタ構成を含む、請求項２１１に記載の電子デバイス。
【請求項２２３】
前記ユーザデバイスの前記１つ以上のシステム構成は、セキュリティ構成を含む、請求項２１１に記載の電子デバイス。
【請求項２２４】
前記ユーザデバイスの前記１つ以上のシステム構成は、バックアップ構成を含む、請求項２１１に記載の電子デバイス。
【請求項２２５】
前記ユーザデバイスの前記１つ以上のシステム構成は、アプリケーション構成を含む、請求項２１１に記載の電子デバイス。
【請求項２２６】
前記ユーザデバイスの前記１つ以上のシステム構成は、ユーザインタフェース構成を含む、請求項２１１に記載の電子デバイス。
【請求項２２７】
前記ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定することと、
前記実施可能な意図と関連付けられた１つ以上のパラメータを判定することと、
を含む、請求項２１１に記載の電子デバイス。
【請求項２２８】
前記コンテクスト情報は、ユーザ特有データ、デバイス構成データ、及びセンサデータのうちの少なくとも１つを含む、請求項２１１に記載の電子デバイス。
【請求項２２９】
前記ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定することは、
前記ユーザ意図がシステム構成を変えることであるか否かを判定することを含む、請求項２１１に記載の電子デバイス。
【請求項２３０】
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への前記発話応答を提供することは、
前記情報の要求に従って１つ以上のシステム構成の状況を取得することと、
１つ以上のシステム構成の前記状況に従って前記発話応答を提供することと、
を含む、請求項２１１に記載の電子デバイス。
【請求項２３１】
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への前記発話応答を提供することに加え、
前記１つ以上のシステム構成の前記状況に従って情報を提供する第１のユーザインタフェースを表示することを更に備える、請求項２１１に記載の電子デバイス。
【請求項２３２】
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への前記発話応答を提供することに加え、
前記情報の要求と関連付けられたリンクを提供することを更に備える、請求項２１１に記載の電子デバイス。
【請求項２３３】
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた前記処理をインスタンス化することは、
前記処理を使用して前記タスクを実行することを含む、請求項２１１に記載の電子デバイス。
【請求項２３４】
前記タスクを実行した結果に従って第１の発話出力を提供することを更に備える、請求項２３３に記載の電子デバイス。
【請求項２３５】
前記ユーザが前記タスクを実行した結果を操作することを可能にする第２のユーザインタフェースを提供することを更に備える、請求項２３３に記載の電子デバイス。
【請求項２３６】
前記第２のユーザインタフェースは、前記タスクを実行した前記結果と関連付けられたリンクを含む、請求項２３５に記載の電子デバイス。
【請求項２３７】
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた前記処理をインスタンス化することは、
前記ユーザが前記タスクを実行することを可能にする第３のユーザインタフェースを提供することを含む、請求項２１１に記載の電子デバイス。
【請求項２３８】
前記第３のユーザインタフェースは、前記ユーザが前記タスクを実行することを可能にするリンクを含む、請求項２３７に記載の電子デバイス。
【請求項２３９】
前記第３のユーザインタフェースと関連付けられた第２の発話出力を提供することを更に備える、請求項２３７から２３８のいずれか一項に記載の電子デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本出願は、２０１６年６月１０日に出願された「ＩＮＴＥＬＬＩＧＥＮＴ  ＤＩＧＩＴＡＬ  ＡＳＳＩＳＴＡＮＴ  ＩＮ  Ａ  ＭＵＬＴＩ−ＴＡＳＫＩＮＧ  ＥＮＶＩＲＯＮＭＥＮＴ」と題する米国仮特許出願第６２／３４８，７２８、及び２０１６年９月２１日に出願された「ＩＮＴＥＬＬＩＧＥＮＴ  ＤＩＧＩＴＡＬ  ＡＳＳＩＳＴＡＮＴ  ＩＮ  Ａ  ＭＵＬＴＩ−ＴＡＳＫＩＮＧ  ＥＮＶＩＲＯＮＭＥＮＴ」と題する米国特許出願１５／２７１，７６６に対する優先権を主張し、これらの出願の内容は、全体が参照により本明細書に組み込まれる。
【０００２】
本開示は、概して、デジタルアシスタントに関し、より具体的には、マルチタスキング環境においてタスクを実行するためにユーザと対話するデジタルアシスタントに関する。
【背景技術】
【０００３】
デジタル端末がますます人気になっている。デスクトップ又はタブレット環境において、ユーザは、ファイル又は情報を検索すること、ファイル又はフォルダを管理すること、映画又は曲を再生すること、ドキュメントを編集すること、システム構成を調節すること、電子メールを送信すること等を含む、複数のタスクを頻繁に。ユーザが複数のタスクを並列して手動で実行し、タスクの間で頻繁に切り替えることは、煩わしく、不便であることが多い。よって、デジタルアシスタントは、ユーザの音声入力に基づいて、マルチタスキング環境においてユーザがタスクのいくつかを実行することを支援する能力を有することが望ましい。
【発明の概要】
【０００４】
ユーザがマルチタスキング環境においてユーザがタスクを実行することを支援するいくつかの既存の技術は、例えば、聞き取りを含んでもよい。典型的には、ユーザは、マルチタスキング環境において多くの他のタスクを手動で実行することが必要とされることがある。例として、ユーザは、自分のデスクトップコンピュータ上で昨日のプレゼンテーションに取りかかっていることがあり、プレゼンテーションに対する作業を続けることを望むことがある。ユーザは典型的には、自分のデスクトップコンピュータ上でプレゼンテーションを手動で位置付け、プレゼンテーションを開き、プレゼンテーションを編集することを続けることが必要とされる。
【０００５】
別の例として、ユーザは、ユーザが自分のデスクトップコンピュータから離れているときに自分のスマートフォン上でフライトを予約していることがある。ユーザは、デスクトップコンピュータが利用可能であるときにフライトを予約することを続けることを望むことがある。既存の技術では、ユーザは、ウェブブラウザを立ち上げ、ユーザのデスクトップコンピュータにおいてフライト予約処理を開始する必要がある。言い換えると、ユーザがスマートフォンにおいて行った前のフライト予約処理は、ユーザのデスクトップコンピュータにおいて続けられないことがある。
【０００６】
別の例として、ユーザは、自分のデスクトップコンピュータ上でドキュメントを編集している間に、スクリーンの輝度レベルを変更すること又はＢｌｕｅｔｏｏｔｈ接続をターンオンすることなど、システム構成を変更することを望むことがある。既存の技術では、ユーザは、ドキュメントを編集することを停止し、輝度構成アプリケーションを発見し、及び立ち上げ、設定を手動で変更する必要があることがある。マルチタスキング環境では、いくつかの既存の技術は、ユーザの発話入力に基づいて上記例で説明されたようなタスクを実行することが可能でない。よって、マルチタスキング環境における音声対応デジタルアシスタントを提供することが望まれ、有利である。
【０００７】
デジタルアシスタントを動作させるシステム及び処理が提供される。１つ以上の実施例によれば、方法は、１つ以上のプロセッサ及びメモリを有するユーザデバイスにおいて、第１の発話入力をユーザから受信することを含む。方法は、ユーザデバイスと関連付けられたコンテクスト情報を特定することと、第１の発話入力及びコンテクスト情報に基づいてユーザ意図を判定することとを更に含む。方法は、ユーザ意図が、検索処理を使用してタスクを実行することであるか又はオブジェクト管理処理を使用してタスクを実行することであるかを判定することを更に含む。検索処理は、ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成されており、オブジェクト管理処理は、ユーザデバイスと関連付けられたオブジェクトを管理するように構成されている。方法は、ユーザ意図が検索処理を使用してタスクを実行することであるとの判定に従って、検索処理を使用してタスクを実行することを更に含む。方法は、ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであるとの判定に従って、オブジェクト管理処理を使用してタスクを実行することを更に含む。
【０００８】
１つ以上の実施例によれば、方法は、１つ以上のプロセッサ及びメモリを有するユーザデバイスにおいて、タスクを実行するために発話入力をユーザから受信することを含む。方法は、ユーザデバイスと関連付けられたコンテクスト情報を特定することと、発話入力及びユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定することとを更に含む。方法は、ユーザ意図に従って、タスクがユーザデバイス、又はユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるか否かを判定することを更に含む。方法は、タスクがユーザデバイスにおいて実行され、タスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、タスクを実行するためのコンテンツを受信することを更に含む。方法は、タスクが第１の電子デバイスにおいて実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを第１の電子デバイスに提供することを更に含む。
【０００９】
１つ以上の実施例によれば、方法は、１つ以上のプロセッサ及びメモリを有するユーザデバイスにおいて、ユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信することを含む。ユーザデバイスは、複数のユーザインタフェースを同時に提供するように構成されている。方法は、ユーザデバイスと関連付けられたコンテクスト情報を特定することと、発話入力及びコンテクスト情報に基づいてユーザ意図を判定することとを更に含む。方法は、ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定することを更に含む。方法は、ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答を提供することを更に含む。方法は、ユーザ意図がタスクを実行する要求を示すとの判定に従って、タスクを実行するためにユーザデバイスと関連付けられた処理をインスタンス化することを更に含む。
【００１０】
それらの機能を実行するための実行可能命令は、任意選択的に、非一時的コンピュータ可読記憶媒体、又は１つ以上のプロセッサによって実行するように構成された他のコンピュータプログラム製品に含まれる。それらの機能を実行するための実行可能命令は、任意選択的に、一時的コンピュータ可読記憶媒体、又は１つ以上のプロセッサによって実行するように構成された他のコンピュータプログラム製品に含まれる。
【図面の簡単な説明】
【００１１】
説明される様々な実施形態のより良好な理解のために、以下の図面と併せて、以下の「発明を実装するための形態」を参照されたく、類似の参照番号は、図面全体を通じた対応する部分を指す。
【００１２】
【図１】様々な実施例に従った、デジタルアシスタントを実装するためのシステム及び環境を示すブロック図である。
【００１３】
【図２Ａ】いくつかの実施形態に従った、デジタルアシスタントのクライアント側部分を実行するポータブル多機能デバイスを示すブロック図である。
【００１４】
【図２Ｂ】様々な実施例に従った、イベント処理のための例示的な構成要素を示すブロック図である。
【００１５】
【図３】様々な実施例に従った、デジタルアシスタントのクライアント側部分を実行するポータブル多機能デバイスを示す図である。
【００１６】
【図４】様々な実施例に従った、ディスプレイ及びタッチ感知面を有する例示的な多機能デバイスのブロック図である。
【００１７】
【図５Ａ】様々な実施例に従った、ポータブル多機能デバイス上のアプリケーションのメニューのための例示的なユーザインタフェースを示す図である。
【００１８】
【図５Ｂ】様々な実施例に従った、ディスプレイとは別個のタッチ感知面を有する多機能デバイスのための例示的なユーザインタフェースを示す図である。
【００１９】
【図６Ａ】様々な実施例に従った、パーソナル電子デバイスを示す図である。
【００２０】
【図６Ｂ】様々な実施例に従った、パーソナル電子デバイスを示すブロック図である。
【００２１】
【図７Ａ】様々な実施例に従った、デジタルアシスタントシステム又はそのサーバ部分を示すブロック図である。
【００２２】
【図７Ｂ】様々な実施例に従った、図７Ａに示されるデジタルアシスタントの機能を示す図である。
【００２３】
【図７Ｃ】様々な実施例に従った、オントロジ（ontology）の一部を示す図である。
【００２４】
【図８Ａ】様々な実施例に従った、デジタルアシスタントによって検索処理又はオブジェクト管理処理を使用してタスクを実行する機能を示す。
【図８Ｂ】様々な実施例に従った、デジタルアシスタントによって検索処理又はオブジェクト管理処理を使用してタスクを実行する機能を示す。
【図８Ｃ】様々な実施例に従った、デジタルアシスタントによって検索処理又はオブジェクト管理処理を使用してタスクを実行する機能を示す。
【図８Ｄ】様々な実施例に従った、デジタルアシスタントによって検索処理又はオブジェクト管理処理を使用してタスクを実行する機能を示す。
【図８Ｅ】様々な実施例に従った、デジタルアシスタントによって検索処理又はオブジェクト管理処理を使用してタスクを実行する機能を示す。
【図８Ｆ】様々な実施例に従った、デジタルアシスタントによって検索処理又はオブジェクト管理処理を使用してタスクを実行する機能を示す。
【００２５】
【図９Ａ】様々な実施例に従った、デジタルアシスタントによって検索処理を使用してタスクを実行する機能を示す。
【図９Ｂ】様々な実施例に従った、デジタルアシスタントによって検索処理を使用してタスクを実行する機能を示す。
【図９Ｃ】様々な実施例に従った、デジタルアシスタントによって検索処理を使用してタスクを実行する機能を示す。
【図９Ｄ】様々な実施例に従った、デジタルアシスタントによって検索処理を使用してタスクを実行する機能を示す。
【図９Ｅ】様々な実施例に従った、デジタルアシスタントによって検索処理を使用してタスクを実行する機能を示す。
【図９Ｆ】様々な実施例に従った、デジタルアシスタントによって検索処理を使用してタスクを実行する機能を示す。
【図９Ｇ】様々な実施例に従った、デジタルアシスタントによって検索処理を使用してタスクを実行する機能を示す。
【図９Ｈ】様々な実施例に従った、デジタルアシスタントによって検索処理を使用してタスクを実行する機能を示す。
【００２６】
【図１０Ａ】様々な実施例に従った、デジタルアシスタントによってオブジェクト管理処理を使用してタスクを実行する機能を示す。
【図１０Ｂ】様々な実施例に従った、デジタルアシスタントによってオブジェクト管理処理を使用してタスクを実行する機能を示す。
【００２７】
【図１１Ａ】様々な実施例に従った、デジタルアシスタントによって検索処理を使用してタスクを実行する機能を示す。
【図１１Ｂ】様々な実施例に従った、デジタルアシスタントによって検索処理を使用してタスクを実行する機能を示す。
【図１１Ｃ】様々な実施例に従った、デジタルアシスタントによって検索処理を使用してタスクを実行する機能を示す。
【図１１Ｄ】様々な実施例に従った、デジタルアシスタントによって検索処理を使用してタスクを実行する機能を示す。
【００２８】
【図１２Ａ】様々な実施例に従った、デジタルアシスタントによって検索処理又はオブジェクト管理処理を使用してタスクを実行する機能を示す。
【図１２Ｂ】様々な実施例に従った、デジタルアシスタントによって検索処理又はオブジェクト管理処理を使用してタスクを実行する機能を示す。
【図１２Ｃ】様々な実施例に従った、デジタルアシスタントによって検索処理又はオブジェクト管理処理を使用してタスクを実行する機能を示す。
【図１２Ｄ】様々な実施例に従った、デジタルアシスタントによって検索処理又はオブジェクト管理処理を使用してタスクを実行する機能を示す。
【００２９】
【図１３Ａ】様々な実施例に従った、デジタルアシスタントによってオブジェクト管理処理を使用してタスクを実行する機能を示す。
【図１３Ｂ】様々な実施例に従った、デジタルアシスタントによってオブジェクト管理処理を使用してタスクを実行する機能を示す。
【図１３Ｃ】様々な実施例に従った、デジタルアシスタントによってオブジェクト管理処理を使用してタスクを実行する機能を示す。
【００３０】
【図１４Ａ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用してユーザデバイスにおいてタスクを実行する機能を示す。
【図１４Ｂ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用してユーザデバイスにおいてタスクを実行する機能を示す。
【図１４Ｃ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用してユーザデバイスにおいてタスクを実行する機能を示す。
【図１４Ｄ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用してユーザデバイスにおいてタスクを実行する機能を示す。
【００３１】
【図１５Ａ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用して第１の電子デバイスにおいてタスクを実行する機能を示す。
【図１５Ｂ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用して第１の電子デバイスにおいてタスクを実行する機能を示す。
【図１５Ｃ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用して第１の電子デバイスにおいてタスクを実行する機能を示す。
【図１５Ｄ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用して第１の電子デバイスにおいてタスクを実行する機能を示す。
【００３２】
【図１６Ａ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用して第１の電子デバイスにおいてタスクを実行する機能を示す。
【図１６Ｂ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用して第１の電子デバイスにおいてタスクを実行する機能を示す。
【図１６Ｃ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用して第１の電子デバイスにおいてタスクを実行する機能を示す。
【００３３】
【図１７Ａ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用してユーザデバイスにおいてタスクを実行する機能を示す。
【図１７Ｂ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用してユーザデバイスにおいてタスクを実行する機能を示す。
【図１７Ｃ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用してユーザデバイスにおいてタスクを実行する機能を示す。
【図１７Ｄ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用してユーザデバイスにおいてタスクを実行する機能を示す。
【図１７Ｅ】様々な実施例に従った、デジタルアシスタントによってリモートに位置するコンテンツを使用してユーザデバイスにおいてタスクを実行する機能を示す。
【００３４】
【図１８Ａ】様々な実施例に従った、デジタルアシスタントによってユーザの情報の要求に応じてシステム構成情報を提供する機能を示す。
【図１８Ｂ】様々な実施例に従った、デジタルアシスタントによってユーザの情報の要求に応じてシステム構成情報を提供する機能を示す。
【図１８Ｃ】様々な実施例に従った、デジタルアシスタントによってユーザの情報の要求に応じてシステム構成情報を提供する機能を示す。
【図１８Ｄ】様々な実施例に従った、デジタルアシスタントによってユーザの情報の要求に応じてシステム構成情報を提供する機能を示す。
【図１８Ｅ】様々な実施例に従った、デジタルアシスタントによってユーザの情報の要求に応じてシステム構成情報を提供する機能を示す。
【図１８Ｆ】様々な実施例に従った、デジタルアシスタントによってユーザの情報の要求に応じてシステム構成情報を提供する機能を示す。
【００３５】
【図１９Ａ】様々な実施例に従った、デジタルアシスタントによってユーザ要求に応じてタスクを実行する機能を示している。
【図１９Ｂ】様々な実施例に従った、デジタルアシスタントによってユーザ要求に応じてタスクを実行する機能を示している。
【図１９Ｃ】様々な実施例に従った、デジタルアシスタントによってユーザ要求に応じてタスクを実行する機能を示している。
【図１９Ｄ】様々な実施例に従った、デジタルアシスタントによってユーザ要求に応じてタスクを実行する機能を示している。
【００３６】
【図２０Ａ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２０Ｂ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２０Ｃ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２０Ｄ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２０Ｅ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２０Ｆ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２０Ｇ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【００３７】
【図２１Ａ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２１Ｂ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２１Ｃ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２１Ｄ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２１Ｅ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【００３８】
【図２２Ａ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２２Ｂ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２２Ｃ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【図２２Ｄ】様々な実施例に従った、デジタルアシスタントを動作させる例示的な処理のフローチャートである。
【００３９】
【図２３】様々な実施例に従った、電子デバイスのブロック図を示す。
【発明を実施するための形態】
【００４０】
以下の開示及び実施形態の説明では、実装することができる特定の実施形態の、実施例として示されている添付の図面への参照がなされる。本開示の範囲から逸脱することなく、他の実施形態及び実施例を実施することができ、変更を行うことができることを理解されたい。
【００４１】
マルチタスキング環境におけるデジタルアシスタントを提供する技術が望ましい。本明細書で説明されるように、マルチタスキング環境におけるデジタルアシスタントを提供する技術は、検索対象又は情報を検索する煩雑さを削減すること、効率的なオブジェクト管理を可能にすること、ユーザデバイス及び他の電子デバイスにおいて実行されるタスクの間の連続性を維持すること、並びにシステム構成を調節する際のユーザの手作業を削減すること等、様々な目的に対して望まれる。このような技術は、マルチタスキング環境において発話入力使用して様々なタスクを実行するためにユーザがデジタルアシスタントを操作することを可能にすることによって有利となる。更に、このような技術は、マルチタスキング環境において様々なタスクを実行することと関連付けられた煩わしさ又は不都合を軽減する。更に、ユーザが発話を使用してタスクを実行することを可能にすることによって、コンテクストスイッチを必要とするタスキングを実行する間にキーボード又はマウス上で両手を維持することができ、ユーザの「第３の手」のようにデジタルアシスタントがタスクを実行することを可能にする。理解されるように、ユーザが発話を使用してタスクを実行することを可能にすることによって、ユーザが複数のアプリケーションとの複数の対話を必要とすることがあるタスクをより効率的に完了させることが可能になる。例えば、電子メール内の画像を検索し、それらを個人に送信することは、検索インタフェースを開くこと、検索語を入力すること、１つ以上の結果を選択すること、構成のために電子メールを開くこと、結果として生じたファイルを開いた電子メールに複製又は移動すること、及び電子メールにアドレス指定し、それを送信することを必要とすることがある。このようなタスクは、「Ｘ日からの写真を発見し、それらを妻に送信する」こと等、コマンドで音声によって効率的に完了させることができる。ファイルを移動し、インターネット上で情報を検索し、メッセージを構成するための同様の要求は、音声を使用して更に効率的に行うことができると共に、ユーザが自身の手を使用して他のタスクを実行することを可能にする。
【００４２】
以下の説明では、様々な要素を説明するために「第１」、「第２」等の用語を使用するが、これらの要素はこれらの用語によって限定されるべきではない。これらの用語は、１つの要素を別の要素と区別するためにのみ使用される。例えば、説明される様々な実施例の範囲から逸脱することなく、第１の記憶は第２の記憶と称されてもよく、同様に、第２の記憶は第１の記憶と称されてもよい。第１の記憶及び第２の記憶は両方とも記憶とすることができ、いくつかのケースでは、別々及び異なる記憶とすることができる。
【００４３】
本明細書で説明される様々な実施例の説明で使用される用語は、特定の実施例を説明することのみを目的とするものであって、限定することを意図するものではない。説明される様々な実施例の説明及び添付の特許請求の範囲で使用されるとき、単数形「ａ」、「ａｎ」、及び「ｔｈｅ」は、文脈がそうではないことを明確に示さない限り、複数形をも含むことが意図される。本明細書で使用される用語「ａｎｄ／ｏｒ（及び／又は）」は、関連する列挙された項目のうちの１つ以上のうちの任意のかつ全ての可能な組み合わせを指し、これを含むことをもまた理解されたい。用語「ｉｎｃｌｕｄｅｓ（含む）、「ｉｎｃｌｕｄｉｎｇ（含む）」、「ｃｏｍｐｒｉｓｅｓ（含む）」及び／又は「ｃｏｍｐｒｉｓｉｎｇ（含む）」は、本明細書で使用されるとき、述べられた特徴、整数、ステップ、動作、要素、及び／又は構成要素の存在を指定するが、１つ以上の他の特徴、整数、ステップ、動作、要素、構成要素、及び／又はそれらのグループの存在又は追加を除外しないことが更に理解されるであろう。
【００４４】
用語「ｉｆ（〜場合に）」は、文脈に応じて「ｗｈｅｎ（〜するときに）」、「ｕｐｏｎ（〜すると）」、「ｉｎ  ｒｅｓｐｏｎｓｅ  ｔｏ  ｄｅｔｅｒｍｉｎｉｎｇ（〜と判定したことに応じて）」、又は「ｉｎ  ｒｅｓｐｏｎｓｅ  ｔｏ  ｄｅｔｅｃｔｉｎｇ（〜を検出したことに応じて）」を意味すると解釈することができる。同様に、句「ｉｆ  ｉｔ  ｉｓ  ｄｅｔｅｒｍｉｎｅｄ（〜と判定される場合に）」又は「ｉｆ［ａ  ｓｔａｔｅｄ  ｃｏｎｄｉｔｉｏｎ  ｏｒ  ｅｖｅｎｔ］ｉｓ  ｄｅｔｅｃｔｅｄ（［述べられる条件又はイベント］が検出される場合に）」は、文脈に応じて「ｕｐｏｎ  ｄｅｔｅｒｍｉｎｉｎｇ（〜と判定されると）」、「ｉｎ  ｒｅｓｐｏｎｓｅ  ｔｏ  ｄｅｔｅｒｍｉｎｉｎｇ（〜と判定したことに応じて）」、「ｕｐｏｎ  ｄｅｔｅｃｔｉｎｇ［ｔｈｅ  ｓｔａｔｅｄ  ｃｏｎｄｉｔｉｏｎ  ｏｒ  ｅｖｅｎｔ］（［述べられる条件又はイベント］を検出すると）」、又は「ｉｎ  ｒｅｓｐｏｎｓｅ  ｔｏ  ｄｅｔｅｃｔｉｎｇ［ｔｈｅ  ｓｔａｔｅｄ  ｃｏｎｄｉｔｉｏｎ  ｏｒ  ｅｖｅｎｔ］（［述べられる条件又はイベント］を検出したことに応じて）」を意味すると解釈することができる。
１．システム及び環境
【００４５】
図１は、様々な実施例に従った、システム１００のブロック図を示す。いくつかの実施例では、システム１００はデジタルアシスタントを実装することができる。用語「デジタルアシスタント」、「仮想アシスタント」、「インテリジェント自動アシスタント」、又は「自動デジタルアシスタント」は、口頭形式及び／又はテキスト形式にある自然言語入力を解釈してユーザ意図を推測し、推測したユーザ意図に基づいてアクションを実行する任意の情報処理システムを指すことができる。例えば、推測されたユーザの意図に作用するために、システムは、以下のうちの１つ以上、すなわち、推測されたユーザ意図を実現するために設計されたステップ及びパラメータを有するタスクフローを特定することと、推測されたユーザの意図からの特定の要件をタスクフローに入力することと、プログラム、方法、サービス、又はＡＰＩ等を呼び出すことによってタスクフローを実行することと、可聴（例えば、発話）形式及び／又は視覚形式でユーザへの出力応答を生成することと、を実行することができる。
【００４６】
具体的には、デジタルアシスタントは、自然言語コマンド、要求、陳述、叙述、及び／又は照会の形式で少なくとも部分的にユーザ要求を受け付ける能力を有することができる。典型的には、ユーザ要求はデジタルアシスタントによる情報の回答又はタスクの実行のいずれかを求めることができる。ユーザ要求への満足な応答は、要求された情報の回答の提供、要求されたタスクの実行、又はその２つの組み合わせとすることができる。例えば、ユーザはデジタルアシスタントに「私は今どこにいますか？」等の質問をしてもよい。ユーザの現在位置に基づいて、デジタルアシスタントは、「あなたはセントラルパーク内の西門の近くにいます」と回答することができる。ユーザは、タスクの実行、例えば、「私の友人を、来週のガールフレンドの誕生日パーティーに招待してください。」を要求することができる。それに応じて、デジタルアシスタントは、「はい、ただ今」と述べることによって要求を認知することができ、次に、ユーザの代わりに、ユーザの電子アドレス帳に載っているユーザの友人の各々に適切なカレンダの招待状を送信することができる。要求されたタスクの実行の間、デジタルアシスタントは、時により、長時間にわたって情報を複数回交換することを含む連続的なダイアログにおいてユーザと対話することができる。情報又は様々なタスクの実行を要求するためにデジタルアシスタントと対話する多くの他の方法が存在する。口頭による応答を提供し、プログラムされたアクションを取ることに加えて、デジタルアシスタントはまた、他の視覚又は音声形式、例えば、テキスト、警報、音楽、ビデオ、アニメーション等で応答を提供することもできる。
【００４７】
図１に示されるように、いくつかの実施例では、デジタルアシスタントは、クライアントサーバモデルに従って実装されてもよい。デジタルアシスタントは、ユーザデバイス１０４上で実行されるクライアント側部分１０２（以後、「ＤＡクライアント１０２」）、及びサーバシステム１０８上で実行されるサーバ側部分１０６（以後「ＤＡサーバ１０６」）を含むことができる。ＤＡクライアント１０２は１つ以上のネットワーク１１０を通じてＤＡサーバ１０６と通信することができる。ＤＡクライアント１０２は、ユーザ直面（facing）入力及び出力処理、並びにＤＡサーバ１０６との通信等のクライアント側機能を提供することができる。ＤＡサーバ１０６は、それぞれのユーザデバイス１０４上に各々が常駐する任意の数のＤＡクライアント１０２のためのサーバ側機能性を提供することができる。
【００４８】
いくつかの実施例では、ＤＡサーバ１０６は、クライアント直面Ｉ／Ｏインタフェース１１２、１つ以上のプロセシングモジュール１１４、データ及びモデル１１６、並びに外部サービスへのＩ／Ｏインタフェース１１８を含むことができる。クライアント直面Ｉ／Ｏインタフェース１１２は、ＤＡサーバ１０６のためのクライアント直面入力及び出力処理を促進することができる。１つ以上のプロセシングモジュール１１４は、発話入力を処理し、自然言語入力に基づいてユーザの意図を判定するためにデータ及びモデル１１６を利用することができる。更に、１つ以上のプロセシングモジュール１１４は、推測されたユーザの意図に基づいてタスクを実行する。いくつかの実施例では、ＤＡサーバ１０６は、タスクの完了又は情報の取得のために、ネットワーク（単数又は複数）１１０を通じて外部サービス１２０と通信することができる。外部サービスへのＩ／Ｏインタフェース１１８は、このような通信を促進することができる。
【００４９】
ユーザデバイス１０４は、任意の適切な電子デバイスとすることができる。例えば、ユーザデバイスは、ポータブル多機能デバイス（例えば、図２Ａを参照して以下で説明されるデバイス２００）、多機能デバイス（例えば、図４を参照して以下で説明されるデバイス４００）、又はパーソナル電子デバイス（例えば、図６Ａ〜図６Ｂを参照して以下で説明されるデバイス６００）とすることができる。ポータブル多機能デバイスは、例えば、ＰＤＡ及び／又は音楽再生機能等の他の機能も含む携帯電話とすることができる。ポータブル多機能デバイスの具体的な実施例は、Ａｐｐｌｅ  Ｉｎｃ．（Ｃｕｐｅｒｔｉｎｏ，Ｃａｌｉｆｏｒｎｉａ）による、ｉＰｈｏｎｅ（登録商標）、ｉＰｏｄ  Ｔｏｕｃｈ（登録商標）、及びｉＰａｄ（登録商標）デバイスを含むことができる。ポータブル多機能デバイスの他の実施例は、限定なしに、ラップトップコンピュータ又はタブレットコンピュータを含んでもよい。更に、いくつかの実施例では、ユーザデバイス１０４は、非ポータブル多機能デバイスとすることができる。特に、ユーザデバイス１０４は、デスクトップコンピュータ、ゲームコンソール、テレビ、又はテレビセットトップボックスとすることができる。いくつかの実施例では、ユーザデバイス１０４は、マルチタスキング環境で動作することができる。マルチタスキング環境は、ユーザがデバイス１０４を操作して複数のタスクを並列して実行することを可能にする。例えば、マルチタスキング環境は、デバイス１０４が物理ユーザインタフェースデバイスから受信されたユーザ入力に応じて１つのタスクを実行し、ユーザの発話入力に応じて別のタスクを並列して実行することができるデスクトップ又はラップトップ環境であってもよい。いくつかの実施例では、ユーザデバイス１０４は、タッチ感知面（例えば、タッチスクリーンディスプレイ及び／又はタッチパッド）を含むことができる。更に、ユーザデバイス１０４は、任意選択的に、物理キーボード、マウス、及び／又はジョイスティック等の１つ以上の他の物理ユーザインタフェースデバイスを含むことができる。多機能デバイス等の電子デバイスの様々な実施例は、以下で更に詳細に説明される。
【００５０】
通信ネットワーク（単数又は複数）１１０の例は、ローカルエリアネットワーク（ＬＡＮ）及び、例えば、インターネットのようなワイドエリアネットワーク（ＷＡＮ）を含むことができる。通信ネットワーク（単数又は複数）１１０は、例えば、イーサネット、ユニバーサルシリアルバス（Universal Serial Bus、ＵＳＢ）、ＦＩＲＥＷＩＲＥ、移動通信用のグローバルシステム（Global System for Mobile Communications、ＧＳＭ）、拡張データＧＳＭ環境（Enhanced Data GSM Environment、ＥＤＧＥ）、符号分割多元接続（code division multiple access、ＣＤＭＡ）、時分割多元接続（time division multiple access、ＴＤＭＡ）、Ｂｌｕｅｔｏｏｔｈ、Ｗｉ−Ｆｉ、ボイスオーバーインターネットプロトコル（voice over Internet Protocol、ＶｏＩＰ）、Ｗｉ−ＭＡＸ、又は任意の他の適切な通信プロトコル等、様々な有線又は無線プロトコルを含む任意の既知のネットワークプロトコルを使用して実装されてもよい。
【００５１】
サーバシステム１０８は、１つ以上のスタンドアロンデータ処理装置、又はコンピュータの分散型ネットワーク上で実装されてもよい。いくつかの実施例では、サーバシステム１０８はまた、サーバシステム１０８の基本的なコンピューティングリソース及び／又はインフラストラクチャリソースを提供するために、様々な仮想デバイス及び／又はサードパーティサービスプロバイダ（例えば、サードパーティクラウドサービスプロバイダ）のサービスを採用することができる。
【００５２】
いくつかの実施例では、ユーザデバイス１０４は、第２のユーザデバイス１２２を介してＤＡサーバ１０６と通信することができる。第２のユーザデバイス１２２は、ユーザデバイス１０４と同様又は同一とすることができる。例えば、第２のユーザデバイス１２２は、図２Ａ、図４、及び図６Ａ〜図６Ｂを参照して以下に説明されるデバイス２００、デバイス４００、又はデバイス６００と同様とすることができる。ユーザデバイス１０４は、Ｂｌｕｅｔｏｏｔｈ、ＮＦＣ、若しくはＢＴＬ等の直接通信接続を介して、又はローカルＷｉ−Ｆｉネットワーク等の有線ネットワーク若しくは無線ネットワークを介して第２のユーザデバイス１２２に通信可能に結合するよう構成されてもよい。いくつかの実施例では、第２のユーザデバイス１２２は、ユーザデバイス１０４とＤＡサーバ１０６との間のプロキシとして動作するよう構成されてもよい。例えば、ユーザデバイス１０４のＤＡクライアント１０２は、情報（例えば、ユーザデバイス１０４において受信されたユーザ要求）を、第２のユーザデバイス１２２を介してＤＡサーバ１０６に送信するよう構成されてもよい。ＤＡサーバ１０６は情報を処理することができ、関連するデータ（例えば、ユーザの要求に応答したデータコンテンツ）を、第２のユーザデバイス１２２を介してユーザデバイス１０４に返すことができる。
【００５３】
いくつかの実施例では、ユーザデバイス１０４は、データに対する短縮された要求を、第２のユーザデバイス１２２に通信して、ユーザデバイス１０４から送信される情報量を削減するように構成されてもよい。第２のユーザデバイス１２２は、追加情報を判定し、短縮された要求を追加して完全な要求を生成し、ＤＡサーバ１０６に送信するよう構成されてもよい。このシステムアーキテクチャは、より強い通信能力及び／又はより大きなバッテリ電力を有する第２のユーザデバイス１２２（例えば、携帯電話、ラップトップコンピュータ、又はタブレットコンピュータ等）をＤＡサーバ１０６へのプロキシとして使用することによって、限られた通信能力及び／又は限られたバッテリ電力を有するユーザデバイス１０４（例えば、時計又は同様のコンパクト電子デバイス）がＤＡサーバ１０６によって提供されるサービスにアクセスすることを好適に可能にすることができる。図１では２つのユーザデバイス１０４及びユーザデバイス１２２のみが示されるが、システム１００は、ＤＡサーバシステム１０６と通信するようにこのプロキシ構成で構成された任意の数及びタイプのユーザデバイスを含むことができることを理解されたい。
【００５４】
図１に示すデジタルアシスタントは、クライアント側部分（例えば、ＤＡクライアント１０２）及びサーバ側部分（例えば、ＤＡサーバ１０６）の両方を含むことができるが、いくつかの実施例では、デジタルアシスタントの機能は、ユーザデバイス上にインストールされるスタンドアロンアプリケーションとして実装されてもよい。加えて、デジタルアシスタントのクライアント部分とサーバ部分との間の機能の分配は、異なる実装によって変化することができる。例えば、いくつかの実施例では、ＤＡクライアントは、ユーザ直面入力及び出力処理機能のみを提供し、デジタルアシスタントの全ての他の機能をバックエンドサーバに移譲するシンクライアントとすることができる。
２．電子デバイス
【００５５】
ここで、デジタルアシスタントのクライアント側部分を実行するための電子デバイスの実施形態に注目する。図２Ａは、いくつかの実施形態に従った、タッチ感知ディスプレイシステム２１２を有するポータブル多機能デバイス２００を示すブロック図である。タッチ感知ディスプレイ２１２は、便宜上「タッチスクリーン」と呼ばれる場合があり、「タッチ感知ディスプレイシステム」として既知であり、又はそう呼ばれる場合がある。デバイス２００は、メモリ２０２（任意選択的に、１つ以上のコンピュータ可読記憶媒体を含む）、メモリコントローラ２２２、１つ以上のプロセシングユニット（ＣＰＵ）２２０、周辺機器インタフェース２１８、ＲＦ回路２０８、音声回路２１０、スピーカ２１１、マイクロフォン２１３、入出力（Ｉ／Ｏ）サブシステム２０６、他の入力制御デバイス２１６、及び外部ポート２２４を含む。デバイス２００は、任意選択的に、１つ以上の光センサ２６４を含む。デバイス２００は、任意選択的に、デバイス２００（例えば、デバイス２００のタッチ感知ディスプレイシステム２１２等のタッチ感知面）上の接触の強度を検出するための１つ以上の接触強度センサ２６５を含む。デバイス２００は、任意選択的に、デバイス２００上で触知出力を生成する（例えば、デバイス２００のタッチ感知ディスプレイシステム２１２又はデバイス４００のタッチパッド４５５等のタッチ感知面上で触知出力を生成する）ための１つ以上の触知出力生成器２６７を含む。これらの構成要素は、任意選択的に、１つ以上の通信バス又は信号ライン２０３を介して通信する。
【００５６】
本明細書及び特許請求の範囲で使用されるとき、タッチ感知面上の接触の「強度」という用語は、タッチ感知面上の接触（例えば、指の接触）の力若しくは圧力（単位面積当りの力）、又はタッチ感知面上の接触の力若しくは圧力の代替物（代用物）を指す。接触の強度は、少なくとも４つの異なる値を含み、より典型的には、何百もの（例えば、少なくとも２５６個の）異なる値を含む、値範囲を有する。接触の強度は、任意選択的に、様々な手法、及び様々なセンサ又はセンサの組み合わせを使用して判定（又は、測定）される。例えば、タッチ感知面の下にあり、又はこれに隣接する１つ以上の力センサは、任意選択的に、タッチ感知面上の様々な点における力を測定するために使用される。いくつかの実装形態において、複数の力センサの力測定値を組み合わせて（例えば、加重平均）、接触力の推定値を判定する。同様に、スタイラスの感圧性先端部は、任意選択的に、タッチ感知面上のスタイラスの圧力を判定するために使用される。代わりに、タッチ感知面上で検出される接触領域のサイズ及び／若しくはその変化、接触に近接するタッチ感知面の電気容量及び／若しくはその変化、並びに／又は接触に近接するタッチ感知面の抵抗及び／若しくはその変化は、任意選択的に、タッチ感知面上の接触の力又は圧力の代替物として使用される。いくつかの実装形態では、接触の力又は圧力についての代替的測定値は、強度閾値を超えているか否かを判定するために直接使用される（例えば、強度閾値は、代替的測定値に対応する単位で説明される）。いくつかの実装形態では、接触の力又は圧力の代替的測定値は、推定される力又は圧力に変換され、推定された力又は圧力は、強度閾値を超えているか否かを判定するために使用される（例えば、強度閾値は、圧力の単位で測定された圧力閾値である）。接触の強度をユーザ入力の属性として使用することによって、アフォーダンスを（例えば、タッチ感知ディスプレイ上に）表示するための、及び／或いは、ユーザ入力を受信するための（例えば、タッチ感知ディスプレイ、タッチ感知面、又はノブ若しくはボタン等の物理的／機械的制御部を介して）、面積が制限されている低減されたサイズのデバイス上で、他の場合であればユーザによってアクセスすることができないことがある、追加的なデバイス機能へのユーザのアクセスが可能となる。
【００５７】
本明細書及び特許請求の範囲で使用されるとき、用語「触知出力」は、ユーザの触覚でユーザによって検出されることになる、デバイスの前の位置に対するデバイスの物理的変位、デバイスの構成要素（例えば、タッチ感知面）のデバイスの別の構成要素（例えば、筐体）に対する物理的変位、又はデバイスの重心に対する構成要素の変位を指す。例えば、デバイス又はデバイスの構成要素が、タッチに敏感なユーザの表面（例えば、ユーザの手の指、手のひら、又は他の部分）に接触している状況において、物理的変位によって生成された触知出力は、デバイス又はデバイスの構成要素の物理的特性の知覚された変化に対応する触感としてユーザによって解釈される。例えば、タッチ感知面（例えば、タッチ感知ディスプレイ又はトラックパッド）の移動は、任意選択的に、ユーザによって、物理アクチュエータボタンの「ダウンクリック」又は「アップクリック」として解釈される。いくつかの場合、ユーザの移動によって物理的に押圧された（例えば、変位した）タッチ感知面と関連付けられた物理アクチュエータボタンの移動がない時でさえ、ユーザは「ダウンクリック」又は「アップクリック」等の触感を感じる。別の実施例として、タッチ感知面の移動は、任意選択的に、タッチ感知面の平滑度に変化がないときでさえ、ユーザによって、タッチ感知面の「粗さ」として、解釈又は感知される。そのようなユーザによるタッチの解釈は、ユーザの個人的な感覚認知に左右されるが、大多数のユーザに共通する、多くのタッチの感覚認知が存在する。よって、触知出力が、ユーザの特定の感覚認知（例えば、「アップクリック」、「ダウンクリック」、「粗さ」）に対応するものとして説明されるとき、別途記載のない限り、生成された触知出力は、典型的な（又は、平均的な）ユーザの説明された感覚認知を生成するデバイス、又はデバイスの構成要素の物理的変位に対応する。
【００５８】
デバイス２００は、ポータブル多機能デバイスの一実施例に過ぎず、デバイス２００は、任意選択的に、示されているものよりも多くの構成要素又は少ない構成要素を有し、任意選択的に、２つ以上の構成要素を組み合わせ、又は、任意選択的に、構成要素の異なる構成若しくは配置を有することを理解されたい。図２Ａに示される様々な構成要素は、１つ以上の信号処理回路及び／又は特定用途向け集積回路を含む、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの双方の組み合わせで実装される。
【００５９】
メモリ２０２は、１つ以上のコンピュータ可読記憶媒体を含んでもよい。コンピュータ可読記憶媒体は、有形かつ非一時的であってもよい。メモリ２０２は、高速ランダムアクセスメモリを含んでもよく、１つ以上の磁気ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性ソリッドステートメモリデバイス等の不揮発性メモリも含んでもよい。メモリコントローラ２２２は、デバイス２００の他の構成要素によるメモリ２０２へのアクセスを制御してもよい。
【００６０】
いくつかの実施例では、メモリ２０２の非一時的コンピュータ可読記憶媒体は、（例えば、以下に説明する処理１２００の態様を実行する）命令を、コンピュータベースのシステム、プロセッサを含むシステム、又は命令実行システム、装置、若しくはデバイスから命令をフェッチすることができ、それらの命令を実行する他のシステム等の、命令実行システム、装置、又はデバイスによる使用、又はそれと関連した使用のために記憶するために使用されてもよい。他の実施例では、（例えば、以下で説明する処理１２００の態様を実行する）命令は、サーバシステム１０８の非一時的コンピュータ可読記憶媒体（図示せず）に記憶されていてもよく、又はメモリ２０２の非一時的コンピュータ可読記憶媒体とサーバシステム１０８の非一時的コンピュータ可読記憶媒体との間で分配されてもよい。本文書のコンテクストでは、「非一時的コンピュータ可読記憶媒体」は、命令実行システム、装置、又はデバイスによって、又はそれらに関連して使用するためのプログラムを含み、又は記憶することが可能な任意の媒体とすることができる。
【００６１】
周辺機器インタフェース２１８は、デバイスの入力及び出力周辺機器をＣＰＵ２２０及びメモリ２０２に結合するために使用されてもよい。１つ以上のプロセッサ２２０は、デバイス２００のための様々な機能を実行し、データを処理するために、メモリ２０２に記憶された様々なソフトウェアプログラム及び／又は命令セットを動作させ、又は実行する。いくつかの実施形態では、周辺機器インタフェース２１８、ＣＰＵ２２０、及びメモリコントローラ２２２は、チップ２０４等の単一のチップ上で実装されてもよい。いくつかの他の実施形態では、それらは、別個のチップ上で実装されてもよい。
【００６２】
ＲＦ（radio frequency）（無線周波数）回路２０８は、電磁信号とも呼ばれるＲＦ信号を送受信する。ＲＦ回路２０８は、電気信号を電磁信号に、又は電磁信号を電気信号に変換し、電磁信号を介して通信ネットワーク及び他の通信デバイスと通信する。ＲＦ回路２０８は、任意選択的に、アンテナシステム、ＲＦ送受信機、１つ以上の増幅器、同調器、１つ以上の発振器、デジタルシグナルプロセッサ、ＣＯＤＥＣチップセット、加入者識別モジュール（ＳＩＭ）カード、及びメモリ等を含むがこれらに限定されない、それらの機能を実行するための周知の回路を含む。ＲＦ回路２０８は、任意選択的に、ワールドワイドウェブ（ＷＷＷ）とも称されるインターネット、イントラネット、並びに／又はセルラー電話ネットワーク、無線ローカルエリアネットワーク（ＬＡＮ）及び／若しくはメトロポリタンエリアネットワーク（ＭＡＮ）等の無線ネットワーク等のネットワークと、他のデバイスと無線通信によって通信する。ＲＦ回路２０８は、任意選択的に、近距離通信無線等によって等、近距離無線通信（ＮＦＣ）フィールドを検出するための周知の回路を含む。無線通信は、任意選択的に、移動通信用のグローバルシステム（Global System for Mobile Communications、ＧＳＭ）、拡張データＧＳＭ環境（Enhanced Data GSM Environment、ＥＤＧＥ）、高速ダウンリンクパケットアクセス（high-speed downlink packet access、ＨＳＤＰＡ）、高速アップリンクパケットアクセス（high-speed uplink packet access、ＨＳＵＰＡ）、Ｅｖｏｌｕｔｉｏｎ，Ｄａｔａ−Ｏｎｌｙ（ＥＶ−ＤＯ）、ＨＳＰＡ、ＨＳＰＡ＋、２重セルＨＳＰＡ（Dual-Cell HSPDA、ＤＣ−ＨＳＰＤＡ）、ロングタームエボリューション（long term evolution、ＬＴＥ）、近距離通信（near field communication、ＮＦＣ）、広帯域符号分割多元接続（wideband code division multiple access、Ｗ−ＣＤＭＡ）、符号分割多元接続（code division multiple access、ＣＤＭＡ）、時分割多元接続（time division multiple access、ＴＤＭＡ）、Ｂｌｕｅｔｏｏｔｈ、Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ（ＢＴＬＥ）、Ｗｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ（Ｗｉ−Ｆｉ）（例えば、ＩＥＥＥ８０２．１１ａ、ＩＥＥＥ８０２．１１ｂ、ＩＥＥＥ８０２．１１ｇ、ＩＥＥＥ８０２．１１ｎ、及び／又はＩＥＥＥ８０２．１１ａｃ）、ボイスオーバーインターネットプロトコル（voice over Internet Protocol、ＶｏＩＰ）、Ｗｉ−ＭＡＸ、電子メール用のプロトコル（例えば、インターネットメッセージアクセスプロトコル（Internet message access protocol、ＩＭＡＰ）及び／又はポストオフィスプロトコル（post office protocol、ＰＯＰ））、インスタントメッセージング（例えば、拡張可能メッセージング及びプレゼンスプロトコル（extensible messaging and Presence Leveraging Extensions、ＸＭＰＰ）、インスタントメッセージング及びプレゼンス利用拡張向けセッション開始プロトコル（Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions、ＳＩＭＰＬＥ）、インスタントメッセージング及びプレゼンスサービス（Instant Messaging and Presence Service、ＩＭＰＳ））、及び／又はショートメッセージサービス（Short Message Service、ＳＭＳ）、或いは本文書の出願日現在までにまだ開発されていない通信プロトコルを含む任意の他の適切な通信プロトコルを含むが、これらに限定されない、複数の通信規格、通信プロトコル、及び通信技術のうちのいずれかを使用する。
【００６３】
音声回路２１０、スピーカ２１１、及びマイクロフォン２１３は、ユーザとデバイス２００との間の音声インタフェースを提供する。音声回路２１０は、周辺機器インタフェース２１８から音声データを受信し、音声データを電気信号に変換し、電気信号をスピーカ２１１に送信する。スピーカ２１１は、電気信号を人間の可聴音波に変換する。音声回路２１０はまた、マイクロフォン２１３によって音波から変換された電気信号を受信する。音声回路２１０は、電気信号を音声データに変換し、音声データを処理のために周辺機器インタフェース２１８に送信する。音声データは、周辺機器インタフェース２１８によって、メモリ２０２及び／若しくはＲＦ回路２０８から取得されてもよく、並びに／又はメモリ２０２及び／若しくはＲＦ回路２０８に送信されてもよい。いくつかの実施形態では、音声回路２１０はまた、ヘッドセットジャック（例えば、図３の３１２）を含む。ヘッドセットジャックは、音声回路２１０と、出力専用ヘッドホン又は出力（例えば、片耳若しくは両耳用のヘッドホン）及び入力（例えば、マイクロフォン）の双方を有するヘッドセット等の、取り外し可能な音声入出力周辺機器との間のインタフェースを提供する。
【００６４】
Ｉ／Ｏサブシステム２０６は、周辺機器インタフェース２１８に、タッチスクリーン２１２及び他の入力制御デバイス２１６等のデバイス２００上の入出力周辺機器を結合する。Ｉ／Ｏサブシステム２０６は、任意選択的に、ディスプレイコントローラ２５６、光センサコントローラ２５８、強度センサコントローラ２５９、触覚フィードバックコントローラ２６１、及び他の入力若しくは制御デバイスのための１つ以上の入力コントローラ２６０を含む。１つ以上の入力コントローラ２６０は、他の入力制御デバイス２１６から／に電気信号を受信／送信する。他の入力制御デバイス２１６は、任意選択的に、物理ボタン（例えば、プッシュボタン、ロッカーボタン等）、ダイヤル、スライダスイッチ、ジョイスティック、及びクリックホイール等を含む。いくつかの代替的実施形態では、入力コントローラ（単数又は複数）２６０は、任意選択的に、キーボード、赤外線ポート、ＵＳＢポート、及びマウス等のポインタデバイスのうちのいずれかに接続される（又は、いずれにも接続されない）。１つ以上のボタン（例えば、図３の３０８）は、任意選択的に、スピーカ２１１及び／又はマイクロフォン２１３の音量制御のためのアップ／ダウンボタンを含む。１つ以上のボタンは、任意選択的に、プッシュボタン（例えば、図３の３０６）を含む。
【００６５】
その全体が参照により本明細書に組み込まれる、２００５年１２月２３日に出願された米国特許第７，６５７，８４９号である米国特許出願第１１／３２２，５４９号、「Ｕｎｌｏｃｋｉｎｇ  ａ  Ｄｅｖｉｃｅ  ｂｙ  Ｐｅｒｆｏｒｍｉｎｇ  Ｇｅｓｔｕｒｅｓ  ｏｎ  ａｎ  Ｕｎｌｏｃｋ  Ｉｍａｇｅ」に記載されているように、プッシュボタンの素早い押圧は、タッチスクリーン２１２のロックを解除し、又はデバイスのロックを解除するためにタッチスクリーン上のジェスチャを使用する処理を開始することができる。プッシュボタン（例えば、３０６）のより長く押圧は、デバイス２００の電源をオン又はオフすることができる。ユーザは、１つ以上のボタンの機能をカスタマイズすることができる。タッチスクリーン２１２は、仮想又はソフトボタン、及び１つ以上のソフトキーボードを実装するために使用される。
【００６６】
タッチ感知ディスプレイ２１２は、デバイスとユーザとの間の入力インタフェース及び出力インタフェースを提供する。ディスプレイコントローラ２５６は、タッチスクリーン２１２から電気信号を受信し、及び／又はタッチスクリーン２１２に電気信号を送信する。タッチスクリーン２１２は、ユーザに視覚出力を表示する。視覚出力は、グラフィック、テキスト、アイコン、ビデオ、及びそれらの任意の組み合わせ（「グラフィック」と総称される）を含んでもよい。いくつかの実施形態では、視覚出力の一部又は全てはユーザインタフェースオブジェクトに対応してもよい。
【００６７】
タッチスクリーン２１２は、触覚及び／又は触知接触に基づくユーザからの入力を受け付けるタッチ感知面、センサ、又はセンサのセットを有する。タッチスクリーン２１２及びディスプレイコントローラ２５６は（メモリ２０２における任意の関連モジュール及び／又は命令セットと共に）、タッチスクリーン２１２上で接触（及び任意の接触の移動又は中断）を検出し、検出された接触をタッチスクリーン２１２上で表示されたユーザインタフェースオブジェクト（例えば、１つ以上のソフトキー、アイコン、ウェブページ、又は画像）との対話に変換する。例示的な実施形態では、タッチスクリーン２１２とユーザとの間の接触点は、ユーザの指に対応する。
【００６８】
タッチスクリーン２１２は、ＬＣＤ（liquid crystal display、液晶ディスプレイ）技術、ＬＰＤ（light emitting polymer display、発光ポリマーディスプレイ）技術、又はＬＥＤ（light emitting diode、発光ダイオード）技術を使用してもよいが、他の実施形態では、その他のディスプレイ技術が使用されてもよい。タッチスクリーン２１２及びディスプレイコントローラ２５６は、静電容量技術、抵抗性技術、赤外線技術及び表面弾性波技術、並びにタッチスクリーン２１２との１つ以上の接触点を判定するための他の近接センサアレイ又は他の要素を含むが、これらに限定されない、現在既知の、又は今後開発される複数のタッチ感知技術のうちのいずれかを使用して、接触、及びその接触のいずれかの移動又は中断を検出することができる。例示的な実施形態では、Ａｐｐｌｅ  Ｉｎｃ．（Ｃａｌｉｆｏｒｎｉａ、Ｃｕｐｅｒｔｉｎｏ）によるｉＰｈｏｎｅ（登録商標）及びｉＰｏｄ  Ｔｏｕｃｈ（登録商標）において見られるような、投影型相互静電容量感知技術が使用される。
【００６９】
タッチスクリーン２１２のいくつかの実施形態におけるタッチ感知ディスプレイは、各々のその全体が参照により本明細書に組み込まれる、以下の米国特許第６，３２３，８４６号（Ｗｅｓｔｅｒｍａｎら）、同第６，５７０，５５７号（Ｗｅｓｔｅｒｍａｎら）、同第６，６７７，９３２号（Ｗｅｓｔｅｒｍａｎ）、及び／又は米国特許出願公開第２００２／００１５０２４（Ａ１）号に記載されているマルチタッチ感知タッチパッドと同様であってもよい。しかしながら、タッチスクリーン２１２はデバイス２００からの視覚出力を表示するのに対して、タッチ感知タッチパッドは視覚出力を提供しない。
【００７０】
タッチスクリーン２１２のいくつかの実施形態におけるタッチ感知ディスプレイは、以下の出願で説明されている通りであってもよい。（１）２００６年５月２日に出願された米国特許出願第１１／３８１，３１３号、「Ｍｕｌｔｉｐｏｉｎｔ  Ｔｏｕｃｈ  Ｓｕｒｆａｃｅ  Ｃｏｎｔｒｏｌｌｅｒ」、（２）２００４年５月６日に出願された同第１０／８４０，８６２号、「Ｍｕｌｔｉｐｏｉｎｔ  Ｔｏｕｃｈｓｃｒｅｅｎ」、（３）２００４年７月３０日に出願された同第１０／９０３，９６４号、「Ｇｅｓｔｕｒｅｓ  Ｆｏｒ  Ｔｏｕｃｈ  Ｓｅｎｓｉｔｉｖｅ  Ｉｎｐｕｔ  Ｄｅｖｉｃｅｓ」、（４）２００５年１月３１日に出願された同第１１／０４８，２６４号、「Ｇｅｓｔｕｒｅｓ  Ｆｏｒ  Ｔｏｕｃｈ  Ｓｅｎｓｉｔｉｖｅ  Ｉｎｐｕｔ  Ｄｅｖｉｃｅｓ」、（５）２００５年１月１８日に出願された同第１１／０３８，５９０号、「Ｍｏｄｅ−Ｂａｓｅｄ  Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅｓ  Ｆｏｒ  Ｔｏｕｃｈ  Ｓｅｎｓｉｔｉｖｅ  Ｉｎｐｕｔ  Ｄｅｖｉｃｅｓ」、（６）２００５年９月１６日に出願された同第１１／２２８，７５８号、「Ｖｉｒｔｕａｌ  Ｉｎｐｕｔ  Ｄｅｖｉｃｅ  Ｐｌａｃｅｍｅｎｔ  Ｏｎ  Ａ  Ｔｏｕｃｈ  Ｓｃｒｅｅｎ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ」、（７）２００５年９月１６日に出願された同第１１／２２８，７００号、「Ｏｐｅｒａｔｉｏｎ  Ｏｆ  Ａ  Ｃｏｍｐｕｔｅｒ  Ｗｉｔｈ  Ａ  Ｔｏｕｃｈ  Ｓｃｒｅｅｎ  Ｉｎｔｅｒｆａｃｅ」、（８）２００５年９月１６日に出願された同第１１／２２８，７３７号、「Ａｃｔｉｖａｔｉｎｇ  Ｖｉｒｔｕａｌ  Ｋｅｙｓ  Ｏｆ  Ａ  Ｔｏｕｃｈ−Ｓｃｒｅｅｎ  Ｖｉｒｔｕａｌ  Ｋｅｙｂｏａｒｄ」、及び（９）２００６年３月３日に出願された同第１１／３６７，７４９号、「Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎａｌ  Ｈａｎｄ−Ｈｅｌｄ  Ｄｅｖｉｃｅ」。これらの出願の全ては、全体が参照により本明細書に組み込まれる。
【００７１】
タッチスクリーン２１２は、１００ｄｐｉを超えるビデオ解像度を有してもよい。いくつかの実施形態では、タッチスクリーンは、約１６０ｄｐｉのビデオ解像度を有する。ユーザは、スタイラス及び指等の任意の適切な物体又は付属物を使用して、タッチスクリーン２１２と接触することができる。いくつかの実施形態では、ユーザインタフェースは、主として指を基準とした接触及びジェスチャで機能するように設計され、タッチスクリーン上の指の接触面積が広いことに起因してスタイラスを基準とした入力よりも精度が低いことがある。いくつかの実施形態では、デバイスは、指に基づく粗い入力を正確なポインタ／カーソル位置又はユーザの望むアクションを実行するためのコマンドに変換する。
【００７２】
いくつかの実施形態では、タッチスクリーンに加えて、デバイス２００は、特定の機能をアクティブ化又は非アクティブ化するためのタッチパッド（図示せず）を含んでもよい。いくつかの実施形態では、タッチパッドは、タッチスクリーンとは異なり、視覚出力を表示しないデバイスのタッチ感知領域である。タッチパッドは、タッチスクリーン２１２とは別個のタッチ感知面、又はタッチスクリーンによって形成されるタッチ感知面の拡張部であってもよい。
【００７３】
デバイス２００はまた、様々な構成要素に電力を供給するための電力システム２６２を含む。電力システム２６２は、電力管理システム、１つ以上の電源（例えば、バッテリ又は交流（ＡＣ））、再充電システム、停電検出回路、電力コンバータ又はインバータ、電力状態インジケータ（例えば、発光ダイオード（ＬＥＤ））、並びにポータブルデバイスにおける電力の生成、管理、及び分配と関連付けられた任意の他の構成要素を含んでもよい。
【００７４】
デバイス２００はまた、１つ以上の光センサ２６４を含んでもよい。図２Ａは、Ｉ／Ｏサブシステム２０６における光センサコントローラ２５８に結合された光センサを示す。光センサ２６４は、電荷結合デバイス（ＣＣＤ）又は相補的金属酸化物半導体（ＣＭＯＳ）フォトトランジスタを含んでもよい。光センサ２６４は、１つ以上のレンズを通じて投影された、環境からの光を受光し、光を、画像を表すデータに変換する。撮像モジュール２４３（カメラモジュールとも呼ばれる）と連携して、光センサ２６４は静止画像又はビデオをキャプチャしてもよい。いくつかの実施形態では、タッチスクリーンディスプレイを静止画像及び／又はビデオ画像の取得のためのビューファインダとして使用することができるように、デバイスの前面のタッチスクリーンディスプレイ２１２の反対側である、デバイス２００の背面上に光センサが位置する。いくつの実施形態では、ユーザが他のビデオ会議参加者をタッチスクリーンディスプレイ上で参照する間に、ユーザの画像をビデオ会議のために取得することができるように、デバイスの前面上に光センサが位置する。いくつかの実施形態では、ビデオ会議並びに静止画像及び／又はビデオ画像の取得の双方のために、単一の光センサ２６４を、タッチスクリーンディスプレイと共に使用することができるように、光センサ２６４の位置は、ユーザによって（例えば、デバイス筐体内のレンズ及びセンサを回転させることによって）変更されてもよい。
【００７５】
デバイス２００はまた、任意選択的に、１つ以上の接触強度センサ２６５を含む。図２Ａは、Ｉ／Ｏサブシステム２０６における強度センサコントローラ２５９に結合された接触強度センサを示す。接触強度センサ２６５は、任意選択的に、１つ以上のピエゾ抵抗ひずみゲージ、電気容量式力センサ、電気力センサ、圧電力センサ、光学力センサ、容量式タッチ感知面、又は他の強度センサ（例えば、タッチ感知面上の接触の力（又は圧力）を測定するために使用されるセンサ）を含む。接触強度センサ２６５は、環境から接触強度情報（例えば、圧力情報又は圧力情報の代用物）を受信する。いくつかの実施形態では、少なくとも１つの接触強度センサが、タッチ感知面（例えば、タッチ感知ディスプレイシステム２１２）に配置されているか、又はそれに近接している。いくつか実施形態では、少なくとも１つの接触強度センサが、デバイス２００の前面上に位置するタッチスクリーンディスプレイ２１２の反対側である、デバイス２００の背面上に位置する。
【００７６】
デバイス２００はまた、１つ以上の近接センサ２６６を含んでもよい。図２Ａは、周辺機器インタフェース２１８に結合された近接センサ２６６を示す。代わりに、近接センサ２６６は、Ｉ／Ｏサブシステム２０６における入力コントローラ２６０に結合されてもよい。近接センサ２６６は、米国特許出願第１１／２４１，８３９号、「Ｐｒｏｘｉｍｉｔｙ  Ｄｅｔｅｃｔｏｒ  Ｉｎ  Ｈａｎｄｈｅｌｄ  Ｄｅｖｉｃｅ」、同第１１／２４０，７８８号、「Ｐｒｏｘｉｍｉｔｙ  Ｄｅｔｅｃｔｏｒ  Ｉｎ  Ｈａｎｄｈｅｌｄ  Ｄｅｖｉｃｅ」、同第１１／６２０，７０２号、「Ｕｓｉｎｇ  Ａｍｂｉｅｎｔ  Ｌｉｇｈｔ  Ｓｅｎｓｏｒ  Ｔｏ  Ａｕｇｍｅｎｔ  Ｐｒｏｘｉｍｉｔｙ  Ｓｅｎｓｏｒ  Ｏｕｔｐｕｔ」、同第１１／５８６，８６２号、「Ａｕｔｏｍａｔｅｄ  Ｒｅｓｐｏｎｓｅ  Ｔｏ  Ａｎｄ  Ｓｅｎｓｉｎｇ  Ｏｆ  Ｕｓｅｒ  Ａｃｔｉｖｉｔｙ  Ｉｎ  Ｐｏｒｔａｂｌｅ  Ｄｅｖｉｃｅｓ」、及び、同第１１／６３８，２５１号、「Ｍｅｔｈｏｄｓ  Ａｎｄ  Ｓｙｓｔｅｍｓ  Ｆｏｒ  Ａｕｔｏｍａｔｉｃ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｏｆ  Ｐｅｒｉｐｈｅｒａｌｓ」で説明されるように実行してもよく、これらの出願は、その全体が参照により本明細書に組み込まれる。いくつかの実施形態では、多機能デバイスがユーザの耳の近くに配置されるとき（例えば、ユーザが電話で通話しているとき）、近接センサは、タッチスクリーン２１２をオフにし、無効化する。
【００７７】
デバイス２００はまた、任意選択的に、１つ以上の触知出力生成器２６７を含む。図２Ａは、Ｉ／Ｏサブシステム２０６における触覚フィードバックコントローラ２６１に結合された触知出力生成器を示す。触知出力生成器２６７は、任意選択的に、スピーカ若しくは他の音声構成要素等の１つ以上の電気音響デバイス、及び／又はモータ、ソレノイド、電気活性ポリマー、圧電アクチュエータ、静電アクチュエータ、若しくは他の触知出力生成構成要素（例えば、デバイス上で電気信号を触知出力に変換する構成要素）等の、エネルギーを線形的な動きに変換する電気機械デバイスを含む。接触強度センサ２６５は、触覚フィードバックモジュール２３３から触知フィードバック生成命令を受信し、デバイス２００のユーザによって感知することが可能な触知出力をデバイス２００上で生成する。いくつかの実施形態では、少なくとも１つの触知出力生成器は、タッチ感知面（例えば、タッチ感知ディスプレイシステム２１２）に配置され、又はそれに近接しており、任意選択的に、タッチ感知面を垂直方向（例えば、デバイス２００の表面の内／外）に、又は横方向（例えば、デバイス２００の表面と同一の平面内の前後）に移動させることによって触知出力を生成する。いくつかの実施形態では、少なくとも１つの触知出力生成器センサは、デバイス２００の前面に位置するタッチスクリーンディスプレイ２１２の反対側である、デバイス２００の背面上に位置する。
【００７８】
デバイス２００はまた、１つ以上の加速度計２６８も含んでもよい。図２Ａは、周辺機器インタフェース２１８に結合された加速度計２６８示す。代わりに、加速度計２６８は、Ｉ／Ｏサブシステム２０６における入力コントローラ２６０に結合されてもよい。加速度計２６８は、その双方のその全体が参照により本明細書に組み込まれる、米国特許出願公開第２００５０１９００５９号、「Ａｃｃｅｌｅｒａｔｉｏｎ−ｂａｓｅｄ  Ｔｈｅｆｔ  Ｄｅｔｅｃｔｉｏｎ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｐｏｒｔａｂｌｅ  Ｅｌｅｃｔｒｏｎｉｃ  Ｄｅｖｉｃｅｓ」、及び同第２００６００１７６９２号、「Ｍｅｔｈｏｄｓ  Ａｎｄ  Ａｐｐａｒａｔｕｓｅｓ  Ｆｏｒ  Ｏｐｅｒａｔｉｎｇ  Ａ  Ｐｏｒｔａｂｌｅ  Ｄｅｖｉｃｅ  Ｂａｓｅｄ  Ｏｎ  Ａｎ  Ａｃｃｅｌｅｒｏｍｅｔｅｒ」で説明されるように実行してもよい。いくつかの実施形態では、情報は、１つ以上の加速度計から受信されたデータの分析に基づいて、縦長表示又は横長表示でタッチスクリーンディスプレイ上で表示される。デバイス２００は、任意選択的に、加速度計（単数又は複数）２６８に加えて、磁気計（図示せず）並びにデバイス２００の位置及び向き（例えば、縦長又は横長）に関する情報を取得するためのＧＰＳ（又はＧＬＯＮＡＳＳ又は他のグローバルナビゲーションシステム）受信機（図示せず）を含む。
【００７９】
いくつかの実施形態では、メモリ２０２に記憶されたソフトウェア構成要素は、オペレーティングシステム２２６、通信モジュール（又は、命令セット）２２８、接触／動きモジュール（又は、命令セット）２３０、グラフィックモジュール（又は、命令セット）２３２、テキスト入力モジュール（又は、命令セット）２３４、全地球測位システム（ＧＰＳ）モジュール（又は、命令セット）２３５、デジタルアシスタントクライアントモジュール２２９、及びアプリケーション（又は、命令セット）２３６を含む。更に、メモリ２０２は、ユーザデータ及びモデル２３１等のデータ及びモデルを記憶することができる。更に、いくつかの実施形態では、図２Ａ及び図４に示されるように、メモリ２０２（図２Ａ）又はメモリ４７０（図４）は、デバイス／グローバル内部状態２５７を記憶する。デバイス／グローバル内部状態２５７は、現在アクティブであるアプリケーションがある場合、どのアプリケーションがアクティブであるかを示すアクティブアプリケーション状態、どのアプリケーション、ビュー、又は他の情報がタッチスクリーンディスプレイ２１２の様々な領域を占領しているかを示す表示状態、デバイスの様々なセンサ及び入力制御デバイス２１６から取得される情報を含むセンサ状態、並びにデバイスの位置及び／又は姿勢に関する位置情報のうちの１つ以上を含む。
【００８０】
オペレーティングシステム２２６（例えば、Ｄａｒｗｉｎ、ＲＴＸＣ、ＬＩＮＵＸ、ＵＮＩＸ、ＯＳ  Ｘ、ｉＯＳ、ＷＩＮＤＯＷＳ、又はＶｘＷｏｒｋｓ等の組み込みオペレーティングシステム）は、汎用的なシステムタスク（例えば、メモリ管理、記憶デバイス制御、電力管理等）を制御及び管理するための様々なソフトウェア構成要素及び／又はドライバを含み、様々なハードウェア構成要素とソフトウェア構成要素との間の通信を促進する。
【００８１】
通信モジュール２２８は、１つ以上の外部ポート２２４を通じて他のデバイスとの通信を促進し、ＲＦ回路２０８及び／又は外部ポート２２４によって受信されたデータを処理するための様々なソフトウェア構成要素をも含む。外部ポート２２４（例えば、ユニバーサルシリアルバス（Universal Serial Bus、ＵＳＢ）、ＦＩＲＥＷＩＲＥ等）は、直接的に、又はネットワーク（例えば、インターネット、無線ＬＡＮ等）を通じて間接的に、他のデバイスに結合するように適応される。いくつかの実施形態では、外部ポートは、ｉＰｏｄ（登録商標）（Ａｐｐｌｅ  Ｉｎｃ．の商標）デバイス上で使用される３０ピンコネクタと同一若しくは同様のマルチピン（例えば、３０ピン）コネクタ、及び／又は互換性のあるマルチピン（例えば、３０ピン）コネクタである。
【００８２】
接触／動きモジュール２３０は、任意選択的に、（ディスプレイコントローラ２５６と連携して）タッチスクリーン２１２との接触、及び他のタッチ感知デバイス（例えば、タッチパッド又は物理クリックホイール）との接触を検出する。接触／動きモジュール２３０は、接触が生じたかを判定すること（例えば、指を下ろすイベントを検出すること）、接触の強度（例えば、接触の力若しくは圧力、又は接触の力若しくは圧力の代替物）を判定すること、接触の移動が存在するか否かを判定し、タッチ感知面を横断する移動を追跡すること（例えば、指をドラッグする１つ以上のイベントを検出すること）、及び接触が停止したかを判定すること（例えば、指を上げるイベント又は接触の中断を検出すること）等、接触の検出に関する様々な動作を実行するための様々なソフトウェア構成要素を含む。接触／動きモジュール２３０は、タッチ感知面から接触データを受信する。一連の接触データにより表される接触点の移動を判定することは、任意選択的に、接触点の速さ（大きさ）、速度（大きさ及び方向）、並びに／又は加速度（大きさ及び／若しくは方向における変化）を判定することを含む。これらの動作は、任意選択的に、単一の接触（例えば、１本の指の接触）又は複数の同時接触（例えば、「マルチタッチ」／複数の指の接触）に適用される。いくつかの実施形態では、接触／動きモジュール２３０及びディスプレイコントローラ２５６は、タッチパッド上の接触を検出する。
【００８３】
いくつかの実施形態では、接触／動きモジュール２３０は、ユーザによって動作が実行されたかを判定するための（例えば、ユーザがアイコン上で「クリック」したかを判定するための）、１つ以上の強度閾値のセットを使用する。いくつかの実施形態では、少なくとも強度閾値のサブセットは、ソフトウェアパラメータに従って判定される（例えば、強度閾値は、特定の物理アクチュエータのアクティブ化閾値によって判定されず、デバイス２００の物理ハードウェアを変更することなく調節されてもよい）。例えば、トラックパッド又はタッチスクリーンディスプレイのマウス「クリック」閾値は、トラックパッド又はタッチスクリーンディスプレイのハードウェアを変更することなく、広範囲の予め定義された閾値のうちのいずれかに設定されてもよい。加えて、いくつかの実施形態では、デバイスのユーザは、強度閾値のセットのうちの１つ以上を調節するためのソフトウェア設定が提供される（例えば、個々の強度閾値を調節することによって、及び／又はシステムレベルのクリック「強度」パラメータで一度に複数の強度閾値を調節することによって）。
【００８４】
接触／動きモジュール２３０は、任意選択的に、ユーザによるジェスチャ入力を検出する。タッチ感知面上の異なるジェスチャは、異なる接触パターン（例えば、検出される接触の異なる動き、タイミング、及び／又は強度）を有する。よって、ジェスチャは、任意選択的に、特定の接触パターンを検出することによって検出される。例えば、指のタップジェスチャを検出することは、（例えば、アイコンの位置における）指を下ろすイベントを検出し、続いて指を下ろすイベントと同一の位置（又は、実質的に同一の位置）で指を上げる（リフトオフ）イベントを検出することを含む。別の実施例として、タッチ感知面上での指のスワイプジェスチャを検出することは、指を下ろすイベントを検出し、続いて、１つ以上の指をドラッグするイベントを検出し、その後、続いて指を上げる（リフトオフ）イベントを検出することを含む。
【００８５】
グラフィックモジュール２３２は、表示されるグラフィックの視覚的効果（例えば、輝度、透明度、彩度、コントラスト、又は他の視覚特性）を変更するための構成要素を含む、タッチスクリーン２１２又は他のディスプレイ上でグラフィックをレンダリング及び表示するための様々な既知のソフトウェア構成要素を含む。本明細書で使用されるとき、用語「グラフィック」は、テキスト、ウェブページ、アイコン（ソフトキーを含むユーザインタフェースオブジェクト等）、デジタル画像、ビデオ、及びアニメーション等を含むが、これらに限定されない、ユーザに対して表示することができる任意のオブジェクトを含む。
【００８６】
いくつかの実施形態では、グラフィックモジュール２３２は、使用されることになるグラフィックを表すデータを記憶する。各々のグラフィックは、任意選択的に、対応するコードが割り当てられる。グラフィックモジュール２３２は、アプリケーション等から、必要に応じて、座標データ及び他のグラフィック特性データと共に表示されることとなるグラフィックを指定する１つ以上のコードを受信し、次いで、ディスプレイコントローラ２５６に出力するスクリーンの画像データを生成する。
【００８７】
触覚フィードバックモジュール２３３は、デバイス２００とのユーザ対話に応じて、デバイス２００上の１つ以上の位置で触知出力を生成するために、触知出力生成器（単数又は複数）２６７によって使用される命令を生成するための様々なソフトウェア構成要素を含む。
【００８８】
グラフィックモジュール２３２の構成要素とすることができるテキスト入力モジュール２３４は、様々なアプリケーション（例えば、連絡先２３７、電子メール２４０、ＩＭ２４１、ブラウザ２４７、及びテキスト入力を必要とする任意の他のアプリケーション）においてテキストを入力するためのソフトキーボードを提供する。
【００８９】
ＧＰＳモジュール２３５は、デバイスの位置を判定し、この情報を、様々なアプリケーションで使用するために提供する（例えば、位置に基づく電話にて使用するために電話２３８へ、写真／ビデオメタデータとしてカメラ２４３へ、及び天気ウィジェット、ローカルイエローページウィジェット、及び地図／ナビゲーションウィジェット等の位置に基づくサービスを提供するアプリケーションへ）。
【００９０】
デジタルアシスタントクライアントモジュール２２９は、デジタルアシスタントのクライアント側機能性を提供する様々なクライアント側デジタルアシスタント命令を含むことができる。例えば、デジタルアシスタントクライアントモジュール２２９は、ポータブル多機能デバイス２００の様々なユーザインタフェース（例えば、マイクロフォン２１３、加速度計（単数又は複数）２６８、タッチ感知ディスプレイシステム２１２、光センサ（単数又は複数）２６４、他の入力制御デバイス２１６等）を通じて、音声入力（例えば、発話入力）、テキスト入力、タッチ入力、及び／又はジェスチャ入力を受け付ける能力を有することができる。デジタルアシスタントクライアントモジュール２２９はまた、ポータブル多機能デバイス２００の様々な出力インタフェース（例えば、スピーカ２１１、タッチ感知ディスプレイシステム２１２、触知出力生成器（単数又は複数）２６７等）を通じて、音声（例えば、発話出力）、視覚、及び／又は触知の形式で出力を提供する能力を有することができる。例えば、出力は、音声、音響、警報、テキストメッセージ、メニュー、グラフィック、ビデオ、アニメーション、振動、及び／又は上記の２つ以上の組み合わせとして提供されてもよい。動作の間、デジタルアシスタントクライアントモジュール２２９は、ＲＦ回路２０８を使用してＤＡサーバ１０６と通信することができる。
【００９１】
ユーザデータ及びモデル２３１は、デジタルアシスタントのクライアント側機能性を提供するための、ユーザと関連付けられた様々なデータ（例えば、ユーザ特有の語彙データ、ユーザ優先度データ、ユーザ特有の名前の発音、ユーザの電子アドレス帳からのデータ、ｔｏ  ｄｏリスト、買い物リスト等）を含むことができる。更に、ユーザデータ及びモデル２３１は、ユーザ入力を処理し、ユーザの意図を判定するための様々なモデル（例えば、発話認識モデル、統計的言語モデル、自然言語処理モデル、オントロジ、タスクフローモデル、サービスモデル等）を含むことができる。
【００９２】
いくつかの実施例では、デジタルアシスタントクライアントモジュール２２９は、ポータブル多機能デバイス２００の周囲環境から追加情報を収集して、ユーザ、現在のユーザ対話、及び／又は現在のユーザ入力と関連付けられたコンテクストを確立するために、ポータブル多機能デバイス２００の様々なセンサ、サブシステム、及び周辺機器を利用することができる。いくつかの実施例では、デジタルアシスタントクライアントモジュール２２９は、ユーザの意図の推測を支援するために、ユーザ入力と共にコンテクスト情報又はそのサブセットをＤＡサーバ１０６に提供することができる。いくつかの実施例では、デジタルアシスタントはまた、ユーザへの出力をどのように準備及び配信するかを決定するために、コンテクスト情報を使用することができる。コンテクスト情報は、コンテクストデータと呼ばれてもよい。
【００９３】
いくつかの実施例では、ユーザ入力に伴うコンテクスト情報は、センサ情報、例えば、照明、周囲ノイズ、周囲温度、周囲環境の画像又はビデオ等を含むことができる。いくつかの実施例では、コンテクスト情報はまた、デバイスの物理状態、例えば、デバイスの向き、デバイスの位置、デバイスの温度、電力レベル、速さ、加速度、動きパターン、セルラー信号強度等を含むことができる。いくつかの実施例では、ＤＡサーバ１０６のソフトウェア状態、例えば、稼働中の処理、インストールされたプログラム、過去と現在のネットワーク活動、バックグラウンドサービス、エラーログ、リソース使用量等、及びポータブル多機能デバイス２００のソフトウェア状態に関係する情報が、ＤＡサーバ１０６に、ユーザ入力と関連付けられたコンテクスト情報として提供されてもよい。
【００９４】
いくつかの実施例では、デジタルアシスタントクライアントモジュール２２９は、ＤＡサーバ１０６からの要求に応じて、ポータブル多機能デバイス２００に記憶された情報（例えば、ユーザデータ２３１）を選択的に提供することができる。いくつかの実施例では、デジタルアシスタントクライアントモジュール２２９はまた、ＤＡサーバ１０６による要求があると、自然言語ダイアログ又は他のユーザインタフェースを介してユーザから追加入力を引き出すことができる。デジタルアシスタントクライアントモジュール２２９は、ユーザ要求で表されるユーザの意図の意図推論及び／又は履行においてＤＡサーバ１０６を支援するために、追加入力をＤＡサーバ１０６に渡すことができる。
【００９５】
図７Ａ〜Ｃを参照して、より詳細な情報アシスタントの説明を記述する。デジタルアシスタントクライアントモジュール２２９は、以下に説明されるデジタルアシスタントモジュール７２６の任意の数のサブモジュールを含むことができることを認識するべきである。
【００９６】
アプリケーション２３６は、以下のモジュール（若しくは、命令セット）、又はそれらのサブセット若しくはスーパーセットを含んでもよい。
・連絡先モジュール２３７（アドレス帳又は連絡先リストとも呼ばれる場合がある）、
・電話モジュール２３８、
・ビデオ会議モジュール２３９、
・電子メールクライアントモジュール２４０、
・インスタントメッセージング（ＩＭ）モジュール２４１、
・トレーニングサポートモジュール２４２、
・静止画像及び／又はビデオ画像用のカメラモジュール２４３、
・画像管理モジュール２４４、
・ビデオ再生モジュール、
・音楽再生モジュール、
・ブラウザモジュール２４７、
・カレンダモジュール２４８、
・天気ウィジェット２４９−１、株式ウィジェット２４９−２、計算機ウィジェット２４９−３、アラーム時計ウィジェット２４９−４、辞書ウィジェット２４９−５、及びユーザによって取得された他のウィジェット、並びにユーザ作成ウィジェット２４９−６のうちの１つ以上を含んでもよいウィジェットモジュール２４９、
・ユーザ作成ウィジェット２４９−６を作成するためのウィジェットクリエータモジュール２５０、
・検索モジュール２５１、
・ビデオ再生モジュール及び音楽再生モジュールを統合した、ビデオ及び音楽再生モジュール２５２、
・メモモジュール２５３、
・地図モジュール２５４、並びに／又は
・オンラインビデオモジュール２５５。
【００９７】
メモリ２０２に記憶することができる他のアプリケーション２３６の例は、他のワードプロセッシングアプリケーション、他の画像編集アプリケーション、描画アプリケーション、プレゼンテーションアプリケーション、ＪＡＶＡ対応アプリケーション、暗号化、デジタル著作権管理、音声認識、及び音声複製を含む。
【００９８】
タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、及びテキスト入力モジュール２３４と連携して、連絡先モジュール２３７は、（例えば、メモリ２０２又はメモリ４７０内の連絡先モジュール２３７のアプリケーション内部状態２９２に記憶された）アドレス帳又は連絡先リストを管理するために使用されてもよく、アドレス帳に名前（単数又は複数）を追加すること、アドレス帳から名前（単数又は複数）を削除すること、電話番号（単数又は複数）、電子メールアドレス（単数又は複数）、住所（単数又は複数）、又は他の情報を名前と関連付けること、画像を名前と関連付けること、名前を分類及び並べ替えること、電話番号又は電子メールアドレスを提供して、電話２３８、ビデオ会議モジュール２３９、電子メール２４０、若しくはＩＭ２４１による通信を開始及び／又は促進すること等を含む。
【００９９】
ＲＦ回路２０８、音声回路２１０、スピーカ２１１、マイクロフォン２１３、タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、及びテキスト入力モジュール２３４と連携して、電話モジュール２３８は、電話番号に対応する一連の文字を入力し、連絡先モジュール２３７における１つ以上の電話番号にアクセスし、入力された電話番号を修正し、それぞれの電話番号をダイヤルし、会話を行い、そして、会話が完了したときに接続を切り又は電話を切るために使用されてもよい。上述したように、無線通信は、複数の通信規格、通信プロトコル、及び通信技術のうちのいずれかを使用してもよい。
【０１００】
ＲＦ回路２０８、音声回路２１０、スピーカ２１１、マイクロフォン２１３、タッチスクリーン２１２、ディスプレイコントローラ２５６、光センサ２６４、光センサコントローラ２５８、接触／動きモジュール２３０、グラフィックモジュール２３２、テキスト入力モジュール２３４、連絡先モジュール２３７、及び電話モジュール２３８と連携して、ビデオ会議モジュール２３９は、ユーザの命令に従って、ユーザと１人以上の他の参加者との間のビデオ会議を開始、遂行、及び終了する実行可能な命令を含む。
【０１０１】
ＲＦ回路２０８、タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、及びテキスト入力モジュール２３４と連携して、電子メールクライアントモジュール２４０は、ユーザの指示に応じて、電子メールを作成、送信、受信、及び管理する実行可能な命令を含む。画像管理モジュール２４４と連携して、電子メールクライアントモジュール２４０は、カメラモジュール２４３で撮影した静止画像又はビデオ画像を有する電子メールを作成及び送信することを非常に容易にする。
【０１０２】
ＲＦ回路２０８、タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、及びテキスト入力モジュール２３４と連携して、インスタントメッセージングモジュール２４１は、インスタントメッセージに対応する文字列を入力し、前に入力された文字を修正し、（例えば、電話ベースのインスタントメッセージのためのショートメッセージサービス（ＳＭＳ）若しくはマルチメディアメッセージサービス（ＭＭＳ）プロトコルを使用して、又はインターネットベースのインスタントメッセージのためのＸＭＰＰ、ＳＩＭＰＬＥ、若しくはＩＭＰＳを使用して）それぞれのインスタントメッセージを送信し、インスタントメッセージを受信し、受信されたインスタントメッセージを参照する実行可能な命令を含む。いくつかの実施形態では、送信及び／又は受信されるインスタントメッセージは、ＭＭＳ及び／又は拡張メッセージングサービス（Enhanced Messaging Service、ＥＭＳ）でサポートされるような、グラフィック、写真、音声ファイル、ビデオファイル、及び／又は他の添付ファイルを含んでもよい。本明細書で使用されるとき、「インスタントメッセージ」は、電話ベースのメッセージ（例えば、ＳＭＳ又はＭＭＳを使用して送信されるメッセージ）及びインターネットベースのメッセージ（例えば、ＸＭＰＰ、ＳＩＭＰＬＥ、又はＩＭＰＳを使用して送信されるメッセージ）の双方を指す。
【０１０３】
ＲＦ回路２０８、タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動作モジュール２３０、グラフィックモジュール２３２、テキスト入力モジュール２３４、ＧＰＳモジュール２３５、地図モジュール２５４、及び音楽再生モジュールと連携して、トレーニングサポートモジュール２４２は、（例えば、時間、距離、及び／又はカロリー消費目標を有する）トレーニングを生成し、トレーニングセンサ（スポーツデバイス）と通信し、トレーニングセンサデータを受信し、トレーニングをモニタするために使用されるセンサを較正し、トレーニングのための音楽を選択及び再生し、トレーニングデータを表示、記憶、及び送信する実行可能な命令を含む。
【０１０４】
タッチスクリーン２１２、ディスプレイコントローラ２５６、光センサ（単数又は複数）２６４、光センサコントローラ２５８、接触／動きモジュール２３０、グラフィックモジュール２３２、及び画像管理モジュール２４４と連携して、カメラモジュール２４３は、静止画像又は（ビデオストリームを含む）ビデオをキャプチャし、メモリ２０２にそれらを記憶し、静止画像若しくはビデオの特性を修正し、又はメモリ２０２から静止画像若しくはビデオを削除する実行可能な命令を含む。
【０１０５】
タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、テキスト入力モジュール２３４、及びカメラモジュール２４３と連携して、画像管理モジュール２４４は、静止画像及び／又はビデオ画像を配置、修正（例えば、編集）、又は別の方法で操作、ラベルを付け、削除、（例えば、デジタルスライドショー又はアルバムにおいて）提示、及び記憶する実行可能な命令を含む。
【０１０６】
ＲＦ回路２０８、タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、及びテキスト入力モジュール２３４と連携して、ブラウザモジュール２４７は、ウェブページ又はそれらの一部、並びにウェブページにリンクされた添付及び他のファイルを検索すること、リンク付けすること、受信すること、及び表示することを含むユーザの命令に従ってインターネットをブラウズする実行可能な命令を含む。
【０１０７】
ＲＦ回路２０８、タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、テキスト入力モジュール２３４、電子メールクライアントモジュール２４０、及びブラウザモジュール２４７と連携して、カレンダモジュール２４８は、ユーザの指示に従って、カレンダ及びカレンダと関連付けられたデータ（例えば、カレンダエントリ、ｔｏ  ｄｏリスト等）を作成、表示、変更、記憶する実行可能な命令を含む。
【０１０８】
ＲＦ回路２０８、タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、テキスト入力モジュール２３４、及びブラウザモジュール２４７と連携して、ウィジェットモジュール２４９は、ユーザによってダウンロード及び使用することができるミニアプリケーション（例えば、天気ウィジェット２４９−１、株式ウィジェット２４９−２、計算機ウィジェット２４９−３、アラーム時計ウィジェット２４９−４、及び辞書ウィジェット２４９−５）、又はユーザによって作成することができる（例えば、ユーザ作成ウィジェット２４９−６）ミニアプリケーションである。いくつかの実施形態では、ウィジェットは、ＨＴＭＬ（Hypertext Markup Language）（ハイパーテキストマークアップ言語）ファイル、ＣＳＳ（Cascading Style Sheets）（カスケーディングスタイルシート）ファイル、及びＪａｖａＳｃｒｉｐｔファイルを含む。いくつかの実施形態では、ウィジェットは、ＸＭＬ（拡張可能マークアップ言語）ファイル及びＪａｖａＳｃｒｉｐｔファイル（例えば、Ｙａｈｏｏ！ウィジェット）を含む。
【０１０９】
ＲＦ回路２０８、タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、テキスト入力モジュール２３４、及びブラウザモジュール２４７と連携して、ウィジェットクリエータモジュール２５０は、ウィジェットを作成する（例えば、ウェブページのユーザ指定箇所をウィジェットに変える）ためにユーザによって使用されてもよい。
【０１１０】
タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、及びテキスト入力モジュール２３４と連携して、検索モジュール２５１は、ユーザの命令に従って、１つ以上の検索基準（例えば、１つ以上のユーザ指定の検索用語）と一致する、メモリ２０２内のテキスト、音楽、サウンド、画像、ビデオ、及び／又は他のファイルを検索する実行可能な命令を含む。
【０１１１】
タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、音声回路２１０、スピーカ２１１、ＲＦ回路２０８、及びブラウザモジュール２４７と連携して、ビデオ及び音楽再生モジュール２５２は、ＭＰ３又はＡＡＣファイル等の１つ以上のファイル形式で記憶された録音済みの音楽又は他のサウンドファイルをユーザがダウンロード及び再生することを可能にする実行可能な命令、並びにビデオを（タッチスクリーン２１２上、又は外部ポート２２４を介して接続された外部のディスプレイ上で）表示、提示、又は別の方法で再生する実行可能な命令を含む。いくつかの実施形態では、デバイス２００は、任意選択的に、ｉＰｏｄ（Ａｐｐｌｅ  Ｉｎｃ．の商標）等のＭＰ３再生の機能を含む。
【０１１２】
タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、及びテキスト入力モジュール２３４と連携して、メモモジュール２５３は、ユーザの命令に従って、メモ及びｔｏ  ｄｏリスト等を作成及び管理する実行可能な命令を含む。
【０１１３】
ＲＦ回路２０８、タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、テキスト入力モジュール２３４、ＧＰＳモジュール２３５、及びブラウザモジュール２４７と連携して、地図モジュール２５４は、ユーザの命令に従って、地図及び地図と関連付けられたデータ（例えば、運転方向、特定の位置若しくはその付近の店舗及び他の関心対象地点についてのデータ、並びに他の位置に基づく他のデータ）を受信、表示、修正、及び記憶するために使用されてもよい。
【０１１４】
タッチスクリーン２１２、ディスプレイコントローラ２５６、接触／動きモジュール２３０、グラフィックモジュール２３２、音声回路２１０、スピーカ２１１、ＲＦ回路２０８、テキスト入力モジュール２３４、電子メールクライアントモジュール２４０、及びブラウザモジュール２４７と連携して、オンラインビデオモジュール２５５は、ユーザがＨ．２６４等の１つ以上のファイル形式にあるオンラインビデオにアクセス、ブラウズ、（例えば、ストリーミング及び／又はダウンロードにより）受信、（例えば、タッチスクリーン上で、又は外部ポート２２４を介して接続された外部のディスプレイ上で）再生し、特定のオンラインビデオへのリンクを含む電子メールを送信し、別の方法で管理することを可能にする命令を含む。いくつかの実施形態では、特定のオンラインビデオへのリンクを送信するために、電子メールクライアントモジュール２４０ではなく、インスタントメッセージングモジュール２４１が使用される。オンラインビデオアプリケーションの追加の説明は、その内容の全体が参照により本明細書に組み込まれる、２００７年６月２０日に出願された米国特許仮出願第６０／９３６，５６２号、「Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｄｅｖｉｃｅ，Ｍｅｔｈｏｄ，ａｎｄ  Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｐｌａｙｉｎｇ  Ｏｎｌｉｎｅ  Ｖｉｄｅｏｓ」、及び２００７年１２月３１日に出願された米国特許出願第１１／９６８，０６７号、「Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｄｅｖｉｃｅ，Ｍｅｔｈｏｄ，ａｎｄ  Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｐｌａｙｉｎｇ  Ｏｎｌｉｎｅ  Ｖｉｄｅｏｓ」に見出すことができる。
【０１１５】
上記特定されたモジュール及びアプリケーションの各々は、上記説明された１つ以上の機能を実行するための実行可能な命令セット及び本出願に記載の方法（例えば、コンピュータにより実装される方法及び本明細書に記載の他の情報処理方法）に対応する。これらのモジュール（例えば、命令のセット）は、別個のソフトウェアプログラム、手順、又はモジュールとして実装される必要はなく、よって、様々な実施形態では、これらのモジュールの様々なサブセットを組み合わせるか、又は他の方式で再編成することができる。例えば、ビデオ再生モジュールは、音楽再生モジュールと組み合わせて、単一のモジュール（例えば、図２Ａのビデオ及び音楽再生モジュール２５２）としてもよい。いくつかの実施形態では、メモリ２０２は、上記特定されたモジュール及びデータ構造のサブセットを記憶してもよい。更に、メモリ２０２は、上記説明されていない追加のモジュール及びデータ構造を記憶してもよい。
【０１１６】
いくつかの実施形態では、デバイス２００は、デバイス上の機能の予め定義されたセットの動作が排他的にタッチスクリーン及び／又はタッチパッドを通じて実行されるデバイスである。デバイス２００の動作についての主要な入力制御デバイスとしてタッチスクリーン及び／又はタッチパッドを使用することによって、デバイス２００上の（プッシュボタン及びダイヤル等の）物理入力制御デバイスの数を削減することができる。
【０１１７】
排他的にタッチスクリーン及び／又はタッチパッドを通じて実行される、予め定義された機能のセットは、任意選択的に、ユーザインタフェースの間のナビゲーションを含む。いくつかの実施形態では、タッチパッドは、ユーザによってタッチされるとき、デバイス２００上で表示される任意のユーザインタフェースから、メインメニュー、ホームメニュー、又はルートメニューへデバイス２００をナビゲートする。そのような実施形態では、「メニューボタン」はタッチパッドを使用して実装される。いくつかの他の実施形態では、メニューボタンは、タッチパッドの代わりに、物理プッシュボタン又は他の物理入力制御デバイスである。
【０１１８】
図２Ｂは、いくつかの実施形態に従った、イベント処理のための例示的な構成要素を示すブロック図である。いくつかの実施形態では、メモリ２０２（図２Ａ）又はメモリ４７０（図４）は、イベントソート部２７０（例えば、オペレーティングシステム２２６内）及びそれぞれアプリケーション２３６−１（例えば、上述したアプリケーション２３７〜２５１、２５５、４８０〜４９０のうちのいずれか）を含む。
【０１１９】
イベントソート部２７０は、イベント情報を受信し、イベント情報が配信されるアプリケーション２３６−１及びアプリケーション２３６−１のアプリケーションビュー２９１を判定する。イベントソート部２７０は、イベントモニタ２７１及びイベントディスパッチャモジュール２７４を含む。いくつかの実施形態では、アプリケーション２３６−１は、アプリケーションがアクティブ又は実行中のとき、タッチ感知ディスプレイ２１２上で表示される直近のアプリケーションビュー（単数又は複数）を示す、アプリケーション内部状態２９２を含む。いくつかの実施形態では、デバイス／グローバル内部状態２５７は、どのアプリケーション（単数又は複数）が現在アクティブであるか否かを判定するためにイベントソート部２７０によって使用され、アプリケーション内部状態２９２は、イベント情報が配信されるアプリケーションビュー２９１を判定するためにイベントソート部２７０によって使用される。
【０１２０】
いくつかの実施形態では、アプリケーション内部状態２９２は、アプリケーション２３６−１が実行を再開するときに使用される再開情報、アプリケーション２３６−１によって情報が表示されているか又は表示の準備がされていることを示すユーザインタフェース状態情報、ユーザがアプリケーション２３６−１の前の状態又はビューに戻ることを可能にするための状態待ち行列、及びユーザが前に行ったアクションの再実行／取消待ち行列のうちの１つ以上等の追加情報を含む。
【０１２１】
イベントモニタ２７１は、周辺機器インタフェース２１８からイベント情報を受信する。イベント情報は、サブイベント（例えば、マルチタッチジェスチャの一部としての、タッチ感知ディスプレイ２１２上でのユーザのタッチ）に関する情報を含む。周辺機器インタフェース２１８は、Ｉ／Ｏサブシステム２０６、又は近接センサ２６６、加速度計（単数又は複数）２６８、及び／若しくは（音声回路２１０を通じた）マイクロフォン２１３等のセンサから受信する情報を送信する。周辺機器インタフェース２１８がＩ／Ｏサブシステム２０６から受信する情報は、タッチ感知ディスプレイ２１２又はタッチ感知面からの情報を含む。
【０１２２】
いくつかの実施形態では、イベントモニタ２７１は、所定の間隔で周辺機器インタフェース２１８に要求を送信する。これに応じて、周辺機器インタフェース２１８はイベント情報を送信する。他の実施形態では、周辺機器インタフェース２１８は、重要なイベント（例えば、所定のノイズ閾値を上回り、及び／又は所定の時間を超える入力を受信すること）が存在するときのみ、イベント情報を送信する。
【０１２３】
いくつかの実施形態では、イベントソート部２７０はまた、ヒットビュー判定モジュール２７２及び／又はアクティブイベント認識部判定モジュール２７３を含む。
【０１２４】
ヒットビュー判定モジュール２７２は、タッチ感知ディスプレイ２１２が２つ以上のビューを表示するときに、サブイベントが１つ以上のビュー内で発生したかを判定するためのソフトウェア手順を提供する。ビューは、制御部及びユーザがディスプレイ上で見ることができる他の要素で構成されている。
【０１２５】
アプリケーションと関連付けられたユーザインタフェースの別の態様は、本明細書ではアプリケーションビュー又はユーザインタフェースウィンドウと呼ばれる場合があるビューのセットであり、それらにおいて情報が表示され、タッチに基づくジェスチャが生じる。タッチが検出される（それぞれのアプリケーションの）アプリケーションビューは、そのアプリケーションのプログラム階層又はビュー階層内のプログラムレベルに対応してもよい。例えば、タッチが検出される最下位レベルのビューはヒットビューと呼ばれてもよく、適切な入力として認識されるイベントのセットは、少なくとも部分的にタッチに基づくジェスチャを開始する最初のタッチのヒットビューに基づいて判定されてもよい。
【０１２６】
ヒットビュー判定モジュール２７２は、タッチに基づくジェスチャのサブイベントと関連する情報を受信する。アプリケーションが、階層で編成された複数のビューを有するとき、ヒットビュー判定モジュール２７２は、サブイベントを処理するべき階層における最下位のビューとしてヒットビューを特定する。ほとんどの状況では、ヒットビューは、最初のサブイベント（例えば、イベント又は潜在的なイベントを形成する一連のサブイベントにおける最初のサブイベント）が発生する最下位レベルのビューである。ヒットビューがヒットビュー判定モジュール２７２によって特定されると、ヒットビューは、典型的には、それがヒットビューとして特定された、同一のタッチ又は入力ソースに関連する全てのサブイベントを受信する。
【０１２７】
アクティブイベント認識部判定モジュール２７３は、ビュー階層内のどのビュー（単数又は複数）が特定の一連のサブイベントを受信するべきかを判定する。いくつかの実施形態では、アクティブイベント認識部判定モジュール２７３は、ヒットビューのみが特定の一連のサブイベントを受信するべきであると判定する。他の実施形態では、アクティブイベント認識部判定モジュール２７３は、サブイベントの物理的な位置を含む全てのビューがアクティブに関与しているビューであると判定し、従って、全てのアクティブに関与しているビューが特定の一連のサブイベントを受信するべきであると判定する。他の実施形態では、タッチサブイベントが１つの特定のビューと関連付けられたエリアに完全に制限される場合でさえ、階層における上位のビューは、アクティブに関与しているビューのままである。
【０１２８】
イベントディスパッチャモジュール２７４は、イベント情報をイベント認識部（例えば、イベント認識部２８０）に発送する。アクティブイベント認識部判定モジュール２７３を含む実施形態では、イベントディスパッチャモジュール２７４は、アクティブイベント認識部判定モジュール２７３によって判定されたイベント認識部にイベント情報を配信する。いくつかの実施形態では、イベントディスパッチャモジュール２７４は、それぞれのイベント受信部２８２により取得されるイベント情報をイベント待ち行列に記憶する。
【０１２９】
いくつかの実施形態では、オペレーティングシステム２２６は、イベントソート部２７０を含む。代わりに、アプリケーション２３６−１は、イベントソート部２７０を含む。更なる他の実施形態では、イベントソート部２７０は、スタンドアロンモジュール、又は接触／動きモジュール２３０等のメモリ２０２に記憶された別のモジュールの一部である。
【０１３０】
いくつかの実施形態では、アプリケーション２３６−１は、各々がアプリケーションのユーザインタフェースのそれぞれのビュー内で発生するタッチイベントを処理する命令を含む、複数のイベントハンドラ２９０及び１つ以上のアプリケーションビュー２９１を含む。アプリケーション２３６−１の各々のアプリケーションビュー２９１は、１つ以上のイベント認識部２８０を含む。典型的には、それぞれのアプリケーションビュー２９１は、複数のイベント認識部２８０を含む。他の実施形態では、イベント認識部２８０のうちの１つ以上は、ユーザインタフェースキット（図示せず）、又はアプリケーション２３６−１がメソッド及び他の性質をそれから継承する上位レベルのオブジェクト等の別々のモジュールの一部である。いくつかの実施形態では、それぞれのイベント処理部２９０は、データ更新部２７６、オブジェクト更新部２７７、ＧＵＩ更新部２７８、及び／又はイベントソート部２７０から受信されたイベントデータ２７９のうちの１つ以上を含む。イベント処理部２９０は、アプリケーション内部状態２９２を更新するために、データ更新部２７６、オブジェクト更新部２７７、若しくはＧＵＩ更新部２７８を利用又は呼び出すことができる。代わりに、アプリケーションビュー２９１のうちの１つ以上は、１つ以上のそれぞれのイベント処理部２９０を含む。また、いくつかの実施形態では、データ更新部２７６、オブジェクト更新部２７７、及びＧＵＩ更新部２７８のうちの１つ以上は、それぞれのアプリケーションビュー２９１に含まれる。
【０１３１】
それぞれのイベント認識部２８０は、イベントソート部２７０からイベント情報（例えば、イベントデータ２７９）を受信し、イベント情報からイベントを特定する。イベント認識部２８０は、イベント受信部２８２及びイベント比較部２８４を含む。いくつかの実施形態では、イベント認識部２８０はまた、メタデータ２８３及びイベント配信命令２８８（サブイベント配信命令を含んでもよい）の少なくともサブセットを含む。
【０１３２】
イベント受信部２８２は、イベントソート部２７０からイベント情報を受信する。イベント情報は、サブイベント、例えば、タッチ又はタッチの移動に関する情報を含む。サブイベントに応じて、イベント情報はまた、サブイベントの位置等の追加の情報を含む。サブイベントがタッチの動きに関係するとき、イベント情報はまた、そのサブイベントの速さ及び方向も含んでもよい。いくつかの実施形態では、イベントは、１つの向きから別の向きへの（例えば、縦向きから横向きへの、又はその逆の）デバイスの回転を含み、イベント情報は、デバイスの現在の向き（デバイスの姿勢とも呼ばれる）に関する対応する情報を含む。
【０１３３】
イベント比較部２８４は、イベント情報を予め定義されたイベント又はサブイベント定義と比較し、比較に基づいて、イベント若しくはサブイベントを判定し、又はイベント若しくはサブイベントの状態を判定若しくは更新する。いくつかの実施形態では、イベント比較部２８４は、イベント定義２８６を含む。イベント定義２８６は、例えば、イベント１（２８７−１）、イベント２（２８７−２）等の、イベントの定義（例えば、予め定義された一連のサブイベント）を含む。いくつかの実施形態では、イベント（２８７）におけるサブイベントは、例えば、タッチの開始、タッチの終了、タッチの移動、タッチの中止、及び複数のタッチを含む。一実施例では、イベント１（２８７−１）についての定義は、表示されたオブジェクト上のダブルタップである。ダブルタップは、例えば、所定の段階の間の表示されたオブジェクト上の第１のタッチ（タッチの開始）、所定の段階の間の第１のリフトオフ（タッチの終了）、所定の段階の間の表示オブジェクト上の第２のタッチ（タッチの開始）、及び所定の段階の間の第２のリフトオフ（タッチの終了）を含む。別の実施例では、イベント２（２８７−２）についての定義は、表示されたオブジェクト上のドラッグ操作である。ドラッグ操作は、例えば、所定の段階の間の表示されたオブジェクト上のタッチ（又は、接触）、タッチ感知ディスプレイ２１２を横断するタッチの移動、及びタッチのリフトオフ（タッチの終了）を含む。いくつかの実施形態では、イベントはまた、１つ以上の関連付けられたイベント処理部２９０についての情報を含む。
【０１３４】
いくつかの実施形態では、イベント定義２８７は、それぞれのユーザインタフェースオブジェクトについてのイベントの定義を含む。いくつかの実施形態では、イベント比較部２８４は、どのユーザインタフェースオブジェクトがサブイベントと関連付けられるかを判定するためのヒットテストを実行する。例えば、３つのユーザインタフェースオブジェクトがタッチ感知ディスプレイ２１２に表示されるアプリケーションビューにおいて、タッチ感知ディスプレイ２１２上でタッチが検出されるとき、イベント比較部２８４は、３つのユーザインタフェースオブジェクトのうちのどれがタッチ（サブイベント）と関連付けられているかを判定するためのヒットテストを実行する。表示された各々のオブジェクトがそれぞれのイベント処理部２９０と関連付けられている場合、イベント比較部は、ヒットテストの結果を使用して、どのイベント処理部２９０をアクティブ化するべきかを判定する。例えば、イベント比較部２８４は、サブイベント及びヒットテストをトリガするオブジェクトと関連付けられたイベント処理部を選択する。
【０１３５】
いくつかの実施形態では、それぞれのイベント（２８７）についての定義はまた、一連のサブイベントがイベント認識部のイベントタイプに対応するか否かが判定されるまでイベント情報の配信を遅延させる遅延アクションを含む。
【０１３６】
それぞれのイベント認識部２８０が、一連のサブイベントがイベント定義２８６におけるイベントのいずれとも一致しないと判定するとき、それぞれのイベント認識部２８０は、イベント不可能、イベント失敗、又はイベント終了状態に入り、その後は、タッチに基づくジェスチャの後続のサブイベントを無視する。この状況では、ヒットビューに対してアクティブのままである他のイベント認識部がある場合、そのイベント認識部は、進行中のタッチに基づくジェスチャのサブイベントを追跡及び処理することを続ける。
【０１３７】
いくつかの実施形態では、それぞれのイベント認識部２８０は、イベント配信システムがどのようにサブイベント配信を実行するべきかをアクティブに関与しているイベント認識部に示す構成可能なプロパティ、フラグ、及び／又はリストを有するメタデータ２８３を含む。いくつかの実施形態では、メタデータ２８３は、イベント認識部が相互にどのように対話することができるか、又は対話が可能になるかについて示す、構成変更可能なプロパティ、フラグ、及び／又はリストを含む。いくつかの実施形態では、メタデータ２８３は、サブイベントがビュー階層又はプログラム階層における様々なレベルに配信されるかを示す、構成変更可能なプロパティ、フラグ、及び／又はリストを含む。
【０１３８】
いくつかの実施形態では、それぞれのイベント認識部２８０は、イベントの１つ以上の特定のサブイベントが認識されるときに、イベントと関連付けられたイベント処理部２９０をアクティブ化する。いくつかの実施形態では、それぞれのイベント認識部２８０は、イベントと関連付けられたイベント情報をイベント処理部２９０に配信する。イベント処理部２９０をアクティブ化することは、それぞれのヒットビューにサブイベントを送信（及び送信を延期する）することとは異なる。いくつかの実施形態では、イベント認識部２８０は、認識されたイベントと関連付けられたフラグをスローし、フラグと関連付けられたイベント処理部２９０は、フラグをキャッチし、予め定義された処理を実行する。
【０１３９】
いくつかの実施形態では、イベント配信命令２８８は、イベント処理部をアクティブ化することなくサブイベントに関するイベント情報を配信するサブイベント配信命令を含む。代わりに、サブイベント配信命令は、一連のサブイベントと関連付けられたイベント処理部又はアクティブに関与しているビューにイベント情報を配信する。一連のサブイベント又はアクティブに関与しているビューと関連付けられたイベント処理部は、イベント情報を受信し、所定の処理を実行する。
【０１４０】
いくつかの実施形態では、データ更新部２７６は、アプリケーション２３６−１で使用されるデータを作成及び更新する。例えば、データ更新部２７６は、連絡先モジュール２３７で使用される電話番号を更新し、又はビデオ再生モジュールで使用されるビデオファイルを記憶する。いくつかの実施形態では、オブジェクト更新部２７７は、アプリケーション２３６−１で使用されるオブジェクトを作成及び更新する。例えば、オブジェクト更新部２７７は、新たなユーザインタフェースオブジェクトを作成し、又はユーザインタフェースオブジェクトの位置を更新する。ＧＵＩ更新部２７８は、ＧＵＩを更新する。例えば、ＧＵＩ更新部２７８は、表示情報を作成し、タッチ感知ディスプレイ上で表示するためにそれをグラフィックモジュール２３２に送信する。
【０１４１】
いくつかの実施形態では、イベント処理部（単数又は複数）２９０は、データ更新部２７６、オブジェクト更新部２７７、及びＧＵＩ更新部２７８を含み、又はそれらへのアクセスを有する。いくつかの実施形態では、データ更新部２７６、オブジェクト更新部２７７、及びＧＵＩ更新部２７８は、それぞれのアプリケーション２３６−１又はアプリケーションビュー２９１の単一のモジュールに含まれる。他の実施形態では、それらは、２つ以上のソフトウェアモジュールに含まれる。
【０１４２】
タッチ感知ディスプレイ上のユーザのタッチのイベント処理に関する前述の議論はまた、入力デバイスを有する多機能デバイス２００を動作させるための他の形式のユーザ入力にも適用されるが、その全てがタッチスクリーン上で開始されるわけではないことが理解されよう。例えば、単一若しくは複数のキーボードの押圧若しくは保持に任意選択的に合わせたマウスの移動及びマウスボタンの押圧、タッチパッド上のタップ、ドラッグ、スクロール等の接触移動、ペンのスタイラス入力、デバイスの移動、口頭による指示、検出された眼球運動、バイオメトリック入力、並びに／又はそれらの任意の組み合わせは、任意選択的に、認識されることになるイベントを定義するサブイベントに対応する入力として利用される。
【０１４３】
図３は、いくつかの実施形態に従った、タッチスクリーン２１２を有するポータブル多機能デバイス２００を示す。タッチスクリーンは、任意選択的に、ユーザインタフェース（user interface）（ＵＩ）３００内に１つ以上のグラフィックを表示する。本実施形態と共に以下で説明されるその他では、ユーザは、例えば、１本以上の指３０２（図には、正確な縮尺率では描かれていない）又は１つ以上のスタイラス３０３（図には、正確な縮尺率では描かれていない）で、グラフィック上でジェスチャを行うことにより、グラフィックのうちの１つ以上を選択することが可能になる。いくつかの実施形態では、ユーザが１つ以上のグラフィックとの接触を中断するときに１つ以上のグラフィックの選択が発生する。いくつかの実施形態では、ジェスチャは、任意選択的に、１回以上のタップ、１回以上のスワイプ（左から右へ、右から左へ、上方向へ、及び／若しくは下方向へ）、並びに／又はデバイス２００と接触した指の回転（右から左へ、左から右へ、上方向へ、及び／若しくは下方向へ）を含む。いくつかの実施形態又は状況では、グラフィックとの不測の接触は、グラフィックを選択しない。例えば、選択に対応するジェスチャがタップであるとき、アプリケーションアイコンの上をスイープするスワイプジェスチャは、任意選択的に、対応するアプリケーションを選択しない。
【０１４４】
デバイス２００はまた、「ホーム」又はメニューボタン３０４等の１つ以上の物理ボタンを含んでもよい。前に説明されたように、メニューボタン３０４は、デバイス２００上で実行することができるアプリケーションセットにおける任意のアプリケーション２３６へナビゲートするために使用されてもよい。代わりに、いくつかの実施形態では、メニューボタンは、タッチスクリーン２１２に表示されたＧＵＩにおけるソフトキーとして実装される。
【０１４５】
一実施形態では、デバイス２００は、タッチスクリーン２１２、メニューボタン３０４、デバイスの電源をオン／オフし、デバイスをロックするためのプッシュボタン３０６、音量調節ボタン（単数又は複数）３０８、加入者識別モジュール（ＳＩＭ）カードスロット３１０、ヘッドセットジャック３１２、及びドッキング／充電用外部ポート２２４を含む。プッシュボタン３０６は、任意選択的に、ボタンを押し下げ、予め定義された時間間隔の間にボタンを押し下げた状態で保持することによってデバイス上の電力をターンオン／オフし、ボタンを押し下げ予め定義された時間間隔が経過する前にボタンを解放することによってデバイスをロックし、及び／又はデバイスのロックを解除し若しくはロック解除処理を開始するために使用される。代替的な実施形態では、デバイス２００はまた、マイクロフォン２１３を通じていくつかの機能をアクティブ化又は非アクティブ化するための口頭入力を受け付ける。デバイス２００はまた、任意選択的に、タッチスクリーン２１２上の接触の強度を検出するための１つ以上の接触強度センサ２６５、及び／又はデバイス２００のユーザについての触知出力を生成するための１つ以上の触知出力生成器２６７を含む。
【０１４６】
図４は、いくつかの実施形態に従った、ディスプレイ及びタッチ感知面を有する例示的な多機能デバイスのブロック図である。デバイス４００は、ポータブル型である必要はない。いくつかの実施形態では、デバイス４００は、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、マルチメディア再生デバイス、ナビゲーションデバイス、教育的デバイス（子供の学習玩具等）、ゲームシステム、又は制御デバイス（例えば、家庭用又は業務用コントローラ）である。デバイス４００は、典型的には、１つ以上のプロセシングユニット（ＣＰＵ）４１０、１つ以上のネットワーク又は他の通信インタフェース４６０、メモリ４７０、及びこれらの構成要素を相互接続するための１つ以上の通信バス４２０を含む。通信バス４２０は、任意選択的に、システム構成要素の間の通信を相互接続及び制御する回路（チップセットと呼ばれることがある）を含む。デバイス４００は、典型的には、タッチスクリーンディスプレイであるディスプレイ４４０を含む入出力（Ｉ／Ｏ）インタフェース４３０を含む。Ｉ／Ｏインタフェース４３０はまた、任意選択的に、キーボード及び／若しくはマウス（又は、他のポインティングデバイス）４５０、並びにタッチパッド４５５、デバイス４００上で触知出力を生成するための（例えば、図２Ａを参照して上記説明された触知出力生成器２６７（単数又は複数）と同様の）触知出力生成器４５７、センサ４５９（例えば、光センサ、加速度センサ、近接センサ、タッチ感知センサ、及び／又は図２Ａを参照して上記説明された接触強度センサ（単数又は複数）２６５と同様の接触強度センサ）を含む。メモリ４７０は、ＤＲＡＭ、ＳＲＡＭ、ＤＤＲ  ＲＡＭ、又は他のランダムアクセスソリッドステートメモリデバイス等の高速ランダムアクセスメモリを含み、任意選択的に、１つ以上の磁気ディスク記憶デバイス、光ディスク記憶デバイス、フラッシュメモリデバイス、又は他の不揮発性半導体記憶デバイス等の不揮発性メモリを含む。メモリ４７０は、任意選択的に、ＣＰＵ（単数又は複数）４１０からリモートに位置する１つ以上の記憶デバイスを含む。いくつかの実施形態では、メモリ４７０は、ポータブル多機能デバイス２００（図２Ａ）のメモリ２０２に記憶されたプログラム、モジュール、及びデータ構造、又はそれらのサブセットに類似する、プログラム、モジュール、及びデータ構造を記憶する。更に、メモリ４７０は、任意選択的に、ポータブル多機能デバイス２００のメモリ２０２に存在しない追加のプログラム、モジュール、及びデータ構造を記憶する。例えば、デバイス４００のメモリ４７０は、任意選択的に、描画モジュール４８０、プレゼンテーションモジュール４８２、ワードプロセッシングモジュール４８４、ウェブサイト作成モジュール４８６、ディスクオーサリングモジュール４８８、及び／又はスプレッドシートモジュール４９０を記憶するが、ポータブル多機能デバイス２００（図２Ａ）のメモリ２０２はこれらのモジュールを記憶しない。
【０１４７】
図４における上記特定された要素の各々は、前述のメモリデバイスのうちの１つ以上に記憶されていてもよい。上記特定されたモジュールの各々は、上記説明された機能を実行する命令セットに対応する。上記特定されたモジュール又はプログラム（例えば、命令セット）は、別個のソフトウェアプログラム、手順、又はモジュールとして実装される必要はなく、よって、様々な実施形態では、これらのモジュールの様々なサブセットは組み合わされてもよく、又は他の方式で再編成されてもよい。いくつかの実施形態では、メモリ４７０は、上記特定されたモジュール及びデータ構造のサブセットを記憶してもよい。更に、メモリ４７０は、上記説明されていない追加のモジュール及びデータ構造を記憶してもよい。
【０１４８】
ここで、例えば、ポータブル多機能デバイス２００上で実装することができるユーザインタフェースの実施形態に注意を向ける。
【０１４９】
図５Ａは、いくつかの実施形態に従った、ポータブル多機能デバイス２００上のアプリケーションのメニュー用の例示的なユーザインタフェースを示す。同様のユーザインタフェースは、デバイス４００上で実装されてもよい。いくつかの実施形態では、ユーザインタフェース５００は、以下の要素、又はそれらのサブセット若しくはスーパーセットを含む。
【０１５０】
セルラー信号及びＷｉ−Ｆｉ信号等の無線通信（単数又は複数）のための信号強度インジケータ（単数又は複数）５０２、
●時間５０４、
●Ｂｌｕｅｔｏｏｔｈインジケータ５０５、
●バッテリ状態インジケータ５０６、
●下記等の、頻繁に使用されるアプリケーション用のアイコンを含むトレー５０８、
○不在着信又はボイスメールメッセージの数のインジケータ５１４を任意選択的に含む、「電話」とラベル付けされた、電話モジュール２３８用のアイコン５１６、
○未読電子メールの数のインジケータ５１０を任意選択的に含む、「メール」とラベル付けされた、電子メールクライアントモジュール２４０用のアイコン５１８、
○「ブラウザ」とラベル付けされた、ブラウザモジュール２４７用のアイコン５２０、及び
○「ｉＰｏｄ」とラベル付けされた、ｉＰｏｄ（Ａｐｐｌｅ  Ｉｎｃ．の商標）モジュール２５２とも称されるビデオ及び音楽再生モジュール２５２用のアイコン５２２、並びに
●下記等の、その他のアプリケーションのためのアイコン、
○「メッセージ」とラベル付けされた、ＩＭモジュール２４１用のアイコン５２４、
○「カレンダ」とラベル付けされた、カレンダモジュール２４８用のアイコン５２６、
○「写真」とラベル付けされた、画像管理モジュール２４４用のアイコン５２８、
○「カメラ」とラベル付けされた、カメラモジュール２４３用のアイコン５３０、
○「オンラインビデオ」とラベル付けされた、オンラインビデオモジュール２５５用のアイコン５３２、
○「株式」とラベル付けされた、株式ウィジェット２４９−２用のアイコン５３４、
○「地図」とラベル付けされた、地図モジュール２５４用のアイコン５３６、
○「天気」とラベル付けされた、天気ウィジェット２４９−１用のアイコン５３８、
○「時計」とラベル付けされた、アラーム時計ウィジェット２４９−４用のアイコン５４０、
○「トレーニングサポート」とラベル付けされた、トレーニングサポートモジュール２４２用のアイコン５４２、
○「メモ」とラベル付けされた、メモモジュール２５３用のアイコン５４４、及び
○デバイス２００及びその様々なアプリケーション２３６についての設定へのアクセスを提供する、「設定」とラベル付けされた、設定アプリケーション若しくはモジュール用のアイコン５４６。
【０１５１】
図５Ａに示されるアイコンのラベルは、単なる例示であることに留意されたい。例えば、ビデオ及び音楽再生モジュール２５２用のアイコン５２２は、任意選択的に、「音楽」又は「音楽再生」とラベル付けされてもよい。他のラベルは、任意選択的に、様々なアプリケーションアイコンのために使用される。いくつかの実施形態では、それぞれのアプリケーションアイコンについてのラベルは、それぞれのアプリケーションアイコンに対応するアプリケーションの名前を含む。いくつかの実施形態では、特定のアプリケーションアイコンについてのラベルは、特定のアプリケーションアイコンに対応するアプリケーションの名前とは異なる。
【０１５２】
図５Ｂは、ディスプレイ５５０（例えば、タッチスクリーンディスプレイ２１２）とは別個のタッチ感知面５５１（例えば、図４のタブレット又はタッチパッド４５５）を有するデバイス（例えば、図４のデバイス４００）上の例示的なユーザインタフェースを示す。デバイス４００はまた、任意選択的に、タッチ感知面５５１上の接触の強度を検出するための１つ以上の接触強度センサ（例えば、センサ４５７のうちの１つ以上）、及び／又はデバイス４００のユーザに対する触知出力を生成するための１つ以上の触知出力生成器４５９を含む。
【０１５３】
以下の実施例のうちのいくつかはタッチスクリーンディスプレイ２１２上の入力（タッチ感知面とディスプレイとが組み合わされている場合）を参照して説明されるが、いくつかの実施形態では、デバイスは、図５Ｂに示されるように、ディスプレイとは別個のタッチ感知面上の入力を検出する。いくつかの実施形態では、タッチ感知面（例えば、図５Ｂの５５１）は、ディスプレイ（例えば、５５０）上の主軸（例えば、図５Ｂの５５３）に対応する主軸（例えば、図５Ｂの５５２）を有する。これらの実施形態に従って、デバイスは、タッチ感知面５５１との接触（例えば、図５Ｂの５６０及び５６２）を、ディスプレイ上のそれぞれの一に対応する位置（例えば、図５Ｂでは、５６０は５６８に対応し、５６２は５７０に対応する）において検出する。このように、タッチ感知面がディスプレイとは別個であるとき、タッチ感知面（例えば、図５Ｂの５５１）上でデバイスによって検出されたユーザ入力（例えば、接触５６０及び接触５６２、並びにそれらの移動）が、多機能デバイスのディスプレイ（例えば、図５Ｂでの５５０）上でユーザインタフェースを操作するためにデバイスによって使用される。同様の方法は、任意選択的に、本明細書で説明される他のユーザインタフェースに使用されることを理解されたい。
【０１５４】
加えて、以下の実施例は、主に指入力（例えば、指の接触、指のタップジェスチャ、指のスワイプジェスチャ）を参照して説明されるが、いくつかの実施形態では、それらの指入力のうちの１つ以上は、別の入力デバイスからの入力（例えば、マウスに基づく入力、又はスタイラス入力）で置き換えられることを理解されたい。例えば、スワイプジェスチャは、任意選択的に、スワイプの経路に沿ったカーソルの移動がその後に続く（例えば、接触の移動の代わりに）、マウスクリックと置き換えられる（例えば、接触の代わりに）。別の実施例として、タップジェスチャは、任意選択的に、カーソルがタップジェスチャの位置の上に位置する間にマウスクリックと置き換えられる（例えば、接触の検出とそれに続いて接触の検出を停止する代わりに）。同様に、複数のユーザ入力が同時に検出されるとき、複数のコンピュータマウスが任意選択的に同時に使用され、又はマウス及び指の接触が任意選択的に同時に使用されることを理解されたい。
【０１５５】
図６Ａは、例示的なパーソナル電子デバイス６００を示す。デバイス６００は、本体６０２を含む。いくつかの実施形態では、デバイス６００は、デバイス２００及びデバイス４００（例えば、図２Ａ〜図４Ｂ）に関して説明される特徴のいくつか又は全てを含むことができる。いくつかの実施形態では、デバイス６００は、タッチ感知ディスプレイ画面６０４、以後、タッチスクリーン６０４を有する。タッチスクリーン６０４の代わりに、又はそれに加えて、デバイス６００は、ディスプレイ及びタッチ感知面を有する。デバイス２００及びデバイス４００と同様に、いくつかの実施形態では、タッチスクリーン６０４（又は、タッチ感知面）は、加えられている接触（例えば、タッチ）の強度を検出するための１つ以上の強度センサを有してもよい。タッチスクリーン６０４（又は、タッチ感知面）の１つ以上の強度センサは、タッチの強度を表す出力データを提供することができる。デバイス６００のユーザインタフェースは、タッチの強度に基づいてタッチに応答してもよく、これは、異なる強度のタッチがデバイス６００上で異なるユーザインタフェース動作を呼び出すことができることを意味する。
【０１５６】
タッチ強度を検出及び処理するための技術は、それぞれが全体として参照により本明細書に組み込まれる、例えば、関連出願である、２０１３年５月８日に出願された「Ｄｅｖｉｃｅ，Ｍｅｔｈｏｄ，ａｎｄ  Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｄｉｓｐｌａｙｉｎｇ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  Ｏｂｊｅｃｔｓ  Ｃｏｒｒｅｓｐｏｎｄｉｎｇ  ｔｏ  ａｎ  Ａｐｐｌｉｃａｔｉｏｎ」と題する国際出願ＰＣＴ／ＵＳ２０１３／０４００６１号、及び２０１３年１１月１１日に出願された「Ｄｅｖｉｃｅ，Ｍｅｔｈｏｄ，ａｎｄ  Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｔｒａｎｓｉｔｉｏｎｉｎｇ  Ｂｅｔｗｅｅｎ  Ｔｏｕｃｈ  Ｉｎｐｕｔ  ｔｏ  Ｄｉｓｐｌａｙ  Ｏｕｔｐｕｔ  Ｒｅｌａｔｉｏｎｓｈｉｐｓ」と題する同ＰＣＴ／ＵＳ２０１３／０６９４８３号に見出すことができる。
【０１５７】
いくつかの実施形態では、デバイス６００は、１つ以上の入力機構６０６及び６０８を有する。入力機構６０６及び６０８は、含まれる場合、物理的なものとすることができる。物理入力機構の例は、プッシュボタン及び回転可能機構を含む。いくつかの実施形態では、デバイス６００は、１つ以上の取付機構を有する。そのような取付機構は、含まれる場合、例えば、デバイス６００を、帽子、アイウェア、イヤリング、ネックレス、シャツ、ジャケット、ブレスレット、腕時計バンド、チェーン、ズボン、ベルト、靴、財布、及びバックパック等に取り付けることを可能にする。これらの取付機構によって、ユーザはデバイス６００を着用することができる。
【０１５８】
図６Ｂは、例示的なパーソナル電子デバイス６００を示す。いくつかの実施形態では、デバイス６００は、図２Ａ、図２Ｂ、及び図４に関連して説明された構成要素のいくつか又は全てを含むことができる。デバイス６００は、Ｉ／Ｏ部６１４を１つ以上のコンピュータプロセッサ６１６及びメモリ６１８に動作可能に結合するバス６１２を有する。Ｉ／Ｏ部６１４は、タッチ感知構成要素６２２、及び、任意選択的に、タッチ強度感知構成要素６２４を有することができるディスプレイ６０４に接続されてもよい。加えて、Ｉ／Ｏ部６１４は、Ｗｉ−Ｆｉ、Ｂｌｕｅｔｏｏｔｈ、近距離通信（「ＮＦＣ」）、セルラー、及び／又は他の無線通信技術を使用して、アプリケーション及びオペレーティングシステムデータを受信するための通信ユニット６３０と接続されてもよい。デバイス６００は、入力機構６０６及び／又は６０８を含むことができる。入力機構６０６は、例えば、回転可能入力デバイス、又は押し下げ可能及び回転可能入力デバイスであってもよい。入力機構６０８は、いくつかの実施例では、ボタンであってもよい。
【０１５９】
入力機構６０８は、いくつかの実施例では、マイクロフォンであってもよい。パーソナル電子デバイス６００は、ＧＰＳセンサ６３２、加速度計６３４、方向センサ６４０（例えば、コンパス）、ジャイロスコープ６３６、動きセンサ６３８、及び／又はこれらの組み合わせ等の、様々なセンサを含むことができるが、それらの全ては、Ｉ／Ｏ部６１４に動作可能に接続されてもよい。
【０１６０】
パーソナル電子デバイス６００のメモリ６１８は、コンピュータ実行可能命令を記憶するための非一時的コンピュータ可読記憶媒体とすることができ、それらの命令は、１つ以上のコンピュータプロセッサ６１６によって実行されるとき、例えば、コンピュータプロセッサに、処理１２００（図１２Ａ〜Ｄ）を含む、上記説明された技術を実行させることができる。コンピュータ実行可能命令はまた、コンピュータベースのシステム、プロセッサを含むシステム、又は命令実行システム、装置、若しくはデバイスから命令をフェッチすることができ、命令を実行することができる他のシステム等、命令実行システム、装置、又はデバイスによって、又はそれらと接続して使用するための任意の非一時的コンピュータ可読記憶媒体に記憶及び／又は伝送されてもよい。パーソナル電子デバイス６００は、図６Ｂの構成要素及び構成に限定されるものではなく、複数の構成における他の構成要素又は追加的構成要素を含むことができる。
【０１６１】
本明細書で使用されるとき、用語「アフォーダンス」は、デバイス２００、デバイス４００、及び／又はデバイス６００（図２、図４、及び図６）のディスプレイスクリーン上で表示することができるユーザ対話式のグラフィカルユーザインタフェースオブジェクトを指す。例えば、画像（例えば、アイコン）、ボタン、及びテキスト（例えば、リンク）は各々、アフォーダンスを構成することができる。
【０１６２】
本明細書で使用されるとき、用語「フォーカスセレクタ」は、ユーザが対話しているユーザインタフェースの現在の部分を示す入力要素を指す。カーソル又は他の位置マーカを含むいくつかの実装形態では、カーソルが特定のユーザインタフェース要素（例えば、ボタン、ウィンドウ、スライダ、又は他のユーザインタフェース要素）の上にある間に、タッチ感知面（例えば、図４のタッチパッド４５５、又は図５Ｂのタッチ感知面５５１）上で入力（例えば、押圧入力）が検出されるとき、特定のユーザインタフェース要素が検出された入力に従って調整されるように、カーソルは「フォーカスセレクタ」として機能する。タッチスクリーンディスプレイ上のユーザインタフェース要素との直接的な対話を可能にする、タッチスクリーンディスプレイ（例えば、図２Ａのタッチ感知ディスプレイシステム２１２、又は図５Ａのタッチスクリーン２１２）を含むいくつかの実装形態では、入力（例えば、接触による押圧入力）がタッチスクリーンディスプレイ上で特定のユーザインタフェース要素（例えば、ボタン、ウィンドウ、スライダ、又は他のユーザインタフェース要素）の位置において検出されるとき、特定のユーザインタフェース要素が検出された入力に従って調節されるように、タッチスクリーン上の検出された接触は、「フォーカスセレクタ」として機能する。いくつかの実装形態では、（例えば、タブキー又は矢印キーを使用してフォーカスを１つのボタンから別のボタンに移動させることにより）タッチスクリーンディスプレイ上の対応するカーソルの移動又は接触の移動なしに、フォーカスが、ユーザインタフェースの１つの領域からユーザインタフェースの別の領域に移動され、それらの実施形態では、フォーカスセレクタは、ユーザインタフェースの異なる領域の間のフォーカスの移動に従って移動する。フォーカスセレクタによってとられる具体的な形式とは関係なく、フォーカスセレクタは概して、ユーザの意図したユーザインタフェースとの対話を通信するために（例えば、ユーザが対話することを意図しているユーザインタフェースの要素をデバイスに示すことによって）、ユーザによって制御されるユーザインタフェース要素（又は、タッチスクリーンディスプレイ上の接触）である。例えば、押圧入力がタッチ感知面（例えば、タッチパッド又はタッチスクリーン）上で検出される間、それぞれのボタンの上にあるフォーカスセレクタ（例えば、カーソル、接触、又は選択ボックス）の位置は、（デバイスのディスプレイ上で示される他のユーザインタフェース要素とは反対側の）それぞれのボタンをユーザがアクティブ化することを意図していることを示す。
【０１６３】
本明細書及び特許請求の範囲で使用するとき、接触の「特性強度」という用語は、接触の１つ以上の強度に基づくその接触の特性を指す。いくつかの実施形態では、特性強度は複数の強度サンプルに基づく。特性強度は、任意選択的に、予め定義された数の強度サンプル、或いは予め定義されたイベントに対する（例えば、接触を検出した後、接触のリフトオフを検出する前、接触の移動の開始を検出する前若しくは後、接触の終わりを検出する前、接触の強度における増大を検出する前若しくは後、及び／又は接触の強度における減少を検出する前若しくは後）所定の時間期間の間（例えば、０．０５、０．１、０．２、０．５、１、２、５、１０秒）に収集された強度サンプルの組に基づく。接触の特性強度は、任意選択的に、接触の強度の最大値、接触の強度の平均値（mean value）、接触の強度の平均値（average value）、接触の強度の上位１０％値、接触の強度の最大値の半分の値、又は接触の強度の最大値の９０％の値等のうちの１つ以上に基づく。いくつかの実施形態では、接触の期間は、特性強度を判定する際に使用される（例えば、特性強度が経時的な接触の強度の平均にあるとき）。いくつかの実施形態では、特性強度は、操作がユーザによって実行されたかを判定するために１つ以上の強度閾値の組と比較される。例えば、１つ以上の強度閾値のセットは、第１の強度閾値及び第２の強度閾値を含むことができる。この実施例では、第１の閾値を越えない特性強度を有する接触の結果として第１の動作が実行され、第１の強度閾値を越え、第２の強度閾値を越えない特性強度を有する接触の結果として第２の動作が実行され、第２の閾値を越える特性強度を有する接触の結果として第３の動作が実行される。いくつかの実施形態では、特性強度と１つ以上の閾値との間の比較は、第１の動作を実行するか又は第２の動作を実行するかを判定するために使用されるのではなく、１つ以上の動作を実行するか否か（例えば、それぞれの動作を実行するのか、又はそれぞれの動作の実行をしないで済ますか）を判定するために使用される。
【０１６４】
いくつかの実施形態では、特性強度を判定する目的で、ジェスチャの一部が特定される。例えば、タッチ感知面は、接触の強度が増加する開始位置から遷移して終了位置に到達する連続的なスワイプ接触を受け取ってもよい。この実施例では、終了位置における接触の特性強度は、連続的なスワイプ接触の一部のみに基づいており、全体的なスワイプ接触ではない（例えば、終了位置におけるスワイプ接触の一部のみ）。いくつかの実施形態では、接触の特性強度を判定する前に、平滑化アルゴリズムをそのスワイプ接触の強度に適用してもよい。例えば、平滑化アルゴリズムは、任意選択的に、非荷重移動平均平滑化アルゴリズム、三角平滑化アルゴリズム、中央値フィルタ平滑化アルゴリズム、及び／又は指数平滑化アルゴリズムのうちの１つ以上を含む。いくつかの状況では、これらの平滑化アルゴリズムは、特性強度を判定する目的で、スワイプ接触の強度の小幅な上昇又は低下を除外する。
【０１６５】
タッチ感知面上の接触の強度は、接触検出強度閾値、軽い押圧強度閾値、深い押圧強度閾値、及び／又は１つ以上の他の強度閾値等などの１つ以上の強度閾値に対して特徴付けられてもよい。いくつかの実施形態では、軽い押圧強度閾値は、典型的に物理マウスのボタン又はトラックパッドのクリックと関連付けられた動作をデバイスが実行する強度に対応する。いくつかの実施形態では、深い押圧強度閾値は、典型的に物理マウスのボタン又はトラックパッドのクリックと関連付けられた動作とは異なる動作をデバイスが実行する強度に対応する。いくつかの実施形態では、軽い押圧強度閾値を下回る（例えば、かつ、それを下回ると接触がもはや検出されないわずかな接触検出強度閾値を上回る）特性強度を有する接触が検出されるとき、デバイスは、軽い押圧強度閾値又は深い押圧強度閾値と関連付けられた動作を実行することなく、タッチ感知面上の接触の移動に従ってフォーカスセレクタを移動させる。概して、特に明記しない限り、これらの強度閾値は、ユーザインタフェースの図の異なるセットの間で一貫している。
【０１６６】
軽い押圧強度閾値を下回る強度から、軽い押圧強度閾値と深い押圧強度閾値との間の強度への接触の特性強度の増大は、「軽い押圧」入力と称される場合がある。深い押圧強度閾値を下回る強度から、深い押圧強度閾値を上回る強度への接触の特性強度の増大は、「深い押圧」入力と称される場合がある。接触検出強度閾値を下回る強度から、接触検出強度閾値と軽い押圧強度閾値との間の強度への接触の特性強度の増大は、タッチ面上の接触の検出と称される場合がある。接触検出強度閾値を上回る強度から、接触検出強度閾値を下回る強度への接触の特性強度の減少は、タッチ面からの接触のリフトオフの検出と称される場合がある。いくつかの実施形態では、接触検出強度閾値はゼロである。いくつかの実施形態では、接触検出強度閾値はゼロより大きい。
【０１６７】
本明細書で説明されるいくつかの実施形態では、１つ以上の操作は、それぞれの押圧入力を含むジェスチャを検出したことに応じて、又はそれぞれの接触（又は、複数の接触）で実行されるそれぞれの押圧入力を検出したことに応じて実行され、それぞれの押圧入力は、押圧入力強度閾値を上回る接触（又は、複数の接触）の強度における増大を検出したことに少なくとも部分的に基づいて検出される。いくつかの実施形態では、それぞれの操作は、押圧入力強度閾値を上回るそれぞれの接触の強度の増大（例えば、それぞれの押圧入力の「ダウンストローク」）の検出に応じて実行される。いくつかの実施形態では、押圧入力は、押圧入力強度閾値を上回るそれぞれの接触の強度の増大、及び押圧入力強度閾値を下回る接触の強度の後続の減少を含み、それぞれの動作は、押圧入力閾値を下回るそれぞれの接触の強度の後続の減少（例えば、それぞれの押圧入力の「アップストローク」）の検出に応じて実行される。
【０１６８】
いくつかの実施形態では、デバイスは、「ジッタ」と呼ばれる場合がある偶発的な入力を回避するために強度ヒステリシスを採用し、デバイスは、押圧入力強度閾値との予め定義された関係を有するヒステリシス強度閾値を定義又は選択する（例えば、ヒステリシス強度閾値は、押圧入力強度閾値よりも低いＸ強度単位であり、又はヒステリシス強度閾値は、押圧入力強度閾値の７５％、９０％、若しくは何らかの妥当な比率である）。よって、いくつかの実施形態では、押圧入力は、押圧入力強度閾値を上回るそれぞれの接触の強度の増大、及び押圧入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の後続の減少を含み、それぞれの動作は、ヒステリシス強度閾値を下回る、それぞれの接触の強度の後続の減少（例えば、それぞれの押圧入力の「アップストローク」）の検出に応じて実行される。同様に、いくつかの実施形態では、押圧入力は、デバイスが、ヒステリシス強度閾値以下の強度から押圧入力強度閾値以上の強度への接触の強度の増大、及び任意選択的に、ヒステリシス強度以下の強度への、接触の強度の後続の減少を検出する場合にのみ検出され、それぞれの動作は、押圧入力の検出（例えば、状況に応じて、接触の強度の増大、又は接触の強度の減少）に応じて実行される。
【０１６９】
説明を容易にするために、押圧入力強度閾値と関連付けられた押圧入力に応じて、又は押圧入力を含むジェスチャに応じて実行される動作の説明は、任意選択的に、押圧入力強度閾値を上回る接触の強度の増大、ヒステリシス強度閾値を下回る強度から押圧入力強度閾値を上回る強度への接触の強度の増大、押圧入力強度閾値を下回る接触の強度の減少、及び／又は押圧入力強度閾値に対応するヒステリシス強度閾値を下回る接触の強度の減少のいずれかを検出したことに応じてトリガされる。加えて、押圧入力強度閾値を下回る接触の強度の減少を検出したことに応じて動作が実行されるとして説明される実施例では、動作は、任意選択的に、押圧入力強度閾値に対応し、かつそれよりも低いヒステリシス強度閾値を下回る、接触の強度の減少を検出したことに応じて実行される。
３．デジタルアシスタントシステム
【０１７０】
図７Ａは、様々な実施例に従った、デジタルアシスタントシステム７００のブロック図を示す。いくつかの実施例では、デジタルアシスタントシステム７００は、スタンドアロンコンピュータシステム上で実装されてもよい。いくつかの実施例では、デジタルアシスタントシステム７００は、複数のコンピュータにわたって分散されてもよい。いくつかの実施例では、デジタルアシスタントのモジュール及び機能のいくつかは、サーバ部分及びクライアント部分に分割されてもよく、そこでは、クライアント部分は１つ以上のユーザデバイス（例えば、デバイス１０４、デバイス１２２、デバイス２００、デバイス４００、又はデバイス６００）上に常駐し、例えば、図１に示すように、１つ以上のネットワークを通じてサーバ部分（例えば、サーバシステム１０８）と通信する。いくつかの実施例では、デジタルアシスタントシステム７００は、図１に示されたサーバシステム１０８（及び／又は、ＤＡサーバ１０６）の実施形態であってもよい。デジタルアシスタントシステム７００は、デジタルアシスタントシステムの単なる一実施例に過ぎず、デジタルアシスタントシステム７００は、示されているよりも多くの若しくは少ない構成要素を有してもよく、２つ以上の構成要素を組み合わせてもよく、又は構成要素の異なる構成若しくは配置を有することができることに留意されたい。図７Ａに示される様々な構成要素は、１つ以上の信号処理回路及び／若しくは特定用途向け集積回路を含む、ハードウェア、１つ以上のプロセッサによって実行されるソフトウェア命令、ファームウェア、又はそれらの組み合わせの形態で実装されてもよい。
【０１７１】
デジタルアシスタントシステム７００は、メモリ７０２、１つ以上のプロセッサ７０４、入出力（Ｉ／Ｏ）インタフェース７０６、及びネットワーク通信インタフェース７０８を含むことができる。これらの構成要素は、１つ以上の通信バス又は信号線７１０を介して相互に通信することができる。
【０１７２】
いくつかの実施例では、メモリ７０２は、高速ランダムアクセスメモリ並びに／又は不揮発性コンピュータ可読記憶媒体（例えば、１つ以上の磁気ディスク記憶デバイス、フラッシュメモリデバイス、若しくは他の不揮発性固体メモリデバイス）等の非一時的コンピュータ可読媒体を含むことができる。
【０１７３】
いくつかの実施例では、Ｉ／Ｏインタフェース７０６は、ディスプレイ、キーボード、タッチスクリーン、及びマイクロフォン等、デジタルアシスタントシステム７００の入出力デバイス７１６をユーザインタフェースモジュール７２２に結合することができる。Ｉ／Ｏインタフェース７０６は、ユーザインタフェースモジュール７２２と協働して、ユーザ入力（例えば、音声入力、キーボード入力、タッチ入力等）を受信し、対応してそれらを処理する。いくつかの実施例では、例えば、デジタルアシスタントがスタンドアロンユーザデバイス上で実装されるとき、デジタルアシスタントシステム７００は、図２Ａ、図４、図６Ａ〜図６Ｂにおいてそれぞれデバイス２００、デバイス４００、又はデバイス６００に関連して説明されている構成要素及びＩ／Ｏ通信インタフェースのいずれかを含むことができる。いくつかの実施例では、デジタルアシスタントシステム７００は、デジタルアシスタントの実施形態のサーバ部分を表すことができ、ユーザデバイス（例えば、デバイス１０４、デバイス２００、デバイス４００、又はデバイス６００）上に常駐するクライアント側部分を通じてユーザと対話することができる。
【０１７４】
いくつかの実施例では、ネットワーク通信インタフェース７０８は、有線通信ポート（単数又は複数）７１２及び／又は無線送受信回路７１４を含むことができる。有線通信ポート（単数又は複数）７１２は、１つ以上の有線インタフェース、例えば、イーサネット、ユニバーサルシリアルバス（ＵＳＢ）、ＦＩＲＥＷＩＲＥ等を介して通信信号を受信及び送信することができる。無線回路７１４は、通信ネットワーク及び他の通信デバイスをから／へ、ＲＦ信号及び／又は光信号を受信及び送信することができる。無線通信は、ＧＳＭ、ＥＤＧＥ、ＣＤＭＡ、ＴＤＭＡ、Ｂｌｕｅｔｏｏｔｈ、Ｗｉ−Ｆｉ、ＶｏＩＰ、Ｗｉ−ＭＡＸ、又は任意のその他の適切な通信プロトコル等の複数の通信規格、プロトコル及び技術のうちのいずれかを使用することができる。ネットワーク通信インタフェース７０８は、インターネット、イントラネット等のネットワーク、及び／又はセルラー電話ネットワーク、無線ローカルエリアネットワーク（ＬＡＮ）等の無線ネットワーク、及び／又はメトロポリタンエリアネットワーク（Metropolitan Area Network、ＭＡＮ）による、デジタルアシスタントシステム７００と他のデバイスとの間の通信を可能にすることができる。
【０１７５】
いくつかの実施例では、メモリ７０２、又はメモリ７０２のコンピュータ可読記憶媒体は、オペレーティングシステム７１８、通信モジュール７２０、ユーザインタフェースモジュール７２２、１つ以上のアプリケーション７２４、及びデジタルアシスタントモジュール７２６の全て又はサブセットを含むプログラム、モジュール、命令、及びデータ構造を記憶することができる。特に、メモリ７０２又はメモリ７０２のコンピュータ可読記憶媒体は、以下で説明する処理１２００を実行する命令を記憶することができる。１つ以上のプロセッサ７０４はこれらのプログラム、モジュール、及び命令を実行し、データ構造から／へと読み出し／書き込みを行うことができる。
【０１７６】
オペレーティングシステム７１８（例えば、Ｄａｒｗｉｎ、ＲＴＸＣ、ＬＩＮＵＸ、ＵＮＩＸ、ｉＯＳ、ＯＳ  Ｘ、ＷＩＮＤＯＷＳ、又はＶｘＷｏｒｋｓ等の組み込みオペレーティングシステム）は、一般的なシステムタスク（例えば、メモリ管理、記憶装置制御、電力管理等）を制御及び管理するための様々なソフトウェア構成要素及び／又はドライバを含むことができ、様々なハードウェア、ファームウェア、及びソフトウェア構成要素間の通信を促進する。
【０１７７】
通信モジュール７２０は、ネットワーク通信インタフェース７０８上でのデジタルアシスタントシステム７００と他のデバイスとの間の通信を促進する。例えば、通信モジュール７２０は、図２Ａ、図４、図６Ａ〜図６Ｂにそれぞれ示すデバイス２００、デバイス４００、及びデバイス６００等の電子デバイスのＲＦ回路２０８と通信することができる。通信モジュール７２０はまた、無線回路７１４及び／又は有線通信ポート７１２により受信されたデータを処理するための様々な構成要素も含むことができる。
【０１７８】
ユーザインタフェースモジュール７２２はＩ／Ｏインタフェース７０６を介して（例えば、キーボード、タッチスクリーン、ポインティングデバイス、コントローラ、及び／又はマイクロフォンから）ユーザからのコマンド及び／又は入力を受信することができ、ディスプレイ上でユーザインタフェースオブジェクトを生成することができる。ユーザインタフェースモジュール７２２はまた、Ｉ／Ｏインタフェース７０６を介して（例えば、ディスプレイ、音声チャネル、スピーカ、タッチパッド等を通じて）、ユーザへの出力（例えば、発話、音声、アニメーション、テキスト、アイコン、振動、触覚フィードバック、光等）を準備及び配信することができる。
【０１７９】
アプリケーション７２４は、１つ以上のプロセッサ７０４により実行されるように構成されたプログラム及び／又はモジュールを含むことができる。例えば、デジタルアシスタントシステムがスタンドアロンのユーザデバイス上で実装される場合、アプリケーション７２４は、ゲーム、カレンダアプリケーション、ナビゲーションアプリケーション、又は電子メールアプリケーション等のユーザアプリケーションを含むことができる。デジタルアシスタントシステム７００がサーバ上で実装される場合、アプリケーション７２４は、例えば、リソース管理アプリケーション、診断アプリケーション、又はスケジューリングアプリケーションを含むことができる。
【０１８０】
メモリ７０２はまた、デジタルアシスタントモジュール７２６（又は、デジタルアシスタントのサーバ部分）を記憶することができる。いくつかの実施例では、デジタルアシスタントモジュール７２６は、以下のサブモジュール、又はそれらのサブセット若しくはスーパーセットを含むことができる：入出力処理モジュール７２８、音声テキスト化（ＳＴＴ）処理モジュール７３０、自然言語処理モジュール７３２、ダイアログフロー処理モジュール７３４、タスクフロー処理モジュール７３６、サービス処理モジュール７３８、及び発話合成モジュール７４０。これらのモジュールの各々は、デジタルアシスタントモジュール７２６の以下のシステム又はデータ及びモデルのうちの１つ以上、又はそれらのサブセット若しくはスーパーセットへのアクセスを有することができる：オントロジ７６０、語彙索引７４４、ユーザデータ７４８、タスクフローモデル７５４、サービスモデル７５６、及びＡＳＲシステム７３１。
【０１８１】
いくつかの実施例では、デジタルアシスタントモジュール７２６で実装された処理モジュール、データ、及びモデルを使用して、デジタルアシスタントは以下のうちの少なくともいくつかを実行することができる：発話入力をテキストに変換すること、ユーザから受信された自然言語入力で表現されているユーザの意図を特定すること、ユーザの意図を完全に推測するために必要な情報を（例えば、単語、ゲーム、意図等の曖昧さをなくすことによって）能動的に引き出し、取得すること、推測された意図を満たすためのタスクフローを判定すること、及びそのタスクフローを実行して、推測された意図を満たすこと。
【０１８２】
いくつかの実施例では、図７Ｂに示すように、Ｉ／Ｏ処理モジュール７２８は、ユーザ入力（例えば、発話入力）を取得し、ユーザ入力への応答を（例えば、音声出力として）提供するために、図７ＡにおけるＩ／Ｏデバイス７１６を通じてユーザと対話し、又は図７Ａにおけるネットワーク通信インタフェース７０８を通じてユーザデバイス（例えば、デバイス１０４、デバイス２００、デバイス４００、若しくはデバイス６００）と対話することができる。Ｉ／Ｏ処理モジュール７２８は、任意選択的に、ユーザ入力と共に、又はその受信の直後に、ユーザ入力と関連付けられたコンテクスト情報をユーザデバイスから取得することができる。コンテクスト情報は、ユーザ入力に関連するユーザ特有データ、語彙、及び／又は優先度を含むことができる。いくつかの実施例では、コンテクスト情報はまた、ユーザ要求が受信された時点におけるユーザデバイスのソフトウェア及びハードウェア状態、並びに／又はユーザ要求が受信された時点におけるユーザの周囲環境に関連する情報を含む。いくつかの実施例では、Ｉ／Ｏ処理モジュール７２８はまた、ユーザ要求について、ユーザに補足質問を送信し、ユーザから回答を受信することができる。ユーザ要求がＩ／Ｏ処理モジュール７２８によって受信され、ユーザ要求が発話入力を含むことができるとき、Ｉ／Ｏ処理モジュール７２８は、発話−テキスト変換のために、発話入力をＳＴＴ処理モジュール７３０（又は、発話認識器）へ転送することができる。
【０１８３】
ＳＴＴ処理モジュール７３０は、１つ以上のＡＳＲシステムを含むことができる。１つ以上のＡＳＲシステムは、Ｉ／Ｏ処理モジュール７２８を通じて受信された発話入力を処理して、認識結果を生成することができる。各々のＡＳＲシステムは、フロントエンド発話プリプロセッサを含むことができる。フロントエンド発話プリプロセッサは、発話入力から代表的な特徴を抽出することができる。例えば、フロントエンド発話プリプロセッサは、発話入力を代表的な多次元ベクトルの列として特徴付けるスペクトル特徴を抽出するために、発話入力に対してフーリエ変換を実行することができる。更に、各々のＡＳＲシステムは、１つ以上の発話認識モデル（例えば、音響モデル及び／又は言語モデル）を含むことができ、１つ以上の音声認識エンジンを実装することができる。発話認識モデルの実施例は、隠れマルコフモデル、混合ガウスモデル、ディープニューラルネットワークモデル、ｎグラム言語モデル、及び他の統計モデルを含むことができる。発話認識エンジンの実施例は、動的時間伸縮ベースのエンジン及び重み付き有限状態トランスデューサ（ＷＦＳＴ）ベースのエンジンを含むことができる。フロントエンド発話プリプロセッサの抽出された代表的な特徴を処理して、中間認識結果（例えば、音素、音素文字列及びサブワード）を生成し、最終的には、テキスト認識結果（例えば、単語、単語文字列、又はトークンの列）を生成するために、１つ以上の発話認識モデル及び１つ以上の発話認識エンジンを使用することができる。いくつかの実施例では、発話入力は、認識結果を生成するために、サードパーティサービスによって、又はユーザのデバイス（例えば、デバイス１０４、デバイス２００、デバイス４００、若しくはデバイス６００）上で少なくとも部分的に処理されてもよい。ＳＴＴ処理モジュール７３０が、テキスト文字列（例えば、単語、単語の列、又はトークンの列）を包含する認識結果を生成すると、認識結果は意図推論のために自然言語処理モジュール７３２に渡されてもよい。
【０１８４】
音声テキスト化処理についての更なる詳細は、開示全体が参照により本明細書に組み込まれる、２０１１年９月２０日に出願された、「Ｃｏｎｓｏｌｉｄａｔｉｎｇ  Ｓｐｅｅｃｈ  Ｒｅｃｏｇｎｉｔｉｏｎ  Ｒｅｓｕｌｔｓ」についての米国実用特許出願第１３／２３６，９４２号に記載されている。
【０１８５】
いくつかの実施例では、ＳＴＴ処理モジュール７３０は、認識可能な単語の語彙を含むことができ、及び／又は音標アルファベット変換モジュール７３１を介してそれにアクセスすることができる。各々の語彙語は、１つ以上の発話認識音標アルファベットで表される単語の発音候補と関連付けられてもよい。詳細には、認識可能な単語の語彙は、複数の発音候補と関連付けられた単語を含むことができる。例えば、語彙は、発音候補／ｔ?'ｍｅ??ｏ?／及び／ｔ?'ｍ?ｔｏ?／と関連付けられた単語「トマト」を含むことができる。更に、ユーザからの前の発話入力に基づいて、語彙語をカスタム発音候補と関連付けることができる。そのようなカスタム発音候補を、ＳＴＴ処理モジュール７３０に記憶することができて、デバイス上のユーザのプロファイルを介して、特定のユーザと関連付けることができる。いくつかの実施例では、単語の綴り並びに１つ以上の言語規則及び／又は音標規則に基づいて、単語の発音候補を判定することができる。いくつかの実施例では、例えば、既知の正規発音に基づいて、発音候補を手動で生成することができる。
【０１８６】
いくつかの実施例では、発音候補の一般性に基づいて、発音候補をランク付けすることができる。例えば、発音候補／ｔ?'ｍｅ??ｏ?／を、／ｔ?'ｍ?ｔｏ?／よりも高くランク付けすることができるが、これは、発音候補／ｔ?'ｍｅ??ｏ?／が（例えば、全ユーザのうち、特定の地理的領域のユーザについて、又は任意の他の適切なユーザのサブセットについて）より一般的に使用される発音だからである。いくつかの実施例では、発音候補が、ユーザと関連付けられたカスタム発音候補であるかに基づいて、その発音候補をランク付けすることができる。例えば、カスタム発音候補を、正規発音候補よりも高くランク付けすることができる。このことは、正規発音から逸脱する独特の発音を有する固有名詞を認識するために有用となることがある。いくつかの実施例では、発音候補を出身地、国籍又は民族性等の１つ以上の発話特性と関連付けることができる。例えば、発音候補／ｔ?'ｍｅ??ｏ?／を米国と関連付けることができるのに対し、発音候補／ｔ?'ｍ?ｔｏ?／を英国と関連付けることができる。更に、発音候補のランクは、デバイス上のユーザのプロファイルに記憶されたユーザの１つ以上の特性（例えば、出身地、国籍、民族等）に基づくことができる。例えば、ユーザのプロファイルから、ユーザが米国と関連付けられていることを判定することができる。ユーザが米国と関連付けられていることに基づいて、（米国と関連付けられた）発音候補／ｔ?'ｍｅ??ｏ?／を、（英国と関連付けられた）発音候補／ｔ?'ｍ?ｔｏ?／よりも高くランク付けすることができる。いくつかの実施例では、ランク付けされた発音候補のうちの１つを、予測された発音（例えば、最も可能性が高い発音）として選択することができる。
【０１８７】
発話入力が受信されるとき、ＳＴＴ処理モジュール７３０は、発話入力に対応する音素を（例えば、音響モデルを使用して）判定するために使用されてもよく、次に、音素に一致する単語を（例えば、言語モデルを使用して）判定することを試みる。例えば、ＳＴＴ処理モジュール７３０は、発話入力の一部分に対応する音素の列／ｔ?'ｍｅ??ｏ?／を最初に特定することができた場合、語彙インデックス７４４に基づいて、この列が単語「トマト」に対応すると判定することができる。
【０１８８】
いくつかの実施例では、ＳＴＴ処理モジュール７３０は、近似マッチング技術を使用して、音声入力における単語を判定することができる。従って、例えば、ＳＴＴ処理モジュール７３０は、特定の音素の列が、単語「トマト」の候補音素の列のうちの１つではない場合でさえ、音素の列／ｔ?'ｍｅ??ｏ?／が単語「トマト」に対応すると判定することができる。
【０１８９】
デジタルアシスタントの自然言語処理モジュール７３２（「自然言語プロセッサ」）は、ＳＴＴ処理モジュール７３０により生成された単語又はトークンの列（「トークン列」）を獲得し、トークン列を、デジタルアシスタントにより認識される１つ以上の「実施可能な意図」と関連付けようと試みることができる。「実施可能な意図」は、デジタルアシスタントにより実行することができるタスクを表すことができ、タスクフローモデル７５４で実装される、関連付けられたタスクフローを有することができる。関連付けられたタスクフローは、タスクを実行するためにデジタルアシスタントが取る一連のプログラムされたアクション及びステップとすることができる。デジタルアシスタントの能力の範囲は、タスクフローモデル７５４で実装及び記憶されているタスクフローの数及び種類に依存し、又は、換言すれば、デジタルアシスタントを認識する「実施可能な意図」の数及び種類に依存することができる。しかし、デジタルアシスタントの有効性はまた、自然言語で表現されたユーザ要求から正しい「実施可能な意図（単数又は複数）」を推定するアシスタントの能力に依存することができる。
【０１９０】
いくつかの実施例では、ＳＴＴ処理モジュール７３０から取得される単語又はトークンの列に加えて、自然言語処理モジュール７３２はまた、例えば、Ｉ／Ｏ処理モジュール７２８から、ユーザ要求と関連付けられたコンテクスト情報を受信することができる。自然言語処理モジュール７３２は、任意選択的に、コンテクスト情報を使用して、ＳＴＴ処理モジュール７３０から受信したトークン列に含まれる情報を明らかにし、補完し、及び／又は更に定義することができる。コンテクスト情報は、例えば、ユーザ優先度、ユーザデバイスのハードウェア及び／又はソフトウェア状態、ユーザ要求の前、最中、若しくは直後に収集されたセンサ情報、並びにデジタルアシスタントとユーザとの間の以前の対話（例えば、ダイアログ）等を含むことができる。本明細書で説明するように、コンテクスト情報は動的であってもよく、時間、位置、ダイアログの内容、及び他の因子によって変化することができる。
【０１９１】
いくつかの実施例では、自然言語処理は、例えば、オントロジ７６０に基づくことができる。オントロジ７６０は、多数のノードを包含する階層構造とすることができ、各々のノードは、「実施可能な意図」又は他の「属性」のうちの１つ以上に関連する「実施可能な意図」又は「属性」のいずれかを表す。上述したように、「実施可能な意図」は、デジタルアシスタントが実行する能力を有する、即ち、それは「実装可能」である、又は作用することができるタスクを表すことができる。「属性」は、実施可能な意図、又は別の属性の下位態様と関連付けられたパラメータを表すことができる。オントロジ７６０内の実施可能な意図ノードと属性ノードとの間のリンクは、属性ノードにより表されるパラメータが、実施可能な意図ノードにより表されるタスクにどのくらい関係するのかを定義することができる。
【０１９２】
いくつかの実施例では、オントロジ７６０は実施可能な意図ノード及び属性ノードで構成されてもよい。オントロジ７６０内で、各々の実施可能な意図ノードは、直接又は１つ以上の中間属性ノードを通じてのいずれかで、１つ以上の属性ノードにリンクされてもよい。同様に、各々の属性ノードは、直接又は１つ以上の中間属性ノードを通じてのいずれかで、１つ以上の実施可能な意図ノードにンクされてもよい。例えば、図７Ｃに示すように、オントロジ７６０は、「レストラン予約」ノード（すなわち、実施可能な意図ノード）を含むことができる。属性ノード「レストラン」、「日付／時間」（予約用）及び「参加人数」は各々の、実施可能な意図ノード（即ち、「レストラン予約」ノード）にそれぞれ直接リンクされてもよい。
【０１９３】
更に、属性ノード「料理」、「価格帯」、「電話番号」及び「ロケーション」は、属性ノード「レストラン」のサブノードであってもよく、中間属性ノード「レストラン」を通じて「レストラン予約」ノード（即ち、実施可能な意図ノード）にそれぞれリンクされてもよい。別の実施例として、図７Ｃに示されるように、オントロジ７６０はまた、「リマインダ設定」ノード（即ち、別の実施可能な意図ノード）を含むことができる。属性ノード「日付／時間」（リマインダ設定用）及び「テーマ」（リマインダ用）は、「リマインダ設定」ノードに各々がリンクされてもよい。属性ノード「日付／時間」がレストラン予約をするタスク及びリマインダを設定するタスクの両方に関連することがあるため、属性ノード「日付／時間」はオントロジ７６０において「レストラン予約」ノード及び「リマインダ設定」ノードの両方にリンクされてもよい。
【０１９４】
実施可能な意図ノードは、そのリンクされた属性ノードと共に、「ドメイン」として説明されてもよい。本議論では、各々のドメインは、それぞれの実施可能な意図と関連付けられてもよく、特定の実施可能な意図と関連付けられたノードのグループ（及びノード間の関係）を指す。例えば、図７Ｃに示されるオントロジ７６０は、オントロジ７６０内のレストラン予約ドメイン７６２の例及びリマインダドメイン７６４の例を含むことができる。レストラン予約ドメインは、実施可能な意図ノード「レストラン予約」、属性ノード「レストラン」、「日付／時間」、及び「参加人数」、並びに下位属性ノード「料理」、「価格帯」、「電話番号」及び「ロケーション」を含む。リマインダドメイン７６４は、実施可能な意図ノード「リマインダ設定」、及び属性ノード「テーマ」及び「日付／時間」を含むことができる。いくつかの実施例では、オントロジ７６０は多くのドメインで構成されてもよい。各々のドメインは、１つ以上の他のドメインと、１つ以上の属性ノードを共有することができる。例えば、「日付／時間」属性ノードは、レストラン予約ドメイン７６２及びリマインダドメイン７６４に加えて、多くの異なるドメイン（例えば、スケジューリングドメイン、旅行予約ドメイン、映画チケットドメイン等）と関連付けられてもよい。
【０１９５】
図７Ｃは、オントロジ７６０内の２つの例示的なドメインを示すが、他のドメインは、例えば、「映画を探す」、「通話を開始する」、「道順を探す」、「会議をスケジュールする」、「メッセージを送信する」、及び「質問への回答を提供する」、「リストを読み上げる」、「ナビゲーションの指示を提供する」、並びに「タスクの指示を提供する」等を含むことができる。「メッセージを送信する」ドメインは、「メッセージを送信する」の実施可能な意図ノードと関連付けられており、「受信者（単数又は複数）」、「メッセージタイプ」、及び「メッセージ本文」等の属性ノードを更に含んでもよい。属性ノード「受信者」は更に、例えば、「受信者名」及び「メッセージアドレス」等の下位属性ノードによって定義されてもよい。
【０１９６】
いくつかの実施例では、オントロジ７６０は、デジタルアシスタントが理解し、作用することができる全てのドメイン（よって、実施可能な意図）を含むことができる。いくつかの実施例では、オントロジ７６０は、ドメイン又はノード全体を追加若しくは除去し、又はオントロジ７６０内のノードの間の関係を修正すること等によって修正されてもよい。
【０１９７】
いくつかの実施例では、複数の関連する実施可能な意図と関連付けられたノードは、オントロジ７６０における「スーパドメイン」の下にクラスタ化されてもよい。例えば、「旅行」スーパドメインは、旅行に関連する属性ノード及び実施可能な意図ノードのクラスタを含むことができる。旅行に関連する実施可能な意図ノードは、「航空券予約」、「ホテル予約」、「カーレンタル」、「道順を知る」、及び「興味のある場所を探す」等を含むことができる。同一のスーパドメイン（例えば、「旅行」スーパドメイン）の下の実施可能な意図ノードは、多くの属性ノードを共通して有することができる。例えば、「航空券予約」、「ホテル予約」、「カーレンタル」、「道順を知る」、「興味のある場所を探す」についての実施可能な意図ノードは、属性ノードである「出発場所」、「目的地」、「出発日／時間」、「到着日／時間」、及び「参加人数」のうちの１つ以上を共有することができる。
【０１９８】
いくつかの実施例では、オントロジ７６０における各々のノードは、ノードによって表される属性又は実施可能な意図に関連する単語及び／又はフレーズのセットと関連付けられてもよい。各々のノードと関連付けられた単語及び／又はフレーズのそれぞれのセットは、そのノードと関連付けられたいわゆる「語彙」とすることができる。各々のノードと関連付けられた単語及び／又はフレーズのそれぞれのセットは、ノードによって表される属性又は実施可能な意図に関連して語彙索引７４４に記憶されていてもよい。例えば、図７Ｂに戻ると、「レストラン」の属性についてのノードと関連付けられた語彙は、「食べ物」、「飲み物」、「料理」、「空腹」、「食べる」、「ピザ」、「ファストフード」、「食事」等の単語を含むことができる。別の実施例として、「通話を開始する（initiate a phone call）」の実施可能な意図についてのノードと関連付けられた語彙は、「電話する（call）」、「電話（phone）」、「ダイヤルする（dial）」、「電話をかける（ring）」、「この番号に電話する（call this number）」、及び「〜に電話をかける（make a call to）」等の単語及びフレーズを含むことができる。語彙索引７４４は、任意選択的に、異なる言語の単語及びフレーズを含むことができる。
【０１９９】
自然言語処理モジュール７３２は、ＳＴＴ処理モジュール７３０からトークン列（例えば、テキスト文字列）を受信することができ、トークン列における単語によってどのノードを暗示されているかを判定することができる。いくつかの実施例では、トークン列内の単語又はフレーズが（語彙索引７４４を介して）オントロジ７６０における１つ以上のノードと関連付けられていることが分かった場合、その単語又はフレーズが、それらのノードを「トリガし」又は「アクティブ化する」ことができる。アクティブ化されたノードの量及び／又は相対的重要度に基づいて、自然言語処理モジュール７３２は、ユーザがデジタルアシスタントに実行させようと意図したタスクとして、実施可能な意図のうちの１つを選択することができる。いくつかの実施例では、最も多く「トリガされた」ノードを有するドメインを選択することができる。いくつかの実施例では、最も高い信頼値を有するドメインを（例えば、その様々なトリガされたノードの相対的重要度に基づいて）選択することができる。いくつかの実施例では、トリガされたノードの数及び重要度の組み合わせに基づいて、ドメインを選択することができる。いくつかの実施例では、ノードを選択する際に、デジタルアシスタントはユーザからの同様の要求を以前に正確に解釈したかどうか等の追加の因子も考慮される。
【０２００】
ユーザデータ７４８は、ユーザ特有語彙、ユーザ優先度、ユーザアドレス、ユーザのデフォルト言語及び第二言語、ユーザの連絡先リスト、並びに各々のユーザに関するその他の短期的若しくは長期的情報等のユーザ特有情報を含むことができる。いくつかの実施例では、自然言語処理モジュール７３２は、ユーザ入力に含まれる情報を補完してユーザ意図を更に定義するために、ユーザ特有情報を使用することができる。例えば、ユーザ要求「私の誕生日パーティーに私の友人を招待してください（invite my friends to my birthday party）」について、自然言語処理モジュール７３２は、誰が「友人」であり、いつ及びどこで「誕生日パーティー」が催されるかを判定するために、そのような情報をユーザの要求内で明示的に提供するようにユーザに要求する代わりに、ユーザデータ７４８にアクセスすることができる。
【０２０１】
トークン文字列に基づいてオントロジを検索するその他の詳細は、その開示全体が参照により本明細書に組み込まれる、２００８年１２月２２日に出願された「Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｓｅａｒｃｈｉｎｇ  Ｕｓｉｎｇ  ａｎ  Ａｃｔｉｖｅ  Ｏｎｔｏｌｏｇｙ」についての米国特許出願第１２／３４１，７４３号に記載されている。
【０２０２】
いくつかの実施例では、自然言語処理モジュール７３２が、ユーザ要求に基づいて、実施可能な意図（又はドメイン）を特定すると、自然言語処理モジュール７３２は、特定された実施可能な意図を表すように、構造化されたクエリを生成することができる。いくつかの実施例では、構造化されたクエリは、実施可能な意図についてのドメイン内の１つ以上のノードについてのパラメータを含むことができ、パラメータの少なくともいくつかは、ユーザ要求で指定された特定の情報及び要件が追加される。例えば、ユーザは「私のために７時に寿司屋で夕食の予約を取ってください。（Make me a dinner reservation at a sushi place at 7.）」と言う場合がある。この場合、自然言語処理モジュール７３２は、ユーザ入力に基づいて、実施可能な意図を「レストラン予約」であると正確に特定することができる。オントロジに従って、「レストラン予約」ドメインについての構造化されたクエリは、｛料理｝、｛時間｝、｛日付｝、及び｛参加人数｝等のパラメータを含むことができる。いくつかの実施例では、発話入力、及びＳＴＴ処理モジュール７３０を使用して発話入力から導出されたテキストに基づいて、自然言語処理モジュール７３２は、レストラン予約ドメインについての部分的な構造化されたクエリを生成することができ、この場合、部分的な構造化されたクエリはパラメータ｛料理＝「寿司」｝及び｛時間＝「午後７時」｝を含む。しかしながら、この実施例では、ユーザの発話入力は、ドメインと関連付けられた構造化されたクエリを完了するために十分な情報を包含していない。従って、｛参加人数｝及び｛日付｝等のその他の必要パラメータは、現在利用可能な情報に基づいて、構造化されたクエリで指定されなくてもよい。いくつかの実施例では、自然言語処理モジュール７３２は、構造化されたクエリのいくつかのパラメータに、受信されたコンテクスト情報を追加することができる。例えば、いくつかの実施例では、ユーザが「私の近くの」寿司レストランを要求した場合、自然言語処理モジュール７３２は、構造化されたクエリにおける｛ロケーション｝パラメータにユーザデバイスからのＧＰＳ座標を追加することができる。
【０２０３】
いくつかの実施例では、自然言語処理モジュール７３２は、（任意の完了したパラメータを含む）生成した構造化されたクエリをタスクフロー処理モジュール７３６（「タスクフロープロセッサ」）に渡すことができる。タスクフロー処理モジュール７３６は、自然言語処理モジュール７３２から構造化されたクエリを受信し、必要な場合、構造化されたクエリを完了し、ユーザの最終的な要求を「完了する」ために必要とされるアクションを実行するように構成されてもよい。いくつかの実施例では、これらのタスクを完了するために必要な様々な手順をタスクフローモデル７５４で設けられてもよい。いくつかの実施例では、タスクフローモデル７５４は、ユーザから追加情報を取得するための手順、及び実施可能な意図と関連付けられたアクションを実行するためのタスクフローを含むことができる。
【０２０４】
上記説明されたように、構造化されたクエリを完了するために、タスクフロー処理モジュール７３６は、追加情報を取得し、及び／又は潜在的に曖昧な発話入力の曖昧さをなくすために、ユーザとの追加のダイアログを開始することが必要となることがある。このような対話が必要となるとき、タスクフロー処理モジュール７３６は、ユーザとのダイアログに携わるためにタスクフロー処理モジュール７３４を呼び出すことができる。いくつかの実施例では、ダイアログフロー処理モジュール７３４は、どのように（及び／又はいつ）ユーザに追加情報を求めるべきかを判定することができ、ユーザ応答を受信することができ、これを処理することができる。Ｉ／Ｏ処理モジュール７２８を通じてユーザに質問を提供することができ、ユーザから回答を受信することができる。いくつかの実施例では、ダイアログフロー処理モジュール７３４は音声及び／又は視覚出力を介してユーザにダイアログ出力を提示することができ、発話応答又は物理的な（例えば、クリック）応答を介してユーザから入力を受信することができる。上記実施例を続けると、タスクフロー処理モジュール７３６が、ドメイン「レストラン予約」と関連付けられた構造化されたクエリについての「参加人数」及び「日付」情報を判定するためにダイアログフロー処理モジュール７３４を呼び出すとき、ダイアログフロー処理モジュール７３４は、「何人分ですか？」及び「どの日にしますか？」等の質問をユーザに渡すために生成することができる。ユーザから回答が受信されると、次に、ダイアログフロー処理モジュール７３４は、構造化されたクエリに、欠けている情報を追加し、又は構造化されたクエリから欠けている情報を完了するために、その情報をタスクフロー処理モジュール７３６に渡すことができる。
【０２０５】
タスクフロー処理モジュール７３６が、実施可能な意図についての構造化されたクエリを完了すると、タスクフロー処理モジュール７３６は、実施可能な意図と関連付けられた最終的なタスクの実行に進むことができる。従って、タスクフロー処理モジュール７３６は、構造化されたクエリ含まれる具体的なパラメータに従って、タスクフローモデルにおけるステップ及び命令を実行することができる。例えば、「レストラン予約」の実施可能な意図についてのタスクフローモデルは、レストランと連絡を取り、特定の時間に特定の参加人数のための予約を実際に要求するためのステップ及び命令を含むことができる。例えば、｛レストラン予約、レストラン＝ＡＢＣ  Ｃａｆｅ、日付＝３／１２／２０１２、時間＝午後７時、参加人数＝５｝、等の構造化されたクエリを使用して、タスクフロー処理モジュール７３６は、（１）ＡＢＣ  Ｃａｆｅのサーバ、又はＯＰＥＮＴＡＢＬＥ（登録商標）等のレストラン予約システムにログオンするステップと、（２）ウェブサイト上のフォームに日付、時間、及び参加人数情報を入力するステップと、（３）フォームを提出し（４）ユーザのカレンダに予約のためのカレンダエントリを作成するステップとを実行することができる。
【０２０６】
いくつかの実施例では、タスクフロー処理モジュール７３６は、ユーザ入力で要求されたタスクを完了するために、又はユーザ入力で要求された情報の回答を提供するために、サービス処理モジュール７３８（「サービス処理モジュール」）の支援を採用することができる。例えば、サービス処理モジュール７３８は、電話をかけるため、カレンダエントリを設定するため、地図検索を呼び出すため、ユーザデバイス上にインストールされているその他のユーザアプリケーションを呼び出すか若しくはそれと対話するため、並びにサードパーティサービス（例えばレストラン予約ポータル、ソーシャルネットワーキングウェブサイト、バンキングポータル等）を呼び出すか若しくはそれと対話するために、タスクフロー処理モジュール７３６の代わりに動作することができる。いくつかの実施例では、各々のサービスによって必要とされるプロトコル及びアプリケーションプログラミングインタフェース（application programming interface、ＡＰＩ）は、サービスモデル７５６の間のそれぞれのサービスモデルによって指定されてもよい。サービス処理モジュール７３８は、サービスについての適切なサービスモデルにアクセスすることができ、サービスモデルに下従ったサービスによって必要とされるプロトコル及びＡＰＩに従ってサービスの要求を生成することができる。
【０２０７】
例えば、レストランがオンライン予約サービスを有効にしている場合、レストランは、予約を行うための必要なパラメータ、及び必要なパラメータの値をオンライン予約サービスへ通信するためのＡＰＩを指定するサービスモデルを提出することができる。タスクフロー処理モジュール７３６によって要求されるとき、サービス処理モジュール７３８は、サービスモデルに記憶されているウェブアドレスを使用して、オンライン予約サービスとのネットワーク接続を確立することができ、必要な予約のパラメータ（例えば、時間、日付、参加人数）を、オンライン予約サービスのＡＰＩに従った形式でオンライン予約インタフェースへ送信することができる。
【０２０８】
いくつかの実施例では、ユーザの意図を推定及び定義し、ユーザ意図を更に明らかにして絞り込むための情報を取得し、ユーザの意図を満たすように応答（即ち、ユーザへの出力又はタスクの完了）を最終的に生成するために、自然言語処理モジュール７３２、ダイアログフロー処理モジュール７３４、及びタスクフロー処理モジュール７３６を集合的かつ反復的に使用することができる。生成された応答は、ユーザの意図を少なくとも部分的に満たす、発話入力へのダイアログ応答とすることができる。更に、いくつかの実施例では、生成された応答を、発話出力として出力することができる。これらの実施例では、生成された応答を、発話合成モジュール７４０（例えば、発話合成器）に送信することができ、そこでは、発話形態のダイアログ応答を合成するためにそれが処理されてもよい。更なる他の実施例では、生成された応答は、発話入力のユーザ要求を満たすことに関連するデータコンテンツとすることができる。
【０２０９】
発話合成モジュール７４０は、ユーザに提示するために、発話出力を合成するように構成されてもよい。発話合成モジュール７４０は、デジタルアシスタントにより提供されたテキストに基づいて、発話出力を合成する。例えば、生成されたダイアログ応答は、テキスト文字列の形式にあってもよい。発話合成モジュール７４０は、テキスト文字列を可聴の発話出力に変換することができる。発話合成モジュール７４０は、テキストから発話出力を生成するために、波形接続合成、単位選択合成、ダイフォン合成、領域特化合成、フォルマント合成、調音合成、隠れマルコフモデル（ＨＭＭ）ベースの合成、及びサイン波合成を含むが、これらには限定されない任意の適切な発話合成技術を使用することができる。いくつかの実施例では、発話合成モジュール７４０は、単語に対応する音素文字列に基づいて個々の単語を合成するように構成されてもよい。例えば、音素文字列は、生成したダイアログ応答における単語と関連付けられてもよい。音素文字列は、単語と関連付けられたメタデータに記憶されていてもよい。発話合成モデル７４０は、単語を発話形式で合成するために、メタデータにおける音素文字列を直接処理するように構成されてもよい。
【０２１０】
いくつかの実施例では、発話合成モジュール７４０を使用する代わりに（又は、それに加えて）、リモートデバイス（例えば、サーバシステム１０８）上で発話合成を実行することができ、合成された発話を、ユーザへの出力のために、ユーザデバイスに送信することができる。例えば、これは、デジタルアシスタントのための出力がサーバシステムにおいて生成される、いくつかの実装形態で行われてもよい。また、サーバシステムは概して、ユーザデバイスよりも多くの処理電力又はリソースを有するので、クライアント側合成での実用的な出力よりも高い品質の発話出力を取得することが可能となることがある。
【０２１１】
デジタルアシスタントに関する追加の詳細は、その開示全体が参照により本明細書に組み込まれる、２０１１年１月１０日に出願された「Ｉｎｔｅｌｌｉｇｅｎｔ  Ａｕｔｏｍａｔｅｄ  Ａｓｓｉｓｔａｎｔ」と題する米国実用特許出願第１２／９８７，９８２号、２０１１年９月３０日に出願された「Ｇｅｎｅｒａｔｉｎｇ  ａｎｄ  Ｐｒｏｃｅｓｓｉｎｇ  Ｄａｔａ  Ｉｔｅｍｓ  Ｔｈａｔ  Ｒｅｐｒｅｓｅｎｔ  Ｔａｓｋｓ  ｔｏ  Ｐｅｒｆｏｒｍ」と題された米国特許出願第１３／２５１，０８８号に記載されている。
４．デジタルアシスタント−インテリジェント検索及びオブジェクト管理
【０２１２】
図８Ａ〜８Ｆ、９Ａ〜９Ｈ、１０Ａ〜１０Ｂ、１１Ａ〜１１Ｄ、１２Ａ〜１２Ｄ、及び１３Ａ〜１３Ｃは、デジタルアシスタントによる検索処理又はオブジェクト管理処理を使用してタスクを実行する機能性を示す。いくつかの実施例では、デジタルアシスタントシステム（例えば、デジタルアシスタントシステム７００）は、様々な実施例に従ってユーザデバイスによって実装される。いくつかの実施例では、ユーザデバイス、サーバ（例えば、サーバ１０８）、又はそれらの組み合わせは、デジタルアシスタントシステム（例えば、デジタルアシスタントシステム７００）を実装してもよい。ユーザデバイスは、例えば、デバイス１０４、２００、又は４００を使用して実装されてもよい。いくつかの実施例では、ユーザデバイスは、ラップトップコンピュータ、デスクトップコンピュータ、又はタブレットコンピュータである。ユーザデバイスは、デスクトップ環境などのマルチタスキング環境で動作することができる。
【０２１３】
図８Ａ〜８Ｆ、９Ａ〜９Ｈ、１０Ａ〜１０Ｂ、１１Ａ〜１１Ｄ、１２Ａ〜１２Ｄ、及び１３Ａ〜１３Ｃを参照して、いくつかの実施例では、ユーザデバイスは、様々なユーザインタフェース（例えば、ユーザインタフェース８１０、９１０、１０１０、１１１０、１２１０、及び１３１０）を提供する。ユーザデバイスは、ユーザデバイスと関連付けられたディスプレイ（例えば、タッチ感知ディスプレイシステム２１２、ディスプレイ４４０）上で様々なユーザインタフェースを表示する。様々なユーザインタフェースは、異なる処理を表す１つ以上のアフォーダンス（例えば、検索処理を表すアフォーダンス８２０、９２０、１０２０、１１２０、１２２０、及び１３２０、並びにオブジェクト管理処理を表すアフォーダンス８３０、９３０、１０３０、１１３０、１２３０、及び１３３０）を提供する。１つ以上の処理は、ユーザによって直接又は間接的にインスタンス化されてもよい。例えば、ユーザは、キーボード、マウス、ジョイスティック、又は指などの入力デバイスを使用してアフォーダンスを選択することによって、１つ以上の処理をインスタンス化する。ユーザはまた、以下で更に詳細に説明されるように、発話入力を使用して１つ以上の処理をインスタンス化することができる。処理をインスタンス化することは、処理がまだ実行中でない場合に処理を呼び出すことを含む。処理の少なくとも１つのインスタンスが実行中である場合、処理をインスタンス化することは、処理の既存のインスタンスを実行すること、又は処理の新たなインスタンスを生成することを含む。例えば、オブジェクト管理処理をインスタンス化することは、オブジェクト管理処理を呼び出すこと、既存のオブジェクト管理処理を使用すること、又はオブジェクト管理処理の新たなインスタンス生成を含む。
【０２１４】
図８Ａ〜８Ｆ、９Ａ〜９Ｈ、１０Ａ〜１０Ｂ、１１Ａ〜１１Ｄ、１２Ａ〜１２Ｄ、及び１３Ａ〜１３Ｃに示されるように、ユーザデバイスは、ユーザインタフェース（例えば、ユーザインタフェース８１０、９１０、１０１０、１１１０、１２１０、及び１３１０）上で、デジタルアシスタントサービスをインスタンス化するためのアフォーダンス（例えば、アフォーダンス８４０、９４０、１０４０、１１４０、１２４０、及び１３４０）を表示する。アフォーダンスは、例えば、デジタルアシスタントを表すマイクロフォンアイコンとすることができる。アフォーダンスは、ユーザインタフェース上でいずれかの位置で表示されてもよい。例えば、アフォーダンスは、ユーザインタフェースの底部におけるドック（例えば、ドック８０８、９０８、１００８、１１０８、１２０８、及び１３０８）上で、ユーザインタフェースの最上部におけるメニューバー（例えば、メニューバー８０６、９０６、１００６、１１０６、１２０６、及び１３０６）上で、又はユーザインタフェースの右側における通知センタ等で表示されてもよい。アフォーダンスはまた、ユーザインタフェース上で動的に表示されてもよい。例えば、ユーザデバイスは、デジタルアシスタントサービスを便利にインスタンス化することができるように、アプリケーションユーザインタフェース（例えば、アプリケーションウィンドウ）の近くでアフォーダンスを表示する。
【０２１５】
いくつかの実施例では、デジタルアシスタントは、所定のフレーズを受信したことに応じてインスタンス化される。例えば、デジタルアシスタントは、「はい、アシスタント（Hey, Assistant）」、起きて、アシスタント（Wake up, Assistant）」、「聞いて、アシスタント（Listen up, Assistant）」、又は「ＯＫ、アシスタント（OK, Assistant）」等のフレーズを受信したことに応じて呼び出される。いくつかの実施例では、デジタルアシスタントは、アフォーダンスの選択を受信したことに応じてインスタンス化される。例えば、ユーザは、マウス、スタイラス、又は指等の入力デバイスを使用してアフォーダンス８４０、９４０、１０４０、１１４０、１２４０、及び／又は１３４０を選択する。ユーザデバイス上でデジタルアシスタントを提供することは、コンピューティングリソース（例えば、電力、ネットワーク帯域幅、メモリ、及びプロセッササイクル）を消費する。いくつかの実施例では、デジタルアシスタントは、ユーザがそれを呼び出すまで一時停止又はシャットダウンされる。いくつかの実施例では、デジタルアシスタントは、様々な期間の間にアクティブである。例えば、デジタルアシスタントは、様々なユーザインタフェースが表示され、ユーザデバイスがターンオンされ、ユーザデバイスが休止若しくはスリープしており、ユーザがログオフし、又はそれらの組み合わせの間、アクティブでいることがあり、ユーザの発話入力を監視していることがある。
【０２１６】
図８Ａ〜８Ｆ、９Ａ〜９Ｈ、１０Ａ〜１０Ｂ、１１Ａ〜１１Ｄ、１２Ａ〜１２Ｄ、及び１３Ａ〜１３Ｃを参照して、デジタルアシスタントは、ユーザから発話入力８５２、８５４、８５５、８５６、９５２、９５４、１０５２、１０５４、１１５２、１２５２、又は１３５２等の１つ以上の発話入力を受信する。ユーザは、例えば、検索処理又はオブジェクト管理処理を使用してタスクを実行する目的で様々な発話入力を提供する。いくつかの実施例では、デジタルアシスタントは、ユーザデバイスにおいてユーザから直接、又はユーザデバイスに通信可能に接続された別の電子デバイスを通じて間接的に発話入力を受信する。デジタルアシスタントは、例えば、ユーザデバイスのマイクロフォン（例えば、マイクロフォン２１３）を介してユーザから直接発話入力を受信する。ユーザデバイスは、ラップトップコンピュータ、デスクトップコンピュータ、タブレット、又はサーバ等、マルチタスキング環境で動作するように構成されたデバイスを含む。デジタルアシスタントはまた、ヘッドセット、スマートフォン、又はタブレット等の１つ以上の電子デバイスを通じて間接的に発話入力を受信することができる。例えば、ユーザは、ヘッドセット（図示しない）に発話してもよい。ヘッドセットは、例えば、ヘッドセットとユーザデバイスとの間のＢｌｕｅｔｏｏｔｈ接続を介して、ユーザから発話入力を受信し、発話入力又はその表現をユーザデバイスのデジタルアシスタントに送信する。
【０２１７】
図８Ａ〜８Ｆ、９Ａ〜９Ｈ、１０Ａ〜１０Ｂ、１１Ａ〜１１Ｄ、１２Ａ〜１２Ｄ、及び１３Ａ〜１３Ｃを参照して、いくつかの実施形態では、デジタルアシスタント（例えば、アフォーダンス８４０、９４０、１０４０、１１４０、１２４０、及び１３４０によって表される）は、ユーザデバイスと関連付けられたコンテクスト情報を特定する。コンテクスト情報は、例えば、ユーザ特有データ、１つ以上のオブジェクトと関連付けられたメタデータ、センサデータ、及びユーザデバイス構成データを含む。オブジェクトは、タスクを実行することと関連付けられた処理（例えば、オブジェクト管理処理）のターゲット若しくは構成要素、又はスクリーン上に現在表示されているグラフィカル要素とすることができ、オブジェクト又はグラフィカル要素は、現在フォーカスを有してもよく（例えば、現在選択されている）又は有してなくてもよい。例えば、オブジェクトは、ファイル（例えば、写真、ドキュメント）、フォルダ、通信（例えば、電子メール、メッセージ、通知、若しくはボイスメール）、連絡先、カレンダ、アプリケーション、又はオンラインリソース等を含むことができる。いくつかの実施例では、ユーザ特有データは、ログ情報、ユーザ優先度、ユーザデバイスとのユーザの対話の履歴等を含む。ログ情報は、処理で使用される直近のオブジェクト（例えば、プレゼンテーションファイル）を示す。いくつかの実施例では、１つ以上のオブジェクトと関連付けられたメタデータは、オブジェクトのタイトル、オブジェクトの時間情報、オブジェクトの著者、又はオブジェクトの概要等を含む。いくつかの実施例では、センサデータは、ユーザデバイスと関連付けられたセンサによって収集された様々なデータを含む。例えば、センサデータは、ユーザデバイスの物理的な位置を示す位置データを含む。いくつかの実施例では、ユーザデバイス構成データは、現在のデバイス構成を含む。例えば、デバイス構成は、ユーザデバイスがスマートフォン又はタブレット等の１つ以上の電子デバイスに通信可能に接続されることを示す。以下で更に詳細に説明されるように、ユーザデバイスは、コンテクスト情報を使用して１つ以上の処理を実行することができる。
【０２１８】
図８Ａ〜８Ｆ、９Ａ〜９Ｈ、１０Ａ〜１０Ｂ、１１Ａ〜１１Ｄ、１２Ａ〜１２Ｄ、及び１３Ａ〜１３Ｃを参照して、発話入力を受信したことに応じて、デジタルアシスタントは、発話入力に基づいてユーザ意図を判定する。上記説明されたように、いくつかの実施例では、デジタルアシスタントは、Ｉ／Ｏ処理モジュール（例えば、図７Ｂに示されるＩ／Ｏ処理モジュール７２８）、ＳＴＴ処理モジュール（例えば、図７Ｂに示されるＳＴＴ処理モジュール７３０）、及び自然言語処理モジュール（例えば、図７Ｂに示される自然言語処理モジュール７３２）を介して発話入力を処理する。Ｉ／Ｏ処理モジュールは、発話入力を発話−テキスト変換のためのＳＴＴ処理モジュール（又は、発話認識器）に転送する。発話−テキスト変換は、発話入力に基づいてテキストを生成する。上記説明されたように、ＳＴＴ処理モジュールは、単語又トークンの列（「トークン列」）を生成し、トークン列を自然言語処理モジュールに提供する。自然言語処理モジュールは、テキストの自然言語処理を実行し、自然言語処理の結果に基づいてユーザ意図を判定する。例えば、自然言語処理モジュールは、トークン列をデジタルアシスタントによって認識された１つ以上の実施可能な意図と関連付けることを試みてもよい。説明されるように、自然言語処理モジュールがユーザ入力に基づいて実施可能な意図を特定すると、それは、特定された実施可能な意図を表すために構造化されたクエリを生成する。構造化されたクエリは、実施可能な意図と関連付けられた１つ以上のパラメータを含む。１つ以上のパラメータは、実施可能な意図に基づくタスクの実行を促進するために使用される。
【０２１９】
いくつかの実施形態では、デジタルアシスタントは更に、ユーザ意図が、検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定する。検索処理は、ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成されている。オブジェクト管理処理は、ユーザデバイスと関連付けられたオブジェクトを管理するように構成されている。ユーザ意図の判定の様々な実施例は、図８Ａ〜８Ｆ、９Ａ〜９Ｈ、１０Ａ〜１０Ｂ、１１Ａ〜１１Ｄ、１２Ａ〜１２Ｄ、及び１３Ａ〜１３Ｃを参照して以下で更に詳細に提供される。
【０２２０】
図８Ａを参照して、いくつかの実施例では、ユーザデバイスは、デジタルアシスタントをインスタンス化するために発話入力８５２をユーザから受信する。発話入力８５２は、例えば、「はい、アシスタント。」を含む。発話入力に応じて、ユーザデバイスは、デジタルアシスタントが後続の発話入力をアクティブに監視しているように、アフォーダンス８４０又は８４１によって表されるデジタルアシスタントをインスタンス化する。いくつかの実施例では、デジタルアシスタントは、それがインスタンス化されることを示す発話出力８７２を提供する。例えば、発話出力８７２は、「さあ、聞いていますよ。（Go ahead, I am listening.）」を含む。いくつかの実施例では、ユーザデバイスは、デジタルアシスタントをインスタンス化するためにアフォーダンス８４０又はアフォーダンス８４１の選択をユーザから受信する。アフォーダンスの選択は、マウス、スタイラス、又は指等の入力デバイスを使用することによって実行される。
【０２２１】
図８Ｂを参照して、いくつかの実施例では、デジタルアシスタントは、発話入力８５４を受信する。発話入力８５４は、例えば、「検索処理を始めて、ＡＡＰＬの今日の株価を探してください。（Open the searching process and find the AAPL stock price today.）」、又は単純に「ＡＡＰＬの今日の株価を見せてください。（show me the AAPL stock price today.）」を含む。発話入力８５４に基づいて、デジタルアシスタントはユーザ意図を判定する。例えば、ユーザ意図を判定するために、デジタルアシスタントは、実施可能な意図がオンライン情報を取得しており、この実施可能な意図と関連付けられた１つ以上のパラメータが「ＡＡＰＬの今日の株価」及び「今日」を含むと判定する。
【０２２２】
説明されるように、いくつかの実施例では、デジタルアシスタントは更に、ユーザ意図が、検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定する。いくつかの実施形態では、判定を行うために、デジタルアシスタントは、発話入力が検索処理又はオブジェクト管理処理を表す１つ以上のキーワードを含むかを判定する。例えば、デジタルアシスタントは、ユーザ意図がタスクを実行するために検索処理を使用することであることを示す、キーワード又は「検索処理を始めてください。（open the searching process.）」等のフレーズを発話入力８５４が含むと判定する。結果として、デジタルアシスタントは、ユーザ意図が検索処理を使用してタスクを実行することであると判定する。
【０２２３】
図８Ｂに示されるように、ユーザ意図が検索処理を使用してタスクを実行することであるとの判定に従って、デジタルアシスタントは、検索処理を使用してタスクを実行する。説明されるように、デジタルアシスタントの自然言語処理モジュールは、ユーザ意図に基づいて構造化されたクエリを生成し、生成された構造化されたクエリをタスクフロー処理モジュール（例えば、タスクフロー処理モジュール７３６）に渡す。タスクフロー処理モジュールは、構造化されたクエリを自然言語処理モジュールから受信し、必要な場合に構造化されたクエリを完了し、ユーザの最終的な要求を「完了する」ために必要なアクションを実行する。検索処理を使用してタスクを実行することは、例えば、少なくとも１つのオブジェクトを検索することを含む。いくつかの実施形態では、少なくとも１つのオブジェクトは、フォルダ、ファイル（例えば、写真、音声、ビデオ）、通信（例えば、電子メール、メッセージ、通知、ボイスメール）、連絡先、カレンダ、アプリケーション（例えば、Ｋｅｙｎｏｔｅ、Ｎｕｍｂｅｒ、ｉＴｕｎｅｓ、Ｓａｆａｒｉ）、オンライン情報のソース（例えば、Ｇｏｏｇｌｅ、Ｙａｈｏｏ、Ｂｌｏｏｍｂｅｒｇ）、又はそれらの組み合わせを含む。いくつかの実施例では、オブジェクトを検索することは、オブジェクトと関連付けられたメタデータに基づいている。例えば、ファイル又はフォルダを検索することは、タグ、日付、時間、著者、タイトル、ファイルのタイプ、サイズ、ページ数、及び／又はフォルダ若しくはファイルと関連付けられたファイル位置等のメタデータを使用することができる。いくつかの実施例では、ファイル又はフォルダは、ユーザデバイスの内部又は外部に記憶されている。例えば、ファイル又はフォルダは、ユーザデバイスのハードディスクに記憶されていてもよく、又はクラウドサーバに記憶されていてもよい。いくつかの実施例では、通信を検索することは、通信と関連付けられたメタデータに基づいている。例えば、電子メールを検索することは、電子メールの送信者、電子メールの受信者、又は電子メール送信／受信日等のメタデータを使用する。
【０２２４】
図８Ｂに示されるように、ユーザ意図が検索処理を使用してＡＡＰＬの株価を取得することであるとの判定に従って、デジタルアシスタントは、検索を実行する。例えば、デジタルアシスタントは、アフォーダンス８２０によって表される検索処理をインスタンス化し、検索処理に今日のＡＡＰＬの株価を検索させる。いくつかの実施例では、デジタルアシスタントは更に、検索処理に、発話入力８５４（例えば、「検索処理を始めて、ＡＡＰＬの今日の株価を探してください。（Open the searching process and find the AAPL stock price today.）」）に対応するテキストを提供するユーザインタフェース８２２（例えば、スニペット又はウィンドウ）を表示させる。
【０２２５】
図８Ｃを参照して、いくつかの実施形態では、デジタルアシスタントは、検索処理を使用してタスクを実行した結果に基づいて応答を提供する。図８Ｃに示されるようにＡＡＰＬの株価を検索した結果として、デジタルアシスタントは、検索処理を使用してタスクを実行した結果を提供するユーザインタフェース８２４（例えば、スニペット又はウィンドウ）を表示する。いくつかの実施形態では、ユーザインタフェース８２４は、別々のユーザインタフェースとしてユーザインタフェース８２２内に位置する。いくつかの実施形態では、ユーザインタフェース８２４及び８２２は、単一のユーザインタフェースとして共に統合される。ユーザインタフェース８２４上で、ＡＡＰＬの株価の検索結果が表示される。いくつかの実施形態では、ユーザインタフェース８２４は更に、アフォーダンス８３１及び８３３を提供する。アフォーダンス８３１によって、ユーザインタフェース８２４を閉じることが可能になる。例えば、デジタルアシスタントがアフォーダンス８３１のユーザの選択を受信する場合、ユーザインタフェース８２４は、ユーザデバイスのディスプレイから見えなくなり、又は閉じられる。アフォーダンス８３３によって、ユーザインタフェース８２４上で表示された検索結果を移動又は共有することが可能になる。例えば、デジタルアシスタントがアフォーダンス８３３のユーザの選択を受信する場合、それは、ユーザインタフェース８２４（又は、その検索結果）移動し、又は通知アプリケーションと共有する処理（例えば、オブジェクト管理処理）をインスタンス化する。図８Ｃに示されるように、デジタルアシスタントは、ＡＡＰＬの株価の検索結果を提供するために、通知アプリケーションと関連付けられたユーザインタフェース８２６を表示する。いくつかの実施形態では、ユーザインタフェース８２６は、アフォーダンス８２７を表示する。アフォーダンス８２７によって、ユーザがユーザインタフェース８２６内でコンテンツ全体（例えば、複数の通知）を参照することができるように、ユーザインタフェース８２６内でのスクロールすることが可能になり、並びに／又はアフォーダンス８２７は、その全体の長さ及び／若しくは幅に対してドキュメントのその相対的な位置を示す。いくつかの実施形態では、ユーザインタフェース８２６は、デジタルアシスタントによって記憶された結果並びに／又はダイアログ履歴（例えば、現在及び／若しくは過去の検索処理から取得された検索結果）を表示する。更に、いくつかの実施例では、タスクを実行した結果は、時間と共に動的に更新される。例えば、ＡＡＰＬの株価は、時間と共に動的に更新されてもよく、ユーザインタフェース８２６上で表示されてもよい。
【０２２６】
いくつかの実施形態では、デジタルアシスタントはまた、検索結果に対応する発話出力を提供する。例えば、デジタルアシスタント（例えば、アフォーダンス８４０によって表される）は、「今日のＡＡＰＬの価格は＄１００．００です。（Today's AAPL price is $100.00.）」を含む発話出力８７４を提供する。いくつかの実施例では、ユーザインタフェース８２２は、発話出力８７４に対応するテキストを含む。
【０２２７】
図８Ｄを参照して、いくつかの実施例では、デジタルアシスタントは、後続の発話入力に応じて、ユーザインタフェース８２４上で表示された検索結果を移動又は共有する処理（例えば、オブジェクト管理処理）をインスタンス化する。例えば、デジタルアシスタントは、「ＡＡＰＬの株価を私のメモに複製してください。（Copy the AAPL stock price to my notes.）」等の発話入力８５５を受信する。これに応じて、デジタルアシスタントは、検索結果（例えば、ＡＡＰＬの株価）をユーザのメモに移動又は複製する処理をインスタンス化する。図８Ｄに示されるように、いくつかの実施例では、デジタルアシスタントは更に、ユーザのメモに複製又は移動された検索結果を提供するユーザインタフェース８２５を表示する。いくつかの実施例では、デジタルアシスタントは更に、「ＯＫ、ＡＡＰＬの株価があなたのメモに複製されます。（OK, the AAPL stock price is copied to your notes.）」等の発話出力８７５を提供する。いくつかの実施例では、ユーザインタフェース８２２は、発話出力８７５に対応するテキストを含む。
【０２２８】
図８Ｅを参照して、いくつかの実施例では、デジタルアシスタントは、ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであると判定し、オブジェクト管理処理を使用してタスクを実行する。例えば、デジタルアシスタントは、「オブジェクト管理処理を始めて、コロラド旅行からの全ての写真を見せてください。（Open the object managing process and show me all the photos from my Colorado trip.）」、又は単純に「コロラド旅行からの全ての写真を見せてください。（Show me all the photos from my Colorado trip.）」等の発話入力８５６を受信する。発話入力８５６及びコンテクスト情報に基づいて、デジタルアシスタントは、ユーザ意図を判定する。例えば、デジタルアシスタントは、実施可能な意図が写真を表示することであると判定し、「全て」、及び「コロラド旅行」等の１つ以上のパラメータを判定する。デジタルアシスタントは更に、コンテクスト情報を使用して、どの写真がユーザのコロラド旅行に対応するかを判定する。説明されるように、コンテクスト情報は、ユーザ特有データ、１つ以上のオブジェクトのメタデータ、センサデータ、及び／又はデバイス構成データを含む。実施例として、１つ以上のファイル（例えば、ユーザインタフェース８３２に表示されたファイル１、ファイル２、及びファイル３）と関連付けられメタデータは、ファイル名が単語「コロラド」又はコロラドの都市名（例えば、「デンバー」）を含むことを示す。メタデータはまた、フォルダ名が単語「コロラド」又はコロラドの都市名（例えば、「デンバー」）を含むことを示す。別の実施例としてセンサデータ（例えば、ＧＰＳデータ）は、ユーザが或る期間の間にコロラド内で旅行をしていたことを示す。結果として、ユーザが特定の期間の間に撮っていたいずれかの写真は、ユーザのコロラド旅行の間に撮られた写真である。また、写真それ自体は、それが撮られた位置と写真とを関連付ける位置情報が付加された（geotagged）メタデータを含んでもよい。コンテクスト情報に基づいて、デジタルアシスタントは、ユーザ意図が、例えば、フォルダ名「コロラド旅行」を有するフォルダに記憶された写真を表示し、又はユーザがコロラド内で旅行していた期間の間に撮られた写真を表示することであると判定する。
【０２２９】
説明されるように、いくつかの実施例では、デジタルアシスタントは、ユーザ意図が、検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定する。そのような判定を行うために、デジタルアシスタントは、発話入力が検索処理又はオブジェクト管理処理を表す１つ以上のキーワードを含むか否かを判定する。例えば、デジタルアシスタントは、発話入力８５６が、ユーザ意図がタスクを実行するためにオブジェクト管理処理を使用することであることを示す、キーワード又は「オブジェクト管理処理を始めてください。（open the object managing process.）」等のフレーズを含むと判定する。
【０２３０】
ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであると判定したことに従って、デジタルアシスタントは、オブジェクト管理処理を使用してタスクを実行する。例えば、デジタルアシスタントは、オブジェクト管理処理を使用して少なくとも１つのオブジェクトを検索する。いくつかの実施例では、少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む。ファイルは、写真、音声（例えば、歌）、又はビデオ（例えば、動画）のうちの少なくとも１つを含むことができる。いくつかの実施例では、ファイル又はフォルダを検索することは、フォルダ又はファイルと関連付けられたメタデータに基づいている。例えば、ファイル又はフォルダを検索することは、タグ、日付、時間、著者、タイトル、ファイルのタイプ、サイズ、ページ数、及び／又はフォルダ若しくはファイルと関連付けられたファイル位置等のメタデータを使用する。いくつかの実施例では、ファイル又はフォルダは、ユーザデバイスの内部又は外部に記憶されていてもよい。例えば、ファイル又はフォルダは、ユーザデバイスのハードディスクに記憶されていてもよく、又はクラウドサーバに記憶されていてもよい。
【０２３１】
図８Ｅに示されるように、ユーザ意図が、例えば、フォルダ名「コロラド旅行」を有するフォルダに記憶された写真を表示し、又はユーザがコロラド内で旅行していた期間の間に撮られた写真を表示することであるとの判定に従って、デジタルアシスタントは、オブジェクト管理処理を使用してタスクを実行する。例えば、デジタルアシスタントは、アフォーダンス８３０によって表されるオブジェクト管理処理をインスタンス化し、オブジェクト管理処理にユーザのコロラド旅行からの写真を検索させる。いくつかの実施例では、デジタルアシスタントはまた、オブジェクト管理処理に、ユーザの発話入力８５６のテキストを提供するスニペット又はウィンドウ（図示しない）を表示させる。
【０２３２】
図８Ｆを参照して、いくつかの実施形態では、デジタルアシスタントは更に、オブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供する。図８Ｆに示されるように、ユーザのコロラド旅行の写真を検索した結果として、デジタルアシスタントは、オブジェクト管理処理を使用して、タスクを実行した結果を提供するユーザインタフェース８３４（例えば、スニペット又はウィンドウ）を表示する。例えば、ユーザインタフェース８３４上で、写真のプレビューが表示される。いくつかの実施例では、デジタルアシスタントは、写真をドキュメントに挿入すること、又は写真を電子メールに添付すること等、写真に関する追加のタスクを実行する処理（例えば、オブジェクト管理処理）をインスタンス化する。以下で更に詳細に説明されるように、デジタルアシスタントは、ユーザの追加の発話入力に応じて、追加のタスクを実行する処理をインスタンス化することができる。また、デジタルアシスタントは、「コロラド旅行からの写真を電子メールで母に送信してください。（send the photos from my Colorado trip to my Mom by email.）」等の単一の発話入力に応じて、複数のタスクを実行することができる。デジタルアシスタントはまた、入力デバイス（例えば、１つ以上のアフォーダンスを選択し、又はドラッグ及びドロップ操作を実行するマウス入力）を使用して、ユーザの入力に応じてそのような追加のタスクを実行する処理をインスタンス化することができる。いくつかの実施形態では、デジタルアシスタントは更に、結果に対応する発話出力を提供する。例えば、デジタルアシスタントは、「あなたのコロラド旅行からの写真がここにあります。（Here are the photos from your Colorado trip.）」を含む発話出力８７６を提供する。
【０２３３】
図９Ａを参照して、いくつかの実施例では、ユーザの発話入力は、ユーザ意図が検索処理又はオブジェクト管理処理を使用することであるかを示す１つ以上のキーワードを含まなくてもよい。例えば、ユーザは、「今日のウォリアーズの試合のスコアは何ですか？（What is the score of today's Warriors game?）」等の発話入力９５２を提供する。発話入力９５２は、「検索処理」又は「オブジェクト管理処理」を示すキーワードを含まない。結果として、キーワードは、ユーザ意図が、検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定するために、デジタルアシスタントに利用可能でないことがある。
【０２３４】
いくつかの実施形態では、ユーザ意図が、検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定するために、デジタルアシスタントは、タスクが発話入力に基づいて検索することと関連付けられるか否かを判定する。いくつかの実施例では、検索することと関連付けられたタスクは、検索処理又はオブジェクト管理処理のいずれかによって実行されてもよい。例えば、検索処理及びオブジェクト管理処理の両方は、フォルダ及びファイルを検索することができる。いくつかの実施例では、検索処理は更に、オンライン情報ソース（例えば、ウェブサイト）、通信（例えば、電子メール）、連絡先、又はカレンダ等を含む様々なオブジェクトを検索することができる。いくつかの実施例では、オブジェクト管理処理は、オンライン情報ソース等の或るオブジェクトを検索するように構成されなくてもよい。
【０２３５】
タスクが検索することと関連付けられるとの判定に従って、デジタルアシスタントは更に、タスクを実行することが検索処理を必要とするか否かを判定する。説明されるように、タスクが検索することと関連付けられる場合、検索処理又はオブジェクト管理処理のいずれかは、タスクを実行するために使用されてもよい。しかしながら、オブジェクト管理処理は、或るオブジェクトを検索するように構成されなくてもよい。結果として、ユーザ意図が検索処理又はオブジェクト管理処理を使用することであるか否かを判定するために、デジタルアシスタントは更に、タスクが検索処理を必要とするか否かを判定する。例えば、図９Ａに示されるように、発話入力９５２に基づいて、デジタルアシスタントは、ユーザ意図が、例えば、今日のウォリアーズの試合のスコアを取得することであると判定する。ユーザ意図に従って、デジタルアシスタントは更に、タスクを実行することがオンライン情報ソースを検索することを必要とし、従って、検索することと関連付けられると判定する。デジタルアシスタントは更に、タスクを実行することが検索処理を必要とするか否かを判定する。説明されるように、いくつかの実施例では、検索処理は、ウェブサイト等のオンライン情報ソースを検索するように構成されているが、オブジェクト管理処理は、そのようなオンライン情報ソースを検索するように構成されなくてもよい。結果として、デジタルアシスタントは、オンライン情報ソースを検索することが（例えば、スコアを取得するためにウォリアーズのウェブサイトを検索する）検索処理を必要とすると判定する。
【０２３６】
図９Ｂを参照して、いくつかの実施形態では、タスクを実行することが検索処理を必要とするとの判定に従って、デジタルアシスタントは、検索処理を使用してタスクを実行する。例えば、今日のウォリアーズの試合のスコアを検索することが検索処理を必要とするとの判定に従って、デジタルアシスタントは、アフォーダンス９２０によって表される検索処理をインスタンス化し、検索処理に今日のウォリアーズの試合のスコアを検索させる。いくつかの実施例では、デジタルアシスタントは更に、検索処理にユーザの発話入力９５２（例えば、「今日のウォリアーズの試合のスコアは何ですか？」のテキストを提供するユーザインタフェース９２２（例えば、スニペット又はウィンドウ）を表示させる。ユーザインタフェース９２２は、１つ以上のアフォーダンス９２１及び９２７を含む。上記説明されたのと同様に、アフォーダンス９２１（例えば、閉ボタン）によって、ユーザインタフェース９２２を閉じることが可能になり、アフォーダンス９２７（例えば、スクロールバー）によって、ユーザがユーザインタフェース９２２内でコンテンツを参照することができるようにユーザインタフェース９２２内でスクロールすることが可能になる。
【０２３７】
図９Ｂを参照して、いくつかの実施例では、検索結果に基づいて、デジタルアシスタントは更に、１つ以上の応答を提供する。図９Ｂに示されるように、今日のウォリアーズの試合のスコアを検索した結果として、デジタルアシスタントは、検索処理を使用してタスクを実行した結果を提供するユーザインタフェース９２４（例えば、スニペット又はウィンドウ）を表示する。いくつかの実施形態では、ユーザインタフェース９２４は、別々のユーザインタフェースとしてユーザインタフェース９２２内に位置する。いくつかの実施形態では、ユーザインタフェース９２４及び９２２は、単一のユーザインタフェースとして共に統合される。いくつかの実施例では、デジタルアシスタントは、現在の検索結果（例えば、ウォリアーズの試合のスコア）を提供するユーザインタフェース９２４を、前の検索結果（例えば、ＡＡＰＬの株価）を提供する別のユーザインタフェース（例えば、図８Ｃに示されるユーザインタフェース８２４）と共に表示する。いくつかの実施形態では、デジタルアシスタントは、現在の検索結果を提供するユーザインタフェース９２４のみを表示し、前の検索結果を提供する別のユーザインタフェースを表示しない。図９Ｂに示されるように、デジタルアシスタントは、現在の検索結果（例えば、ウォリアーズの試合のスコア）を提供するためのユーザインタフェース９２４のみを表示する。いくつかの実施例では、アフォーダンス９２７（例えば、スクロールバー）によって、ユーザが前の検索結果を参照することができるように、ユーザインタフェース９２２内でスクロールすることが可能になる。更に、いくつかの実施例では、前の検索結果は、例えば、株価、スポーツのスコア、天気予報等が時間と共に更新されるように、動的に更新又はリフレッシュ。
【０２３８】
図９Ｂに示されるように、ユーザインタフェース９２４上で、今日のウォリアーズの試合のスコアの検索結果が表示される（例えば、ウォリアーズ１０４−８９キャバリアーズ）。いくつかの実施形態では、ユーザインタフェース９２４は更に、アフォーダンス９２３及び９２５を提供する。アフォーダンス９２３によって、ユーザインタフェース９２４を閉じることが可能になる。例えば、デジタルアシスタントがアフォーダンス９２３のユーザの選択を受信する場合、ユーザインタフェース９２４は、ユーザデバイスのディスプレイから見えなくなり、又は閉じられる。アフォーダンス９２５によって、ユーザインタフェース９２４上で表示された検索結果を移動又は共有することが可能になる。例えば、デジタルアシスタントがアフォーダンス９２５のユーザの選択を受信する場合、それは、ユーザインタフェース９２４（又は、その検索結果）を移動し、又は通知アプリケーションと共有する。図９Ｂに示されるように、デジタルアシスタントは、ウォリアーズの試合のスコアの検索結果を提供するための、通知アプリケーションと関連付けられたユーザインタフェース９２６を表示する。説明されるように、タスクを実行した結果は、時間と共に動的に更新される。例えば、ウォリアーズの試合のスコアは、ゲームが進行中の間に時間と共に動的に更新されてもよく、ユーザインタフェース９２４（例えば、スニペット若しくはウィンドウ）及び／又はユーザインタフェース９２６（例えば、通知アプリケーションユーザインタフェース）上で表示されてもよい。いくつかの実施形態では、デジタルアシスタントは更に、検索結果に対応する発話出力を提供する。例えば、アフォーダンス９４０又は９４１によって表されるデジタルアシスタントは、「ウォリアーズがキャバリアーズを１０４−８９で破りました。（Warriors beats Cavaliers, 104-89.）」等の発話出力９７２を提供する。いくつかの実施例では、ユーザインタフェース９２２（例えば、スニペット又はウィンドウ）は、発話出力９７２に対応するテキストを提供する。
【０２３９】
上記説明されたように、いくつかの実施形態では、デジタルアシスタントは、タスクが検索することと関連付けられるか否かを判定し、そのような判定に従って、デジタルアシスタントは、タスクが検索処理を必要とするか否かを判定する。図９Ｃを参照して、いくつかの実施形態では、デジタルアシスタントは、タスクを実行することが検索処理を必要としないと判定する。例えば、図９Ｃに示されるように、デジタルアシスタントは、「支出と呼ばれる全てのファイルを見せてください。（Show me all the files called Expenses.）」等の発話入力９５４を受信する。発話入力９５４及びコンテクスト情報に基づいて、デジタルアシスタントは、ユーザ意図がそれらのファイル名、メタデータ、又はファイルの中身等に含まれる単語「支出」（又は、それの一部、変形、言い換え）を有する全てのファイルを表示することであると判定する。ユーザ意図に従って、デジタルアシスタントは、実行されるタスクが単語「支出」と関連付けられた全てのファイルを検索することを含むと判定する。結果として、デジタルアシスタントは、タスクを実行することが検索することと関連付けられていると判定する。上記説明されたように、いくつかの実施例では、検索処理及びオブジェクト管理処理は両方、ファイルの検索を実行することができる。結果として、デジタルアシスタントは、単語「支出」と関連付けられた全てのファイルを検索するタスクを実行することが検索処理を必要としないと判定する。
【０２４０】
図９Ｄを参照して、いくつかの実施例では、タスクを実行することが検索処理を必要としないとの判定に従って、デジタルアシスタントは、所定の構成に基づいて、タスクが検索処理又はオブジェクト管理処理を使用して実行されるか否かを判定する。例えば、検索処理及びオブジェクト管理処理の両方がタスクを実行することができる場合、所定の構成は、タスクが検索処理を使用して実行されることを示すことができる。所定の構成は、ユーザ優先度又はユーザ特有データ等のコンテクスト情報を使用して生成及び更新されてもよい。例えば、デジタルアシスタントは、特定のユーザについて、履歴的に、検索処理がファイル検索のためにオブジェクト管理処理よりも多くの頻度で選択されたと判定する。結果として、デジタルアシスタントは、検索処理がファイルを検索するためのデフォルトの処理であることを示すために所定の構成を生成又は更新する。いくつかの実施例では、デジタルアシスタントは、オブジェクト管理処理がデフォルトの処理であることを示すために所定の構成を生成又は更新する。
【０２４１】
図９Ｄに示されるように、所定の構成に基づいて、デジタルアシスタントは、単語「支出」と関連付けられた全てのファイルを検索するタスクが検索処理を使用して実行されることであると判定する。結果として、デジタルアシスタントは、検索処理を使用して単語「支出」と関連付けられた全てのファイルの検索を実行する。例えば、デジタルアシスタントは、ユーザインタフェース９１０上で表示されたアフォーダンス９２０によって表される検索処理をインスタンス化し、検索処理に、単語「支出」と関連付けられた全てのファイルを検索させる。いくつかの実施例では、デジタルアシスタントは更に、ユーザにタスクが実行されていることを通知する発話出力９７４を提供する。発話出力９７４は、例えば、「ＯＫ、『支出』と呼ばれる全てのファイルを検索します。（OK, searching all files called 'Expenses'.）」を含む。いくつかの実施例では、デジタルアシスタントは更に、検索処理に、発話入力９５４及び発話出力９７４に対応するテキストを提供するユーザインタフェース９２８（例えば、スニペット又はウィンドウ）を表示させる。
【０２４２】
図９Ｅを参照して、いくつかの実施形態では、デジタルアシスタントは更に、検索処理を使用して、タスクを実行した結果に基づいて１つ以上の応答を提供する。図９Ｅに示されるように、単語「支出」と関連付けられた全てのファイルを検索した結果として、デジタルアシスタントは、検索結果を提供するユーザインタフェース９４７（例えば、スニペット又はウィンドウ）を表示する。いくつかの実施形態では、ユーザインタフェース９４７は、別々のユーザインタフェースとしてユーザインタフェース９２８内に位置する。いくつかの実施形態では、ユーザインタフェース９４７及び９２８は、単一のユーザインタフェースとして共に統合される。ユーザインタフェース９４７上で、単語「支出」と関連付けられたファイルのリストが表示される。いくつかの実施形態では、デジタルアシスタントは更に、検索結果に対応する発話出力を提供する。例えば、アフォーダンス９４０又は９４１によって表されるデジタルアシスタントは、「支出と呼ばれる全てのファイルがここにあります。（Here are all the files called Expenses.）」等の発話出力９７６を提供する。いくつかの実施例では、デジタルアシスタントは更に、ユーザインタフェース９２８上で、発話出力９７６に対応するテキストを提供する。
【０２４３】
いくつかの実施形態では、デジタルアシスタントは、検索処理を使用してタスクを実行した結果と関連付けられた１つ以上のリンクを提供する。リンクによって、検索結果を使用して処理をインスタンス化する（例えば、ファイルを開く、オブジェクト管理処理を呼び出す）ことが可能になる。図９Ｅに示されるように、ユーザインタフェース９４７上で、ファイルのそれらのファイル名によって表されるリスト（例えば、支出ファイル１、支出ファイル２、支出ファイル３）は、リンクと関連付けられてもよい。実施例として、リンクは、各々のファイル名の側面上で表示される。別の実施例として、ファイル名は、ファイル名がリンクと関連付けられることを示す特定の色（例えば、青）で表示される。いくつかの実施例では、リンクと関連付けられたファイル名は、ユーザインタフェース９４７上で表示された他の項目と同一の色で表示される。
【０２４４】
説明されるように、リンクによって、検索結果を使用して処理をインスタンス化することが可能になる。処理をインスタンス化することは、処理がまだ実行中でない場合に処理を呼び出すことを含む。処理の少なくとも１つのインスタンスが実行中である場合、処理をインスタンス化することは、処理の既存のインスタンスを実行すること、又は処理の新たなインスタンスを生成することを含む。例えば、オブジェクト管理処理をインスタンス化することは、オブジェクト管理処理を呼び出すこと、既存のオブジェクト管理処理を使用すること、又はオブジェクト管理処理の新たなインスタンスを生成することを含む。図９Ｅ及び９Ｆに示されるように、ユーザインタフェース９４７上で表示されたリンクによって、リンクと関連付けられたオブジェクト（例えば、ファイル）を管理することが可能になる。例えば、ユーザインタフェース９４７は、ファイル（例えば、「支出ファイル３」）と関連付けられたリンクのユーザ選択（例えば、カーソル９３４による選択）を受信する。それに応じて、デジタルアシスタントは、ファイルの管理を可能にする、アフォーダンス９３０によって表されるオブジェクト管理処理をインスタンス化する。図９Ｆに示されるように、デジタルアシスタントは、リンクと関連付けられたファイル（例えば、「支出ファイル３」）を含むフォルダを提供するユーザインタフェース９３６（例えば、スニペット又はウィンドウ）を表示する。ユーザインタフェース９３６を使用して、デジタルアシスタントは、ファイルに関して１つ以上の追加のタスク（例えば、複製すること、編集すること、参照すること、移動すること、又は圧縮すること等）を実行するオブジェクト管理処理をインスタンス化する。
【０２４５】
再度図９Ｅを参照して、いくつかの実施例では、ユーザインタフェース９４７上で表示されたリンクによって、オブジェクトを直接参照及び／又は編集することが可能になる。例えば、デジタルアシスタントは、ユーザインタフェース９４７を介して、ファイル（例えば、「支出ファイル３」）と関連付けられたリンクの選択（例えば、カーソル９３４による選択）を受信する。それに応じて、デジタルアシスタントは、ファイルを参照及び／又は編集する処理（例えば、ドキュメント参照／編集処理）をインスタンス化する。いくつかの実施例では、デジタルアシスタントは、オブジェクト管理処理インスタンス化することなく、ファイルを参照及び／又は編集する処理をインスタンス化する。例えば、デジタルアシスタントは、支出ファイル３を参照及び／又は編集するナンバー（Number）処理又はエクセル（Excel）処理を直接インスタンス化する。
【０２４６】
図９Ｅ及び９Ｇを参照して、いくつかの実施例では、デジタルアシスタントは、検索結果を改善する処理（例えば、検索処理）をインスタンス化する。図９Ｅ及９Ｇに示されるように、ユーザは、ユーザインタフェース９４７上で表示された検索結果を改善することを望むことがある。例えば、ユーザは、検索結果からの１つ以上のファイルを選択することを望むことがある。いくつかの実施例では、デジタルアシスタントは、ユーザから、「ケビンがちょうど私に送信したものは、ドラフトでタグ付けしたものです。（Just the ones Kevin sent me that I tagged with draft.）」等の発話入力９７７を受信する。発話入力９７７及びコンテクスト情報に基づいて、デジタルアシスタントは、ユーザ意図が、ケビンから送信されており、ドラフトタグと関連付けられた支出ファイルのみを表示することであると判定する。ユーザ意図に基づいて、デジタルアシスタントは、検索結果を改善する処理（例えば、検索処理）をインスタンス化する。例えば、図９Ｇに示されるように、検索結果に基づいて、デジタルアシスタントは、支出ファイル１及び支出ファイル２がケビンからユーザに送信されており、タグ付けされたと判定する。結果として、デジタルアシスタントは、それらの２つのファイルをユーザインタフェース９４７上で表示することを続け、支出ファイル３をユーザインタフェース９４７から除去することを続ける。いくつかの実施例では、デジタルアシスタントは、「あなたがドラフトでタグ付けし、ケビンがちょうどあなたに送信したものがここにあります。（Here are just the ones Kevin sent you that you tagged with draft.）」等の発話出力９７８を提供する。デジタルアシスタントは更に、ユーザインタフェース９２８上で発話出力９７８に対応するテキストを提供する。
【０２４７】
図９Ｈを参照して、いくつかの実施例では、デジタルアシスタントは、オブジェクト管理タスク（例えば、複製すること、移動すること、共有すること等）を実行する処理（例えば、オブジェクト管理処理）をインスタンス化する。例えば、図９Ｈに示されるように、デジタルアシスタントは、ユーザから、「支出ファイル１をドキュメントフォルダに移動してください。（Move the Expenses file １ to Documents folder.）」等の発話入力９８４を受信する。発話入力９８４及びコンテクスト情報に基づいて、デジタルアシスタントは、ユーザ意図、が支出ファイル１をその現在のフォルダからドキュメントフォルダに複製又は移動することであると判定する。ユーザ意図に従って、デジタルアシスタントは、支出ファイル１をその現在のフォルダからドキュメントフォルダに複製又は移動する処理（例えば、オブジェクト管理処理）をインスタンス化する。いくつかの実施例では、デジタルアシスタントは、「ＯＫ、支出ファイル１をあなたのドキュメントフォルダに移動します。（Ok, moving Expenses File 1 to your Documents folder.）」等の発話出力９８２を提供する。いくつかの実施例では、デジタルアシスタントは更に、ユーザインタフェース９２８上で発話出力９８２に対応するテキストを提供する。
【０２４８】
説明されるように、いくつかの実施例では、ユーザの発話入力は、ユーザ意図が検索処理又はオブジェクト管理処理を使用してタスクを実行することであるかを示すキーワードを含まなくてもよい。図１０Ａ〜１０Ｂを参照して、いくつかの実施形態では、デジタルアシスタントは、タスクを実行することが検索処理を必要としないと判定する。その判定に従って、デジタルアシスタントは、ユーザが検索処理又はオブジェクト管理処理を選択することを要求する発話出力を提供する。例えば、図１０Ａに示されるように、デジタルアシスタントは、ユーザから、「『支出』と呼ばれる全てのファイルを見せてください。（Show me all the files called 'Expenses'.）」等の発話入力１０５２を受信する。発話入力１０５２及びコンテクスト情報に基づいて、デジタルアシスタントは、ユーザ意図が単語「支出」と関連付けられた全てのファイルを表示することであると判定する。ユーザ意図に従って、デジタルアシスタントは更に、タスクが検索処理又はオブジェクト管理処理のいずれかによって実行されてもよく、従って、検索処理を必要としないと判定する。いくつかの実施例では、デジタルアシスタントは、「検索処理又はオブジェクト管理処理を使用して検索を希望しますか？（Do you want to search using the searching process or the object managing process?）」等の発話出力１０７２を提供する。いくつかの実施例では、デジタルアシスタントは、ユーザから、「オブジェクト管理処理」等の発話入力１０５４を受信する。よって、発話入力１０５４は、ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであることを示す。選択に従って、例えば、デジタルアシスタントは、単語「支出」関連付けられた全てのファイルを検索する、アフォーダンス１０３０によって表されるオブジェクト管理処理をインスタンス化する。図１０Ｂに示されるように、上記説明されたものと同様に、検索の結果として、デジタルアシスタントは、単語「支出」と関連付けられたファイルを含むフォルダを提供するユーザインタフェース１０３２（例えば、スニペット又はウィンドウ）を表示する。上記説明されたものと同様に、ユーザインタフェース１０３２を使用して、デジタルアシスタントは、ファイルに関して追加の１つ以上のタスク（例えば、複製すること、編集すること、参照すること、移動すること、又は圧縮すること等）を実行するオブジェクト管理処理をインスタンス化する。
【０２４９】
図１１Ａ及び１１Ｂを参照して、いくつかの実施形態では、デジタルアシスタントは、コンテクスト情報を特定し、コンテクスト情報及びユーザの発話入力に基づいてユーザ意図を判定する。図１１Ａに示されるように、アフォーダンス１１４０又は１１４１によって表されるデジタルアシスタントは、「昨夜作成したＫｅｙｎｏｔｅプレゼンテーションを開いてください。（Open the Keynote presentation I created last night.）」等の発話入力１１５２を受信する。発話入力１１５２を受信したことに応じて、デジタルアシスタントは、ユーザデバイスとのユーザの対話の履歴、又はユーザが直近で取りかかったファイルと関連付けられたメタデータ等のコンテクスト情報を特定する。例えば、デジタルアシスタントは、日付、時間、及びユーザが昨日の午後６時〜午前２時に取りかかったユーザのファイルのタイプ等のメタデータを特定する。特定されたコンテクスト情報及び発話入力１１５２に基づいて、デジタルアシスタントは、ユーザ意図が、ファイルが昨日のおおよそ午後６時〜午前０時に編集されたことを示すメタデータと関連付けられたＫｅｙｎｏｔｅプレゼンテーションファイルを検索すること、及びプレゼンテーションファイルを開く処理（例えば、Ｋｅｙｎｏｔｅ処理）をインスタンス化することを含むと判定する。
【０２５０】
いくつかの実施例では、コンテクスト情報は、アプリケーション名又は識別子（ＩＤ）を含む。例えば、ユーザの発話入力は、「Ｋｅｙｎｏｔｅプレゼンテーションを開いてください。（Open the Keynote presentation.）」、「マイページのドキュメントを探してください。（find my Pages document.）」、又は「ＨｏｔＮｅｗＡｐｐドキュメントを探してください。（find my HotNewApp documents.）」を提供する。コンテクスト情報は、アプリケーション名（例えば、Ｋｅｙｎｏｔｅ、Ｐａｇｅｓ、ＨｏｔＮｅｗＡｐｐ）又はアプリケーションＩＤを含む。いくつかの実施例では、コンテクスト情報は、動的に更新又は同期される。例えば、コンテクスト情報は、ユーザがＨｏｔＮｅｗＡｐｐと命名される新たなアプリケーションをインストールした後にリアルタイムで更新される。いくつかの実施例では、デジタルアシスタントは、動的に更新されたコンテクスト情報を特定し、ユーザ意図を判定する。例えば、デジタルアシスタントは、アプリケーション名Ｋｅｙｎｏｔｅ、Ｐａｇｅｓ、ＨｏｔＮｅｗＡｐｐ、又はそれらのＩＤを特定し、アプリケーション名／ＩＤ及び発話入力に従ってユーザ意図を判定する。
【０２５１】
ユーザ意図に従って、デジタルアシスタントは更に、ユーザ意図が検索処理又はオブジェクト管理処理を使用してタスクを実行することであるかを判定する。説明されるように、デジタルアシスタントは、発話入力に含まれる１つ以上のキーワードに基づいて、タスクが検索処理を必要とするかに基づいて、所定の構成に基づいて、及び／又はユーザの選択に基づいてそのような判定を行う。図１１Ａに示されるように、発話入力１１５２は、ユーザ意図が検索処理又はオブジェクト管理処理を使用することであるかを示すキーワードを含まない。結果として、デジタルアシスタントは、例えば、所定の構成に基づいて、ユーザ意図がオブジェクト管理処理を使用することであると判定する。その判定に従って、デジタルアシスタントは、ファイルが昨日のおおよそ午後６時〜午前０時に編集されたことを示すメタデータと関連付けられたＫｅｙｎｏｔｅプレゼンテーションファイルを検索するオブジェクト管理処理をインスタンス化する。いくつかの実施形態では、デジタルアシスタントは更に、「ＯＫ、昨夜あなたが作成したＫｅｙｎｏｔｅプレゼンテーションを検索してください。（OK, looking for the Keynote presentation you created last night.）」等の発話出力１１７２を提供する。
【０２５２】
いくつかの実施形態では、コンテクスト情報は、タスクを実行する際に使用される。例えば、アプリケーション名及び／又はＩＤは、アプリケーション名／ＩＤと関連付けられたアプリケーション及び／又はオブジェクト（例えば、ファイル）を検索するためのクエリを形成するために使用されてもよい。いくつかの実施例では、サーバ（例えば、サーバ１０８）は、アプリケーション名（例えば、Ｋｅｙｎｏｔｅ、Ｐａｇｅｓ、ＨｏｔＮｅｗＡｐｐ）及び／又はＩＤを使用してクエリを形成し、クエリをユーザデバイスのデジタルアシスタントに送信する。クエリに基づいて、デジタルアシスタントは、１つ以上のアプリケーション及び／又はオブジェクトを検索する検索処理又はオブジェクト管理処理をインスタンス化する。いくつかの実施例では、デジタルアシスタントは、アプリケーション名／ＩＤに対応するオブジェクト（例えば、ファイル）のみを検索する。例えば、クエリがアプリケーション名「Ｐａｇｅｓ」を含む場合、デジタルアシスタントは、Ｐａｇｅｓファイルのみを検索し、Ｐａｇｅｓアプリケーションによって開くことができる他のファイル（例えば、単語ファイル）を検索しない。いくつかの実施例では、デジタルアシスタントは、クエリにおいてアプリケーション名／ＩＤと関連付けられた全てのオブジェクトを検索する。
【０２５３】
図１１Ｂ及び１１Ｃを参照して、いくつかの実施形態では、デジタルアシスタントは、タスクを実行した結果と関連付けられた信用レベルに従って、１つ以上の応答を提供する。ユーザ意図の判定、ユーザ意図が検索処理若しくはオブジェクト管理処理を使用してタスクを実行することであるかの判定、及び／又はタスクの実行の間、不正確さが存在し、又は起こることがある。いくつかの実施例では、デジタルアシスタントは、発話入力及びコンテクスト情報に基づいてユーザ意図を判定する精度、ユーザ意図が検索処理を使用して若しくはオブジェクト管理処理を使用してタスクを実行することであるかを判定する精度、検索処理若しくはオブジェクト管理処理を使用してタスクを実行する精度、又はそれらの組み合わせを表す信用レベルを判定する。
【０２５４】
図１１Ａに示される上記実施例を続けて、「昨夜作成したＫｅｙｎｏｔｅプレゼンテーションを開いてください。（Open the Keynote presentation I created last night.）」等の発話入力１１５２に基づいて、デジタルアシスタントは、ファイルが昨日のおおよそ午後６時〜午前０時に編集されたことを示すメタデータと関連付けられたＫｅｙｎｏｔｅプレゼンテーションファイルの検索を実行するオブジェクト管理処理をインスタンス化する。検索結果は、検索基準に完全に一致する単一のファイルを含んでもよい。すなわち、単一のファイルは、昨日のおおよそ午後６時〜午前０時に編集されたプレゼンテーションファイルである。従って、デジタルアシスタントは、検索の精度が高いと判定し、よって、信用レベルが高いと判定する。別の実施例として、検索結果は、検索基準に部分的に一致する複数のファイルを含んでもよい。例えば、昨日のおおよそ午後６時〜午前０時に編集されたプレゼンテーションファイルであるファイルがなく、又は複数のファイルは、昨日のおおよそ午後６時〜午前０時に編集されたプレゼンテーションファイルである。従って、デジタルアシスタントは、検索の精度が中間又は低いと判定し、よって、信用レベルが中間又は低いと判定する。
【０２５５】
図１１Ｂ及び１１Ｃに示されるように、デジタルアシスタントは、信用レベルの判定に従って応答を提供する。いくつかの実施例では、デジタルアシスタントは、信用レベルが閾値信用レベル以上であるか否かを判定する。信用レベルが閾値信用レベル以上であるとの判定に従って、デジタルアシスタントは、第１の応答を提供する。信用レベルが閾値信用レベル未満であるとの判定に従って、デジタルアシスタントは、第２の応答を提供する。いくつかの実施例では、第２の応答は第１の応答とは異なる。図１１Ｂに示されるように、信用レベルが閾値信用レベル以上であるとデジタルアシスタントが判定する場合、デジタルアシスタントは、ファイルを参照及び編集することを可能にする処理（例えば、ユーザインタフェース１１４２によって表されるＫｅｙｎｏｔｅ処理）をインスタンス化する。いくつかの実施例では、デジタルアシスタントは、「昨夜あなたが作成したプレゼンテーションがここにあります。（Here is the presentation you created last night.）」等の発話出力を提供し、ユーザインタフェース１１４３において発話出力のテキストを表示する。図１１Ｃに示されるように、信用レベルが閾値信用レベル未満であるとデジタルアシスタントが判定する場合、デジタルアシスタントは、候補ファイルのリストを提供するユーザインタフェース１１２２（例えば、スニペット又はウィンドウ）を表示する。候補ファイルの各々は、検索基準を部分的に満たすことができる。いくつかの実施形態では、信用レベルは、ユーザ優先度又は履歴的精度レーティング等に基づいて、予め定められてもよく、及び／又は動的に更新されてもよい。いくつかの実施例では、デジタルアシスタントは更に、「昨夜作成した全てのプレゼンテーションがここにあります。」等の発話出力１１７４を提供し、ユーザインタフェース１１２２上で発話出力１１７４に対応するテキストを表示する。
【０２５６】
図１１Ｄを参照して、いくつかの実施形態では、デジタルアシスタントは、追加のタスクを実行する処理（例えば、Ｋｅｙｎｏｔｅプレゼンテーション処理）をインスタンス化する。上記実施例を続けると、図１１Ｂ及び１１Ｄに示されるように、ユーザは、フルスクリーンモードでプレゼンテーションファイルを表示することを望むことがある。デジタルアシスタントは、ユーザから、「それをフルスクリーンにしてください。（Make it full screen.）」等の発話入力１１５４を受信する。発話入力１１５４及びコンテクスト情報に基づいて、デジタルアシスタントは、ユーザ意図がフルスクリーンモードでプレゼンテーションファイルを表示することであると判定する。ユーザ意図に従って、デジタルアシスタントは、Ｋｅｙｎｏｔｅプレゼンテーション処理にフルスクリーンモードでスライドを表示させる。いくつかの実施例では、デジタルアシスタントは、「ＯＫ、フルスクリーンであなたのプレゼンテーションを表示します。（OK, showing your presentation in full screen.）」等の発話出力１１７６を提供する。
【０２５７】
図１２Ａ〜１２Ｃを参照して、いくつかの実施形態では、デジタルアシスタントは、単一の発話入力又は発言に基づいて、ユーザ意図が複数のタスクを実行することであると判定する。ユーザ意図に従って、デジタルアシスタントは更に、複数のタスクを実行する１つ以上の処理をインスタンス化する。例えば、図１２Ａに示されるように、アフォーダンス１２４０又は１２４１によって表されるデジタルアシスタントは、「コロラド旅行からの全て写真を見せ、私の母に送信してください。（Show me all the photos from my Colorado trip, and send them to my mom.）」等の単一の発話入力１２５２を受信する。発話入力１２５２及びコンテクスト情報に基づいて、デジタルアシスタントは、ユーザ意図が第１のタスク及び第２のタスクを実行することであると判定する。上記説明されたものと同様に、第１のタスクは、フォルダ名「コロラド旅行」を有するフォルダに記憶された写真を表示すること、又はユーザがコロラド内で旅行している期間の間に撮られた写真を表示することである。第２のタスクに関して、コンテクスト情報は、ユーザの連絡先に記憶された特定の電子メールアドレスがユーザの母としてタグ付けされることを示してもよい。従って、第２のタスクは、コロラド旅行と関連付けられた写真を含む電子メールを特定の電子メールアドレスに送信することである。
【０２５８】
いくつかの実施例では、デジタルアシスタントは、各々のタスクに関して、ユーザ意図が、検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定する。実施例として、デジタルアシスタントは、第１のタスクが検索することと関連付けられ、ユーザ意図がオブジェクト管理処理を使用して第１のタスクを実行することであると判定する。図１２Ｂに示されるように、ユーザ意図がオブジェクト管理処理を使用して第１のタスクを実行することであるとの判定に従って、デジタルアシスタントは、ユーザのコロラド旅行と関連付けられた写真を検索するオブジェクト管理処理をインスタンス化する。いくつかの実施例では、デジタルアシスタントは、検索結果（例えば、写真１、２、及び３）を含むフォルダを提供するユーザインタフェース１２３２（例えば、スニペット又はウィンドウ）を表示する。別の実施例として、デジタルアシスタントは、第１のタスクが検索することと関連付けられ、ユーザ意図が検索処理を使用して第１のタスクを実行することであると判定する。図１２Ｃに示されるように、ユーザ意図が検索処理を使用して第１のタスクを実行することであるとの判定に従って、デジタルアシスタントは、ユーザのコロラド旅行と関連付けられた写真を検索する検索処理をインスタンス化する。いくつかの実施例では、デジタルアシスタントは、検索結果（例えば、写真１、２、及び３）と関連付けられた写真及び／又はリンクを提供するユーザインタフェース１２３４（例えば、スニペット又はウィンドウ）を表示する。
【０２５９】
別の実施例として、デジタルアシスタントは、第２のタスク（例えば、コロラド旅行と関連付けられた写真を含む電子メールを特定の電子メールアドレスに送信すること）が検索することと関連付けられておらず、又はオブジェクトを管理することと関連付けられていると判定する。その判定に従って、デジタルアシスタントは、ユーザデバイスに利用可能な処理を使用してタスクを実行することができると判定する。例えば、デジタルアシスタントは、ユーザデバイスにおいて、電子メール処理を使用して第２のタスクを実行することができると判定する。その判定に従って、デジタルアシスタントは、第２のタスクを実行する処理をインスタンス化する。図１２Ｂ及び１２Ｃに示されるように、デジタルアシスタントは、電子メール処理をインスタンス化し、電子メール処理と関連付けられたユーザインタフェース１２４２及び１２４４を表示する。電子メール処理は、ユーザのコロラド旅行と関連付けられた写真を電子メールメッセージに添付する。図１２Ｂ及び１２Ｃに示されるように、いくつかの実施形態では、デジタルアシスタントは更に、「あなたのコロラド旅行からの写真がここにあります。写真をあなたの母に送信する準備ができています。進めていいですか？（Here are the photos from your Colorado trip. I am ready to send the photos to your mom, proceed?）」等の発話出力１２７２及び１２７４を提供する。いくつかの実施例では、デジタルアシスタントは、ユーザインタフェース１２４４上で発話出力１２７４に対応するテキストを表示する。発話出力１２７２及び１２７４に応じて、ユーザは、「ＯＫ」等の発話入力を提供する。発話入力をユーザから受信すると、デジタルアシスタントは、電子メール処理に電子メールメッセージを送出させる。
【０２６０】
例えば、関連する出願、２０１４年５月３０日に出願された「ＭＵＬＴＩ−ＣＯＭＭＡＮＤ  ＳＩＮＧＬＥ  ＵＴＴＥＲＡＮＣＥ  ＩＮＰＵＴ  ＭＥＴＨＯＤ」と題する米国仮特許出願第６２／００５，５５６号及び２０１５年３月８日に出願された「ＭＵＬＴＩ−ＣＯＭＭＡＮＤ  ＳＩＮＧＬＥ  ＵＴＴＥＲＡＮＣＥ  ＩＮＰＵＴ  ＭＥＴＨＯＤ」と題する米国仮特許出願第６２／１２９，８５１号の優先権の利益を主張する、２０１５年５月２８日に出願された「ＭＵＬＴＩ−ＣＯＭＭＡＮＤ  ＳＩＮＧＬＥ  ＵＴＴＥＲＡＮＣＥ  ＩＮＰＵＴ  ＭＥＴＨＯＤ」と題する米国特許出願第１４／７２４，６２３号において、単一の発話入力又は発言内に含まれる複数のコマンドに基づいて複数のタスクを実行する技術を発見することができる。それらの出願の各々は、全体を参照することによって以下に組み込まれる。
【０２６１】
図１２Ｃ及び１２Ｄに示されるように、いくつかの実施例では、デジタルアシスタントは、処理に、ユーザの追加の発話入力に基づいて追加のタスクを実行させる。例えば、ユーザインタフェース１２３４に表示された検索結果を考慮して、ユーザは、写真の全てではなくいくつかを送信することを望むことがある。ユーザは、「写真１及び写真２のみを送信してください。（Send only Photo 1 and Photo 2.）」等の発話入力１２５４を提供する。いくつかの実施例では、デジタルアシスタントは、ユーザがアフォーダンス１２３５（例えば、ユーザインタフェース１２３４上で表示されたマイクロフォンのアイコン）を選択した後に発話入力１２５４を受信する。デジタルアシスタントは、発話入力１２５４及びコンテクスト情報に基づいて、ユーザ意図が写真１及び写真２のみを添付する電子メールを送信することであると判定する。ユーザ意図に従って、デジタルアシスタントは、電子メール処理に、写真３を電子メールメッセージから除去させる。いくつかの実施例では、デジタルアシスタントは、「ＯＫ、写真１及び写真２をあなたの電子メールに添付します。（OK, attaching Photo 1 and Photo 2 to your email.）」等の発話出力１２７６を提供し、ユーザインタフェース１２３４上で発話出力１２７６に対応するテキストを表示する。
【０２６２】
図１３Ａを参照して、いくつかの実施形態では、タスクが検索することと関連付けられていないとの判定に従って、デジタルアシスタントは、タスクが少なくとも１つのオブジェクトを管理することと関連付けられているか否かを判定する。図１３Ａに示されるように、例えば、デジタルアシスタントは、「プロジェクトと呼ばれる新たなフォルダをデスクトップ上で作成してください。（Create a new folder on the desktop called Projects.）」等の発話入力１３５２を受信する。発話入力１３５２及びコンテクスト情報に基づいて、デジタルアシスタントは、ユーザ意図がフォルダ名「プロジェクト」を有する新たなフォルダをデスクトップにおいて生成することであると判定する。デジタルアシスタントは更に、オブジェクト（例えば、フォルダ）を管理することと関連付けられる代わりに、ユーザ意図が検索することと関連付けられていないと判定する。従って、デジタルアシスタントは、ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであると判定する。
【０２６３】
いくつかの実施例では、ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであるとの判定に従って、デジタルアシスタントは、オブジェクト管理処理を使用してタスクを実行する。オブジェクト管理処理を使用してタスクを実行することは、例えば、少なくとも１つのオブジェクトを作成すること（例えば、フォルダ又はファイルを作成すること）、少なくとも１つのオブジェクトを記憶すること（例えば、フォルダ、ファイル、又は通信を記憶すること）、並びに少なくとも１つのオブジェクトを圧縮すること（例えば、フォルダ及びファイルを圧縮することを含むことができる。オブジェクト管理処理を使用してタスクを実行することは更に、例えば、少なくとも１つのオブジェクトを第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に複製又は移動することを含むことができる。例えば、デジタルアシスタントは、ファイルをユーザデバイスからフラッシュドライブ又はクラウドドライブにカットアンドペーストするオブジェクト管理処理をインスタンス化する。
【０２６４】
オブジェクト管理処理を使用してタスクを実行することは更に、例えば、物理若しくは仮想記憶装置に記憶された少なくとも１つのオブジェクトを削除すること（例えば、フォルダ若しくはファイル削除すること）、及び／又は物理若しくは仮想記憶装置に記憶された少なくとも１つのオブジェクトを復元すること（例えば、削除されたフォルダ若しくは削除されたファイルを復元すること）を含むことができる。オブジェクト管理処理を使用してタスクを実行することは更に、例えば、少なくとも１つのオブジェクトをマーク付けすることを含むことができる。いくつかの実施例では、オブジェクトをマーク付けすることは、可視的又は可視的でなくてもよい。例えば、デジタルアシスタントは、オブジェクト管理処理に、ソーシャルメディアの投稿のための「ｌｉｋｅ」サインを生成させ、電子メールをタグ付けさせ、又はファイルをマーク付けさせること等ができる。マーク付けすることは、例えば、フラグ又はサイン等を表示することによって可視的であってもよい。マーク付けすることはまた、メタデータの記憶（例えば、メモリ）内容が変わるようにオブジェクトのメタデータに関して実行されてもよい。メタデータは、可視的であってもよく、又はそうでなくてもよい。
【０２６５】
オブジェクト管理処理を使用してタスクを実行することは更に、例えば、バックアップための所定の期間に従って、又はユーザの要求があると少なくとも１つのオブジェクトをバックアップすることを含むことができる。例えば、デジタルアシスタントは、オブジェクト管理処理に、フォルダ及びファイルをバックアップするバックアッププログラム（例えば、タイムマシンプログラム）をインスタンス化させることができる。バックアップは、所定のスケジュール（例えば、１日、１週間、若しくは１カ月に１回等）、又はユーザ要求に従って自動的に実行されてもよい。
【０２６６】
オブジェクト管理処理を使用してタスクを実行することは更に、例えば、少なくとも１つのオブジェクトをユーザデバイスに通信可能に接続された１つ以上の電子デバイスの間で共有することを含むことができる。例えば、デジタルアシスタントは、オブジェクト管理処理に、ユーザデバイスに記憶された写真を別の電子デバイス（例えば、ユーザのスマートフォン又はタブレット）と共有させることができる。
【０２６７】
図１３Ｂに示されるように、ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであるとの判定に従って、デジタルアシスタントは、オブジェクト管理処理を使用してタスクを実行する。例えば、デジタルアシスタントは、ユーザインタフェース１３１０のデスクトップ上で「プロジェクト」と命名されたフォルダを生成するオブジェクト管理処理をインスタンス化する。いくつかの実施例では、デジタルアシスタントは、オブジェクト管理処理に、自動的に又は追加のユーザ入力に応じてのいずれかでフォルダを更に開かせることができる。例えば、デジタルアシスタントは、「ＯＫ、プロジェクトと呼ばれるフォルダをデスクトップ上で作成しました。それを開けますか？（OK, I' ve created a folder on the desktop called Projects, would you like to open it?）」等の発話出力１３７２を提供する。ユーザは、「Ｙｅｓ」等の発話入力１３７４を提供する。ユーザの発話入力１３７４に応じて、デジタルアシスタントは、オブジェクト管理処理に、プロジェクトフォルダを開かせ、プロジェクトフォルダに対応するユーザインタフェース１３３２を表示させる。
【０２６８】
図１３Ｃを参照して、いくつかの実施形態では、デジタルアシスタントは、ユーザが検索処理又はオブジェクト管理処理を使用してタスクを実行した結果を操作することを可能にする１つ以上のアフォーダンスを提供する。１つ以上のアフォーダンスは、例えば、編集ボタン、中止ボタン、再実行ボタン、又は取消ボタン等を含む。例えば、図１３Ｃに示されるように、デスクトップ上での「プロジェクト」と命名されたフォルダを生成した後、デジタルアシスタントは、編集ボタン１３３６Ａ、取消ボタン１３３６Ｂ、及び再実行ボタン１３３６Ｃを表示するユーザインタフェース１３３４を提供する。いくつかの実施例では、編集ボタン１３３６Ａによって、ユーザは、オブジェクトの１つ以上の態様を編集することが可能になり（例えば、プロジェクトフォルダの名前を編集する）、取消ボタン１３３６Ｂによって、ユーザは、オブジェクト管理処理によって実行された最後のタスクを元に戻すことが可能になり（例えば、プロジェクトフォルダを削除する）、再実行ボタン１３３６Ｃによって、ユーザは、オブジェクト管理処理によって実行された最後のタスクを復元することが可能になる（例えば、オブジェクト管理処理を使用して別のフォルダを作成する）。デジタルアシスタントは、ユーザが検索処理又はオブジェクト管理処理を使用してタスクを実行した結果のいずれかの操作を実行することを可能にするいずれかの所望のアフォーダンスを提供することができることを認識されよう。
【０２６９】
説明されるように、デジタルアシスタントは、ユーザ意図が検索処理又はオブジェクト管理処理を使用してタスクを実行することであるかを判定することができる。いくつかの実施例では、デジタルアシスタントは、ユーザ意図が検索処理又はオブジェクト管理処理と関連付けられていないと判定する。例えば、ユーザは、「聞き取りを開始してください。（start dictation.）」等の発話入力を提供する。デジタルアシスタントは、聞き取りのタスクが検索することと関連付けられていないと判定する。いくつかの実施例では、タスクが検索することと関連付けられていないとの判定に従って、デジタルアシスタントは更に、タスクが少なくとも１つのオブジェクトを管理することと管理付けられているか否かを判定する。例えば、デジタルアシスタントは、聞き取りのタスクがまた、ファイル、フォルダ、又は電子メールを複製、移動、又は削除すること等、オブジェクトを管理することと関連付けられていないと判定する。いくつかの実施例では、タスクがオブジェクトを管理することと関連付けられていないとの判定に従って、デジタルアシスタントは、ユーザデバイスに利用可能な処理を使用してタスクを実行することができるか否かを判定する。例えば、デジタルアシスタントは、ユーザデバイスに利用可能な聞き取り処理を使用して聞き取りのタスクを実行することができると判定する。いくつかの実施例では、デジタルアシスタントは、ユーザデバイスに利用可能な処理を使用してタスクを実行することに関して、ユーザとのダイアログを開始する。例えば、デジタルアシスタントは、「ＯＫ、聞き取りを開始します。（OK, starting dictation.）」又は「現在行っているこのプレゼンテーションにおいて聞き取りをしますか？（Would you like to dictate in this presentation you are working now?）」等の発話出力を提供する。発話出力を提供した後、デジタルアシスタントは、例えば、ユーザ意図が、ユーザが現在行っているプレゼンテーションにおいて聞き取りをすることであることを確認する応答をユーザから受信する。
５．デジタルアシスタントの例示的な機能−連続性
【０２７０】
図１４Ａ〜１４Ｄ、１５Ａ〜１５Ｄ、１６Ａ〜１６Ｃ、及び１７Ａ〜１７Ｅは、デジタルアシスタントによってリモートに位置するコンテンツを使用してユーザデバイス又は第１の電子デバイスにおいてタスクを実行する機能性を示す。いくつかの実施例では、デジタルアシスタントシステム（例えば、デジタルアシスタントシステム７００）は、様々な実施例に従って、ユーザデバイス（例えば、デバイス１４００、１５００、１６００、及び１７００）によって実装される。いくつかの実施例では、ユーザデバイス、サーバ（例えば、１０８）、又はそれらの組み合わせは、デジタルアシスタントシステム（例えば、デジタルアシスタントシステム７００）を実装してもよい。ユーザデバイスは、例えば、デバイス１０４、２００、又は４００を使用して実装されてもよい。いくつかの実施例では、ユーザデバイスは、ラップトップコンピュータ、デスクトップコンピュータ、又はタブレットコンピュータとすることができる。ユーザデバイスは、デスクトップ環境等のマルチタスキング環境で動作する。
【０２７１】
図１４Ａ〜１４Ｄ、１５Ａ〜１５Ｄ、１６Ａ〜１６Ｃ、及び１７Ａ〜１７Ｅを参照して、いくつかの実施例では、ユーザデバイス（例えば、デバイス１４００、１５００、１６００、及び１７００）は、様々なユーザインタフェース（例えば、ユーザインタフェース１４１０、１５１０、１６１０、及び１７１０）を提供する。上記説明されたものと同様に、ユーザデバイスは、ディスプレイ上で様々なユーザインタフェースを表示し、様々なユーザインタフェースによって、ユーザは、１つ以上の処理（例えば、映画処理、写真処理、ウェブブラウジングの処理）をインスタンス化することが可能になる。
【０２７２】
図１４Ａ〜１４Ｄ、１５Ａ〜１５Ｄ、１６Ａ〜１６Ｃ、及び１７Ａ〜１７Ｅに示されるように、上記説明されたものと同様に、ユーザデバイス（例えば、デバイス１４００、１５００、１６００、及び１７００）は、ユーザインタフェース（例えば、ユーザインタフェース１４１０、１５１０、１６１０、及び１７１０）上で、デジタルアシスタントサービスをインスタンス化するアフォーダンス（例えば、アフォーダンス１４４０、１５４０、１６４０、及び１７４０）を表示する。上記説明されたものと同様に、いくつかの実施例では、デジタルアシスタントは、所定のフレーズを受信したことに応じてインスタンス化される。いくつかの実施例では、デジタルアシスタントは、アフォーダンスの選択を受信したことに応じてインスタンス化される。
【０２７３】
図１４Ａ〜１４Ｄ、１５Ａ〜１５Ｄ、１６Ａ〜１６Ｃ、及び１７Ａ〜１７Ｅを参照して、いくつかの実施形態では、デジタルアシスタントは、発話入力１４５２、１４５４、１４５６、１４５８、１５５２、１５５４、１５５６、１６５２、１６５４、１６５６、１７５２、及び１７５６等の１つ以上の発話入力をユーザから受信する。ユーザは、例えば、ユーザデバイス（例えば、デバイス１４００、１５００、１６００、及び１７００）又は第１の電子デバイス（例えば、電子デバイス１４２０、１５２０、１５３０、１５２２、１５３２、１６２０、１６２２、１６３０、１７２０、及び１７３０）においてタスクを実行する目的で、リモートに位置するコンテンツを使用して、様々な発話入力を提供してもよい。上記説明されたものと同様に、いくつかの実施例では、デジタルアシスタントはユーザデバイスにおいて、ユーザから直接、又はユーザデバイスに通信可能に接続された別の電子デバイスを通じて間接的に発話入力を受信することができる。
【０２７４】
図１４Ａ〜１４Ｄ、１５Ａ〜１５Ｄ、１６Ａ〜１６Ｃ、及び１７Ａ〜１７Ｅを参照して、いくつかの実施形態では、デジタルアシスタントは、ユーザデバイスと関連付けられたコンテクスト情報を特定する。コンテクスト情報は、例えば、ユーザ特有データ、センサデータ、及びユーザデバイス構成データを含む。いくつかの実施例では、ユーザ特有データは、ユーザ優先度、並びにユーザデバイス（例えば、デバイス１４００、１５００、１６００、及び１７００）及び／又はユーザデバイスに通信可能に接続された電子デバイスとのユーザの対話の履歴等を示すログ情報を含む。例えば、ユーザ特有データは、ユーザが電子デバイス１４２０（例えば、スマートフォン）を使用して自画像写真を直近で撮ったこと、ユーザがポッドキャスト、ウェブキャスト、映画、音楽、又は音声ブック等に直近でアクセスしたことを示す。いくつかの実施例では、センサデータは、ユーザデバイス又は他の電子デバイスと関連付けられたセンサによって収集された様々なデータを含む。例えば、センサデータは、いずれかの時点において、又はいずれかの期間の間にユーザデバイス又はユーザデバイスに通信可能に接続された電子デバイスの物理位置を示すＧＰＳ位置データを含む。例えば、センサデータは、電子デバイス１４２０に記憶された写真がハワイで撮られたことを示す。いくつかの実施例では、ユーザデバイス構成データは、現在又は履歴的なデバイス構成を含む。例えば、ユーザデバイス構成データは、ユーザデバイスが現在いくつかの電子デバイスに通信可能に接続されているが、他の電子デバイスからは切断されていることを示す。電子デバイスは、例えば、スマートフォン、セットトップボックス、タブレット等を含む。以下で更に詳細に説明されるように、コンテクスト情報は、ユーザ意図を判定する際、及び／又は１つ以上のタスクを実行する際に使用されてもよい。
【０２７５】
図１４Ａ〜１４Ｄ、１５Ａ〜１５Ｄ、１６Ａ〜１６Ｃ、及び１７Ａ〜１７Ｅを参照して、上記説明されたものと同様に、発話入力を受信したことに応じて、デジタルアシスタントは、発話入力に基づいてユーザ意図を判定する。デジタルアシスタントは、自然言語処理の結果に基づいてユーザ意図を判定する。例えば、デジタルアシスタントは、ユーザ入力に基づいて実施可能な意図を特定し、特定された実施可能な意図を表すために構造化されたクエリを生成する。構造化されたクエリは、実施可能な意図と関連付けられた１つ以上のパラメータを含む。１つ以上のパラメータは、実施可能な意図に基づいてタスクの実行を促進するために使用されてもよい。例えば、「ちょうど撮った自分撮りを見せてください。（show the selfie I just took.）」等の発話入力に基づいて、デジタルアシスタントは、実施可能な意図が写真を表示することであると判定し、パラメータは、ユーザが数日後の間に直近で撮った自画像を含む。いくつかの実施形態では、デジタルアシスタントは更に、発話入力及びコンテクスト情報に基づいてユーザ意図を判定する。例えば、コンテクスト情報は、ユーザデバイスがＢｌｕｅｔｏｏｔｈ接続を使用してユーザの電話に通信可能に接続されていることを示し、自画像写真が２日前にユーザの写真に追加されたことを示す。結果として、デジタルアシスタントは、ユーザ意図が２日前にユーザの写真に追加された自画像である写真を表示することであると判定する。発話入力及びコンテクスト情報に基づいてユーザ意図を判定することは、様々な実施例において以下で更に詳細に説明される。
【０２７６】
いくつかの実施形態では、ユーザ意図に従って、デジタルアシスタントは更に、タスクがユーザデバイスにおいて実行されるか、又はユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定する。判定の様々な実施例は、図１４Ａ〜１４Ｄ、１５Ａ〜１５Ｄ、１６Ａ〜１６Ｃ、及び１７Ａ〜１７Ｅに関して以下で更に詳細に提供される。
【０２７７】
図１４Ａを参照して、いくつかの実施例では、ユーザデバイス１４００は、デジタルアシスタントを呼び出す発話入力１４５２をユーザから受信する。図１４Ａに示されるように、いくつかの実施例では、デジタルアシスタントは、ユーザインタフェース１４１０上で表示されたアフォーダンス１４４０又は１４４１によって表される。発話入力１４５２は、例えば、「はい、アシスタント。」を含む。発話入力１４５２に応じて、ユーザデバイス１４００は、デジタルアシスタントが後続の発話入力をアクティブに監視するようにデジタルアシスタントを呼び出す。いくつかの実施例では、デジタルアシスタントは、それが呼び出されることを示す発話出力１４７２を提供する。例えば、発話出力１４７２は、「どうぞ、聞いていますよ。（Go ahead, I am listening.）」を含む。図１４Ａに示されるように、いくつかの実施例では、ユーザデバイス１４００は、電子デバイス１４２０等の１つ以上の電子デバイスに通信可能に接続される。電子デバイス１４２０は、有線又は無線ネットワークを使用してユーザデバイス１４００と通信することができる。例えば、電子デバイス１４２０は、音声及びデータ（例えば、音声及びビデオファイル）を２つのデバイスの間で交換することができるように、Ｂｌｕｅｔｏｏｔｈ接続を使用してユーザデバイス１４００と通信する。
【０２７８】
図１４Ｂを参照して、いくつかの実施例では、デジタルアシスタントは、「このデバイス上で電話機を使用してちょうど撮った自撮りを見せてください。（Show me the selfie I just took using my phone on this device.）」等の発話入力１４５４を受信する。発話入力１４５４及び／又はコンテクスト情報に基づいて、デジタルアシスタントは、ユーザ意図を判定する。例えば、図１４Ｂに示されるように、コンテクスト情報は、ユーザデバイス１４００が有線又は無線ネットワーク（例えば、Ｂｌｕｅｔｏｏｔｈ接続又はＷｉ−Ｆｉ接続）を使用して電子デバイス１４２０に通信可能に接続されていることを示す。コンテクスト情報はまた、ユーザが名前「ｓｅｌｆｉｅ０００１」を有する電子デバイス１４２０に記憶された自画像を直近で撮ったことを示す。結果として、デジタルアシスタントは、ユーザ意図が電子デバイス１４２０に記憶されたｓｅｌｆｉｅ０００１と命名された写真を表示することであると判定する。代わりに、写真は、ユーザの顔を含むものとして写真認識ソフトウェアでタグ付けされていることがあり、従って、特定されることがある。
【０２７９】
説明されるように、ユーザ意図に従って、デジタルアシスタントは更に、タスクがユーザデバイス、又はユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定する。いくつかの実施形態では、タスクがユーザデバイス又は第１の電子デバイスにおいて実行されるかを判定することは、発話入力に含まれる１つ以上のキーワードに基づいている。例えば、デジタルアシスタントは、発話入力１４５４が、タスクがユーザデバイス１４００上で実行されることを示す、「このデバイス上で」等のキーワード又はフレーズを含むと判定する。結果として、デジタルアシスタントは、電子デバイス１４２０に記憶されたｓｅｌｆｉｅ０００１と命名された写真を表示することが、ユーザデバイス１４００において実行されることであると判定する。ユーザデバイス１４００及び電子デバイス１４２０は異なるデバイスである。例えば、ユーザデバイス１４００はラップトップコンピュータとすることができ、電子デバイス１４２０は電話とすることができる。
【０２８０】
いくつかの実施形態では、デジタルアシスタントは更に、タスクの実行と関連付けられたコンテンツがリモートに位置しているか否かを判定する。デジタルアシスタントが、どのデバイスがタスクを実行するかを判定する時、又はその時の近くで、タスクを実行するためのコンテンツの少なくとも一部がタスクを実行すると判定されたデバイスに記憶されていない場合、コンテンツがリモートに位置する。例えば、図１４Ｂに示されるように、ユーザデバイス１４００のデジタルアシスタントが、ユーザ意図がユーザデバイス１４００においてｓｅｌｆｉｅ０００１と命名された写真を表示することであると判定する時、又はその時のその近くで、ｓｅｌｆｉｅ０００１と命名された写真は、ユーザデバイス１４００に記憶されず、代わりに、電子デバイス１４２０（例えば、スマートフォン）に記憶されている。従って、デジタルアシスタントは、写真がユーザデバイス１４００に対してリモートに位置すると判定する。
【０２８１】
図１４Ｂに示されるように、いくつかの実施形態では、タスクがユーザデバイスにおいて実行され、タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、ユーザデバイスのデジタルアシスタントは、タスクを実行するためのコンテンツを受信する。いくつかの実施例では、ユーザデバイス１４００のデジタルアシスタントは、電子デバイス１４２０に記憶されたコンテンツの少なくとも一部を受信する。例えば、ｓｅｌｆｉｅ０００１と命名された写真を表示するために、ユーザデバイス１４００のデジタルアシスタントは、ｓｅｌｆｉｅ０００１と命名された写真を取得する要求を電子デバイス１４２０に送信する。電子デバイス１４２０は、要求を受信し、それに応じて、ｓｅｌｆｉｅ０００１と命名された写真をユーザデバイス１４００に送信する。ユーザデバイス１４００のデジタルアシスタントは次いで、ｓｅｌｆｉｅ０００１と命名された写真を受信する。
【０２８２】
図１４Ｂに示されるように、いくつかの実施形態では、リモートに位置するコンテンツを受信した後、デジタルアシスタントは、ユーザデバイスにおいて応答を提供する。いくつかの実施例では、応答を提供することは、受信されたコンテンツを使用してタスクを実行することを含む。例えば、ユーザデバイス１４００のデジタルアシスタントは、ｓｅｌｆｉｅ０００１と命名された写真のビュー１４４３を提供するユーザインタフェース１４４２（例えば、スニペット又はウィンドウ）を表示する。ビュー１４４３は、ｓｅｌｆｉｅ０００１と命名された写真のプレビュー（例えば、サムネイル）、アイコン、又はフルビューとすることができる。
【０２８３】
いくつかの実施例では、応答を提供することは、ユーザデバイスにおいて実行されるタスクと関連付けられたリンクを提供することを含む。リンクによって、処理をインスタンス化することが可能になる。説明されるように、処理をインスタンス化することは、処理がまだ実行中でない場合に処理を呼び出すことを含む。処理の少なくとも１つのインスタンスが実行中である場合、処理をインスタンス化することは、処理の既存のインスタンスを実行すること、又は処理の新たなインスタンスを生成することを含む。図１４Ｂに示されるように、ユーザインタフェース１４４２は、ｓｅｌｆｉｅ０００１と命名された写真のビュー１４４３と関連付けられたリンク１４４４を提供してもよい。リンク１４４４によって、例えば、写真の完全な表現を参照し、又は写真を編集する写真処理をインスタンス化することが可能になる。実施例として、リンク１４４４は、ビュー１４４３の側面上で表示される。別の実施例として、ビュー１４４３はそれ自体、ビュー１４４３の選択が写真処理をインスタンス化するように、リンク１４４４を含むことができ、又はそれを組み込むことができる。
【０２８４】
いくつかの実施形態では、応答を提供することは、ユーザがタスクの実行の結果を更に操作することを可能にする１つ以上のアフォーダンスを提供することを含む。図１４Ｂに示されるように、いくつかの実施例では、デジタルアシスタントは、ユーザインタフェース１４４２（例えば、スニペット又はウィンドウ）上でアフォーダンス１４４５及び１４４６を提供する。アフォーダンス１４４５は、写真をアルバムに追加するためのボタンを含むことができ、アフォーダンス１４４６は、写真のビュー１４４３を中止するためのボタンを含むことができる。ユーザは、アフォーダンス１４４５及び１４４６のうちの一方又は両方を選択することができる。アフォーダンス１４４５の選択に応じて、例えば、写真処理は、ビュー１４４３と関連付けられた写真をアルバムに追加する。アフォーダンス１４４６の選択に応じて、例えば、写真処理は、ビュー１４４３をユーザインタフェース１４４２から除去する。
【０２８５】
いくつかの実施形態では、応答を提供することは、ユーザデバイスにおいて実行されるタスクに従って発話出力を提供することを含む。図１４Ｂに示されるように、アフォーダンス１４４０又は１４４１によって表されるデジタルアシスタントは、「あなたの電話機からの最後の自撮りがここにあります。（Here is the last selfie from your phone.）」等の発話出力１４７４を提供する。
【０２８６】
図１４Ｃを参照して、いくつかの実施例では、単一の発話入力／発言及びコンテクスト情報に基づいて、デジタルアシスタントは、ユーザ意図が複数のタスクを実行することであると判定する。図１４Ｃに示されるように、デジタルアシスタントは、「このデバイス上で電話機を使用してちょうど撮った自撮りを見せ、それをウォールペーパとして設定してください。（Show me the selfie I just took using my phone on this device and set it as my wallpaper.）」等の発話入力１４５６を受信する。発話入力１４５６及びコンテクスト情報に基づいて、デジタルアシスタントは、ユーザ意図が電子デバイス１４２０に記憶されたｓｅｌｆｉｅ０００１と命名された写真を表示する第１のタスクを実行することであると判定し、ｓｅｌｆｉｅ０００１と命名された写真をウォールペーパとして設定する第２のタスクを実行する。よって、単一の発話入力１４５６に基づいて、デジタルアシスタントは、ユーザ意図が複数のタスクを実行することであると判定する。
【０２８７】
いくつかの実施形態では、デジタルアシスタントは、複数のタスクがユーザデバイスにおいて実行されるか、又はユーザデバイスに通信可能に接続された電子デバイスにおいて実行されるかを判定する。例えば、発話入力１４５６に含まれるキーワード「このデバイス」を使用して、デジタルアシスタントは、複数のタスクがユーザデバイス１４００において実行されると判定する。上記説明されたものと同様に、デジタルアシスタントは更に、少なくとも１つのタスクを実行するためのコンテンツがリモートに記憶されているか否かを判定する。例えば、デジタルアシスタントは、少なくとも第１のタスク（例えば、ｓｅｌｆｉｅ０００１と命名された写真を表示すること）を実行するためのコンテンツがリモートに記憶されていると判定する。いくつかの実施形態では、複数のタスクがユーザデバイスにおいて実行され、少なくとも１つのタスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、デジタルアシスタントは、コンテンツを別の電子デバイス（例えば、電子デバイス１４２０）から要求し、タスクを実行するためのコンテンツを受信し、ユーザデバイスにおいて応答を提供する。
【０２８８】
いくつかの実施形態では、応答を提供することは、複数のタスクを実行することを含む。例えば、図１４Ｃに示されるように、応答を提供することは、ｓｅｌｆｉｅ０００１と命名された写真のビュー１４４９を表示する第１のタスクを実行すること、及びｓｅｌｆｉｅ０００１と命名された写真をウォールペーパとして設定する第２のタスクを実行することを含む。いくつかの実施例では、デジタルアシスタントは、デスクトップ設定構成処理を使用して、ウォールペーパがｓｅｌｆｉ０００１と命名された写真となるように自動的に構成する。いくつかの実施例では、デジタルアシスタントは、ユーザがｓｅｌｆｉｅ０００１と命名され写真を使用してウォールペーパを手動で構成することを可能にする、デスクトップ設定１４５０へのリンクを提供する。例えば、ユーザは、マウス、スタイラス、又は指等の入力デバイスを使用することによって、デスクトップ設定１４５０へのリンクを選択することができる。デスクトップ設定１４５０へのリンクの選択を受信すると、デジタルアシスタントは、ユーザがｓｅｌｆｉｅ０００１と命名された写真を選択し、それをユーザデバイス１４００のウォールペーパとして設定することを可能にするデスクトップ設定構成処理を開始する。
【０２８９】
図１４Ｃに示されるように、いくつかの実施例では、デジタルアシスタントは、ユーザとのダイアログを開始し、発話入力をユーザから受信したことに応じて、ウォールペーパの構成を促進する。例えば、デジタルアシスタントは、「あなたの電話機からの最後の自撮りがここにあります。ウォールペーパとして設定しますか？（Here is the last selfie from your phone. Set is as wallpaper?）」等の発話出力１４７６を提供する。ユーザは、「ＯＫ」等の発話入力を提供する。発話入力を受信すると、デジタルアシスタントは、ウォールペーパをｓｅｌｆｉｅ０００１と命名された写真として構成するデスクトップ設定構成処理をインスタンス化する。
【０２９０】
説明されるように、いくつかの実施例では、デジタルアシスタントは、発話入力及びコンテクスト情報に基づいてユーザ意図を判定する。図１４Ｄを参照して、いくつかの実施例では、発話入力は、ユーザ意図を判定する十分な情報を含まなくてもよい。例えば、発話入力は、タスクを実行するためのコンテンツの位置を示さなくてもよい。図１４Ｄに示されるように、デジタルアシスタントは、「ちょうど撮った自撮りを見せてください。（Show me the selfie I just took.）」等の発話入力１４５８を受信する。発話入力１４５８は、どの写真が表示されるか、又は自撮りの位置が表示されるかを示す１つ以上のキーワードを含まない。結果として、ユーザ意図は、発話入力１４５８にのみ基づいて判定されなくてもよい。いくつかの実施例では、デジタルアシスタントは、発話入力１４５８及びコンテクスト情報に基づいてユーザ意図を判定する。例えば、コンテクスト情報に基づいて、デジタルアシスタントは、ユーザデバイス１４００が電子デバイス１４２０に通信可能に接続されていると判定する。いくつかの実施例では、デジタルアシスタントは、ユーザがユーザデバイス１４００及び電子デバイス１４２０において直近で撮った写真を検索する検索処理をインスタンス化する。検索結果に基づいて、デジタルアシスタントは、ｓｅｌｆｉｅ０００１と命名された写真が電子デバイス１４２０に記憶されていると判定する。従って、デジタルアシスタントは、ユーザ意図が電子デバイス１４２０に位置するｓｅｌｆｉｅ０００１と命名された写真を表示することであると判定する。いくつかの実施例では、発話入力及びコンテクスト情報に基づいてユーザ意図を判定することができない場合、デジタルアシスタントは、ユーザ意図を明確化し、又は曖昧さをなくすためにユーザとのダイアログを開始する。
【０２９１】
図１４Ｄに示されるように、いくつかの実施例では、発話入力は、タスクがユーザデバイス、又はユーザデバイスに通信可能に接続された電子デバイスにおいて実行されるかを示す１つ以上のキーワードを含まなくてもよい。例えば、発話入力１４５８は、自撮りを表示するタスクがユーザデバイス１４００又は電子デバイス１４２０において実行されるかを示さない。いくつかの実施例では、デジタルアシスタントは、コンテクスト情報に基づいて、タスクがユーザデバイスにおいて又は電子デバイスにおいて実行されるかを判定する。実施例として、コンテクスト情報は、デジタルアシスタントが電子デバイス１４２０ではなくユーザデバイス１４００において発話入力１４５８を受信することを示す。結果として、デジタルアシスタントは、自撮りを表示するタスクがユーザデバイス１４００において実行されると判定する。別の実施例として、コンテクスト情報は、写真がユーザ優先度に従って電子デバイス１４２０上で表示されることを示す。結果として、デジタルアシスタントは、自撮りを表示するタスクが電子デバイス１４２０において実行されると判定する。デジタルアシスタントは、いずれかのコンテクスト情報に基づいて、タスクがユーザデバイスにおいて又は電子デバイスにおいて実行されるかを判定することができることを認識されよう。
【０２９２】
図１５Ａを参照して、いくつかの実施形態では、デジタルアシスタントは、タスクがユーザデバイス（例えば、ユーザデバイス１５００）に通信可能に接続された電子デバイス（例えば、電子デバイス１５２０及び／又は１５３０）において実行されると判定し、コンテンツが電子デバイスに対してリモートに位置すると判定する。図１５Ａに示されるように、いくつかの実施例では、デジタルアシスタントは、「ＴＶ上でこの映画を再生してください。（Play this movie on my TV.）」等の発話入力１５５２を受信する。説明されるように、デジタルアシスタントは、発話入力１５５２及びコンテクスト情報に基づいてユーザ意図を判定することができる。例えば、コンテクスト情報は、ユーザインタフェース１５４２がＡＢＣ．ｍｏｖと命名された映画を表示していることを示す。結果として、デジタルアシスタントは、ユーザ意図がＡＢＣ．ｍｏｖと命名された映画を再生することであると判定する。
【０２９３】
ユーザ意図に従って、デジタルアシスタントは更に、タスクがユーザデバイスにおいて実行されるか、又はユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定する。いくつかの実施形態では、タスクがユーザデバイスにおいて又は第１の電子デバイスにおいて実行されるかを判定することは、発話入力に含まれる１つ以上のキーワードに基づいている。例えば、発話入力１５５２は、単語又はフレーズ「ＴＶ上で。」を含む。いくつかの実施例では、コンテクスト情報は、ユーザデバイス１５００が、例えば、有線接続、Ｂｌｕｅｔｏｏｔｈ接続、又はＷｉ−Ｆｉ接続を使用して、セットトップボックス１５２０及び／又はＴＶ１５３０に接続されることを示す。結果として、デジタルアシスタントは、ＡＢＣ．ｍｏｖと命名された映画を再生するタスクがセットトップボックス１５２０及び／又はＴＶ１５３０上で実行されると判定する。
【０２９４】
いくつかの実施形態では、デジタルアシスタントは更に、タスクの実行と関連付けられたコンテンツがリモートに位置しているか否かを判定する。説明されるように、どのデバイスがタスクを実行するかをデジタルアシスタントが判定する時、又はその時の近くで、タスクを実行するためのコンテンツの少なくとも一部がタスクを実行すると判定されたデバイスに記憶されていない場合、コンテンツはリモートに位置する。例えば、図１５Ａに示されるように、映画ＡＢＣ．ｍｏｖがセットトップボックス１５２０及び／又はＴＶ１５３０において再生されるとユーザデバイス１５００のデジタルアシスタントが判定する時、又はその時の近くで、映画ＡＢＣ．ｍｏｖの少なくとも一部がユーザデバイス１５００（例えば、ラップトップコンピュータ）及び／又はサーバ（図示しない）に記憶され、セットトップボックス１５２０及び／又はＴＶ１５３０に記憶されない。従って、デジタルアシスタントは、映画ＡＢＣ．ｍｏｖがセットトップボックス１５２０及び／又はＴＶ１５３０に対してリモートに位置すると判定する。
【０２９５】
図１５Ｂを参照して、タスクが第１の電子デバイス（例えば、セットトップボックス１５２０及び／又はＴＶ１５３０）において実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、ユーザデバイスのデジタルアシスタントは、タスクを実行するためにコンテンツを第１の電子デバイスに提供する。例えば、映画ＡＢＣ．ｍｏｖをセットトップボックス１５２０及び／又はＴＶ１５３０上で再生するために、ユーザデバイス１５００のデジタルアシスタントは、映画ＡＢＣ．ｍｏｖの少なくとも一部をセットトップボックス１５２０及び／又はＴＶ１５３０に送信する。
【０２９６】
いくつかの実施例では、ユーザデバイスからコンテンツを提供する代わりに、ユーザデバイスのデジタルアシスタントは、タスクを実行するために、コンテンツの少なくとも一部を別の電子デバイス（例えば、サーバ）から第１の電子デバイスに提供させる。例えば、映画ＡＢＣ．ｍｏｖは、ユーザデバイス１５００ではなくサーバ（図示しない）に記憶されている。結果として、ユーザデバイス１５００のデジタルアシスタントは、ＡＢＣ．ｍｏｖと命名された映画の少なくとも一部をサーバからセットトップボックス１５２０及び／又はＴＶ１５３０に送信させる。いくつかの実施例では、タスクを実行するためのコンテンツは、セットトップボックス１５２０に提供され、それは次いで、コンテンツをＴＶ１５３０に送信する。いくつかの実施例では、タスクを実行するためのコンテンツは、ＴＶ１５３０に直接提供される。
【０２９７】
図１５Ｂに示されるように、いくつかの実施例では、コンテンツが第１の電子デバイス（例えば、セットトップボックス１５２０及び／又はＴＶ１５３０）に提供された後、ユーザデバイス１５００のデジタルアシスタントは、ユーザデバイス１５００において応答を提供する。いくつかの実施例では、応答を提供することは、コンテンツを使用してタスクをセットトップボックス１５２０及び／又はＴＶ１５３０において実行させることを含む。例えば、ユーザデバイス１５００のデジタルアシスタントは、映画ＡＢＣ．ｍｏｖを再生するマルチメディア処理を開始する要求をセットトップボックス１５２０及び／又はＴＶ１５３０に送信する。要求に応じて、セットトップボックス１５２０及び／又はＴＶ１５３０は、映画ＡＢＣ．ｍｏｖを再生するマルチメディア処理を開始する。
【０２９８】
いくつかの実施例では、第１の電子デバイス（例えば、セットトップボックス１５２０及び／又はＴＶ１５３０）において実行されるタスクは、第１の電子デバイスに対してリモートに実行されたタスクの続きである。例えば、図１５Ａ及び１５Ｂに示されるように、ユーザデバイス１５００のデジタルアシスタントは、ユーザデバイス１５００のマルチメディア処理に、ユーザデバイス１５００において映画ＡＢＣ．ｍｏｖの一部を再生させている。ユーザ意図が第１の電子デバイス（例えば、セットトップボックス１５２０及び／又はＴＶ１５３０）において映画ＡＢＣ．ｍｏｖを再生することであるとの判定に従って、ユーザデバイス１５００のデジタルアシスタントは、第１の電子デバイスに、最初から再生を開始するのではなく、映画ＡＢＣ．ｍｏｖの残りの再生することを続けさせる。結果として、ユーザデバイス１５００のデジタルアシスタントによって、ユーザは、映画を連続して鑑賞することが可能になる。
【０２９９】
図１５Ｂに示されるように、いくつかの実施形態では、応答を提供することは、ユーザがタスクの実行の結果を更に操作することを可能にする１つ以上のアフォーダンスを提供することを含む。図１５Ｂに示されるように、いくつかの実施例では、デジタルアシスタントは、ユーザインタフェース１５４４（例えば、スニペット又はウィンドウ）上でアフォーダンス１５４７及び１５４８を提供する。アフォーダンス１５４７は、第１の電子デバイス（例えば、セットトップボックス１５２０及び／又はＴＶ１５３０）上の映画ＡＢＣ．ｍｏｖの再生を中止するためのボタンとすることができる。アフォーダンス１５４８は、第１の電子デバイス上で再生している映画ＡＢＣ．ｍｏｖの再生の中断又は再開するためのボタンとすることができる。ユーザは、マウス、スタイラス、又は指等の入力デバイスを使用して、アフォーダンス１５４７又は１５４８を選択することができる。アフォーダンス１５４７の選択を受信すると、例えば、デジタルアシスタントは、第１の電子デバイス上の映画ＡＢＣ．ｍｏｖの再生を停止させる。いくつかの実施例では、第１の電子デバイス上の再生を停止した後、デジタルアシスタントはまた、ユーザデバイス１５００上の再生を再開させる。アフォーダンス１５４８の選択を受信すると、例えば、デジタルアシスタントは、第１の電子デバイス上の再生を中断又は再開させる。
【０３００】
いくつかの実施形態では、応答を提供することは、第１の電子デバイスにおいて実行されるタスクに従って発話出力を提供することを含む。図１５Ｂに示されるように、アフォーダンス１５４０又は１５４１によって表されるデジタルアシスタントは、「あなたの映画をＴＶ上で再生します。（Playing your movie on TV.）」等の発話出力１５７２を提供する。
【０３０１】
説明されるように、タスクが第１の電子デバイスにおいて実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、デジタルアシスタントは、タスクを実行するためのコンテンツを第１の電子デバイスに提供する。図１５Ｃを参照して、タスクを実行するためのコンテンツは、例えば、ドキュメント（例えば、ドキュメント１５６０）又は位置情報を含むことができる。例えば、ユーザデバイス１５００のデジタルアシスタントは、「タブレット上でこのｐｄｆを開いてください。（Open this pdf on my tablet.）」等の発話入力１５５６を受信する。デジタルアシスタントは、ユーザ意図がドキュメント１５６０を表示するタスクを実行することであると判定し、タスクがユーザデバイス１５００に通信可能に接続されたタブレット１５３２において実行されると判定する。結果として、デジタルアシスタントは、表示されるドキュメント１５６０をタブレット１５３２に提供する。別の実施例として、ユーザデバイス１５００のデジタルアシスタントは、「この位置を電話に送信してください。（Send this location to my phone.）」等の発話入力１５５４を受信する。デジタルアシスタントは、ユーザ意図が位置情報を使用してナビゲーションのタスクを実行することであると判定し、タスクがユーザデバイス１５００に通信可能に接続された電話機１５２２（例えば、スマートフォン）において実行されると判定する。結果として、デジタルアシスタントは、ナビゲーションのタスクを実行するために、位置情報（例えば、１２３４メインストリート）を電話機１５２２に提供する。
【０３０２】
説明されるように、いくつかの実施例では、タスクを実行するためのコンテンツを第１の電子デバイスに提供した後、デジタルアシスタントは、ユーザデバイスにおいて応答を提供する。いくつかの実施形態では、応答を提供することは、タスクを第１の電子デバイスにおいて実行させることを含む。例えば、図１５Ｄに示されるように、ユーザデバイス１５００のデジタルアシスタントは、位置１２３４メインストリートにナビゲートするタスクを実行する要求を電話機１５２２に送信する。ユーザデバイス１５００のデジタルアシスタントは更に、ドキュメント１５６０を表示するタスクを実行する要求をタブレット１５３２に送信する。いくつかの実施例では、ユーザデバイスにおいて応答を提供することは、第１の電子デバイスにおいて実行されるタスクに従って発話出力を提供することを含む。図１５Ｄに示されるように、デジタルアシスタントは、「あなたのタブレット上でｐｄｆを表示します。（Showing the pdf on your tablet.）」等の発話出力１５７４及び「あなたの電話機上で１２３４メインストリートにナビゲートします。（navigating to 1234 Main St on your phone.）」等の発話出力１５７６を提供する。
【０３０３】
説明されるように、いくつかの実施例では、発話入力は、タスクがユーザデバイス、又はユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを示す１つ以上のキーワードを含まなくてもよい。図１６Ａを参照して、例えば、デジタルアシスタントは、「この映画を再生してください。（Play this movie.）」等の発話入力１６５２を受信する。発話入力１６５２は、映画を再生するタスクがユーザデバイス１６００又は第１の電子デバイス（例えば、セットトップボックス１６２０及び／若しくはＴＶ１６３０、電話機１６２２、又はタブレット１６３２）において実行されるかを示さない。
【０３０４】
いくつかの実施形態では、タスクがユーザデバイスにおいて又は第１の電子デバイスにおいて実行されるかを判定するために、ユーザデバイスのデジタルアシスタントは、ユーザデバイスにおいてタスクを実行することが実行基準を満たすか否かを判定する。実行基準は、タスクの実行を評価することを促進する。例えば、図１６Ａに示されるように、デジタルアシスタントは、ユーザ意図が映画ＡＢＣ．ｍｏｖを再生するタスクを実行することであると判定する。映画を再生するための実行基準は、例えば、映画を再生する品質基準（例えば、４８０ｐ、７２０ｐ、１０８０ｐ）、映画を再生する円滑基準（例えば、遅延若しくは待ちがない）、スクリーンサイズ基準（例えば、４８インチの最小スクリーンサイズ）、又は音響効果基準（例えば、ステレオサウンド、スピーカの数）等を含む。実行基準は、事前に構成されてもよく、及び／又は動的に更新されてもよい。いくつかの実施例では、実行基準は、ユーザ特有データ（例えば、ユーザ優先度）又はデバイス構成データ（例えば、スクリーンの解像度及び電子デバイスのサイズ）等のコンテクスト情報に基づいて判定される。
【０３０５】
いくつかの実施例では、ユーザデバイス１６００のデジタルアシスタントは、ユーザデバイスにおいてタスクを実行することが実行基準を満たすと判定する。例えば、図１６Ａに示されるように、ユーザデバイス１６００は、映画ＡＢＣ．ｍｏｖを再生する実行基準を満たすスクリーン解像度、スクリーンサイズ、及び音響効果を有することができ、それは、低解像度のオンラインビデオとなることがある。ユーザデバイス１６００においてタスクを実行することが実行基準を満たすとの判定に従って、デジタルアシスタントは、タスクがユーザデバイス１６００において実行されると判定する。
【０３０６】
いくつかの実施例では、ユーザデバイス１６００のデジタルアシスタントは、ユーザデバイスにおいてタスクを実行することが実行基準を満たさないと判定する。例えば、ユーザデバイス１６００は、映画ＡＢＣ．ｍｏｖを再生する実行基準を満たすためのスクリーンサイズ、解像度、及び／又は音響効果を有さなくてもよく、それは、高解像度のＢｌｕ−ｒａｙビデオとなることがある。いくつかの実施例では、ユーザデバイスにおいてタスクを実行することが実行基準を満たさないとの判定に従って、ユーザデバイス１６００のデジタルアシスタントは、第１の電子デバイスにおいてタスクを実行することが実行基準を満たすかを判定する。図１６Ｂに示されるように、ユーザデバイス１６００のデジタルアシスタントは、セットトップボックス１６２０及び／又はＴＶ１６３０において映画ＡＢＣ．ｍｏｖを再生するタスクを実行することが実行基準を満たすと判定する。例えば、セットトップボックス１６２０及び／又はＴＶ１６３０は、５２インチのスクリーンサイズを有してもよく、１０８０ｐの解像度を有してもよく、８個の接続されたスピーカを有してもよい。結果として、デジタルアシスタントは、タスクがセットトップボックス１６２０及び／又はＴＶ１６３０において実行されると判定する。
【０３０７】
いくつかの実施例では、ユーザデバイス１６００のデジタルアシスタントは、第１の電子デバイスにおいてタスクを実行することが実行基準を満たさないと判定する。その判定に従って、デジタルアシスタントは、第２の電子デバイスにおいてタスクを実行することが実行基準を満たすかを判定する。例えば、図１６Ｂに示されるように、ＴＶ１６３０は、実行基準（例えば、１０８０ｐ）を満たさないスクリーン解像度（例えば、７２０ｐ）を有してもよい。結果として、デジタルアシスタントは、電話機１６２２（例えば、スマートフォン）又はタブレット１６３２のいずれか１つが実行基準を満たすかを判定する。
【０３０８】
いくつかの実施例では、デジタルアシスタントは、どのデバイスがタスクの最適な実行を提供するかを判定する。例えば、図１６Ｂに示されるように、デジタルアシスタントは、ユーザデバイス１６００、セットトップボックス１６２０及びＴＶ１６３０、電話機１６２２、並びにタブレット１６３２の各々の上で映画ＡＢＣ．ｍｏｖを再生するタスクの実行を評価又は予測する。評価又は予測に基づいて、デジタルアシスタントは、１つのデバイス（例えば、ユーザデバイス１６００）においてタスクを実行することが別のデバイス（例えば、電話機１６２２）においてよりも良好であるか否かを判定し、最適な実行のためのデバイスを判定する。
【０３０９】
説明されるように、いくつかの実施例では、タスクを実行するためのデバイスの判定に従って、デジタルアシスタントは、ユーザデバイス１６００において応答を提供する。いくつかの実施形態では、応答を提供することは、デバイスにおいて実行されるタスクに従って発話出力を提供することを含む。図１６Ｂに示されるように、アフォーダンス１６４０又は１６４１によって表されるデジタルアシスタントは、「あなたのＴＶ上でこの映画を再生します。進めてもよいですか？（I will play this movie on your TV, proceed?）」等の発話出力１６７２を提供する。いくつかの実施例では、デジタルアシスタントは、「ＯＫ」等の発話入力１６５４をユーザから受信する。それに応じて、デジタルアシスタントは、例えば、セットトップボックス１６２０及びＴＶ１６３０において映画ＡＢＣ．ｍｏｖを再生させ、「あなたのＴＶ上であなたの映画を再生しています。（Playing your movie on your TV.）」等の発話出力１６７４を提供する。
【０３１０】
いくつかの実施例では、応答を提供することは、ユーザがタスクの実行のための別の電子デバイスを選択することを可能にする１つ以上のアフォーダンスを提供することを含む。図１６Ｂに示されるように、例えば、デジタルアシスタントは、アフォーダンス１６５５Ａ〜Ｂ（例えば、中止ボタン及びタブレットボタン）を提供する。アフォーダンス１６５５Ａによって、ユーザは、セットトップボックス１６２０及びＴＶ１６３０において映画ＡＢＣ．ｍｏｖを再生することを中止することが可能になる。アフォーダンス１６５５Ｂによって、ユーザは、映画ＡＢＣ．ｍｏｖを再生することを続けるためにタブレット１６３２を選択することが可能になる。
【０３１１】
図１６Ｃを参照して、いくつかの実施形態では、タスクを実行するためのデバイスを判定するために、ユーザデバイス１６００のデジタルアシスタントは、ユーザとのダイアログを開始する。例えば、デジタルアシスタントは、「あなたの映画をＴＶ又はタブレット上で再生しましょうか？（Should I play your movie on the TV or on the tablet?）」等の発話出力１６７６を提供する。ユーザは、「タブレット上で。（On my tablet.）」等の発話入力１６５６を提供する。発話入力１６５６を受信すると、デジタルアシスタントは、映画を再生するタスクがユーザデバイス１６００に通信可能に接続されたタブレット１６３２において再生されると判定する。いくつかの実施例では、デジタルアシスタントは更に、「あなたのタブレット上であなたの映画を再生します。（Playing your movie on your tablet.）」等の発話出力１６７８を提供する。
【０３１２】
図１７Ａを参照して、いくつかの実施形態では、ユーザデバイス１７００のデジタルアシスタントは、第１の電子デバイスにおいて部分的にリモートに実行されたタスクを実行することを続ける。いくつかの実施形態では、ユーザデバイスのデジタルアシスタントは、第３の電子デバイスから受信されたコンテンツを使用してタスクを実行することを続ける。図１７Ａに示されるように、いくつかの実施例では、電話機１７２０は、サーバ１７３０等の第３の電子デバイスからのコンテンツを使用して、フライト予約のタスクを実行していることがある。例えば、ユーザは、Ｋａｙａｋ．ｃｏｍからフライトを予約するために電話機１７２０を使用していることがある。結果として、電話機１７２０は、Ｋａｙａｋ．ｃｏｍと関連付けられた、サーバ１７３０から送信されたコンテンツを受信する。いくつかの実施例では、ユーザは、電話機１７２０でフライトを予約している間に中断されることがあり、ユーザデバイス１７００を使用してフライト予約を継続することを望むことがある。いくつかの実施例では、ユーザは、単純にユーザデバイス１７００を使用することがより便利であることを理由にフライト予約を継続することを望むことがある。従って、ユーザは、「電話機からＫａｙａｋ上でフライト予約を続けてください。（Continue the flight booking on Kayak from my phone.）」等の発話入力１７５２を提供することができる。
【０３１３】
図１７Ｂを参照して、発話入力１７５２を受信すると、デジタルアシスタントは、ユーザ意図がフライト予約のタスクを実行することであると判定する。いくつかの実施例では、デジタルアシスタントは更に、コンテクスト情報に基づいて、タスクがユーザデバイス１７００において実行されると判定する。例えば、デジタルアシスタントは、発話入力１７５２がユーザデバイス１７００において受信されると判定し、従って、タスクがユーザデバイス１７００において実行されると判定する。いくつかの実施例では、デジタルアシスタントは更に、タスクがユーザデバイス１７００において受信されると判定するために、ユーザ優先度等のコンテクスト情報を使用する（例えば、ユーザデバイス１７００は、フライト予約のために過去に頻繁に使用される）。
【０３１４】
図１７Ｂに示されるように、タスクがユーザデバイス１７００において実行され、タスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、デジタルアシスタントは、タスクを実行するためのコンテンツを受信する。いくつかの実施例では、デジタルアシスタントは、コンテンツの少なくとも一部を電話機１７２０（例えば、スマートフォン）から、及び／又はコンテンツの少なくとも一部をサーバ１７３０から受信する。例えば、デジタルアシスタントは、ユーザデバイス１７００がフライト予約を続けることができるように、フライト予約の状況を表すデータを電話機１７２０から受信する。いくつかの実施例では、フライト予約の状況を表すデータは、Ｋａｙａｋ．ｃｏｍと関連付けられたサーバ等のサーバ１７３０に記憶されている。よって、デジタルアシスタントは、フライト予約を続けるためのデータをサーバ１７３０から受信する。
【０３１５】
図１７Ｂに示されるように、コンテンツを電話機１７２０及び／又はサーバ１７３０から受信した後、デジタルアシスタントは、ユーザデバイス１７００において応答を提供する。いくつかの実施例では、応答を提供することは、電話機１７２０において部分的にリモートに実行されたフライト予約のタスクを実行することを続けることを含む。例えば、デジタルアシスタントは、ユーザがＫａｙａｋ．ｃｏｍ上でフライトを予約することを続けることを可能にするユーザインタフェース１７４２を表示する。いくつかの実施例では、応答を提供することは、ユーザデバイス１７００において実行されるタスクと関連付けられたリンクを提供することを含む。例えば、デジタルアシスタントは、フライト予約の現在の状況を提供する（例えば、利用可能なフライトを示す）ユーザインタフェース１７４２（例えば、スニペット又はウィンドウ）を表示する。ユーザインタフェース１７４２はまた、フライト予約のタスクを実行することを続けるためのリンク１７４４（例えば、ウェブブラウザへのリンク）を提供する。いくつかの実施形態では、デジタルアシスタントはまた、「Ｋａｙａｋの予約がここにあります。あなたのウェブブラウザで続けますか？（Here is the booking on Kayak. Continue in your web browser?）」等の発話出力１７７２を提供する。
【０３１６】
図１７Ｂ及び１７Ｃに示されるように、例えば、ユーザがリンク１７４４を選択する場合、デジタルアシスタントは、ウェブブラウジング処理をインスタンス化し、フライト予約タスクを続けるためのユーザインタフェース１７４６（例えば、スニペット又はウィンドウ）を表示する。いくつかの実施例では、発話出力１７７２に応じて、ユーザは、ユーザがユーザデバイス１７００のウェブブラウザを使用してフライト予約を続けることを望むことを確認する「ＯＫ」等の発話入力１７５６を提供する。発話入力１７５６を受信すると、デジタルアシスタントは、ウェブブラウジング処理をインスタンス化し、フライト予約タスクを続けるためのユーザインタフェース１７４６（例えば、スニペット又はウィンドウ）を表示する。
【０３１７】
図１７Ｄを参照して、いくつかの実施形態では、ユーザデバイス１７００のデジタルアシスタントは、第１の電子デバイスにおいて部分的にリモートに実行されたタスクを実行することを続ける。いくつかの実施形態では、ユーザデバイスのデジタルアシスタントは、サーバ等の第３の電子デバイスではなく、第１の電子デバイスから受信されたコンテンツを使用してタスクを実行することを続ける。図１７Ｄに示されるように、いくつかの実施例では、第１の電子デバイス（例えば、電話機１７２０又はタブレット１７３２）は、タスクを実行していることがある。例えば、ユーザは、電子メールを構成するために電話機１７２０を使用していることがある、又は写真等のドキュメントを編集するためにタブレット１７３２を使用していることがある。いくつかの実施例では、ユーザは、電話機１７２０若しくはタブレット１７３２を使用している間に中断され、及び／又はユーザデバイス１７００を使用してタスクの実行を続けることを望む。いくつかの実施例では、ユーザは、単純にユーザデバイス１７００（例えば、より大きなスクリーン）を使用することがより便利であることを理由に、タスクの実行を続けることを望むことがある。従って、ユーザは、「ちょうど編集していたドキュメントを開いてください。（Open the document I was just editing.）」等の発話入力１７５８、又はちょうど書いていた電子メールを開いてください。（Open the email I was just drafting.）」等の発話入力１７５９を提供することができる。
【０３１８】
図１７Ｄを参照して、発話入力１７５８又は１７５９を受信すると、デジタルアシスタントは、ユーザ意図がドキュメントを編集し、又は電子メールを構成するタスクを実行することであると判定する。上記説明されたものと同様に、いくつかの実施例では、デジタルアシスタントは更に、コンテクスト情報に基づいてタスクがユーザデバイス１７００において実行されると判定し、タスクを実行するためのコンテンツがリモートに位置すると判定する。上記説明されたのと同様に、いくつかの実施例では、デジタルアシスタントは、コンテクスト情報（例えば、ユーザ特有データ）に基づいて、コンテンツがサーバではなく第１の電子デバイス（例えば、電話機１７２０又はタブレット１７３２）に対してリモートに位置すると判定する。図１７Ｄに示されるように、タスクがユーザデバイス１７００において実行され、タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、デジタルアシスタントは、タスクを実行するためのコンテンツを受信する。いくつかの実施例では、デジタルアシスタントは、コンテンツの少なくとも一部を電話機１７２０（例えば、スマートフォン）から、及び／又はコンテンツの少なくとも一部をタブレット１７３０から受信する。コンテンツを電話機１７２０及び／又はタブレット１７３２から受信した後、デジタルアシスタントは、ユーザがドキュメントを編集することを続けるためにユーザインタフェース１７４８を表示し、及び／又はユーザが電子メールを構成することを続けるためにユーザインタフェース１７４９を表示する等、ユーザデバイス１７００において応答を提供する。ユーザデバイス１７００のデジタルアシスタントはまた、第１の電子デバイスに、ユーザデバイス１７００において部分的にリモートに実行されたタスクを実行することを続けさせることができることを認識されよう。例えば、ユーザは、ユーザデバイス１７００上で電子メールを構成していることがあり、そのままにする必要があることがある。ユーザは、「電話で書いていた電子メールを開いてください。（Open the email I was drafting on my phone.）」等の発話入力を提供する。発話入力に基づいて、デジタルアシスタントは、ユーザ意図が電話機１７２０上でタスクを実行することを続けることであり、コンテンツがユーザデバイス１７００においてリモートに位置すると判定する。いくつかの実施例では、デジタルアシスタントは、上記説明されたものと同様に、タスクを実行するためのコンテンツを第１の電子デバイスに提供し、第１の電子デバイスにタスクを実行することを続けさせる。
【０３１９】
図１７Ｅを参照して、いくつかの実施形態では、タスクを実行することを続けることは、例えば、ユーザデバイス１７００及び第１の電子デバイス（例えば、電話機１７２０）を含む複数のデバイスの間で共有又は同期されたコンテクスト情報に基づいている。説明されるように、いくつかの実施例では、デジタルアシスタントは、ユーザ意図が発話入力及びコンテクスト情報に基づいていると判定する。コンテクスト情報は、ローカル又はリモートに記憶されていてもよい。例えば、図１７Ｅに示されるように、ユーザは、「ニューヨークの天気はどうですか？（What is the weather like in New York?）」等の発話入力１７６０を電話機１７２０に提供する。電話機１７２０のデジタルアシスタントは、ユーザ意図を判定し、ニューヨークでの天気情報を取得するタスクを実行し、電話機１７２０のユーザインタフェース上でニューヨークの天気情報を表示する。ユーザは続いて、「ロサンゼルスはどうですか？（How about in Los Angeles?）」等の発話入力１７６１をユーザデバイス１７００に提供する。いくつかの実施例では、ユーザデバイス１７００のデジタルアシスタントは、直接又はサーバを通じてのいずれかで電話機１７２０に記憶され、及び／又は電話機１７２０によって共有されたコンテクスト情報を使用してユーザ意図を判定する。コンテクスト情報は、例えば、電話機１７２０と関連付けられた履歴的ユーザデータ、会話状態、システム状態等を含む。履歴的ユーザデータ及び会話状態の両方は、ユーザが天気情報について問い合わせていたことを示す。従って、ユーザデバイス１７００のデジタルアシスタントは、ユーザ意図がロサンゼルスでの天気情報を取得することであると判定する。ユーザ意図に基づいて、ユーザデバイス１７００のデジタルアシスタントは、天気情報を、例えば、サーバから受信し、ユーザデバイス１７１０上で天気情報を表示するユーザインタフェース１７５１を提供する。
６．デジタルアシスタントの例示的な機能−音声対応システム構成管理
【０３２０】
図１８Ａ〜１８Ｆ及び１９Ａ〜１９Ｄは、デジタルアシスタントによって、システム構成情報を提供し、ユーザ要求に応じてタスクを実行する機能性を示す。いくつかの実施例では、デジタルアシスタントシステム（例えば、デジタルアシスタントシステム７００）は、様々な実施例に従ってユーザデバイスによって実装されてもよい。いくつかの実施例では、ユーザデバイス、サーバ（例えば、サーバ１０８）、又はそれらの組み合わせは、デジタルアシスタントシステム（例えば、デジタルアシスタントシステム７００）を実装してもよい。ユーザデバイスは、例えば、デバイス１０４、２００、又は４００を使用して実装される。いくつかの実施例では、ユーザデバイスは、ラップトップコンピュータ、デスクトップコンピュータ、又はタブレットコンピュータである。ユーザデバイスは、デスクトップ環境等のマルチタスキング環境で動作する。
【０３２１】
図１８Ａ〜１８Ｆ及び１９Ａ〜１９Ｄを参照して、いくつかの実施例では、ユーザデバイスは、様々なユーザインタフェース（例えば、ユーザインタフェース１８１０及び１９１０）を提供する。上記説明されたものと同様に、ユーザデバイスは、ディスプレイ上で様々なユーザインタフェースを表示し、様々なユーザインタフェースによって、ユーザは、１つ以上の処理（例えば、システム構成処理）をインスタンス化することが可能になる。
【０３２２】
図１８Ａ〜１８Ｆ及び１９Ａ〜１９Ｄに示されるように、上記説明されたものと同様に、ユーザデバイスは、ユーザインタフェース（例えば、ユーザインタフェース１８１０及び１９１０）上で、デジタルアシスタントサービスのインスタンス化を促進するアフォーダンス（例えば、アフォーダンス１８４０及び１９４０）を表示する。
【０３２３】
上記説明されたものと同様に、いくつかの実施例では、デジタルアシスタントは、所定のフレーズを受信したことに応じてインスタンス化される。いくつかの実施例では、デジタルアシスタントは、アフォーダンスの選択を受信したことに応じてインスタンス化される。
【０３２４】
図１８Ａ〜１８Ｆ及び１９Ａ〜１９Ｄを参照して、いくつかの実施形態では、デジタルアシスタントは、発話入力１８５２、１８５４、１８５６、１８５８、１８６０、１８６２、１９５２、１９５４、１９５６、及び１９５８等の１つ以上の発話入力をユーザから受信する。ユーザは、ユーザデバイスの１つ以上のシステム構成を管理する目的で、様々な発話入力を提供する。システム構成は、音声構成、日付及び時間構成、聞き取り構成、表示構成、入力デバイス構成、通知構成、印刷構成、セキュリティ構成、バックアップ構成、アプリケーション構成、又はユーザインタフェース構成等を含むことができる。音声構成を管理するために、発話入力は、「マイクロフォンの音量を下げてください。（Mute my microphone.）」、「ボリュームを上げてください。（Turn the volume all the up.）」、又は「ボリュームを１０％上げてください。（Turn the volume up 10%.）」等を含んでもよい。日付及び時間構成を管理するために、発話入力は、「時間帯は何ですか？（What is my time zone?）」、「時間帯をクパーチノの時間に変えてください。（Change my time zone to Cupertino Time.）」、又は「ロンドンの時間帯についてのクロックを追加してください。（Add a clock for London time zone.）」等を含んでもよい。聞き取り構成を管理するために、発話入力は、「聞き取りをターンオンしてください。（Turn on dictation.）」、「聞き取りをターンオフしてください。（Turn off dictation.）」、「中国語で聞き取りしてください。（Dictation in Chinese.）」、又は「高度なコマンドを有効にしてください。（Enable advanced commands.）」等を含んでもよい。表示構成を管理するために、発話入力は、「スクリーンをより明るくしてください。（Make my screen brighter.）」、「コントラストを２０％上げてください。（Increase the contrast my 20%.）」、「スクリーンを第２のモニタに拡張してください。（Extend my screen to a second monitor.）」、又は「ディスプレイを映してください。（Mirror my display.）」等を含んでもよい。入力デバイス構成を管理するために、発話入力は、「Ｂｌｕｅｔｏｏｔｈキーボードを接続してください。（Connect my Bluetooth keyboard.）」又は「マウスポインタをより大きくしてください。（Make my mouse pointer bigger.）」等を含んでもよい。ネットワーク構成を管理するために、発話入力は、「Ｗｉ−Ｆｉをターンオンしてください。（Turn Wi-Fi on.）」、「Ｗｉ−Ｆｉをターンオフしてください。（Turn Wi-Fi off.）」、「どのＷｉ−Ｆｉネットワークを接続しますか（Which Wi-Fi network am I connected to?）」、又は「電話に接続しますか（Am I connected to my phone?）」等を含んでもよい。通知構成を管理するために、発話入力は、「応答不可をターンオンしてください。（Turn on Do not Disturb.）」、「それらの通知を見せることを停止してください。（Stop showing me these notifications.）」、「新たな電子メールのみを見せてください。（Show only new emails.）」、又は「テキストメッセージについてのアラートがありません。（No alert for text message.）」等を含んでもよい。印刷構成を管理するために、発話入力は、「プリンタのインクが十分にありますか？（Does my printer have enough ink?）」又は「プリンタが接続されていますか？（Is my printer connected?）」等を含んでもよい。セキュリティ構成を管理するために、発話��力は、「ジョンのアカウントについてのパスワードを変えてください。（Change password for John's account.）」、「ファイアウォールをターンオンしてください。（Turn on firewall.）」、又は「クッキーを無効にしてください。（Disable cookie.）」等を含んでもよい。バックアップ構成を管理するために、発話入力は、「ここでバックアップを実行してください。（Run backup now.）」、「１月に１回の間隔でバックアップを設定してください。（Set backup interval to once a month.）」、又は「去年のバックアップを７月４日に戻してください。（Recover the July 4 backup of last year.）」等を含んでもよい。アプリケーション構成を管理するために、発話入力は、「デフォルトのウェブブラウザをＳａｆａｒｉに変えてください。（Change my default web browser to Safari.）」又は「サインインする都度、メッセージアプリケーションに自動的にログインしてください。（Automatically log in to Messages application each time I sign in.）」等を含んでもよい。ユーザインタフェース構成を管理するために、発話入力は、「デスクトップのウォールペーパを変えてください。（Change my desktop wallpapers.）」、「ドックを隠してください。（Hide the dock.）」、又は「Ｅｖｅｒｎｏｔｅをドックに追加してください。（Add Evernote to the Dock.）」等を含んでもよい。システム構成を管理するために発話入力を使用する様々な実施例は、以下で更に詳細に説明される。
【０３２５】
上記説明されたものと同様に、いくつかの実施例では、デジタルアシスタントは、ユーザデバイスにおいてユーザから直接、又はユーザデバイスに通信可能に接続された別の電子デバイスを通じて間接的に発話入力を受信する。
【０３２６】
図１８Ａ〜１８Ｆ及び１９Ａ〜１９Ｄを参照して、いくつかの実施形態では、デジタルアシスタントは、ユーザデバイスと関連付けられたコンテクスト情報を特定する。コンテクスト情報は、例えば、ユーザ特有データ、センサデータ、及びユーザデバイス構成データを含む。いくつかの実施例では、ユーザ特有データは、ユーザ優先度又はユーザデバイスとのユーザの対話の履歴等を示すログ情報を含む。例えば、ユーザ特有データは、ユーザのシステムがバックアップされた最後の時を示し、いくつかのＷｉ−Ｆｉネットワークが利用可能であるときの特定のＷｉ−Ｆｉネットワのユーザの優先度、等を示す。いくつかの実施例では、センサデータは、センサによって収集された様々なデータを含む。例えば、センサデータは、プリンタインクレベルセンサによって収集されたプリンタインクレベルを示す。いくつかの実施例では、ユーザデバイス構成データは、現在及び履歴的なデバイス構成を含む。例えば、ユーザデバイス構成データは、ユーザデバイスが現在Ｂｌｕｅｔｏｏｔｈ接続を使用して１つ以上の電子デバイスに通信可能に接続されていることを示す。電子デバイスは、例えば、スマートフォン、セットトップボックス、又はタブレット等を含んでもよい。以下で更に詳細に説明されるように、ユーザデバイスは、ユーザ意図を判定することができ、及び／又はコンテクスト情報を使用して１つ以上の処理を実行することができる。
【０３２７】
図１８Ａ〜１８Ｆ及び１９Ａ〜１９Ｄを参照して、上記説明されたものと同様に、発話入力を受信したことに応じて、デジタルアシスタントは、発話入力に基づいてユーザ意図を判定する。デジタルアシスタントは、自然言語処理の結果に基づいてユーザ意図を判定する。例えば、デジタルアシスタントは、ユーザ入力に基づいて実施可能な意図を特定し、特定された実施可能な意図を表すために構造化されたクエリを生成する。構造化されたクエリは、実施可能な意図と関連付けられた１つ以上のパラメータを含む。１つ以上のパラメータは、実施可能な意図に基づいてタスクの実行を促進するために使用されてもよい。例えば、「ボリュームを１０％上げてください。（Turn the volume up by 10%.）」等の発話入力に基づいて、デジタルアシスタントは、実施可能な意図がシステムボリュームを調節することであると判定し、パラメータは、ボリュームを現在のボリュームレベルよりも１０％高く設定することを含む。いくつかの実施形態では、デジタルアシスタントはまた、発話入力及びコンテクスト情報に基づいてユーザ意図を判定する。例えば、コンテクスト情報は、ユーザデバイスの現在のボリュームが５０％にあることを示してもよい。結果として、「ボリュームを１０％上げてください。」等の発話入力を受信すると、デジタルアシスタントは、ユーザ意図がボリュームレベルを６０％に上げることであると判定する。発話入力及びコンテクスト情報に基づいてユーザ意図を判定することは、様々な実施例において以下で更に詳細に説明される。
【０３２８】
いくつかの実施形態では、デジタルアシスタントは更に、ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定する。判定の様々な実施例は、図１８Ａ〜１８Ｆ及び１９Ａ〜１９Ｄに関して以下で更に詳細に提供される。
【０３２９】
図１８Ａを参照して、いくつかの実施例では、ユーザデバイスは、タスクを実行することと関連付けられたユーザインタフェース１８３２を表示する。例えば、タスクは、ミーティングの招待を構成することを含む。ミーティングの招待を構成する際に、ユーザは、ミーティングの招待を適切に構成することができるように、ユーザデバイスの時間帯を知ることを望むことがある。いくつかの実施例では、ユーザは、アフォーダンス１８４０又は１８４１によって表されるデジタルアシスタントを呼び出すために発話入力１８５２を提供する。発話入力１８５２は、例えば、「はい、アシスタント。」を含む。ユーザデバイスは、発話入力１８５２を受信し、それに応じて、デジタルアシスタントが後続の発話入力をアクティブに監視するように、デジタルアシスタントを呼び出す。いくつかの実施例では、デジタルアシスタントは、それが呼び出されることを示す発話出力１８７２を提供する。例えば、発話出力１８７２は、「どうぞ、聞いていますよ。（Go ahead, I am listening.）」を含む。
【０３３０】
図１８Ｂを参照して、いくつかの実施例では、ユーザは、「時間帯は何ですか？（What is my time zone?）」等の発話入力１８５４を提供する。デジタルアシスタントは、ユーザ意図がユーザデバイスの時間帯を取得することであると判定する。デジタルアシスタントは更に、ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定する。いくつかの実施例では、ユーザ意図が情報の要求を示すか又タスクを実行する要求を示すかを判定することは、ユーザ意図がシステム構成を変えることであるか否かを判定することを含む。例えば、ユーザ意図がユーザデバイスの時間帯を取得することであると判定することに基づいて、デジタルアシスタントは、システム構成が変わらないと判定する。結果として、デジタルアシスタントは、ユーザ意図が情報の要求を示すと判定する。
【０３３１】
いくつかの実施形態では、ユーザ意図が情報の要求を示すとの判定に従って、デジタルアシスタントは、情報の要求への発話応答を提供する。いくつかの実施例では、デジタルアシスタントは、情報の要求に従って１つ以上のシステム構成の状況を取得し、１つ以上のシステム構成の状況に従って発話応答を提供する。図１８Ｂに示されるように、デジタルアシスタントは、ユーザ意図がユーザデバイスの時間帯を取得することであると判定し、このユーザ意図が情報の要求を示す。従って、デジタルアシスタントは、時間帯状況をユーザデバイスの時間及び日付構成から取得する。時間帯状況は、例えば、ユーザデバイスが太平洋時間帯に設定されることを示す。時間帯状況に基づいて、デジタルアシスタントは、「あなたのコンピュータが太平洋標準時間に設定されます。（Your computer is set to Pacific Standard Time.）」等の発話出力１８７４を提供する。いくつかの実施例では、デジタルアシスタントは更に、情報の要求と関連付けられたリンクを提供する。図１８Ｂに示されるように、デジタルアシスタントは、ユーザがデータ及び時間構成を管理することを可能にする、リンク１８３４を提供する。いくつかの実施例では、ユーザは、リンク１８３４を選択するための入力デバイス（例えば、マウス）を使用する。リンク１８３４のユーザの選択を受信すると、デジタルアシスタントは、日付及び時間構成処理をインスタンス化し、関連付けられた日付及び時間構成ユーザインタフェースを表示する。よって、ユーザは、日付及び時間構成を更に管理するために日付及び時間構成ユーザインタフェースを使用することができる。
【０３３２】
図１８Ｃを参照して、いくつかの実施例では、ユーザデバイスは、タスクを実行することと関連付けられたユーザインタフェース１８３６を表示する。例えば、タスクは、ビデオ（例えば、ＡＢＣ．ｍｏｖ）を再生することを含む。ビデオを鑑賞する経験を高めるために、ユーザは、スピーカを使用することを望むことがあり、Ｂｌｕｅｔｏｏｔｈスピーカが接続されているかを知ることを望むことがある。いくつかの実施例では、ユーザは、「Ｂｌｕｅｔｏｏｔｈスピーカが接続されていますか？（Is my Bluetooth speaker connected?）」等の発話入力１８５６を提供する。デジタルアシスタントは、ユーザ意図がＢｌｕｅｔｏｏｔｈスピーカ１８２０の接続状況を取得することであると判定する。デジタルアシスタントは更に、Ｂｌｕｅｔｏｏｔｈスピーカ１８２０の接続状況を取得することがいずれのシステム構成も変えず、従って、情報の要求であると判定する。
【０３３３】
いくつかの実施形態では、ユーザ意図が情報の要求を示すとの判定に従って、デジタルアシスタントは、情報の要求に従ってシステム構成の状況を取得し、システム構成の状況に従って発話応答を提供する。図１８Ｃに示されるように、デジタルアシスタントは、接続状況をユーザデバイスのネットワーク構成から取得する。接続状況は、例えば、ユーザデバイス１８００がＢｌｕｅｔｏｏｔｈスピーカ１８２０に接続されていないことを示す。接続状況に基づいて、デジタルアシスタントは、「いいえ、接続されていません、ネットワーク構成におけるＢｌｕｅｔｏｏｔｈデバイスをチェックしてください。（No, it is not connected, you can check Bluetooth devices in the network configurations.）」等の発話出力１８７６を提供する。いくつかの実施例では、デジタルアシスタントは更に、情報の要求と関連付けられたリンクを提供する。図１８Ｃに示されるように、デジタルアシスタントは、ユーザがネットワーク構成を更に管理することを可能にする、リンク１８３８を提供する。いくつかの実施例では、ユーザは、リンク１８３８を選択するための入力デバイス（例えば、マウス）を使用する。リンク１８３８のユーザの選択を受信すると、デジタルアシスタントは、ネットワーク構成処理をインスタンス化し、関連付けられたネットワーク構成ユーザインタフェースを表示する。よって、ユーザは、ネットワーク構成を更に管理するために、ネットワーク構成ユーザインタフェースを使用することができる。
【０３３４】
図１８Ｄを参照して、いくつかの実施例では、ユーザデバイスは、タスクを実行することと関連付けられたユーザインタフェース１８４２を表示する。例えば、タスクは、ドキュメントを参照すること及び／又は編集することを含む。ユーザは、ドキュメントをプリントアウトすることを望むことがあり、プリンタ１８３０が印刷ジョブのために十分なインクを有しているかを知ることを望むことがある。いくつかの実施例では、ユーザは、「プリンタが十分なインクを有していますか？（Does my printer have enough ink?）」等の発話入力１８５８を提供する。デジタルアシスタントは、ユーザ意図がプリンタのプリンタインクレベル状況を取得することであると判定する。デジタルアシスタントは更に、プリンタレベル状況を取得することがいずれのシステム構成を変えず、従って、情報の要求であると判定する。
【０３３５】
いくつかの実施形態では、ユーザ意図が情報の要求を示すとの判定に従って、デジタルアシスタントは、情報の要求に従ってシステム構成の状況を取得し、システム構成の状況に従って発話応答を提供する。図１８Ｄに示されるように、デジタルアシスタントは、プリンタインクレベル状況をユーザデバイスの印刷構成から取得する。プリンタインクレベル状況は、例えば、プリンタ１８３０のプリンタインクレベルが５０％にあることを示す。接続状況に基づいて、デジタルアシスタントは、「はい、あなたのプリンタはインクが十分にあります。また、プリンタ構成においてプリンタ供給レベルを探してください。（Yes, your printer has enough ink. You can also look up printer supply levels in the printer configurations.）」等の発話出力１８７８を提供する。いくつかの実施例では、デジタルアシスタントは更に、情報の要求と関連付けられたリンクを提供する。図１８Ｄに示されるように、デジタルアシスタントは、ユーザがプリンタ構成を更に管理することを可能にする、リンク１８４４を提供する。いくつかの実施例では、ユーザは、リンク１８４４を選択するための入力デバイス（例えば、マウス）を使用する。リンクのユーザの選択を受信すると、デジタルアシスタントは、プリンタ構成処理をインスタンス化し、関連付けられたプリンタ構成ユーザインタフェースを表示する。よって、ユーザは、プリンタ構成を更に管理するためにプリンタ構成ユーザインタフェースを使用することができる。
【０３３６】
図１８Ｅを参照して、いくつかの実施例では、ユーザデバイスは、タスクを実行することと関連付けられたユーザインタフェース１８４６を表示する。例えば、タスクは、ウェブブラウザ（例えば、Ｓａｆａｒｉ）を使用してインターネットをブラウジングすることを含む。インターネットをブラウジングするために、ユーザは、利用可能なＷｉ−Ｆｉネットワークを知ることを望むことがあり、接続する１つのＷｉ−Ｆｉネットワークを選択することを望むことがある。いくつかの実施例では、ユーザは、「どのＷｉ−Ｆｉネットワークが利用可能ですか？（Which Wi-Fi networks are available?）」等の発話入力１８６０を提供する。デジタルアシスタントは、ユーザ意図が利用可能なＷｉ−Ｆｉネットワークのリストを取得することであると判定する。デジタルアシスタントは更に、利用可能なＷｉ−Ｆｉネットワークのリストを取得することがいずれのシステム構成を変えず、従って、情報の要求であると判定する。
【０３３７】
いくつかの実施形態では、ユーザ意図が情報の要求を示すとの判定に従って、デジタルアシスタントは、情報の要求に従ってシステム構成の状況を取得し、システム構成の状況に従って発話応答を提供する。図１８Ｅに示されるように、デジタルアシスタントは、現在利用可能なＷｉ−Ｆｉネットワークの状況をユーザデバイスのネットワーク構成から取得する。現在利用可能なＷｉ−Ｆｉネットワークの状況は、例えば、Ｗｉ−Ｆｉネットワーク１、Ｗｉ−Ｆｉネットワーク２、及びＷｉ−Ｆｉネットワーク３が利用可能であることを示す。いくつかの実施例では、状況は更に、Ｗｉ−Ｆｉネットワークの各々の信号強度を示す。デジタルアシスタントは、状況に従って情報を提供するユーザインタフェース１８４５を表示する。例えば、ユーザインタフェース１８４５は、利用可能なＷｉ−Ｆｉネットワークのリストを提供する。デジタルアシスタントはまた、「利用可能なＷｉ−Ｆｉネットワークのリストがここにあります。（Here is a list of available Wi-Fi networks.）」等の発話出力１８８０を提供する。いくつかの実施例では、デジタルアシスタントは更に、情報の要求と関連付けられたリンクを提供する。図１８Ｅに示されるように、デジタルアシスタントは、ユーザがネットワーク構成を更に管理することを可能にする、リンク１８４７を提供する。いくつかの実施例では、ユーザは、リンク１８４７を選択するための入力デバイス（例えば、マウス）を使用する。リンク１８４７のユーザの選択を受信すると、デジタルアシスタントは、ネットワーク構成処理をインスタンス化し、関連付けられたネットワーク構成ユーザインタフェースを表示する。よって、ユーザは、構成を更に管理するためにネットワーク構成ユーザインタフェースを使用することができる。
【０３３８】
図１８Ｆを参照して、いくつかの実施例では、ユーザデバイスは、タスクを実行することと関連付けられたユーザインタフェース１８９０を表示する。例えば、タスクは、ミーティングの課題を準備することを含む。ミーティング課題を準備する際に、ユーザは、ミーティングについての日付及び時間を発見することを望むことがある。いくつかの実施例では、ユーザは、「朝に本日の次のミーティングについてのカレンダの時間を発見してください。（Find a time on my calendar for next Tuesday's meeting in the morning.）」等の発話入力１８６２を提供する。デジタルアシスタントは、ユーザ意図が火曜日の朝についてユーザのカレンダの利用可能な時間帯を発見することであると判定する。デジタルアシスタントは更に、時間帯を発見することがいずれのシステム構成を変えず、従って、情報の要求であると判定する。
【０３３９】
いくつかの実施形態では、ユーザ意図が情報の要求を示すとの判定に従って、デジタルアシスタントは、情報の要求に従ってシステム構成の状況を取得し、システム構成の状況に従って発話応答を提供する。図１８Ｆに示されるように、デジタルアシスタントは、ユーザのカレンダの状況をカレンダ構成から取得する。ユーザのカレンダの状況は、例えば、火曜日の午前９時又は午前１１時がいまだ利用可能であることを示す。デジタルアシスタントは、状況に従って情報を提供するユーザインタフェース１８９１を表示する。例えば、ユーザインタフェース１８９１は、ユーザのカレンダをユーザが要求した日付及び時間と近接して提供する。いくつかの実施例では、デジタルアシスタントはまた、「火曜日の午前９時又は午前１１時が利用可能であるようです。（It looks like Tuesday 9a.m. or 11a.m is available.）」等の発話出力１８８２を提供する。いくつかの実施例では、デジタルアシスタントは更に、情報の要求と関連付けられたリンクを提供する。図１８Ｆに示されるように、デジタルアシスタントは、ユーザがカレンダ構成を更に管理することを可能にする、リンク１８４９を提供する。いくつかの実施例では、ユーザは、リンク１８４９を選択するための入力デバイス（例えば、マウス）を使用する。リンク１８４９のユーザの選択を受信すると、デジタルアシスタントは、カレンダ構成処理をインスタンス化し、関連付けられたカレンダ構成ユーザインタフェースを表示する。よって、ユーザは、構成を更に管理するためにカレンダ構成ユーザインタフェースを使用することができる。
【０３４０】
図１９Ａを参照して、ユーザデバイスは、タスクを実行することと関連付けられたユーザインタフェース１９３２を表示する。例えば、タスクは、ビデオ（例えば、ＡＢＣ．ｍｏｖ）を再生することを含む。ビデオを再生している間、ユーザは、ボリュームを上げることを望むことがある。いくつかの実施例では、ユーザは、「ボリュームをかなり上げてください。（Turn the volume all the way up.）」等の発話入力１９５２を提供する。デジタルアシスタントは、ユーザ意図がボリュームをその最大レベルまで上げることであると判定する。デジタルアシスタントは更に、ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定する。例えば、ユーザ意図がユーザデバイスのボリュームを上げることであると判定することに基づいて、デジタルアシスタントは、音声構成が変わり、従って、ユーザ意図がタスクを実行する要求を示すと判定する。
【０３４１】
いくつかの実施形態では、ユーザ意図がタスクを実行する要求を示すとの判定に従って、デジタルアシスタントは、タスクを実行するユーザデバイスと関連付けられた処理をインスタンス化する。処理をインスタンス化することは、処理がまだ実行中でない場合に処理を呼び出すことを含む。処理の少なくとも１つのインスタンスが実行中である場合、処理をインスタンス化することは、処理の既存のインスタンスを実行すること、又は処理の新たなインスタンスを生成することを含む。例えば、音声構成処理をインスタンス化することは、音声構成処理を呼び出すこと、既存の音声構成処理を使用すること、又は音声構成処理の新たなインスタンスを生成することを含む。いくつかの実施例では、処理をインスタンス化することは、処理を使用してタスクを実行することを含む。例えば、図１９Ａに示されるように、ボリュームをその最大レベルまで上げるユーザ意図に従って、デジタルアシスタントは、ボリュームをその最大レベルに設定する音声構成処理をインスタンス化する。いくつかの実施例では、デジタルアシスタントは更に、「ＯＫ、ボリュームをかなり高く設定しました。（OK, I turned the volume all the way up.）」等の発話出力１９７２を提供する。
【０３４２】
図１９Ｂを参照して、ユーザデバイスは、タスクを実行することと関連付けられたユーザインタフェース１９３４を表示する。例えば、タスクは、ドキュメントを参照すること、及び編集することを含む。ユーザは、目の保護のためにスクリーンの輝度を下げることを望むことがある。いくつかの実施例では、ユーザは、「スクリーンの輝度を１０％低く設定してください。（Set my screen brightness to 10% lower.）」等の発話入力１９５４を提供する。デジタルアシスタントは、発話入力１９５４及びコンテクスト情報に基づいてユーザ意図を判定する。例えば、コンテクスト情報は、現在の輝度構成が９０％にあることを示す。結果として、デジタルアシスタントは、ユーザ意図が輝度レベルを９０％から８０％に下げることであると判定する。デジタルアシスタントは更に、ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定する。例えば、ユーザ意図がスクリーン輝度を８０％に変更することであると判定することに基づいて、デジタルアシスタントは、表示構成が変わり、従って、ユーザ意図がタスクを実行する要求を示すと判定する。
【０３４３】
いくつかの実施形態では、ユーザ意図がタスクを実行する要求を示すとの判定に従って、デジタルアシスタントは、タスクを実行する処理をインスタンス化する。例えば、図１９Ｂに示されるように、輝度レベルを変更するユーザ意図に従って、デジタルアシスタントは、輝度レベルを８０％に下げる表示構成処理をインスタンス化する。いくつかの実施例では、デジタルアシスタントは更に、「ＯＫ、あなたのスクリーン輝度を８０％にしました。（OK, I turned your screen brightness to 80%.）」等の発話出力１９７４を提供する。いくつかの実施例では、図１９Ｂに示されるように、デジタルアシスタントは、ユーザがタスクを実行した結果を操作することを可能にするアフォーダンス１９３６を提供する。例えば、アフォーダンス１９３６は、ユーザが輝度レベルを更に変更することを可能にするスライドバーとすることができる。
【０３４４】
図１９Ｃを参照して、ユーザデバイスは、タスクを実行することと関連付けられたユーザインタフェース１９３８を表示する。例えば、タスクは、１つ以上の通知を提供することを含む。通知は、電子メールのアラート、メッセージ、又はリマインダ等を含むことができる。いくつかの実施例では、通知は、ユーザインタフェース１９３８において提供される。通知は、ユーザにリアルタイムで、又はそれがユーザデバイスにおいて利用可能である直後にユーザに表示又は提供されてもよい。例えば、通知は、ユーザデバイスがそれを受信した直後にユーザインタフェース１９３８及び／又はユーザインタフェース１９１０に現れる。時に、ユーザは、重要なタスク（例えば、ドキュメントを編集すること）を実行していることがあり、通知によって邪魔されたくないことがある。いくつかの実施例では、ユーザは、「到着する電子メールについて通知しないでください。（Don't notify me about incoming emails.）」等の発話入力１９５６を提供する。デジタルアシスタントは、ユーザ意図が電子メールのアラートをターンオフすることであると判定する。ユーザ意図が到着する電子メールのアラートをターンオフすることであると判定することに基づいて、デジタルアシスタントは、通知構成が変わり、従って、ユーザ意図がタスクを実行する要求を示すと判定する。
【０３４５】
いくつかの実施形態では、ユーザ意図がタスクを実行する要求を示すとの判定に従って、デジタルアシスタントは、タスクを実行する処理をインスタンス化する。例えば、図１９Ｃに示されるように、ユーザ意図に従って、デジタルアシスタントは、電子メールのアラートをターンオフする通知構成処理をインスタンス化する。いくつかの実施例では、デジタルアシスタントは更に、「ＯＫ、メールについての通知をターンオフします。（OK, I turned off notifications for mail.）」等の発話出力１９７６を提供する。いくつかの実施例では、図１９Ｃに示されるように、デジタルアシスタントは、ユーザがタスクを実行した結果を操作することを可能にするユーザインタフェース１９４２（例えば、スニペット又はウィンドウ）を提供する。例えば、ユーザインタフェース１９４２は、アフォーダンス１９４３（例えば、中止ボタン）を提供する。ユーザが電子メールの通知を受信することを続けることを望む場合、例えば、ユーザは、電子メールの通知を再度ターンオンするためのアフォーダンス１９４３を選択することができる。いくつかの実施例では、ユーザはまた、電子メールの通知をターンオンするために、「到着する電子メールを通知してください。（Notify me of incoming emails.）」等の別の発話入力を提供することができる。
【０３４６】
図１９Ｄを参照して、いくつかの実施形態では、デジタルアシスタントは、ユーザの発話入力に基づいてタスクを完了することが可能でないことがあり、よって、ユーザがタスクを実行することを可能にするユーザインタフェースを提供することができる。図１９Ｄに示されるように、いくつかの実施例では、ユーザは、「スクリーンセーバ上でカスタムメッセージを見せてください。（Show a custom message on my screen saver.）」等の発話入力１９５８を提供する。デジタルアシスタントは、ユーザ意図がカスタムメッセージを示すためにスクリーンセーバ設定を変更することであると判定する。デジタルアシスタントは更に、ユーザ意図が表示構成を変えることであり、従って、ユーザ意図がタスクを実行する要求を示すと判定する。
【０３４７】
いくつかの実施形態では、ユーザ意図がタスクを実行する要求を示すとの判定に従って、デジタルアシスタントは、タスクを実行するユーザデバイスと関連付けられた処理をインスタンス化する。いくつかの実施例では、デジタルアシスタントがユーザ意図に基づいてタスクを完了することができない場合、それは、ユーザがタスクを実行することを可能にするユーザインタフェースを提供する。例えば、発話入力１９５８に基づいて、デジタルアシスタントは、スクリーンセーバ上に示されるカスタムメッセージの内容を判定することが可能でないことがあり、従って、カスタムメッセージを表示するタスクを完了することができない。図１９Ｄに示されるように、いくつかの実施例では、デジタルアシスタントは、表示構成処理をインスタンス化し、ユーザがスクリーンセーバ設定を手動で変更することを可能にするためのユーザインタフェース１９４６（例えば、スニペット又はウィンドウ）を提供する。別の実施例として、デジタルアシスタントは、ユーザがタスクを実行することを可能にするリンク１９４４（例えば、表示構成へのリンク）を提供する。ユーザは、マウス、指、又はスタイラス等の入力デバイスを使用することによって、リンク１９４４を選択する。ユーザの選択を受信すると、デジタルアシスタントは、表示構成処理をインスタンス化し、ユーザがスクリーンセーバ設定を変更することを可能にするためのユーザインタフェース１９４６を表示する。いくつかの実施例では、デジタルアシスタントは更に、「スクリーンセーバ構成でスクリーンセーバのオプションを利用することができます。（You can explore screen saver options in the screen saver configurations.）」等の発話出力１９７８を提供する。
７．デジタルアシスタントを動作させる処理−インテリジェント検索及びオブジェクト管理
【０３４８】
図２０Ａ〜２０Ｇは、いくつかの実施形態に従った、デジタルアシスタントを動作させる例示的な処理２０００のフローチャートを示す。処理２０００は、１つ以上のデバイス１０４、１０８、２００、４００、又は６００を使用して実行されてもよい（図１、２Ａ、４、又は６Ａ〜Ｂ）。処理２０００における動作は、任意選択的に組み合わされ若しくは分離され、並びに／又はいくつかの動作の順序は任意選択的に変更される。
【０３４９】
図２０Ａを参照して、ブロック２００２において、第１の発話入力を受信する前に、デジタルアシスタントサービスを呼び出すためのアフォーダンスは、ユーザデバイスと関連付けられたディスプレイ上で表示される。ブロック２００３において、デジタルアシスタントは、所定のフレーズを受信したことに応じて呼び出される。ブロック２００４において、デジタルアシスタントは、アフォーダンスの選択を受信したことに応じて呼び出される。
【０３５０】
ブロック２００６において、第１の発話入力は、ユーザから受信される。ブロック２００８において、ユーザデバイスと関連付けられたコンテクスト情報が特定される。ブロック２００９において、コンテクスト情報は、ユーザ特有データ、１つ以上のオブジェクトと関連付けられたメタデータ、センサデータ、及びユーザデバイス構成データのうちの少なくとも１つを含む。
【０３５１】
ブロック２０１０において、ユーザ意図は、第１の発話入力及びコンテクスト情報に基づいて判定される。ブロック２０１２において、ユーザ意図を判定するために、１つ以上の実施可能な意図が判定される。ブロック２０１３において、実施可能な意図と関連付けられた１つ以上のパラメータが判定される。
【０３５２】
図２０Ｂを参照して、ブロック２０１５において、ユーザ意図が、検索処理を使用してタスクを実行することであるか又はオブジェクト管理処理を使用してタスクを実行することであるかが判定される。検索処理は、ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成されており、オブジェクト管理処理は、ユーザデバイスと関連付けられたオブジェクトを管理するように構成されている。ブロック２０１６において、発話入力が検索処理又はオブジェクト管理処理を表す１つ以上のキーワードを含むかが判定される。ブロック２０１８において、タスクが検索することと関連付けられるかが判定される。ブロック２０２０において、タスクが検索することと関連付けられるとの判定に従って、タスクを実行することが検索処理を必要とするかが判定される。ブロック２０２１において、タスクを実行することが検索処理を必要としないとの判定に従って、検索処理又はオブジェクト管理処理を選択するための発話要求が出力され、第２の発話入力がユーザから受信される。第２の発話入力は、検索処理又はオブジェクト管理処理の選択を示す。
【０３５３】
ブロック２０２２において、タスクを実行することが検索処理を必要としないとの判定に従って、所定の構成に基づいて、検索処理又はオブジェクト管理処理を使用してタスクが実行されるかが判定される。
【０３５４】
図２０Ｃを参照して、ブロック２０２４において、タスクが検索することと関連付けられていないとの判定に従って、タスクが少なくとも１つのオブジェクトを管理することと関連付けられるかが判定される。ブロック２０２５において、タスクが少なくとも１つのオブジェクトを管理することと関連付けられていないとの判定に従って、ユーザデバイスに利用可能な第４の処理を使用してタスクを実行することができるか否かを判定すること、及びユーザとのダイアログを開始することのうちの少なくとも１つが実行される。
【０３５５】
ブロック２０２６において、ユーザ意図が検索処理を使用してタスクを実行することであるとの判定に従って、検索処理を使用してタスクが実行される。ブロック２０２８において、検索処理を使用して少なくとも１つのオブジェクトが検索される。ブロック２０２９において、少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む。ブロック２０３０において、ファイルは、写真、音声、又はビデオのうちの少なくとも１つを含む。ブロック２０３１において、ファイルは、ユーザデバイスの内部又は外部に記憶されている。ブロック２０３２において、フォルダ又はファイルのうちの少なくとも１つを検索することは、フォルダ又はファイルと関連付けられたメタデータに基づいている。ブロック２０３４において、少なくとも１つのオブジェクトは、通信を含む。ブロック２０３５において、通信は、電子メール、メッセージ、又はボイスメールのうちの少なくとも１つを含む。ブロック２０３６において、通信と関連付けられたメタデータが検索される。
【０３５６】
図２０Ｄを参照して、ブロック２０３７において、少なくとも１つのオブジェクトは、連絡先又はカレンダのうちの少なくとも１つを含む。ブロック２０３８において、少なくとも１つのオブジェクトは、アプリケーションを含む。ブロック２０３９において、少なくとも１つのオブジェクトは、オンライン情報のソースを含む。
【０３５７】
ブロック２０４０において、ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであるとの判定に従って、タスクは、オブジェクト管理処理を使用して実行される。ブロック２０４２において、タスクが検索することと関連付けられ、少なくとも１つのオブジェクトは、オブジェクト管理処理を使用して検索される。ブロック２０４３において、少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む。ブロック２０４４において、ファイルは、写真、音声、又はビデオのうちの少なくとも１つを含む。ブロック２０４５において、ファイルは、ユーザデバイスの内部又は外部に記憶されている。ブロック２０４６において、フォルダ又はファイルのうちの少なくとも１つを検索することは、フォルダ又はファイルと関連付けられたメタデータに基づいている。
【０３５８】
ブロック２０４８において、オブジェクト管理処理がインスタンス化される。オブジェクト管理処理をインスタンス化することは、オブジェクト管理処理を呼び出すこと、オブジェクト管理処理の新たなインスタンスを生成すること、又はオブジェクト管理処理の既存のインスタンスを生成することを含む。
【０３５９】
図２０Ｅを参照して、ブロック２０４９において、少なくとも１つのオブジェクトが作成される。ブロック２０５０において、少なくとも１つのオブジェクトが記憶される。ブロック２０５１において、少なくとも１つのオブジェクトが圧縮される。ブロック２０５２において、少なくとも１つのオブジェクトが第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に移動される。ブロック２０５３において、少なくとも１つのオブジェクトが第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に複製される。ブロック２０５４において、物理又は仮想記憶装置に記憶された少なくとも１つのオブジェクトが削除される。ブロック２０５５において、物理又は仮想記憶装置に記憶された少なくとも１つのオブジェクトが復元される。ブロック２０５６において、少なくとも１つのオブジェクトがマーク付けされる。少なくとも１つのオブジェクトをマーク付けすることは、可視的である、又は少なくとも１つのオブジェクトのメタデータと関連付けられていることのうちの少なくとも１つである。ブロック２０５７において、少なくとも１つのオブジェクトは、バックアップのための所定の期間に従ってバックアップされる。ブロック２０５８において、少なくとも１つのオブジェクトは、ユーザデバイスに通信可能に接続された１つ以上の電子デバイスの間で共有される。
【０３６０】
図２０Ｆを参照して、ブロック２０６０において、応答は、検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて提供される。ブロック２０６１において、検索処理又はオブジェクト管理処理を使用してタスクを実行した結果を提供する第１のユーザインタフェースが表示される。ブロック２０６２において、検索処理を使用してタスクを実行した結果と関連付けられたリンクが表示される。ブロック２０６３において、検索処理又はオブジェクト管理処理を使用してタスクを実行した結果に従って、発話出力が提供される。
【０３６１】
ブロック２０６４において、ユーザが検索処理又はオブジェクト管理処理を使用してタスクを実行した結果を操作することを可能にするアフォーダンスが提供される。ブロック２０６５において、タスクを実行した結果を使用して動作する第３の処理がインスタンス化される。
【０３６２】
図２０Ｆを参照して、ブロック２０６６において、信用レベルが判定される。ブロック２０６７において、信用レベルは、第１の発話入力及びユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定する精度を表す。ブロック２０６８において、信用レベルは、ユーザ意図が検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定する精度を表す。
【０３６３】
図２０Ｇを参照して、ブロック２０６９において、信用レベルは、検索処理又はオブジェクト管理処理を使用してタスクを実行する精度を表す。
【０３６４】
ブロック２０７０において、信用レベルの判定に従って応答が提供される。ブロック２０７１において、信用レベルが閾値信用レベル以上であるかが判定される。ブロック２０７２において、信用レベルが閾値信用レベル以上であるとの判定に従って、第１の応答が提供される。ブロック２０７３において、信用レベルが閾値信用レベル未満であるとの判定に従って、第２の応答が提供される。
８．デジタルアシスタントを動作させる処理−続き
【０３６５】
図２１Ａ〜２１Ｅは、いくつかの実施形態に従った、デジタルアシスタントを動作させる例示的な処理２１００のフローチャートを示す。処理２１００は、１つ以上のデバイス１０４、１０８、２００、４００、６００、１４００、１５００、１６００、又は１７００を使用して実行されてもよい（図１、２Ａ、４、６Ａ〜６Ｂ、１４Ａ〜１４Ｄ、１５Ａ〜１５Ｄ、１６Ａ〜１６Ｃ、及び１７Ａ〜１７Ｅ）。処理２１００における動作は、任意選択的に組み合わされ若しくは分離され、並びに／又はいくつかの動作の順序が任意選択的に変更される。
【０３６６】
図２１Ａを参照して、ブロック２１０２において、第１の発話入力を受信する前に、デジタルアシスタントサービスを呼び出すためのアフォーダンスは、ユーザデバイスと関連付けられたディスプレイ上で表示される。ブロック２１０３において、デジタルアシスタントは、所定のフレーズを受信したことに応じて呼び出される。ブロック２１０４において、デジタルアシスタントは、アフォーダンスの選択を受信したことに応じて呼び出される。
【０３６７】
ブロック２１０６において、第１の発話入力は、タスクを実行するためにユーザから受信される。ブロック２１０８において、ユーザデバイスと関連付けられたコンテクスト情報が特定される。ブロック２１０９において、ユーザデバイスは、複数のユーザインタフェースを提供するように構成されている。ブロック２１１０において、ユーザデバイスは、ラップトップコンピュータ、デスクトップコンピュータ、又はサーバを含む。ブロック２１１２において、コンテクスト情報は、ユーザ特有データ、１つ以上のオブジェクトと関連付けられたメタデータ、センサデータ、及びユーザデバイス構成データのうちの少なくとも１つを含む。
【０３６８】
ブロック２１１４において、発話入力及びコンテクスト情報に基づいてユーザ意図が判定される。ブロック２１１５において、ユーザ意図を判定するために、１つ以上の実施可能な意図が判定される。ブロック２１１６において、実施可能な意図と関連付けられた１つ以上のパラメータが判定される。
【０３６９】
図２１Ｂを参照して、ブロック２１１８において、ユーザ意図に従って、タスクがユーザデバイス、又はユーザデバイスに通信可能に接続された第１の電子デバイスにおいてタスクが実行されるかが判定される。ブロック２１２０において、第１の電子デバイスは、ラップトップコンピュータ、デスクトップコンピュータ、サーバ、スマートフォン、タブレット、セットトップボックス、又は時計を含む。ブロック２１２１において、タスクがユーザデバイスにおいて又は第１の電子デバイスにおいて実行されるかを判定することは、発話入力に含まれる１つ以上のキーワードに基づいている。ブロック２１２２において、ユーザデバイスにおいてタスクを実行することが実行基準を満たすかが判定される。ブロック２１２３において、１つ以上のユーザ優先度に基づいて実行基準が判定される。ブロック２１２４において、デバイス構成データに基づいて実行基準が判定される。ブロック２１２５において、実行基準が動的に更新される。ブロック２１２６において、ユーザデバイスにおいてタスクを実行することが実行基準を満たすとの判定に従って、タスクがユーザデバイスにおいて実行されると判定される。
【０３７０】
図２１Ｃを参照して、ブロック２１２８において、ユーザデバイスにおいてタスクを実行することが実行基準を満たさないとの判定に従って、第１の電子デバイスにおいてタスクを実行することが実行基準を満たすかが判定される。ブロック２１３０において、第１の電子デバイスにおいてタスクを実行することが実行基準を満たすとの判定に従って、タスクが第１の電子デバイスにおいて実行されると判定される。ブロック２１３２において、第１の電子デバイスにおいてタスクを実行することが実行基準を満たさないの判定に従って、第２の電子デバイスにおいてタスクを実行することが実行基準を満たすかが判定される。
【０３７１】
ブロック２１３４において、タスクがユーザデバイスにおいて実行され、タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、タスクを実行するためのコンテンツが受信される。ブロック２１３５において、コンテンツの少なくとも一部は、第１の電子デバイスから受信される。コンテンツの少なくとも一部は、第１の電子デバイスに記憶されている。ブロック２１３６において、コンテンツの少なくとも一部は、第３の電子デバイスから受信される。
【０３７２】
図２１Ｄを参照して、ブロック２１３８において、タスクが第１の電子デバイスにおいて実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、タスクを実行するためのコンテンツは、第１の電子デバイスに提供される。ブロック２１３９において、コンテンツの少なくとも一部は、ユーザデバイスから第１の電子デバイスに提供される。コンテンツの少なくとも一部は、ユーザデバイスに記憶されている。ブロック２１４０において、コンテンツの少なくとも一部は、第４の電子デバイスから第１の電子デバイスに提供される。コンテンツの少なくとも一部は、第４の電子デバイスに記憶されている。
【０３７３】
ブロック２１４２において、タスクは、ユーザデバイスにおいて実行される。第１の応答は、受信されたコンテンツを使用してユーザデバイスにおいて提供される。ブロック２１４４において、タスクは、ユーザデバイスにおいて実行される。ブロック２１４５において、ユーザデバイスにおいてタスクを実行することは、ユーザデバイスに対して部分的にリモートに実行されたタスクの続きである。ブロック２１４６において、第１のユーザインタフェースは、ユーザデバイスにおいて実行されるタスク関連付けられて表示される。ブロック２１４８において、タスクと関連付けられたリンクは、ユーザデバイスにおいて実行される。ブロック２１５０において、発話出力は、ユーザデバイスにおいて実行されるタスクに従って提供される。
【０３７４】
図２１Ｅを参照して、ブロック２１５２において、タスクは、第１の電子デバイスにおいて実行され、第２の応答は、ユーザデバイスにおいて提供される。ブロック２１５４において、タスクは、第１の電子デバイスにおいて実行される。ブロック２１５６において、第１の電子デバイスにおいて実行されるタスクは、第１の電子デバイスに対してリモートに実行されたタスクの続きである。ブロック２１５８において、発話出力は、第１の電子デバイスにおいて実行されるタスクに従って提供される。ブロック２１６０において、発話出力は、第１の電子デバイスにおいて実行されるタスクに従って提供される。
９．デジタルアシスタントを動作させる処理−システム構成管理
【０３７５】
図２２Ａ〜２２Ｄは、いくつかの実施形態に従った、デジタルアシスタントを動作させる例示的な処理２２００のフローチャートを示す。処理２２００は、１つ以上のデバイス１０４、１０８、２００、４００、６００、又は１８００を使用して実行されてもよい（図１、２Ａ、４、６Ａ〜６Ｂ、及び１８Ｃ〜１８Ｄ）。処理２２００における動作は、任意選択的に組み合わされ若しくは分離され、及び／又はいくつかの動作の順序は任意選択的に変更される。
【０３７６】
図２２Ａを参照して、ブロック２２０２において、発話入力を受信する前に、デジタルアシスタントサービスを呼び出すためのアフォーダンスは、ユーザデバイスと関連付けられたディスプレイ上で表示される。ブロック２２０３において、デジタルアシスタントは、所定のフレーズを受信したことに応じて呼び出される。ブロック２２０４において、デジタルアシスタントは、アフォーダンスの選択を受信したことに応じて呼び出される。
【０３７７】
ブロック２２０６において、発話入力は、ユーザデバイス１つ以上のシステム構成を管理するためにユーザから受信される。ユーザデバイスは、複数のユーザインタフェースを同時に提供するように構成されている。ブロック２２０７において、ユーザデバイスの１つ以上のシステム構成は、音声構成を含む。ブロック２２０８において、ユーザデバイスの１つ以上のシステム構成は、日付及び時間構成を含む。ブロック２２０９において、ユーザデバイスの１つ以上のシステム構成は、聞き取り構成を含む。ブロック２２１０において、ユーザデバイスの１つ以上のシステム構成は、表示構成を含む。ブロック２２１１において、ユーザデバイスの１つ以上のシステム構成は、入力デバイス構成を含む。ブロック２２１２において、ユーザデバイスの１つ以上のシステム構成は、ネットワーク構成を含む。ブロック２２１３において、ユーザデバイスの１つ以上のシステム構成は、通知構成を含む。
【０３７８】
図２２Ｂを参照して、ブロック２２１４において、ユーザデバイスの１つ以上のシステム構成は、プリンタ構成を含む。ブロック２２１５において、ユーザデバイスの１つ以上のシステム構成は、セキュリティ構成を含む。ブロック２２１６において、ユーザデバイスの１つ以上のシステム構成は、バックアップ構成を含む。ブロック２２１７において、ユーザデバイスの１つ以上のシステム構成は、アプリケーション構成を含む。ブロック２２１８において、ユーザデバイスの１つ以上のシステム構成は、ユーザインタフェース構成を含む。
【０３７９】
ブロック２２２０において、ユーザデバイスと関連付けられたコンテクスト情報が特定される。ブロック２２２３において、コンテクスト情報は、ユーザ特有データ、デバイス構成データ、及びセンサデータのうちの少なくとも１つを含む。ブロック２２２４において、ユーザ意図は、発話入力及びコンテクスト情報に基づいて判定される。ブロック２２２５において、１つ以上の実施可能な意図が判定される。ブロック２２２６において、実施可能な意図と関連付けられた１つ以上のパラメーが判定される。
【０３８０】
図２２Ｃを参照して、ブロック２２２８において、ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかが判定される。ブロック２２２９において、ユーザ意図がシステム構成を変えることであるかが判定される。
【０３８１】
ブロック２２３０において、ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答が提供される。ブロック２２３１において、１つ以上のシステム構成の状況は、情報の要求に従って取得される。ブロック２２３２において、発話応答は、１つ以上のシステム構成の状況に従って提供される。
【０３８２】
ブロック２２３４において、情報の要求への発話応答を提供することに加え、第１のユーザインタフェースは、１つ以上のシステム構成の状況に従って情報を提供するために表示される。ブロック２２３６において、情報の要求への発話応答を提供することに加え、情報の要求と関連付けられたリンクが提供される。
【０３８３】
ブロック２２３８において、ユーザ意図がタスクを実行する要求を示すとの判定に従って、ユーザデバイスと関連付けられた処理は、タスクを実行するためにインスタンス化される。ブロック２２３９において、タスクは、処理を使用して実行される。ブロック２２４０において、第１の発話出力は、タスクを実行した結果に従って提供される。
【０３８４】
図２２Ｄを参照して、ブロック２２４２において、第２のユーザインタフェースは、ユーザがタスクを実行した結果を操作することを可能にするために提供される。ブロック２２４４において、第２のユーザインタフェースは、タスクを実行した結果と関連付けられたリンクを含む。
【０３８５】
ブロック２２４６において、第３のユーザインタフェースは、ユーザがタスク実行することを可能にするために提供される。ブロック２２４８において、第３のユーザインタフェースは、ユーザがタスクを実行することを可能にするリンクを含む。ブロック２２５０において、第３のユーザインタフェースと関連付けられた第２の発話出力が提供される。
１０．電子デバイス−インテリジェント検索及びオブジェクト管理
【０３８６】
図２３は、図８Ａ〜８Ｆ、９Ａ〜９Ｈ、１０Ａ〜１０Ｂ、１１Ａ〜１１Ｆ、１２Ａ〜１２Ｄ、１３Ａ〜１３Ｃ、１４Ａ〜１４Ｄ、１５Ａ〜１５Ｄ、１６Ａ〜１６Ｃ、１７Ａ〜１７Ｅ、１８Ａ〜１８Ｆ、及び１９Ａ〜１９Ｄを参照して説明されるものを含む、様々な説明される実施例の原理に従って構成された電子デバイス２３００の機能的ブロック図を示す。デバイスの機能的ブロックは、任意選択的に、様々な説明される実施例の原理を実行するために、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせによって実装されてもよい。図２３で説明される機能的ブロックは、任意選択的に、様々な説明される実施例の原理を実装するためにサブブロックに組み合わされてもよく、又は分離されてもよいことが当業者によって理解される。従って、本明細書における説明は、任意選択的に、本明細書で説明される機能的ブロックのいずれかの可能な組み合わせ、分離、又は更に定義をサポートする。
【０３８７】
図２３に示されるように、電子デバイス２３００は、マイクロフォン２３０２及びプロセシングユニット２３０８を含むことができる。いくつかの実施例では、プロセシングユニット２３０８は、受信ユニット２３１０、特定ユニット２３１２、判定ユニット２３１４、実行ユニット２３１６、提供ユニット２３１８、インスタンス化ユニット２３２０、表示ユニット２３２２、出力ユニット２３２４、開始ユニット２３２６、検索ユニット２３２８、生成ユニット２３３０、実行ユニット２３３２、作成ユニット２３３４、インスタンス化ユニット２３３５、記憶ユニット２３３６、圧縮ユニット２３３８、複製ユニット２３４０、削除ユニット２３４２、復元ユニット２３４４、マーク付けユニット２３４６、バックアップユニット２３４８、共有ユニット２３５０、使役ユニット２３５２、及び取得ユニット２３５４を含む。
【０３８８】
いくつかの実施例では、プロセシングユニット２３０８は、第１の発話入力をユーザから受信し（例えば、受信ユニット２３１０で）、ユーザデバイスと関連付けられたコンテクスト情報を特定し（例えば、特定ユニット２３１２で）、第１の発話入力及びコンテクスト情報に基づいてユーザ意図を判定するように構成されている（例えば、判定ユニット２３１４で）。
【０３８９】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザ意図が、検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定するように構成されている（例えば、判定ユニット２３１４で）。検索処理は、ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成されており、オブジェクト管理処理は、ユーザデバイスと関連付けられたオブジェクトを管理するように構成されている。
【０３９０】
いくつかの実施例では、ユーザ意図が検索処理を使用してタスクを実行することであるとの判定に従って、プロセシングユニット２３０８は、検索処理を使用してタスクを実行するように構成されている（例えば、実行ユニット２３１６で）。いくつかの実施例では、ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであるとの判定に従って、プロセシングユニット２３０８は、オブジェクト管理処理を使用してタスクを実行するように構成されている（例えば、実行ユニット２３１６で）。
【０３９１】
いくつかの実施例では、第１の発話入力を受信する前に、プロセシングユニット２３０８は、ユーザデバイスと関連付けられたディスプレイ上で、デジタルアシスタントサービスを呼び出すためのアフォーダンスを表示するように構成されている（例えば、表示ユニット２３２２で）。
【０３９２】
いくつかの実施例では、プロセシングユニット２３０８は、所定のフレーズを受信したことに応じて、デジタルアシスタントを呼び出すように構成されている（例えば、呼出ユニット２３２０で）。
【０３９３】
いくつかの実施例では、プロセシングユニット２３０８は、アフォーダンスの選択を受信したことに応じて、デジタルアシスタントを呼び出すように構成されている（例えば、呼出ユニット２３２０で）。
【０３９４】
いくつかの実施例では、プロセシングユニット２３０８は、１つ以上の実施可能な意図を判定し（例えば判定ユニット２３１４で）、実施可能な意図と関連付けられた１つ以上のパラメータを判定するように構成されている（例えば判定ユニット２３１４で）。
【０３９５】
いくつかの実施例では、コンテクスト情報は、ユーザ特有データ、１つ以上のオブジェクトと関連付けられたメタデータ、センサデータ、及びユーザデバイス構成データを含む。
【０３９６】
いくつかの実施例では、プロセシングユニット２３０８は、発話入力が検索処理又はオブジェクト管理処理を表す１つ以上のキーワードを含むかを判定するように構成されている（例えば、判定ユニット２３１４で）。
【０３９７】
いくつかの実施例では、プロセシングユニット２３０８は、タスクが検索することと関連付けられているか否かを判定するように構成されている（例えば、判定ユニット２３１４で）。タスクが検索することと関連付けられているとの判定に従って、プロセシングユニット２３０８は、タスクを実行することが検索処理を必要とするか否かを判定し（例えば、判定ユニット２３１４で）、タスクが検索することと関連付けられていないとの判定に従って、タスクが少なくとも１つのオブジェクトを管理することと関連付けられているか否かを判定するように構成されている（例えば、判定ユニット２３１４で）。
【０３９８】
いくつかの実施例では、タスクは検索することと関連付けられ、タスクを実行することが検索処理を必要としないとの判定に従って、プロセシングユニット２３０８は、検索処理又はオブジェクト管理処理を選択するために発話要求を出力し（例えば、出力ユニット２３２４で）、ユーザから、検索処理又はオブジェクト管理処理の選択を示す第２の発話入力を受信するように構成されている（例えば、受信ユニット２３１０で）。
【０３９９】
いくつかの実施例では、タスクは検索することと関連付けられ、タスクを実行することが検索処理を必要としないとの判定に従って、プロセシングユニット２３０８は、所定の構成に基づいて、検索処理又はオブジェクト管理処理を使用してタスクが実行されるか否かを判定するように構成されている（例えば、判定ユニット２３１４で）。
【０４００】
いくつかの実施例では、タスクは検索することと関連付けられず、タスクが少なくとも１つのオブジェクトを管理することと関連付けられていないとの判定に従って、プロセシングユニット２３０８は、ユーザデバイスに利用可能な第４の処理を使用してタスクを実行することができるか否かを判定すること（例えば、判定ユニット２３１４で）、及びユーザとのダイアログを開始すること（例えば、開始ユニット２３２６で）のうちの少なくとも１つを実行するように構成されている（例えば、実行ユニット２３１６で）。
【０４０１】
いくつかの実施例では、プロセシングユニット２３０８は、検索処理を使用して少なくとも１つのオブジェクトを検索するように構成されている（例えば、検索ユニット２３２８で）。
【０４０２】
いくつかの実施例では、少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む。ファイルは、写真、音声、又はビデオのうちの少なくとも１つを含む。ファイルは、ユーザデバイスの内部又は外部に記憶されている。
【０４０３】
いくつかの実施例では、フォルダ又はファイルのうちの少なくとも１つを検索することは、フォルダ又はファイルと関連付けられたメタデータに基づいている。
【０４０４】
いくつかの実施例では、少なくとも１つのオブジェクトは、通信を含む。通信は、電子メール、メッセージ、通知、又はボイスメールのうちの少なくとも１つを含む。
【０４０５】
いくつかの実施例では、プロセシングユニット２３０８は、通信と関連付けられたメタデータを検索するように構成されている（例えば、検索ユニット２３２８で）。
【０４０６】
いくつかの実施例では、少なくとも１つのオブジェクトは、連絡先又はカレンダのうちの少なくとも１つを含む。
【０４０７】
いくつかの実施例では、少なくとも１つのオブジェクトは、アプリケーションを含む。
【０４０８】
いくつかの実施例では、少なくとも１つのオブジェクトは、オンライン情報のソースを含む。
【０４０９】
いくつかの実施例では、タスクは検索することと関連付けられ、プロセシングユニット２３０８は、オブジェクト管理処理を使用して少なくとも１つのオブジェクトを検索するように構成されている（例えば、検索ユニット２３２８で）。
【０４１０】
いくつかの実施例では、少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む。ファイルは、写真、音声、又はビデオのうちの少なくとも１つを含む。ファイルは、ユーザデバイスの内部又は外部に記憶されている。
【０４１１】
いくつかの実施例では、フォルダ又はファイルのうちの少なくとも１つを検索することは、フォルダ又はファイルと関連付けられたメタデータに基づいている。
【０４１２】
いくつかの実施例では、プロセシングユニット２３０８は、オブジェクト管理処理をインスタンス化するように構成されている（例えば、インスタンス化ユニット２３３５で）。オブジェクト管理処理をインスタンス化することは、オブジェクト管理処理を呼び出すこと、オブジェクト管理処理の新たなインスタンスを生成すること、又はオブジェクト管理処理の既存のインスタンスを実行することを含む。
【０４１３】
いくつかの実施例では、プロセシングユニット２３０８は、少なくとも１つのオブジェクトを作成するように構成されている（例えば、作成ユニット２３３４で）。
【０４１４】
いくつかの実施例では、プロセシングユニット２３０８は、少なくとも１つのオブジェクトを記憶するように構成されている（例えば、記憶ユニット２３３６で）。
【０４１５】
いくつかの実施例では、プロセシングユニット２３０８は、少なくとも１つのオブジェクトを圧縮するように構成されている（例えば、圧縮ユニット２３３８で）。
【０４１６】
いくつかの実施例では、プロセシングユニット２３０８は、少なくとも１つのオブジェクトを第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に移動するように構成されている（例えば、移動ユニット２３３９で）。
【０４１７】
いくつかの実施例では、プロセシングユニット２３０８は、少なくとも１つのオブジェクトを第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に複製するように構成されている（例えば、複製ユニット２３４０で）。
【０４１８】
いくつかの実施例では、プロセシングユニット２３０８は、物理又は仮想記憶装置に記憶された少なくとも１つのオブジェクトを削除するように構成されている（例えば、削除ユニット２３４２で）。
【０４１９】
いくつかの実施例では、プロセシングユニット２３０８は、物理又は仮想記憶装置に記憶された少なくとも１つのオブジェクトを復元するように構成されている（例えば、復元ユニット２３４４で）。
【０４２０】
いくつかの実施例では、プロセシングユニット２３０８は、少なくとも１つのオブジェクトをマーク付けするように構成されている（例えば、マーク付けユニット２３４６で）。少なくとも１つのオブジェクトをマーク付けすることは、可視的である、又は少なくとも１つのオブジェクトのメタデータと関連付けられていることのうちの少なくとも１つである。
【０４２１】
いくつかの実施例では、プロセシングユニット２３０８は、バックアップのための所定の期間に従って少なくとも１つのオブジェクトをバックアップユニットするように構成されている（例えば、バックアップユニット２３４８で）。
【０４２２】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザデバイスに通信可能に接続された１つ以上の電子デバイスの間で少なくとも１つのオブジェクトを共有するように構成されている（例えば、共有ユニット２３５０で）。
【０４２３】
いくつかの実施例では、プロセシングユニット２３０８は、検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４２４】
いくつかの実施例では、プロセシングユニット２３０８は、検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果を提供する第１のユーザインタフェースを表示するように構成されている（例えば、表示ユニット２３２２で）。
【０４２５】
いくつかの実施例では、プロセシングユニット２３０８は、検索処理を使用してタスクを実行した結果と関連付けられたリンクを提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４２６】
いくつかの実施例では、プロセシングユニット２３０８は、検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に従って発話出力を提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４２７】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザが検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果を操作することを可能にするアフォーダンスを提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４２８】
いくつかの実施例では、プロセシングユニット２３０８は、タスクを実行した結果を使用して動作する第３の処理をインスタンス化するように構成されている（例えば、インスタンス化ユニット２３３５で）。
【０４２９】
いくつかの実施例では、プロセシングユニット２３０８は、信用レベルを判定し（例えば、判定ユニット２３１４で）、信用レベルの判定に従って応答を提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４３０】
いくつかの実施例では、信用レベルは、第１の発話入力及びユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定する精度を表す。
【０４３１】
いくつかの実施例では、信用レベルは、検索処理を使用して又はオブジェクト管理処理を使用してユーザ意図がタスクを実行することであるかを判定する精度を表す。
【０４３２】
いくつかの実施例では、信用レベルは、検索処理又はオブジェクト管理処理を使用してタスクを実行する精度を表す。
【０４３３】
いくつかの実施例では、プロセシングユニット２３０８は、信用レベルが閾値信用レベル以上であるか否かを判定するように構成されている（例えば、判定ユニット２３１４で）。信用レベルが閾値信用レベル以上であるとの判定に従って、プロセシングユニット２３０８は、第１の応答を提供するように構成され（例えば、提供ユニット２３１８で）、信用レベルが閾値信用レベル未満であるとの判定に従って、プロセシングユニット２３０８は、第２の応答を提供するように構成されている（例えば、提供ユニット２３１８で）。
１１．電子デバイス−続き
【０４３４】
いくつかの実施例では、プロセシングユニット２３０８は、タスクを実行するために発話入力を受信し（例えば、受信ユニット２３１０で）、ユーザデバイスと関連付けられたコンテクスト情報を特定し（例えば、特定ユニット２３１２で）、発話入力及びユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定するように構成されている（例えば、判定ユニット２３１４で）。
【０４３５】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザ意図に従って、ユーザデバイスにおいて、又はユーザデバイスに通信可能に接続された第１の電子デバイスにおいてタスクが実行されるかを判定するように構成され（例えば、判定ユニット２３１４で）。
【０４３６】
いくつかの実施例では、ユーザデバイスにおいてタスクが実行され、タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、プロセシングユニット２３０８は、タスクを実行するためのコンテンツを受信するように構成されている（例えば、受信ユニット２３１０で）。
【０４３７】
いくつかの実施例では、第１の電子デバイスにおいてタスクが実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、プロセシングユニット２３０８は、タスクを実行するためのコンテンツを第１の電子デバイスに提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４３８】
いくつかの実施例では、ユーザデバイスは、複数のユーザインタフェースを提供するように構成されている。
【０４３９】
いくつかの実施例では、ユーザデバイスは、ラップトップコンピュータ、デスクトップコンピュータ、又はサーバを含む。
【０４４０】
いくつかの実施例では、第１の電子デバイスは、ラップトップコンピュータ、デスクトップコンピュータ、サーバ、スマートフォン、タブレット、セットトップボックス、又は時計を含む。
【０４４１】
いくつかの実施例では、プロセシングユニット２３０８は、発話入力を受信する前に、ユーザデバイスのディスプレイ上で、デジタルアシスタントを呼び出すためのアフォーダンスを表示するように構成されている（例えば、表示ユニット２３２２で）。
【０４４２】
いくつかの実施例では、プロセシングユニット２３０８は、所定のフレーズを受信したことに応じて、デジタルアシスタントを呼び出すように構成されている（例えば、呼出ユニット２３２０で）。
【０４４３】
いくつかの実施例では、プロセシングユニット２３０８は、アフォーダンスの選択を受信したことに応じて、デジタルアシスタントを呼び出すように構成されている（例えば、呼出ユニット２３２０で）。
【０４４４】
いくつかの実施例では、プロセシングユニット２３０８は、１つ以上の実施可能な意図を判定し（例えば、判定ユニット２３１４で）、実施可能な意図と関連付けられた１つ以上のパラメータを判定するように構成されている（例えば、判定ユニット２３１４で）。
【０４４５】
いくつかの実施例では、コンテクスト情報は、ユーザ特有データ、センサデータ、及びユーザデバイス構成データのうちの少なくとも１つを含む。
【０４４６】
いくつかの実施例では、ユーザデバイスにおいて又は第１の電子デバイスにおいてタスクが実行されるかを判定することは、発話入力に含まれる１つ以上のキーワードに基づいている。
【０４４７】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザデバイスにおいてタスクを実行することが実行基準を満たすか否かを判定するように構成されている（例えば、判定ユニット２３１４で）。
【０４４８】
いくつかの実施例では、ユーザデバイスにおいてタスクを実行することが実行基準を満たすとの判定に従って、プロセシングユニット２３０８は、ユーザデバイスにおいてタスクが実行されると判定するように構成されている（例えば、判定ユニット２３１４で）。
【０４４９】
いくつかの実施例では、ユーザデバイスにおいてタスクを実行することが実行基準を満たさないとの判定に従って、プロセシングユニット２３０８は、第１の電子デバイスにおいてタスクを実行することが実行基準を満たすかを判定するように構成されている（例えば、判定ユニット２３１４で）。
【０４５０】
いくつかの実施例では、第１の電子デバイスにおいてタスクを実行することが実行基準を満たすとの判定に従って、プロセシングユニット２３０８は、第１の電子デバイスにおいてタスクが実行されると判定するように構成されている（例えば、判定ユニット２３１４で）。
【０４５１】
いくつかの実施例では、第１の電子デバイスにおいてタスクを実行することが実行基準を満たさないとの判定に従って、プロセシングユニット２３０８は、第２の電子デバイスにおいてタスクを実行することが実行基準を満たすかを判定するように構成されている（例えば、判定ユニット２３１４で）。
【０４５２】
いくつかの実施例では、実行基準は、１つ以上のユーザ優先度に基づいて判定される。
【０４５３】
いくつかの実施例では、実行基準は、デバイス構成データに基づいて判定される。
【０４５４】
いくつかの実施例では、実行基準は、動的に更新される。
【０４５５】
いくつかの実施例では、ユーザデバイスにおいてタスクが実行され、タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、プロセシングユニット２３０８は、コンテンツの少なくとも一部を第１の電子デバイスから受信するように構成され（例えば、受信ユニット２３１０で）、コンテンツの少なくとも一部は、第１の電子デバイスに記憶されている。
【０４５６】
いくつかの実施例では、ユーザデバイスにおいてタスクが実行され、タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、プロセシングユニット２３０８は、コンテンツの少なくとも一部を第３の電子デバイスから受信するように構成されている（例えば、受信ユニット２３１０で）。
【０４５７】
いくつかの実施例では、第１の電子デバイスにおいてタスクが実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、プロセシングユニット２３０８は、コンテンツの少なくとも一部をユーザデバイスから第１の電子デバイスに提供するように構成され（例えば、提供ユニット２３１８で）、コンテンツの少なくとも一部は、ユーザデバイスに記憶されている。
【０４５８】
いくつかの実施例では、第１の電子デバイスにおいてタスクが実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、プロセシングユニット２３０８は、コンテンツの少なくとも一部を第４の電子デバイスから第１の電子デバイスに提供させるように構成されている（例えば、使役ユニット２３５２で）。コンテンツの少なくとも一部は、第４の電子デバイスに記憶されている。
【０４５９】
いくつかの実施例では、ユーザデバイスにおいてタスクが実行され、プロセシングユニット２３０８は、受信されたコンテンツを使用して、ユーザデバイスにおいて第１の応答を提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４６０】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザデバイスにおいてタスクを実行するように構成されている（例えば、実行ユニット２３１６で）。
【０４６１】
いくつかの実施例では、ユーザデバイスにおいてタスクを実行することは、ユーザデバイスに対して部分的にリモートに実行されたタスクの続きである。
【０４６２】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザデバイスにおいて実行されるタスクと関連付けられた第１のユーザインタフェースを表示するように構成されている（例えば、表示ユニット２３２２で）。
【０４６３】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザデバイスにおいて実行されるタスクと関連付けられたリンクを提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４６４】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザデバイスにおいて実行されるタスクに従って発話出力を提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４６５】
いくつかの実施例では、第１の電子デバイスにおいてタスクが実行され、プロセシングユニット２３０８は、ユーザデバイスにおいて第２の応答を提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４６６】
いくつかの実施例では、プロセシングユニット２３０８は、第１の電子デバイスにおいてタスクを実行させるように構成されている（例えば、使役ユニット２３５２で）。
【０４６７】
いくつかの実施例では、第１の電子デバイスにおいて実行されるタスクは、第１の電子デバイスに対してリモートに実行されたタスクの続きである。
【０４６８】
いくつかの実施例では、プロセシングユニット２３０８は、第１の電子デバイスにおいて実行されるタスクに従って発話出力を提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４６９】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザがタスクの実行のための別の電子デバイスを選択することを可能にするアフォーダンスを提供するように構成されている（例えば、提供ユニット２３１８で）。
１２．電子デバイス−システム構成管理
【０４７０】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザデバイスの１つ以上のシステム構成を管理するために、発話入力をユーザから受信するように構成されている（例えば、受信ユニット２３１０で）。ユーザデバイスは、複数のユーザインタフェースを同時に提供するように構成されている。
【０４７１】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザデバイスと関連付けられたコンテクスト情報を特定し（例えば、特定ユニット２３１２で）、発話入力及びコンテクスト情報に基づいてユーザ意図を判定するように構成されている（例えば、判定ユニット２３１４で）。
【０４７２】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定するように構成されている（例えば、判定ユニット２３１４で）。
【０４７３】
いくつかの実施例では、ユーザ意図が情報の要求を示すとの判定に従って、プロセシングユニット２３０８は、情報の要求への発話応答を提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４７４】
いくつかの実施例では、ユーザ意図がタスクを実行する要求を示すとの判定に従って、プロセシングユニット２３０８は、タスクを実行するユーザデバイスと関連付けられた処理をインスタンス化するように構成されている（例えば、インスタンス化ユニット２３３５で）。
【０４７５】
いくつかの実施例では、プロセシングユニット２３０８は、発話入力を受信する前に、ユーザデバイスのディスプレイ上で、デジタルアシスタントを呼び出すためのアフォーダンスを表示するように構成されている（例えば、表示ユニット２３２２で）。
【０４７６】
いくつかの実施例では、プロセシングユニット２３０８は、所定のフレーズを受信したことに応じてデジタルアシスタントサービスを呼び出すように構成されている（例えば、呼出ユニット２３２０で）。
【０４７７】
いくつかの実施例では、プロセシングユニット２３０８は、アフォーダンスの選択を受信したことに応じてデジタルアシスタントサービスを呼び出すように構成されている（例えば、呼出ユニット２３２０で）。
【０４７８】
いくつかの実施例では、ユーザデバイスの１つ以上のシステム構成は、音声構成を含む。
【０４７９】
いくつかの実施例では、ユーザデバイスの１つ以上のシステム構成は、日付及び時間構成を含む。
【０４８０】
いくつかの実施例では、ユーザデバイスの１つ以上のシステム構成は、聞き取り構成を含む。
【０４８１】
いくつかの実施例では、ユーザデバイスの１つ以上のシステム構成は、表示構成を含む。
【０４８２】
いくつかの実施例では、ユーザデバイスの１つ以上のシステム構成は、入力デバイス構成を含む。
【０４８３】
いくつかの実施例では、ユーザデバイスの１つ以上のシステム構成は、ネットワーク構成を含む。
【０４８４】
いくつかの実施例では、ユーザデバイスの１つ以上のシステム構成は、通知構成を含む。
【０４８５】
いくつかの実施例では、ユーザデバイスの１つ以上のシステム構成は、プリンタ構成を含む。
【０４８６】
いくつかの実施例では、ユーザデバイスの１つ以上のシステム構成は、セキュリティ構成を含む。
【０４８７】
いくつかの実施例では、ユーザデバイスの１つ以上のシステム構成は、バックアップ構成を含む。
【０４８８】
いくつかの実施例では、ユーザデバイスの１つ以上のシステム構成は、アプリケーション構成を含む。
【０４８９】
いくつかの実施例では、ユーザデバイスの１つ以上のシステム構成は、ユーザインタフェース構成を含む。
【０４９０】
いくつかの実施例では、プロセシングユニット２３０８は、１つ以上の実施可能な意図を判定し（例えば、判定ユニット２３１４で）、実施可能な意図と関連付けられた１つ以上のパラメータを判定するように構成されている（例えば、判定ユニット２３１４で）。
【０４９１】
いくつかの実施例では、コンテクスト情報は、ユーザ特有データ、デバイス構成データ、及びセンサデータのうちの少なくとも１つを含む。
【０４９２】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザ意図がシステム構成を変えることであるか否かを判定するように構成されている（例えば、判定ユニット２３１４で）。
【０４９３】
いくつかの実施例では、プロセシングユニット２３０８は、情報の要求に従って１つ以上のシステム構成の状況を取得し（例えば、取得ユニット２３５４で）、１つ以上のシステム構成の状況に従って発話応答を提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４９４】
いくつかの実施例では、ユーザ意図が情報の要求を示すとの判定に従って、プロセシングユニット２３０８は、情報の要求への発話応答を提供することに加え、１つ以上のシステム構成の状況に従って情報を提供する第１のユーザインタフェースを表示するように構成されている（例えば、表示ユニット２３２２で）。
【０４９５】
いくつかの実施例では、ユーザ意図が情報の要求を示すとの判定に従って、プロセシングユニット２３０８は、情報の要求への発話応答を提供することに加え、情報の要求と関連付けられたリンクを提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４９６】
いくつかの実施例では、ユーザ意図がタスクを実行する要求を示すとの判定に従って、プロセシングユニット２３０８は、処理を使用してタスクを実行するように構成されている（例えば、実行ユニット２３１６で）。
【０４９７】
いくつかの実施例では、プロセシングユニット２３０８は、タスクを実行した結果に従って第１の発話出力を提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４９８】
いくつかの実施例では、プロセシングユニット２３０８は、ユーザがタスクを実行した結果を操作することを可能にするために、第２のユーザインタフェースを提供するように構成されている（例えば、提供ユニット２３１８で）。
【０４９９】
いくつかの実施例では、第２のユーザインタフェースは、タスクを実行した結果と関連付けられたリンクを含む。
【０５００】
いくつかの実施例では、ユーザ意図がタスクを実行する要求を示すとの判定に従って、プロセシングユニット２３０８は、ユーザがタスクを実行することを可能にする第３のユーザインタフェースを提供するように構成されている（例えば、提供ユニット２３１８で）。
【０５０１】
いくつかの実施例では、第３のユーザインタフェースは、ユーザがタスクを実行することを可能にするリンクを含む。
【０５０２】
いくつかの実施例では、プロセシングユニット２３０８は、第３のユーザインタフェースと関連付けられた第２の発話出力を提供するように構成されている（例えば、提供ユニット２３１８で）。
【０５０３】
図２３を参照して上記説明された動作は、任意選択的に、図１、２Ａ、４、６Ａ〜Ｂ、又は７Ａ〜７Ｂに記述された構成要素によって実装される。例えば、受信動作２３１０、特定動作２３１２、判定動作２３１４、実行動作２３１６、及び提供動作２３１８は、任意選択的に、プロセッサ（単数又は複数）２２０によって実施される。図１、２Ａ、４、６Ａ〜Ｂ、又は７Ａ〜７Ｂに記述された構成要素に基づいて、他の処理をどのように実施することができるかが当業者にとって明らかとなるであろう。
【０５０４】
図１２で説明された機能的ブロックは、任意選択的に、様々な説明された実施形態の原理を実装するためにサブブロックに組み合わされ、又は分離されることが当業者によって理解される。従って、本明細書における説明は、任意選択的に、本明細書で説明されたいずれかの可能な組み合わせ、分離、又は更に定義をサポートする。例えば、プロセシングユニット２３０８は、動作を可能にするためにプロセシングユニット２３０８と動作可能に結合された関連付けられた「コントローラ」ユニットを有することができる。このコントローラユニットは、図２３で別々に示されていないが、デバイス２３００等のプロセシングユニット２３０８を有するデバイスを設計している当業者の把握の範囲内にあることが理解される。別の実施例として、受信ユニット２３１０等の１つ以上のユニットは、いくつかの実施形態におけるプロセシングユニット２３０８の外側のハードウェアユニットであってもよい。よって、本明細書における説明は、任意選択的に、本明細書で説明された機能的ブロックの組み合わせ、分離、及び／又は更に定義をサポートする。
【０５０５】
例示的な方法、非一時的コンピュータ可読記憶媒体、システム及び電子デバイスは、以下の条項で述べられる。
デジタルアシスタントの動作−インテリジェント検索及びオブジェクト管理
条項１．デジタルアシスタントサービスを提供する方法であって、
１つ以上のプロセッサ及びメモリを有するユーザデバイスにおいて、
第１の発話入力をユーザから受信することと、
ユーザデバイスと関連付けられたコンテクスト情報を特定することと、
第１の発話入力及びコンテクスト情報に基づいてユーザ意図を判定することと、
ユーザ意図が、検索処理を使用してタスクを実行することであるか又はオブジェクト管理処理を使用してタスクを実行することであるかを判定することであって、検索処理は、ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成されており、オブジェクト管理処理は、ユーザデバイスと関連付けられたオブジェクトを管理するように構成されている、ことと、
ユーザ意図が検索処理を使用してタスクを実行することであるとの判定に従って、検索処理を使用してタスクを実行することと、
ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであるとの判定に従って、オブジェクト管理処理を使用してタスクを実行することと、
を含む、方法。
条項２．第１の発話入力を受信する前に、
ユーザデバイスと関連付けられたディスプレイ上で、デジタルアシスタントサービスを呼び出すためのアフォーダンスを表示することを更に含む、条項１に記載の方法。
条項３．
所定のフレーズを受信したことに応じてデジタルアシスタントを呼び出すことを更に含む、条項２に記載の方法。
条項４．
アフォーダンスの選択を受信したことに応じてデジタルアシスタントを呼び出すことを更に含む、条項２〜３のいずれか一つに記載の方法。
条項５．ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定することと、
実施可能な意図と関連付けられた１つ以上のパラメータを判定することと、
を含む、条項１〜４のいずれか一つに記載の方法。
条項６．コンテクスト情報は、ユーザ特有データ、１つ以上のオブジェクトと関連付けられたメタデータ、センサデータ、及びユーザデバイス構成データのうちの少なくとも１つを含む、条項１〜５のいずれか一つに記載の方法。
条項７．ユーザ意図が、検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定することは、
発話入力が検索処理又はオブジェクト管理処理を表す１つ以上のキーワードを含むかを判定することを含む、条項１〜６のいずれか一つに記載の方法。
条項８．ユーザ意図が、検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定することは、
タスクが検索することと関連付けられているか否かを判定することと、
タスクが検索することと関連付けられているとの判定に従って、タスクを実行することが検索処理を必要とするか否かを判定することと、
タスクが検索することと関連付けられていないとの判定に従って、タスクが少なくとも１つのオブジェクトを管理することと関連付けられているか否かを判定することと、
を含む、条項１〜７のいずれか一つに記載の方法。
条項９．タスクは、検索することと関連付けられ、方法は、
タスクを実行することが検索処理を必要としないとの判定に従って、
検索処理又はオブジェクト管理処理を選択するために発話要求を出力することと、
ユーザから、検索処理又はオブジェクト管理処理の選択を示す第２の発話入力を受信することと、
を更に含む、条項８に記載の方法。
条項１０．タスクは、検索することと関連付けられ、方法は、
タスクを実行することが検索処理を必要としないとの判定に従って、所定の構成に基づいて、検索処理又はオブジェクト管理処理を使用してタスクが実行されるか否かを判定することを更に含む、条項８〜９のいずれか一つに記載の方法。
条項１１．タスクは、検索することと関連付けられず、方法は、
タスクが少なくとも１つのオブジェクトを管理することと関連付けられていないとの判定に従って、
ユーザデバイスに利用可能な第４の処理を使用してタスクを実行することができるかを判定することと、
ユーザとのダイアログを開始することと、
のうちの少なくとも１つを実行することを更に含む、条項８に記載の方法。
条項１２．検索処理を使用してタスクを実行することは、
検索処理を使用して少なくとも１つのオブジェクトを検索することを含む、条項１〜１０のいずれか一つに記載の方法。
条項１３．少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む、条項１２に記載の方法。
条項１４．ファイルは、写真、音声、又はビデオのうちの少なくとも１つを含む、条項１３に記載の方法。
条項１５．ファイルは、ユーザデバイスの内部又は外部に記憶されている、条項１３〜１４のいずれか一つに記載の方法。
条項１６．フォルダ又はファイルのうちの少なくとも１つを検索することは、フォルダ又はファイルと関連付けられたメタデータに基づいている、条項１３〜１５のいずれか一つに記載の方法。
条項１７．少なくとも１つのオブジェクトは、通信を含む、条項１２〜１６のいずれか一つに記載の方法。
条項１８．通信は、電子メール、メッセージ、通知、又はボイスメールのうちの少なくとも１つを含む、条項１７に記載の方法。
条項１９．通信と関連付けられたメタデータを検索することを更に含む、条項１７〜１８のいずれか一つに記載の方法。
条項２０．少なくとも１つのオブジェクトは、連絡先又はカレンダのうちの少なくとも１つを含む、条項１２〜１９のいずれか一つに記載の方法。
条項２１．少なくとも１つのオブジェクトは、アプリケーションを含む、条項１２〜２０のいずれか一つに記載の方法。
条項２２．少なくとも１つのオブジェクトは、オンライン情報のソースを含む、条項１２〜２１のいずれか一つに記載の方法。
条項２３．タスクは、検索することと関連付けられ、オブジェクト管理処理を使用してタスクを実行することは、
オブジェクト管理処理を使用して少なくとも１つのオブジェクトを検索することを含む、条項１〜２２のいずれか一つに記載の方法。
条項２４．少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む、条項２３に記載の方法。
条項２５．ファイルは、写真、音声、又はビデオのうちの少なくとも１つを含む、条項２４に記載の方法。
条項２６．ファイルは、ユーザデバイスの内部又は外部に記憶されている、条項２４〜２５のいずれか一つに記載の方法。
条項２７．フォルダ又はファイルのうちの少なくとも１つを検索することは、フォルダ又はファイルと関連付けられたメタデータに基づいている、条項２４〜２６のいずれか一つに記載の方法。
条項２８．オブジェクト管理処理を使用してタスクを実行することは、オブジェクト管理処理をインスタンス化することを含み、オブジェクト管理処理をインスタンス化することは、オブジェクト管理処理を呼び出すこと、オブジェクト管理処理の新たなインスタンスを生成すること、又はオブジェクト管理処理の既存のインスタンスを実行することを含む、条項１に記載の方法。
条項２９．オブジェクト管理処理を使用してタスクを実行することは、少なくとも１つのオブジェクトを作成することを含む、条項１〜２８のいずれか一つに記載の方法。
条項３０．オブジェクト管理処理を使用してタスクを実行することは、少なくとも１つのオブジェクトを記憶することを含む、条項１〜２９のいずれか一つに記載の方法。
条項３１．オブジェクト管理処理を使用してタスクを実行することは、少なくとも１つのオブジェクトを圧縮することを含む、条項１〜３０のいずれか一つに記載の方法。
条項３２．オブジェクト管理処理を使用してタスクを実行することは、少なくとも１つのオブジェクトを第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に移動することを含む、条項１〜３１のいずれか一つに記載の方法。
条項３３．オブジェクト管理処理を使用してタスクを実行することは、少なくとも１つのオブジェクトを第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に複製することを含む、条項１〜３２のいずれか一つに記載の方法。
条項３４．オブジェクト管理処理を使用してタスクを実行することは、物理又は仮想記憶装置に記憶された少なくとも１つのオブジェクトを削除することを含む、条項１〜３３のいずれか一つに記載の方法。
条項３５．オブジェクト管理処理を使用してタスクを実行することは、物理又は仮想記憶装置に記憶された少なくとも１つのオブジェクトを復元することを含む、条項１〜３４のいずれか一つに記載の方法。
条項３６．オブジェクト管理処理を使用してタスクを実行することは、少なくとも１つのオブジェクトをマーク付けすることを含み、少なくとも１つのオブジェクトをマーク付けすることは、可視的である、又は少なくとも１つのオブジェクトのメタデータと関連付けられていることのうちの少なくとも１つである、条項１〜３５のいずれか一つに記載の方法。
条項３７．オブジェクト管理処理を使用してタスクを実行することは、バックアップのための所定の期間に従って少なくとも１つのオブジェクトをバックアップすることを含む、条項１〜３６のいずれか一つに記載の方法。
条項３８．オブジェクト管理処理を使用してタスクを実行することは、ユーザデバイスに通信可能に接続された１つ以上の電子デバイスの間で少なくとも１つのオブジェクトを共有することを含む、条項１〜３７のいずれか一つに記載の方法。
条項３９．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することを更に含む、条項１〜３８のいずれか一つに記載の方法。
条項４０．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することは、
検索処理又はオブジェクト管理処理を使用してタスクを実行した結果を提供する第１のユーザインタフェースを表示することを含む、条項３９に記載の方法。
条項４１．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することは、
検索処理を使用してタスクを実行した結果と関連付けられたリンクを提供することを含む、条項３９〜４０のいずれか一つに記載の方法。
条項４２．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することは、
検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に従って発話出力を提供することを含む、条項３９〜４１のいずれか一つに記載の方法。
条項４３．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することは、
ユーザが検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果を操作することを可能にするアフォーダンスを提供することを含む、条項３９〜４２のいずれか一つに記載の方法。
条項４４．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することは、
タスクを実行した結果を使用して動作する第３の処理をインスタンス化することを含む、条項３９〜４３のいずれか一つに記載の方法。
条項４５．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することは、
信用レベルを判定することと、
信用レベルの判定に従って応答を提供することと、
を含む、条項３９〜４４のいずれか一つに記載の方法。
条項４６．信用レベルは、第１の発話入力及びユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定する精度を表す、条項４５に記載の方法。
条項４７．信用レベルは、ユーザ意図が検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定する精度を表す、条項４５〜４６のいずれか一つに記載の方法。
条項４８．信用レベルは、検索処理又はオブジェクト管理処理を使用してタスクを実行する精度を表す、条項４５〜４７のいずれか一つに記載の方法。
条項４９．信用レベルの判定に従って応答を提供することは、
信用レベルが閾値信用レベル以上であるか否かを判定することと、
信用レベルが閾値信用レベル以上であるとの判定に従って、第１の応答を提供することと、
信用レベルが閾値信用レベル未満であるとの判定に従って、第２の応答を提供することと、
を含む、条項４５〜４８のいずれか一つに記載の方法。
条項５０．１つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムは、電子デバイスの１つ以上のプロセッサによって実行されるとき、
電子デバイスに、
第１の発話入力をユーザから受信させ、
ユーザデバイスと関連付けられたコンテクスト情報を特定させ、
第１の発話入力及びコンテクスト情報に基づいてユーザ意図を判定させ、
ユーザ意図が、ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成され検索処理を使用してタスクを実行することであるか又はユーザデバイスと関連付けられたオブジェクトを管理するように構成されたオブジェクト管理処理を使用してタスクを実行することであるかを判定させ、
ユーザ意図が検索処理を使用してタスクを実行することであるとの判定に従って、検索処理を使用してタスクを実行させ、
ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであるとの判定に従って、オブジェクト管理処理を使用してタスクを実行させる、
命令を含む、非一時的コンピュータ可読記憶媒体。
条項５１．電子デバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を含み、１つ以上のプログラムは、
第１の発話入力をユーザから受信し、
ユーザデバイスと関連付けられたコンテクスト情報を特定し、
第１の発話入力及びコンテクスト情報に基づいてユーザ意図を判定し、
ユーザ意図が、検索処理を使用してタスクを実行することであるか又はオブジェクト管理処理を使用してタスクを実行することであるかを判定することであって、検索処理は、ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成されており、オブジェクト管理処理は、ユーザデバイスと関連付けられたオブジェクトを管理するように構成されている、ことと、
ユーザ意図が検索処理を使用してタスクを実行することであるとの判定に従って、検索処理を使用してタスクを実行し、
ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであるとの判定に従って、オブジェクト管理処理を使用してタスクを実行する、
命令を含む、電子デバイス。
条項５２．電子デバイスであって、
第１の発話入力をユーザから受信する手段と、
ユーザデバイスと関連付けられたコンテクスト情報を特定する手段と、
第１の発話入力及びコンテクスト情報に基づいてユーザ意図を判定する手段と、
ユーザ意図が、検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定する手段であって、検索処理は、ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成されており、オブジェクト管理処理は、ユーザデバイスと関連付けられたオブジェクトを管理するように構成されている、手段と、
ユーザ意図が検索処理を使用してタスクを実行することであるとの判定に従って、検索処理を使用してタスクを実行する手段と、
ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであるとの判定に従って、オブジェクト管理処理を使用してタスクを実行する手段と、
を含む、電子デバイス。
条項５３．電子デバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を含み、１つ以上のプログラムは、条項１〜条項４９のいずれか一つに記載の方法を実行する命令を含む、電子デバイス。
条項５４．電子デバイスであって、
条項１〜４９のいずれか一つに記載の方法を実行する手段を含む、電子デバイス。
条項５５．電子デバイスの１つ以上のプロセッサによって実行される１つ以上のプログラムを含む非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムは、命令を含み、命令は、１つ以上のプロセッサによって実行されるとき、電子デバイスに条項１〜４９のいずれか一つに記載の方法を実行させる、非一時的コンピュータ可読記憶媒体。
条項５６．デジタルアシスタントを動作させるシステムであって、システムは、条項１〜４９のいずれか一つに記載の方法を実行する手段を含む、システム。
条項５７．電子デバイスであって、
第１の発話入力をユーザから受信するように構成された受信ユニットと、
ユーザデバイスと関連付けられたコンテクスト情報を特定し、
第１の発話入力及びコンテクスト情報に基づいてユーザ意図を判定し、
ユーザ意図が、ユーザデバイスの内部又は外部に記憶されたデータを検索するように構成された検索処理を使用してタスクを実行することであるか又はユーザデバイスと関連付けられたオブジェクトを管理するように構成されたオブジェクト管理処理を使用してタスクを実行することであるかを判定し、
ユーザ意図が検索処理を使用してタスクを実行することであるとの判定に従って、検索処理を使用してタスクを実行し、
ユーザ意図がオブジェクト管理処理を使用してタスクを実行することであるとの判定に従って、オブジェクト管理処理を使用してタスクを実行する、
ように構成されている、プロセッシングユニットと、
を含む、電子デバイス。
条項５８．第１の発話入力を受信する前に、
ユーザデバイスと関連付けられたディスプレイ上で、デジタルアシスタントサービスを呼び出すためのアフォーダンスを表示することを更に含む、条項５７に記載の電子デバイス。
条項５９．
所定のフレーズを受信したことに応じてデジタルアシスタントをインスタンス化することを更に含む、条項５８に記載の電子デバイス。
条項６０．
アフォーダンスの選択を受信したことに応じてデジタルアシスタントをインスタンス化することを更に含む、条項５８〜５９のいずれか一つに記載の電子デバイス。
条項６１．ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定することと、
実施可能な意図と関連付けられた１つ以上のパラメータを判定することと、
を含む、条項５７〜６０のいずれか一つに記載の電子デバイス。
条項６２．コンテクスト情報は、ユーザ特有データ、１つ以上のオブジェクトと関連付けられたメタデータ、センサデータ、及びユーザデバイス構成データのうちの少なくとも１つを含む、条項５７〜６１のいずれか一つに記載の電子デバイス。
条項６３．ユーザ意図が検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定することは、
発話入力が検索処理又はオブジェクト管理処理を表す１つ以上のキーワードを含むかを判定することを含む、条項５７〜６２のいずれか一つに記載の電子デバイス。
条項６４．ユーザ意図が検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定することは、
タスクが検索することと関連付けられているか否かを判定することと、
タスクが検索することと関連付けられているとの判定に従って、タスクを実行することが検索処理を必要とするか否かを判定することと、
タスクが検索することと関連付けられていないとの判定に従って、タスクが少なくとも１つのオブジェクトを管理することと関連付けられているか否かを判定することと、
を含む、条項５７〜６３のいずれか一つに記載の電子デバイス。
条項６５．タスクは、検索することと関連付けられ、電子デバイスは、
タスクを実行することが検索処理を必要としないとの判定に従って、
検索処理又はオブジェクト管理処理を選択するために発話要求を出力することと、
ユーザから、検索処理又はオブジェクト管理処理の選択を示す第２の発話入力を受信することと、
を更に含む、条項６４に記載の電子デバイス。
条項６６．タスクは、検索することと関連付けられ、電子デバイスは、
タスクを実行することが検索処理を必要としないとの判定に従って、所定の構成に基づいて、検索処理を使用して又はオブジェクト管理処理を使用してタスクが実行されるかを判定することを更に含む、条項６４〜６５のいずれか一つに記載の電子デバイス。
条項６７．タスクは、検索することと関連付けられず、電子デバイスは、
タスクが少なくとも１つのオブジェクトを管理することと関連付けられていないとの判定に従って、
ユーザデバイスに利用可能な第４の処理を使用してタスクを実行することができるかを判定することと、
ユーザとのダイアログを開始することと、
のうちの少なくとも１つを実行することを更に含む、条項６４に記載の電子デバイス。
条項６８．検索処理を使用してタスクを実行することは、
検索処理を使用して少なくとも１つのオブジェクトを検索することを含む、条項５７〜６６のいずれか一つに記載の電子デバイス。
条項６９．少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む、条項６８に記載の電子デバイス。
条項７０．ファイルは、写真、音声、又はビデオのうちの少なくとも１つを含む、条項６９に記載の電子デバイス。
条項７１．ファイルは、ユーザデバイスの内部又は外部に記憶されている、条項６９〜７０のいずれか一つに記載の電子デバイス。
条項７２．フォルダ又はファイルのうちの少なくとも１つを検索することは、フォルダ又はファイルと関連付けられたメタデータに基づいている、条項６９〜７１のいずれか一つに記載の電子デバイス。
条項７３．少なくとも１つのオブジェクトは、通信を含む、条項６８〜７２のいずれか一つに記載の電子デバイス。
条項７４．通信は、電子メール、メッセージ、通知、又はボイスメールのうちの少なくとも１つを含む、条項７３に記載の電子デバイス。
条項７５．通信と関連付けられたメタデータを検索することを更に含む、条項７３〜７４のいずれか一つに記載の電子デバイス。
条項７６．少なくとも１つのオブジェクトは、連絡先又はカレンダのうちの少なくとも１つを含む、条項６８〜７５のいずれか一つに記載の電子デバイス。
条項７７．少なくとも１つのオブジェクトは、アプリケーションを含む、条項６８〜７６のいずれか一つに記載の電子デバイス。
条項７８．少なくとも１つのオブジェクトは、オンライン情報のソースを含む、条項６８〜７７のいずれか一つに記載の電子デバイス。
条項７９．タスクは、検索することと関連付けられ、オブジェクト管理処理を使用してタスクを実行することは、
オブジェクト管理処理を使用して少なくとも１つのオブジェクトを検索することを含む、条項５５〜７８のいずれか一つに記載の電子デバイス。
条項８０．少なくとも１つのオブジェクトは、フォルダ又はファイルのうちの少なくとも１つを含む、条項７９に記載の電子デバイス。
条項８１．ファイルは、写真、音声、又はビデオのうちの少なくとも１つを含む、条項８０に記載の電子デバイス。
条項８２．ファイルは、ユーザデバイスの内部又は外部に記憶されている、条項７９〜８１のいずれか一つに記載の電子デバイス。
条項８３．フォルダ又はファイルのうちの少なくとも１つを検索することは、フォルダ又はファイルと関連付けられたメタデータに基づいている、条項７９〜８２のいずれか一つに記載の電子デバイス。
条項８４．オブジェクト管理処理を使用してタスクを実行することは、オブジェクト管理処理をインスタンス化することを含み、オブジェクト管理処理をインスタンス化することは、オブジェクト管理処理を呼び出すこと、オブジェクト管理処理の新たなインスタンスを生成すること、又はオブジェクト管理処理の既存のインスタンスを実行することを含む、条項５７に記載の電子デバイス。
条項８５．オブジェクト管理処理を使用してタスクを実行することは、少なくとも１つのオブジェクトを作成することを含む、条項５７〜８４のいずれか一つに記載の電子デバイス。
条項８６．オブジェクト管理処理を使用してタスクを実行することは、少なくとも１つのオブジェクトを記憶することを含む、条項５７〜８５のいずれか一つに記載の電子デバイス。
条項８７．オブジェクト管理処理を使用してタスクを実行することは、少なくとも１つのオブジェクトを圧縮することを含む、条項５７〜８６のいずれか一つに記載の電子デバイス。
条項８８．オブジェクト管理処理を使用してタスクを実行することは、少なくとも１つのオブジェクトを第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に移動することを含む、条項５７〜８７のいずれか一つに記載の電子デバイス。
条項８９．オブジェクト管理処理を使用してタスクを実行することは、少なくとも１つのオブジェクトを第１の物理又は仮想記憶装置から第２の物理又は仮想記憶装置に複製することを含む、条項５７〜８８のいずれか一つに記載の電子デバイス。
条項９０．オブジェクト管理処理を使用してタスクを実行することは、物理又は仮想記憶装置に記憶された少なくとも１つのオブジェクトを削除することを含む、条項５７〜８９のいずれか一つに記載の電子デバイス。
条項９１．オブジェクト管理処理を使用してタスクを実行することは、物理又は仮想記憶装置に記憶された少なくとも１つのオブジェクトを復元することを含む条項５７〜９０のいずれか一つに記載の電子デバイス。
条項９２．オブジェクト管理処理を使用してタスクを実行することは、少なくとも１つのオブジェクトをマーク付けすることを含み、少なくとも１つのオブジェクトをマーク付けすることは、可視的である、又は少なくとも１つのオブジェクトのメタデータと関連付けられていることのうちの少なくとも１つである、条項５７〜９１のいずれか一つに記載の電子デバイス。
条項９３．オブジェクト管理処理を使用してタスクを実行することは、バックアップのための所定の期間に従って少なくとも１つのオブジェクトをバックアップすることを含む、条項５７〜９２のいずれか一つに記載の電子デバイス。
条項９４．オブジェクト管理処理を使用してタスクを実行することは、ユーザデバイスに通信可能に接続された１つ以上の電子デバイスの間で少なくとも１つのオブジェクトを共有することを含む、条項５７〜９３のいずれか一つに記載の電子デバイス。
条項９５．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することを更に含む、条項５７〜９４のいずれか一つに記載の電子デバイス。
条項９６．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することは、
検索処理又はオブジェクト管理処理を使用してタスクを実行した結果を提供する第１のユーザインタフェースを表示することを含む、条項９５に記載の電子デバイス。
条項９７．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することは、
検索処理を使用してタスクを実行した結果と関連付けられたリンクを提供することを含む、条項９５〜９６のいずれか一つに記載の電子デバイス。
条項９８．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することは、
検索処理又はオブジェクト管理処理を使用してブロック２０６８において、、タスクを実行した結果に従って発話出力を提供することを含む、条項９５〜９７のいずれか一つに記載の電子デバイス。
条項９９．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することは、
ユーザが検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果を操作することを可能にするアフォーダンスを提供することを含む、条項９５〜９８のいずれか一つに記載の電子デバイス。
条項１００．検索処理又はオブジェクト管理処理を使用して、タスクを実行した結果に基づいて応答を提供することは、
タスクを実行した結果を使用して動作する第３の処理をインスタンス化することを含む、条項９５〜９９のいずれか一つに記載の電子デバイス。
条項１０１．検索処理を使用して又はオブジェクト管理処理を使用して、タスクを実行したかという結果に基づいて応答を提供することは、
信用レベルを判定することと、
信用レベルの判定に従って応答を提供することと、
を含む、条項９５〜１００のいずれか一つに記載の電子デバイス。
条項１０２．信用レベルは、第１の発話入力及びユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定する精度を表す、条項１０１に記載の電子デバイス。
条項１０３．信用レベルは、ユーザ意図が検索処理を使用して又はオブジェクト管理処理を使用してタスクを実行することであるかを判定する精度を表す、条項１０１〜１０２のいずれか一つに記載の電子デバイス。
条項１０４．信用レベルは、検索処理又はオブジェクト管理処理を使用してタスクを実行する精度を表す、条項１０１〜１０３のいずれか一つに記載の電子デバイス。
条項１０５．信用レベルの判定に従って応答を提供することは、
信用レベルが閾値信用レベル以上であるか否かを判定することと、
信用レベルが閾値信用レベル以上であるとの判定に従って、第１の応答を提供することと、
信用レベルが閾値信用レベル未満であるとの判定に従って、第２の応答を提供することと、
を含む、条項１０１〜１０４のいずれか一つに記載の電子デバイス。
続き
条項１．デジタルアシスタントサービスを提供する方法であって、
１つ以上のプロセッサ及びメモリを有するユーザデバイスにおいて、
タスクを実行するために発話入力をユーザから受信することと、
ユーザデバイスと関連付けられたコンテクスト情報を特定し、
発話入力及びユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定することと、
ユーザ意図に従って、タスクがユーザデバイス、又はユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定することと、
タスクがユーザデバイスにおいて実行され、タスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、タスクを実行するためのコンテンツを受信することと、
タスクが第１の電子デバイスにおいて実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを第１の電子デバイスに提供することと、
を含む、方法。
条項２．ユーザデバイスは、複数のユーザインタフェースを提供するように構成されている、条項１に記載の方法。
条項３．ユーザデバイスは、ラップトップコンピュータ、デスクトップコンピュータ、又はサーバを含む、条項１〜２のいずれか一つに記載の方法。
条項４．第１の電子デバイスは、ラップトップコンピュータ、デスクトップコンピュータ、サーバ、スマートフォン、タブレット、セットトップボックス、又は時計を含む、条項１〜３のいずれか一つに記載の方法。
条項５．発話入力を受信する前に、
ユーザデバイスのディスプレイ上で、デジタルアシスタントを呼び出すためのアフォーダンスを表示することを更に含む、条項１〜４のいずれか一つに記載の方法。
条項６．
所定のフレーズを受信したことに応じてデジタルアシスタントをインスタンス化することを更に含む、条項５に記載の方法。
条項７．
アフォーダンスの選択を受信したことに応じてデジタルアシスタントをインスタンス化することを更に含む、条項５〜６のいずれか一つに記載の方法。
条項８．ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定することと、
実施可能な意図と関連付けられた１つ以上のパラメータを判定することと、
を含む、条項１〜７のいずれか一つに記載の方法。
条項９．コンテクスト情報は、ユーザ特有データ、センサデータ、及びユーザデバイス構成データのうちの少なくとも１つを含む、条項１〜８のいずれか一つに記載の方法。
条項１０．タスクがユーザデバイス又は第１の電子デバイスにおいて実行されるかを判定することは、発話入力に含まれる１つ以上のキーワードに基づいている、条項１〜９のいずれか一つに記載の方法。
条項１１．タスクがユーザデバイス又は第１の電子デバイスにおいて実行されるかを判定することは、
ユーザデバイスにおいてタスクを実行することが実行基準を満たすかを判定することと、
ユーザデバイスにおいてタスクを実行することが実行基準を満たすとの判定に従って、タスクがユーザデバイスにおいて実行されると判定することと、
を含む、条項１〜１０のいずれか一つに記載の方法。
条項１２．
ユーザデバイスにおいてタスクを実行することが実行基準を満たさないとの判定に従って、
第１の電子デバイスにおいてタスクを実行することが実行基準を満たすかを判定することを更に含む、条項１１に記載の方法。
条項１３．
第１の電子デバイスにおいてタスクを実行することが実行基準を満たすとの判定に従って、タスクが第１の電子デバイスにおいて実行されると判定することと、
第１の電子デバイスにおいてタスクを実行することが実行基準を満たさないとの判定に従って、
第２の電子デバイスにおいてタスクを実行することが実行基準を満たすかを判定することと、
を更に含む、条項１２に記載の方法。
条項１４．実行基準は、１つ以上のユーザ優先度に基づいて判定される、条項１１〜１３のいずれか一つに記載の方法。
条項１５．実行基準は、デバイス構成データに基づいて判定される、条項１１〜１４のいずれか一つに記載の方法。
条項１６．実行基準は、動的に更新される、条項１１〜１５のいずれか一つに記載の方法。
条項１７．タスクがユーザデバイスにおいて実行され、タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを受信することは、
コンテンツの少なくとも一部を第１の電子デバイスから受信することを含み、コンテンツの少なくとも一部は、第１電子デバイスに記憶されている、条項１〜１１及び１４〜１６のいずれか一つに記載の方法。
条項１８．タスクがユーザデバイスにおいて実行され、タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを受信することは、
コンテンツの少なくとも一部を第３の電子デバイスから受信することを含む、条項１〜１１及び１４〜１７のいずれか一つに記載の方法。
条項１９．タスクが第１の電子デバイスにおいて実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを第１の電子デバイスに提供することは、
コンテンツの少なくとも一部をユーザデバイスから第１の電子デバイスに提供することを含み、コンテンツの少なくとも一部は、ユーザデバイスに記憶されている、条項１〜１６のいずれか一つに記載の方法。
条項２０．タスクが第１の電子デバイスにおいて実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを第１の電子デバイスに提供することは、
コンテンツの少なくとも一部を第４の電子デバイスから第１の電子デバイスに提供させることを含み、コンテンツの少なくとも一部は、第４の電子デバイスに記憶されている、条項１〜１６及び１９のいずれか一つに記載の方法。
条項２１．タスクは、ユーザデバイスにおいて実行され、方法は、受信されたコンテンツを使用してユーザデバイスにおいて第１の応答を提供することを更に含む、条項１〜１１及び１４〜１８のいずれか一つに記載の方法。
条項２２．ユーザデバイスにおいて第１の応答を提供することは、
ユーザデバイスにおいてタスクを実行することを含む、条項２１に記載の方法。
条項２３．ユーザデバイスにおいてタスクを実行することは、ユーザデバイスに対して部分的にリモートに実行されたタスクの続きである、条項２２に記載の方法。
条項２４．ユーザデバイスにおいて第１の応答を提供することは、
ユーザデバイスにおいて実行されるタスクと関連付けられた第１のユーザインタフェースを表示することを含む、条項２１〜２３のいずれか一つに記載の方法。
条項２５．ユーザデバイスにおいて第１の応答を提供することは、
ユーザデバイスにおいて実行されるタスクと関連付けられたリンクを提供することを含む、条項２１〜２４のいずれか一つに記載の方法。
条項２６．ユーザデバイスにおいて第１の応答を提供することは、
ユーザデバイスにおいて実行されるタスクに従って発話出力を提供することを含む、条項２１〜２５のいずれか一つに記載の方法。
条項２７．タスクは、第１の電子デバイスにおいて実行され、方法は、ユーザデバイスにおいて第２の応答を提供することを更に含む、条項１〜１６及び１９〜２０のいずれか一つに記載の方法。
条項２８．ユーザデバイスにおいて第２の応答を提供することは、
第１の電子デバイスにおいてタスクを実行させることを含む、条項２７に記載の方法。
条項２９．第１の電子デバイスにおいて実行されるタスクは、第１の電子デバイスに対してリモートに実行されたタスクの続きである、条項２８に記載の方法。
条項３０．ユーザデバイスにおいて第２の応答を提供することは、
第１の電子デバイスにおいて実行されるタスクに従って発話出力を提供することを含む、条項２７〜２９のいずれか一つに記載の方法。
条項３１．ユーザデバイスにおいて第２の応答を提供することは、
ユーザがタスクの実行のための別の電子デバイスを選択することを可能にするアフォーダンスを提供することを含む、条項２７〜３０のいずれか一つに記載の方法。
条項３２．１つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムは、命令を含み、命令は、電子デバイスの１つ以上のプロセッサによって実行されるとき、
電子デバイスに、
タスクを実行するために発話入力をユーザから受信させ、
ユーザデバイスと関連付けられたコンテクスト情報を特定させ、
発話入力及びユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定させ、
ユーザ意図に従って、タスクがユーザデバイス、又はユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定させ、
タスクがユーザデバイスにおいて実行され、タスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、タスクを実行するためのコンテンツを受信させ、
タスクが第１の電子デバイスにおいて実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを第１の電子デバイスに提供させる、
非一時的コンピュータ可読記憶媒体。
条項３３．ユーザデバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を含み、１つ以上のプログラムは、
タスクを実行するために発話入力をユーザから受信し、
ユーザデバイスと関連付けられたコンテクスト情報を特定し、
発話入力及びユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定し、
ユーザ意図に従って、タスクがユーザデバイス、又はユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定し、
タスクがユーザデバイスにおいて実行され、タスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、タスクを実行するためのコンテンツを受信し、
タスクが第１の電子デバイスにおいて実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを第１の電子デバイスに提供する、
命令を含む、ユーザデバイス。
条項３４．ユーザデバイスであって、
タスクを実行するために発話入力をユーザから受信する手段と、
ユーザデバイスと関連付けられたコンテクスト情報を特定する手段と、
発話入力及びユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定する手段と、
ユーザ意図に従って、タスクがユーザデバイス、又はユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定する手段と、
タスクがユーザデバイスにおいて実行され、タスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、タスクを実行するためのコンテンツを受信する手段と、
タスクが第１の電子デバイスにおいて実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを第１の電子デバイスに提供する手段と、
を含む、ユーザデバイス。
条項３５．ユーザデバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を含み、１つ以上のプログラムは、条項１〜３１のいずれか一つに記載の方法を実行する命令を含む、ユーザデバイス。
条項３６．ユーザデバイスであって、
条項１〜３１のいずれか一つに記載の方法を実行する手段を含む、ユーザデバイス。
条項３７．電子デバイスの１つ以上のプロセッサによって実行される１つ以上のプログラムを含む非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムは、命令を含み、命令は、１つ以上のプロセッサによって実行されるとき、電子デバイスに条項１〜３１のいずれか一つに記載の方法を実行させる、非一時的コンピュータ可読記憶媒体。
条項３８．デジタルアシスタントを動作させるシステムであって、システムは、条項１〜３１のいずれか一つに記載の方法を実行する手段を含む、システム。
条項３９．ユーザデバイスであって、
タスクを実行するために発話入力をユーザから受信するように構成された受信ユニットと、
ユーザデバイスと関連付けられたコンテクスト情報を特定し、
発話入力及びユーザデバイスと関連付けられたコンテクスト情報に基づいてユーザ意図を判定し、
ユーザ意図に従って、タスクがユーザデバイス、又はユーザデバイスに通信可能に接続された第１の電子デバイスにおいて実行されるかを判定し、
タスクがユーザデバイスにおいて実行され、タスクを実行するためのコンテンツがリモートに記憶されているとの判定に従って、タスクを実行するためのコンテンツを受信し、
タスクが第１の電子デバイスにおいて実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを第１の電子デバイスに提供する、
ように構成されたプロセシングユニットと、
を含む、ユーザデバイス。
条項４０．ユーザデバイスは、複数のユーザインタフェースを提供するように構成されている、条項３９に記載のユーザデバイス。
条項４１．ユーザデバイスは、ラップトップコンピュータ、デスクトップコンピュータ、又はサーバを含む、条項３９〜４０のいずれか一つに記載のユーザデバイス。
条項４２．第１の電子デバイスは、ラップトップコンピュータ、デスクトップコンピュータ、サーバ、スマートフォン、タブレット、セットトップボックス、又は時計を含む、条項３９〜４１のいずれか一つに記載のユーザデバイス。
条項４３．発話入力を受信する前に、
ユーザデバイスのディスプレイ上で、デジタルアシスタントを呼び出すためのアフォーダンスを表示することを更に含む、条項３９〜４２のいずれか一つに記載のユーザデバイス。
条項４４．
所定のフレーズを受信したことに応じてデジタルアシスタントをインスタンス化することを更に含む、条項４３に記載のユーザデバイス。
条項４５．
アフォーダンスの選択を受信したことに応じてデジタルアシスタントをインスタンス化することを更に含む、条項４３〜４４のいずれか一つに記載のユーザデバイス。
条項４６．ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定することと、
実施可能な意図と関連付けられた１つ以上のパラメータを判定することと、
を含む、条項３９〜５のいずれか一つに記載のユーザデバイス。
条項４７．コンテクスト情報は、ユーザ特有データ、センサデータ、及びユーザデバイス構成データのうちの少なくとも１つを含む、条項３９〜４６のいずれか一つに記載のユーザデバイス。
条項４８．タスクがユーザデバイス又は第１の電子デバイスにおいて実行されるかを判定することは、発話入力に含まれる１つ以上のキーワードに基づいている、条項３９〜４７のいずれか一つに記載のユーザデバイス。
条項４９．タスクがユーザデバイス又は第１の電子デバイスにおいて実行されるかを判定することは、
ユーザデバイスにおいてタスクを実行することが実行基準を満たすかを判定することと、
ユーザデバイスにおいてタスクを実行することが実行基準を満たすとの判定に従って、タスクがユーザデバイスにおいて実行されると判定することと、
を含む、条項３９〜４８のいずれか一つに記載のユーザデバイス。
条項５０．
ユーザデバイスにおいてタスクを実行することが実行基準を満たさないとの判定に従って、
第１の電子デバイスにおいてタスクを実行することが実行基準を満たすかを判定することを更に含む、条項４９に記載のユーザデバイス。
条項５１．
第１の電子デバイスにおいてタスクを実行することが実行基準を満たすとの判定に従って、タスクが第１の電子デバイスにおいて実行されると判定することと、
第１の電子デバイスにおいてタスクを実行することが実行基準を満たさないとの判定に従って、
第２の電子デバイスにおいてタスクを実行することが実行基準を満たすかを判定することと、
を更に含む、条項５０に記載のユーザデバイス。
条項５２．実行基準は、１つ以上のユーザ優先度に基づいて判定される、条項４９〜５１のいずれか一つに記載のユーザデバイス。
条項５３．実行基準は、デバイス構成データに基づいて判定される、条項４９〜５２のいずれか一つに記載のユーザデバイス。
条項５４．実行基準は、動的に更新される、条項４９〜５３のいずれか一つに記載のユーザデバイス。
条項５５．タスクがユーザデバイスにおいて実行され、タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを受信することは、
コンテンツの少なくとも一部を第１の電子デバイスから受信することを含み、コンテンツの少なくとも一部は、第１電子デバイスに記憶されている、条項３９〜４９及び５２〜５４のいずれか一つに記載のユーザデバイス。
条項５６．タスクがユーザデバイスにおいて実行され、タスクを実行するためのコンテンツがリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを受信することは、
コンテンツの少なくとも一部を第３の電子デバイスから受信することを含む、条項３９〜４９及び５２〜５５のいずれか一つに記載のユーザデバイス。
条項５７．タスクが第１の電子デバイスにおいて実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを第１の電子デバイスに提供することは、
コンテンツの少なくとも一部をユーザデバイスから第１の電子デバイスに提供することを含み、コンテンツの少なくとも一部は、ユーザデバイスに記憶されている、条項３９〜５４のいずれか一つに記載のユーザデバイス。
条項５８．タスクが第１の電子デバイスにおいて実行され、タスクを実行するためのコンテンツが第１の電子デバイスに対してリモートに位置するとの判定に従って、タスクを実行するためのコンテンツを第１の電子デバイスに提供することは、
コンテンツの少なくとも一部を第４の電子デバイスから第１の電子デバイスに提供させることを含み、コンテンツの少なくとも一部は、第４の電子デバイスに記憶されている、条項３９〜５４及び５７のいずれか一つに記載のユーザデバイス。
条項５９．タスクは、ユーザデバイスにおいて実行され、ユーザデバイスは、受信されたコンテンツを使用してユーザデバイスにおいて第１の応答を提供することを更に含む、条項３９〜４９及び５２〜５６のいずれか一つに記載のユーザデバイス。
条項６０．ユーザデバイスにおいて第１の応答を提供することは、
ユーザデバイスにおいてタスクを実行することを含む、条項５９に記載のユーザデバイス。
条項６１．ユーザデバイスにおいてタスクを実行することは、ユーザデバイスに対して部分的にリモートに実行されたタスクの続きである、条項６０に記載のユーザデバイス。
条項６２．ユーザデバイスにおいて第１の応答を提供することは、
ユーザデバイスにおいて実行されるタスクと関連付けられた第１のユーザインタフェースを表示することを含む、条項５９〜６１のいずれか一つに記載のユーザデバイス。
条項６３．ユーザデバイスにおいて第１の応答を提供することは、
ユーザデバイスにおいて実行されるタスクと関連付けられたリンクを提供することを含む、条項５９〜６２のいずれか一つに記載のユーザデバイス。
条項６４．ユーザデバイスにおいて第１の応答を提供することは、
ユーザデバイスにおいて実行されるタスクに従って発話出力を提供することを含む、条項５９〜６３のいずれか一つに記載のユーザデバイス。
条項６５．タスクは、第１の電子デバイスにおいて実行され、ユーザデバイスは、ユーザデバイスにおいて第２の応答を提供することを更に含む、条項３９〜５４及び５７〜５８のいずれか一つに記載のユーザデバイス。
条項６６．ユーザデバイスにおいて第２の応答を提供することは、
第１の電子デバイスにおいてタスクを実行させることを含む、条項６５に記載のユーザデバイス。
条項６７．第１の電子デバイスにおいて実行されるタスクは、第１の電子デバイスに対してリモートに実行されたタスクの続きである、条項６６に記載のユーザデバイス。
条項６８．ユーザデバイスにおいて第２の応答を提供することは、
第１の電子デバイスにおいて実行されるタスクに従って発話出力を提供することを含む、条項６５〜６７のいずれか一つに記載のユーザデバイス。
条項６９．ユーザデバイスにおいて第２の応答を提供することは、
ユーザがタスクの実行のための別の電子デバイスを選択することを可能にするアフォーダンスを提供することを含む、条項６５〜６８のいずれか一つに記載のユーザデバイス。
システム構成管理
条項１．デジタルアシスタントサービスを提供する方法であって、
１つ以上のプロセッサ及びメモリを有するユーザデバイスにおいて、
ユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信することであって、ユーザデバイスは、複数のユーザインタフェースを同時に提供するように構成されている、ことと、
ユーザデバイスと関連付けられたコンテクスト情報を特定することと、
発話入力及びコンテクスト情報に基づいてユーザ意図を判定することと、
ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定することと、
ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答を提供することと、
ユーザ意図がタスクを実行する要求を示すとの判定に従って、タスクを実行するユーザデバイスと関連付けられた処理をインスタンス化することと、
を含む、方法。
条項２．発話入力を受信する前に、
ユーザデバイスのディスプレイ上で、デジタルアシスタントを呼び出すためのアフォーダンスを表示することを更に含む、条項１に記載の方法。
条項３．
所定のフレーズを受信したことに応じてデジタルアシスタントサービスを呼び出すことを更に含む、条項２に記載の方法。
条項４．
アフォーダンスの選択を受信したことに応じてデジタルアシスタントサービスをインスタンス化することを更に含む、条項２に記載の方法。
条項５．ユーザデバイスの１つ以上のシステム構成は、音声構成を含む、条項１〜４のいずれか一つに記載の方法。
条項６．ユーザデバイスの１つ以上のシステム構成は、日付及び時間構成を含む、条項１〜５のいずれか一つに記載の方法。
条項７．ユーザデバイスの１つ以上のシステム構成は、聞き取り構成を含む、条項１〜６のいずれか一つに記載の方法。
条項８．ユーザデバイスの１つ以上のシステム構成は、表示構成を含む、条項１〜７のいずれか一つに記載の方法。
条項９．ユーザデバイスの１つ以上のシステム構成は、入力デバイス構成を含む、条項１〜８のいずれか一つに記載の方法。
条項１０．ユーザデバイスの１つ以上のシステム構成は、ネットワーク構成を含む、条項１〜９のいずれか一つに記載の方法。
条項１１．ユーザデバイスの１つ以上のシステム構成は、通知構成を含む、条項１〜１０のいずれか一つに記載の方法。
条項１２．ユーザデバイスの１つ以上のシステム構成は、プリンタ構成を含む、条項１〜１１のいずれか一つに記載の方法。
条項１３．ユーザデバイスの１つ以上のシステム構成は、セキュリティ構成を含む、条項１〜１２のいずれか一つに記載の方法。
条項１４．ユーザデバイスの１つ以上のシステム構成は、バックアップ構成を含む、条項１〜１３のいずれか一つに記載の方法。
条項１５．ユーザデバイスの１つ以上のシステム構成は、アプリケーション構成を含む、条項１〜１４のいずれか一つに記載の方法。
条項１６．ユーザデバイスの１つ以上のシステム構成は、ユーザインタフェース構成を含む、条項１〜１５のいずれか一つに記載の方法。
条項１７．ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定することと、
実施可能な意図と関連付けられた１つ以上のパラメータを判定することと、
を含む、条項１〜１６のいずれか一つに記載の方法。
条項１８．コンテクスト情報は、ユーザ特有データ、デバイス構成データ、及びセンサデータのうちの少なくとも１つを含む、条項１〜１７のいずれか一つに記載の方法。
条項１９．ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定することは、
ユーザ意図がシステム構成を変えることであるか否かを判定することを含む、条項１〜１８のいずれか一つに記載の方法。
条項２０．ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答を提供することは、
情報の要求に従って１つ以上のシステム構成の状況を取得することと、
１つ以上のシステム構成の状況に従って発話応答を提供することと、
を含む、条項１〜１９のいずれか一つに記載の方法。
条項２１．ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答を提供することに加え、
１つ以上のシステム構成の状況に従って情報を提供する第１のユーザインタフェースを表示することを更に含む、条項１〜２０のいずれか一つに記載の方法。
条項２２．ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答を提供することに加え、
情報の要求と関連付けられたリンクを提供することを更に含む、条項１〜２１のいずれか一つに記載の方法。
条項２３．ユーザ意図がタスクを実行する要求を示すとの判定に従って、タスクを実行するユーザデバイスと関連付けられた処理をインスタンス化することは、
処理を使用してタスクを実行することを含む、条項１〜２２のいずれか一つに記載の方法。
条項２４．
タスクを実行した結果に従って第１の発話出力を提供することを更に含む、条項２３に記載の方法。
条項２５．
ユーザがタスクを実行した結果を操作することを可能にする第２のユーザインタフェースを提供することを更に含む、条項２３〜２４のいずれか一つに記載の方法。
条項２６．第２のユーザインタフェースは、タスクを実行した結果と関連付けられたリンクを含む、条項２５に記載の方法。
条項２７．ユーザ意図がタスクを実行する要求を示すとの判定に従って、タスクを実行するユーザデバイスと関連付けられた処理をインスタンス化することは、
ユーザがタスクを実行することを可能にする第３のユーザインタフェースを提供することを含む、条項１〜１９及び２３〜２６のいずれか一つに記載の方法。
条項２８．第３のユーザインタフェースは、ユーザがタスクを実行することを可能にするリンクを含む、条項２７に記載の方法。
条項２９．第３のユーザインタフェースと関連付けられた第２の発話出力を提供することを更に含む、条項２７〜２８のいずれか一つに記載の方法。
条項３０．１つ以上のプログラムを記憶した非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムは、電子デバイスの１つ以上のプロセッサによって実行されるとき、
電子デバイスに、
複数のユーザインタフェースを同時に提供するように構成されているユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信させ、
ユーザデバイスと関連付けられたコンテクスト情報を特定させ、
発話入力及びコンテクスト情報に基づいてユーザ意図を判定させ、
ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定させ、
ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答を提供させ、
ユーザ意図がタスクを実行する要求を示すとの判定に従って、タスクを実行するユーザデバイスと関連付けられた処理をインスタンス化させる、
非一時的コンピュータ可読記憶媒体。
条項３１．電子デバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を含み、１つ以上のプログラムは、
複数のユーザインタフェースを同時に提供するように構成されているユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信し、
ユーザデバイスと関連付けられたコンテクスト情報を特定し、
発話入力及びコンテクスト情報に基づいてユーザ意図を判定し、
ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定し、
ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答を提供し、
ユーザ意図がタスクを実行する要求を示すとの判定に従って、タスクを実行するユーザデバイスと関連付けられた処理をインスタンス化する、
命令を含む、電子デバイス。
条項３２．電子デバイスであって、
ユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信する手段であって、ユーザデバイスは、複数のユーザインタフェースを同時に提供するように構成されている、手段と、
ユーザデバイスと関連付けられたコンテクスト情報を特定する手段と、
発話入力及びコンテクスト情報に基づいてユーザ意図を判定する手段と、
ユーザ意図が情報の要求示すか又はタスクを実行する要求を示すかを判定する手段と、
ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答を提供する手段と、
ユーザ意図がタスクを実行する要求を示すとの判定に従って、タスクを実行するユーザデバイスと関連付けられた処理をインスタンス化する手段と、
を含む、電子デバイス。
条項３３．電子デバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を含み、１つ以上のプログラムは、条項１〜２９のいずれか一つに記載の方法を実行する命令を含む、電子デバイス。
条項３４．電子デバイスであって、
条項１〜２９のいずれか一つに記載の方法を実行する手段を備える、電子デバイス。
条項３５．電子デバイスの１つ以上のプロセッサによって実行される１つ以上のプログラムを含む非一時的コンピュータ可読記憶媒体であって、１つ以上のプログラムは、命令を含み、命令は、１つ以上のプロセッサによって実行されるとき、電子デバイスに条項１〜２９のいずれか一つに記載の方法を実行させる、非一時的コンピュータ可読記憶媒体。
条項３６．デジタルアシスタントを動作させるシステムであって、システムは、条項１〜２９のいずれか一つに記載の方法を実行する手段を備える、システム。
条項３７．電子デバイスであって、
ユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信するように構成された受信ユニットであって、ユーザデバイスは、複数のユーザインタフェースを同時に提供するように構成されている、受信ユニットと、
ユーザデバイスと関連付けられたコンテクスト情報を特定し、
発話入力及びコンテクスト情報に基づいてユーザ意図を判定し、
ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定し、
ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答を提供し、
ユーザ意図がタスクを実行する要求を示すとの判定に従って、タスクを実行するユーザデバイスと関連付けられた処理をインスタンス化する、
ように構成されたプロセシングユニットと、
を含む、電子デバイス。
条項３８．発話入力を受信する前に、
ユーザデバイスのディスプレイ上で、デジタルアシスタントを呼び出すためのアフォーダンスを表示することを更に含む、条項３７に記載の電子デバイス。
条項３９．
所定のフレーズを受信したことに応じてデジタルアシスタントサービスを呼び出すことを更に含む、条項３８に記載の電子デバイス。
条項４０．
アフォーダンスの選択を受信したことに応じてデジタルアシスタントサービスをインスタンス化することを更に含む、条項３８に記載の電子デバイス。
条項４１．ユーザデバイスの１つ以上のシステム構成は、音声構成を含む、条項３７〜４０のいずれか一つに記載の電子デバイス。
条項４２．ユーザデバイスの１つ以上のシステム構成は、日付及び時間構成を含む、条項３７〜４１のいずれか一つに記載の電子デバイス。
条項４３．ユーザデバイスの１つ以上のシステム構成は、聞き取り構成を含む、条項３７〜４２のいずれか一つに記載の電子デバイス。
条項４４．ユーザデバイスの１つ以上のシステム構成は、表示構成を含む、条項３７〜４３のいずれか一つに記載の電子デバイス。
条項４５．ユーザデバイスの１つ以上のシステム構成は、入力デバイス構成を含む、条項３７〜４４のいずれか一つに記載の電子デバイス。
条項４６．ユーザデバイスの１つ以上のシステム構成は、ネットワーク構成を含む、条項３７〜４５のいずれか一つに記載の電子デバイス。
条項４７．ユーザデバイスの１つ以上のシステム構成は、通知構成を含む、条項３７〜４６のいずれか一つに記載の電子デバイス。
条項４８．ユーザデバイスの１つ以上のシステム構成は、プリンタ構成を含む、条項３７〜４７のいずれか一つに記載の電子デバイス。
条項４９．ユーザデバイスの１つ以上のシステム構成は、セキュリティ構成を含む、条項３７〜４８のいずれか一つに記載の電子デバイス。
条項５０．ユーザデバイスの１つ以上のシステム構成は、バックアップ構成を含む、条項３７〜４９のいずれか一つに記載の電子デバイス。
条項５１．ユーザデバイスの１つ以上のシステム構成は、アプリケーション構成を含む、条項３７〜５０のいずれか一つに記載の電子デバイス。
条項５２．ユーザデバイスの１つ以上のシステム構成は、ユーザインタフェース構成を含む、条項３７〜５１のいずれか一つに記載の電子デバイス。
条項５３．ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定することと、
実施可能な意図と関連付けられた１つ以上のパラメータを判定することと、
を含む、条項３７〜５２のいずれか一つに記載の電子デバイス。
条項５４．コンテクスト情報は、ユーザ特有データ、デバイス構成データ、及びセンサデータのうちの少なくとも１つを含む、条項３７〜５３のいずれか一つに記載の電子デバイス。
条項５５．ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定することは、
ユーザ意図がシステム構成を変えることであるか否かを判定することを含む、条項３７〜５４のいずれか一つに記載の電子デバイス。
条項５６．ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答を提供することは、
情報の要求に従って１つ以上のシステム構成の状況を取得することと、
１つ以上のシステム構成の状況に従って発話応答を提供することと、
を含む、条項３７〜５５のいずれか一つに記載の電子デバイス。
条項５７．ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答を提供することに加え、
１つ以上のシステム構成の状況に従って情報を提供する第１のユーザインタフェースを表示することを更に含む、条項３７〜５６のいずれか一つに記載の電子デバイス。
条項５８．ユーザ意図が情報の要求を示すとの判定に従って、情報の要求への発話応答を提供することに加え、
情報の要求と関連付けられたリンクを提供することを更に含む、条項３７〜５７のいずれか一つに記載の電子デバイス。
条項５９．ユーザ意図がタスクを実行する要求を示すとの判定に従って、タスクを実行するユーザデバイスと関連付けられた処理をインスタンス化することは、
処理を使用してタスクを実行することを含む、条項３７〜５８のいずれか一つに記載の電子デバイス。
条項６０．
タスクを実行した結果に従って第１の発話出力を提供することを更に含む、条項５９に記載の電子デバイス。
条項６１．
ユーザがタスクを実行した結果を操作することを可能にする第２のユーザインタフェースを提供することを更に含む、条項５９〜６０のいずれか一つに記載の電子デバイス。
条項６２．第２のユーザインタフェースは、タスクを実行した結果と関連付けられたリンクを含む、条項６１に記載の電子デバイス。
条項６３．ユーザ意図がタスクを実行する要求を示すとの判定に従って、タスクを実行するユーザデバイスと関連付けられた処理をインスタンス化することは、
ユーザがタスクを実行することを可能にする第３のユーザインタフェースを提供することを含む、条項３７〜５５及び５９〜６２のいずれか一つに記載の電子デバイス。
条項６４．第３のユーザインタフェースは、ユーザがタスクを実行することを可能にするリンクを含む、条項６３に記載の電子デバイス。
条項６５．第３のユーザインタフェースと関連付けられた第２の発話出力を提供することを更に含む、条項６３〜６４のいずれか一つに記載の電子デバイス。
【０５０６】
上記説明は、説明の目的で、特定の実施形態を参照して説明されてきた。しかしながら。上記例示的な議論は、包括的であることを意図しておらず、又は開示される簡易な形式に本発明を限定することを意図していない。多くの修正及び変更が上記教示を考慮して可能である。技術の原理及びそれらの実用的な適用例を最良に説明するために実施形態が選択及び説明されてきた。他の当業者は、それらによって、考慮される特定の使用に適切なものとして、様々な修正で技術及び様々な実施形態を最良に利用することが可能になる。
【０５０７】
添付図面を参照して開示及び実施例が十分に説明されたが、様々な変更及び修正が当業者にとって明らかとなることに留意されたい。そのような変更及び修正は、特許請求の範囲によって定義されるものとして、開示及び実施例の範囲内に含まれるものとして理解される。
【図１】
2019522250.tif 000003
【図２Ａ】
2019522250.tif 000004
【図２Ｂ】
2019522250.tif 000005
【図３】
2019522250.tif 000006
【図４】
2019522250.tif 000007
【図５Ａ】
2019522250.tif 000008
【図５Ｂ】
2019522250.tif 000009
【図６Ａ】
2019522250.tif 000010
【図６Ｂ】
2019522250.tif 000011
【図７Ａ】
2019522250.tif 000012
【図７Ｂ】
2019522250.tif 000013
【図７Ｃ】
2019522250.tif 000014
【図８Ａ】
2019522250.tif 000015
【図８Ｂ】
2019522250.tif 000016
【図８Ｃ】
2019522250.tif 000017
【図８Ｄ】
2019522250.tif 000018
【図８Ｅ】
2019522250.tif 000019
【図８Ｆ】
2019522250.tif 000020
【図９Ａ】
2019522250.tif 000021
【図９Ｂ】
2019522250.tif 000022
【図９Ｃ】
2019522250.tif 000023
【図９Ｄ】
2019522250.tif 000024
【図９Ｅ】
2019522250.tif 000025
【図９Ｆ】
2019522250.tif 000026
【図９Ｇ】
2019522250.tif 000027
【図９Ｈ】
2019522250.tif 000028
【図１０Ａ】
2019522250.tif 000029
【図１０Ｂ】
2019522250.tif 000030
【図１１Ａ】
2019522250.tif 000031
【図１１Ｂ】
2019522250.tif 000032
【図１１Ｃ】
2019522250.tif 000033
【図１１Ｄ】
2019522250.tif 000034
【図１２Ａ】
2019522250.tif 000035
【図１２Ｂ】
2019522250.tif 000036
【図１２Ｃ】
2019522250.tif 000037
【図１２Ｄ】
2019522250.tif 000038
【図１３Ａ】
2019522250.tif 000039
【図１３Ｂ】
2019522250.tif 000040
【図１３Ｃ】
2019522250.tif 000041
【図１４Ａ】
2019522250.tif 000042
【図１４Ｂ】
2019522250.tif 000043
【図１４Ｃ】
2019522250.tif 000044
【図１４Ｄ】
2019522250.tif 000045
【図１５Ａ】
2019522250.tif 000046
【図１５Ｂ】
2019522250.tif 000047
【図１５Ｃ】
2019522250.tif 000048
【図１５Ｄ】
2019522250.tif 000049
【図１６Ａ】
2019522250.tif 000050
【図１６Ｂ】
2019522250.tif 000051
【図１６Ｃ】
2019522250.tif 000052
【図１７Ａ】
2019522250.tif 000053
【図１７Ｂ】
2019522250.tif 000054
【図１７Ｃ】
2019522250.tif 000055
【図１７Ｄ】
2019522250.tif 000056
【図１７Ｅ】
2019522250.tif 000057
【図１８Ａ】
2019522250.tif 000058
【図１８Ｂ】
2019522250.tif 000059
【図１８Ｃ】
2019522250.tif 000060
【図１８Ｄ】
2019522250.tif 000061
【図１８Ｅ】
2019522250.tif 000062
【図１８Ｆ】
2019522250.tif 000063
【図１９Ａ】
2019522250.tif 000064
【図１９Ｂ】
2019522250.tif 000065
【図１９Ｃ】
2019522250.tif 000066
【図１９Ｄ】
2019522250.tif 000067
【図２０Ａ】
2019522250.tif 000068
【図２０Ｂ】
2019522250.tif 000069
【図２０Ｃ】
2019522250.tif 000070
【図２０Ｄ】
2019522250.tif 000071
【図２０Ｅ】
2019522250.tif 000072
【図２０Ｆ】
2019522250.tif 000073
【図２０Ｇ】
2019522250.tif 000074
【図２１Ａ】
2019522250.tif 000075
【図２１Ｂ】
2019522250.tif 000076
【図２１Ｃ】
2019522250.tif 000077
【図２１Ｄ】
2019522250.tif 000078
【図２１Ｅ】
2019522250.tif 000079
【図２２Ａ】
2019522250.tif 000080
【図２２Ｂ】
2019522250.tif 000081
【図２２Ｃ】
2019522250.tif 000082
【図２２Ｄ】
2019522250.tif 000083
【図２３】
2019522250.tif 000084
【手続補正書】
【提出日】平成30年7月6日(2018.7.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
デジタルアシスタントサービスを提供する方法であって、
１つ以上のプロセッサ及びメモリを有するユーザデバイスにおいて、
前記ユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信すること（２２０６）であって、前記ユーザデバイスは、複数の対応するアプリケーションと関連付けられた複数のグラフィカルユーザインタフェースを同時に表示している、ことと、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定すること（２２２０）と、
前記発話入力及びコンテクスト情報に基づいてユーザ意図を判定すること（２２２４）と、
前記ユーザ意図が、情報の要求を示すか、又は前記複数の対応するアプリケーションのうちの１つに関連するタスクを実行する要求を示すかを判定すること（２２２８）と、
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への発話応答を提供すること（２２３０）と、
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた処理をインスタンス化すること（２２３８）と、
を含む、方法。
【請求項２】
前記発話入力を受信する前に、
前記ユーザデバイスのディスプレイ上で、前記デジタルアシスタントを呼び出すためのアフォーダンスを表示すること（２２０２）を更に含む、請求項１に記載の方法。
【請求項３】
所定のフレーズを受信したことに応じて前記デジタルアシスタントサービスをインスタンス化すること（２２０３）を更に含む、請求項２に記載の方法。
【請求項４】
前記アフォーダンスの選択を受信したことに応じて前記デジタルアシスタントサービスをインスタンス化すること（２２０４）を更に含む、請求項２に記載の方法。
【請求項５】
前記ユーザデバイスの前記１つ以上のシステム構成は、音声構成を含む（２２０７）、請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記ユーザデバイスの前記１つ以上のシステム構成は、日付及び時間構成を含む（２２０８）、請求項１から５のいずれか一項に記載の方法。
【請求項７】
前記ユーザデバイスの前記１つ以上のシステム構成は、聞き取り構成を含む（２２０９）、請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記ユーザデバイスの前記１つ以上のシステム構成は、表示構成を含む（２２１０）、請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記ユーザデバイスの前記１つ以上のシステム構成は、入力デバイス構成を含む（２２１１）、請求項１から８のいずれか一項に記載の方法。
【請求項１０】
前記ユーザデバイスの前記１つ以上のシステム構成は、ネットワーク構成を含む（２２１２）、請求項１から９のいずれか一項に記載の方法。
【請求項１１】
前記ユーザデバイスの前記１つ以上のシステム構成は、通知構成を含む（２２１３）、請求項１から１０のいずれか一項に記載の方法。
【請求項１２】
前記ユーザデバイスの前記１つ以上のシステム構成は、プリンタ構成を含む（２２１４）、請求項１から１１のいずれか一項に記載の方法。
【請求項１３】
前記ユーザデバイスの前記１つ以上のシステム構成は、セキュリティ構成を含む（２２１５）、請求項１から１２のいずれか一項に記載の方法。
【請求項１４】
前記ユーザデバイスの前記１つ以上のシステム構成は、バックアップ構成を含む（２２１６）、請求項１から１３のいずれか一項に記載の方法。
【請求項１５】
前記ユーザデバイスの前記１つ以上のシステム構成は、アプリケーション構成を含む（２２１７）、請求項１から１４のいずれか一項に記載の方法。
【請求項１６】
前記ユーザデバイスの前記１つ以上のシステム構成は、ユーザインタフェース構成を含む（２２１８）、請求項１から１５のいずれか一項に記載の方法。
【請求項１７】
前記ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定すること（２２２５）と、
前記実施可能な意図と関連付けられた１つ以上のパラメータを判定すること（２２２６）と、
を含む、請求項１から１６のいずれか一項に記載の方法。
【請求項１８】
前記コンテクスト情報は、ユーザ特有データ、デバイス構成データ、及びセンサデータのうちの少なくとも１つを含む（２２２３）、請求項１から１７のいずれか一項に記載の方法。
【請求項１９】
前記ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定することは、
前記ユーザ意図がシステム構成を変えることであるか否かを判定すること（２２２９）を含む、請求項１から１８のいずれか一項に記載の方法。
【請求項２０】
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への前記発話応答を提供することは、
前記情報の要求に従って１つ以上のシステム構成の状況を取得すること（２２３１）と、
１つ以上のシステム構成の前記状況に従って前記発話応答を提供すること（２２３２）と、
を含む、請求項１から１９のいずれか一項に記載の方法。
【請求項２１】
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への前記発話応答を提供することに加え、
前記１つ以上のシステム構成の前記状況に従って情報を提供する第１のユーザインタフェースを表示すること（２２３４）を更に含む、請求項１から２０のいずれか一項に記載の方法。
【請求項２２】
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への前記発話応答を提供することに加え、
前記情報の要求と関連付けられたリンクを提供すること（２２３６）を更に含む、請求項１から２１のいずれか一項に記載の方法。
【請求項２３】
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた前記処理をインスタンス化することは、
前記処理を使用して前記タスクを実行すること（２２３９）を含む、請求項１から２２のいずれか一項に記載の方法。
【請求項２４】
前記タスクを実行した結果に従って第１の発話出力を提供すること（２２４０）を更に含む、請求項２３に記載の方法。
【請求項２５】
前記ユーザが前記タスクを実行した結果を操作することを可能にする第２のユーザインタフェースを提供すること（２２４２）を更に含む、請求項２３から２４のいずれか一項に記載の方法。
【請求項２６】
前記第２のユーザインタフェースは、前記タスクを実行した前記結果と関連付けられたリンクを含む（２２４４）、請求項２５に記載の方法。
【請求項２７】
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた前記処理をインスタンス化することは、
前記ユーザが前記タスクを実行することを可能にする第３のユーザインタフェースを提供すること（２２４６）を含む、請求項１から１９及び２３から２６のいずれか一項に記載の方法。
【請求項２８】
前記第３のユーザインタフェースは、前記ユーザが前記タスクを実行することを可能にするリンクを含む（２２４８）、請求項２７に記載の方法。
【請求項２９】
前記第３のユーザインタフェースと関連付けられた第２の発話出力を提供することを更に含む（２２５０）、請求項２７から２８のいずれか一項に記載の方法。
【請求項３０】
電子デバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を備え、前記１つ以上のプログラムは、請求項１から２９のいずれか一項に記載の方法を実行する命令を含む、電子デバイス。
【請求項３１】
電子デバイスの１つ以上のプロセッサによって実行される１つ以上のプログラムを含むコンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、命令を含み、前記命令は、前記１つ以上のプロセッサによって実行されるとき、前記電子デバイスに請求項１から２９のいずれか一項に記載の方法を実行させる、コンピュータ可読記憶媒体。
【手続補正書】
【提出日】平成31年1月23日(2019.1.23)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
デジタルアシスタントサービスを提供する方法であって、
１つ以上のプロセッサ及びメモリを有するユーザデバイスにおいて、
前記ユーザデバイスの１つ以上のシステム構成を管理するために発話入力をユーザから受信すること（２２０６）であって、前記ユーザデバイスは、複数の対応するアプリケーションと関連付けられた複数のグラフィカルユーザインタフェースを同時に表示している、ことと、
前記ユーザデバイスと関連付けられたコンテクスト情報を特定すること（２２２０）と、
前記発話入力及びコンテクスト情報に基づいてユーザ意図を判定すること（２２２４）と、
前記ユーザ意図が、情報の要求を示すか、又は前記複数の対応するアプリケーションのうちの１つに関連するタスクを実行する要求を示すかを判定すること（２２２８）と、
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への発話応答を提供すること（２２３０）と、
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた処理をインスタンス化すること（２２３８）と、
を含む、方法。
【請求項２】
前記発話入力を受信する前に、
前記ユーザデバイスのディスプレイ上で、前記デジタルアシスタントサービスを呼び出すためのアフォーダンスを表示すること（２２０２）を更に含む、請求項１に記載の方法。
【請求項３】
所定のフレーズを受信したことに応じて前記デジタルアシスタントサービスをインスタンス化すること（２２０３）を更に含む、請求項２に記載の方法。
【請求項４】
前記アフォーダンスの選択を受信したことに応じて前記デジタルアシスタントサービスをインスタンス化すること（２２０４）を更に含む、請求項２に記載の方法。
【請求項５】
前記ユーザデバイスの前記１つ以上のシステム構成は、音声構成を含む（２２０７）、請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記ユーザデバイスの前記１つ以上のシステム構成は、日付及び時間構成を含む（２２０８）、請求項１から５のいずれか一項に記載の方法。
【請求項７】
前記ユーザデバイスの前記１つ以上のシステム構成は、聞き取り構成を含む（２２０９）、請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記ユーザデバイスの前記１つ以上のシステム構成は、表示構成を含む（２２１０）、請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記ユーザデバイスの前記１つ以上のシステム構成は、入力デバイス構成を含む（２２１１）、請求項１から８のいずれか一項に記載の方法。
【請求項１０】
前記ユーザデバイスの前記１つ以上のシステム構成は、ネットワーク構成を含む（２２１２）、請求項１から９のいずれか一項に記載の方法。
【請求項１１】
前記ユーザデバイスの前記１つ以上のシステム構成は、通知構成を含む（２２１３）、請求項１から１０のいずれか一項に記載の方法。
【請求項１２】
前記ユーザデバイスの前記１つ以上のシステム構成は、プリンタ構成を含む（２２１４）、請求項１から１１のいずれか一項に記載の方法。
【請求項１３】
前記ユーザデバイスの前記１つ以上のシステム構成は、セキュリティ構成を含む（２２１５）、請求項１から１２のいずれか一項に記載の方法。
【請求項１４】
前記ユーザデバイスの前記１つ以上のシステム構成は、バックアップ構成を含む（２２１６）、請求項１から１３のいずれか一項に記載の方法。
【請求項１５】
前記ユーザデバイスの前記１つ以上のシステム構成は、アプリケーション構成を含む（２２１７）、請求項１から１４のいずれか一項に記載の方法。
【請求項１６】
前記ユーザデバイスの前記１つ以上のシステム構成は、ユーザインタフェース構成を含む（２２１８）、請求項１から１５のいずれか一項に記載の方法。
【請求項１７】
前記ユーザ意図を判定することは、
１つ以上の実施可能な意図を判定すること（２２２５）と、
前記実施可能な意図と関連付けられた１つ以上のパラメータを判定すること（２２２６）と、
を含む、請求項１から１６のいずれか一項に記載の方法。
【請求項１８】
前記コンテクスト情報は、ユーザ特有データ、デバイス構成データ、及びセンサデータのうちの少なくとも１つを含む（２２２３）、請求項１から１７のいずれか一項に記載の方法。
【請求項１９】
前記ユーザ意図が情報の要求を示すか又はタスクを実行する要求を示すかを判定することは、
前記ユーザ意図がシステム構成を変えることであるか否かを判定すること（２２２９）を含む、請求項１から１８のいずれか一項に記載の方法。
【請求項２０】
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への前記発話応答を提供することは、
前記情報の要求に従って１つ以上のシステム構成の状況を取得すること（２２３１）と、
１つ以上のシステム構成の前記状況に従って前記発話応答を提供すること（２２３２）と、
を含む、請求項１から１９のいずれか一項に記載の方法。
【請求項２１】
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への前記発話応答を提供することに加え、
前記１つ以上のシステム構成の前記状況に従って情報を提供する第１のユーザインタフェースを表示すること（２２３４）を更に含む、請求項２０に記載の方法。
【請求項２２】
前記ユーザ意図が情報の要求を示すとの判定に従って、前記情報の要求への前記発話応答を提供することに加え、
前記情報の要求と関連付けられたリンクを提供すること（２２３６）を更に含む、請求項１から２１のいずれか一項に記載の方法。
【請求項２３】
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた前記処理をインスタンス化することは、
前記処理を使用して前記タスクを実行すること（２２３９）を含む、請求項１から２２のいずれか一項に記載の方法。
【請求項２４】
前記タスクを実行した結果に従って第１の発話出力を提供すること（２２４０）を更に含む、請求項２３に記載の方法。
【請求項２５】
前記ユーザが前記タスクを実行した結果を操作することを可能にする第２のユーザインタフェースを提供すること（２２４２）を更に含む、請求項２３から２４のいずれか一項に記載の方法。
【請求項２６】
前記第２のユーザインタフェースは、前記タスクを実行した前記結果と関連付けられたリンクを含む（２２４４）、請求項２５に記載の方法。
【請求項２７】
前記ユーザ意図がタスクを実行する要求を示すとの判定に従って、前記タスクを実行する前記ユーザデバイスと関連付けられた前記処理をインスタンス化することは、
前記ユーザが前記タスクを実行することを可能にする第３のユーザインタフェースを提供すること（２２４６）を含む、請求項１から１９及び２３から２６のいずれか一項に記載の方法。
【請求項２８】
前記第３のユーザインタフェースは、前記ユーザが前記タスクを実行することを可能にするリンクを含む（２２４８）、請求項２７に記載の方法。
【請求項２９】
前記第３のユーザインタフェースと関連付けられた第２の発話出力を提供することを更に含む（２２５０）、請求項２７から２８のいずれか一項に記載の方法。
【請求項３０】
前記情報の要求が前記ユーザデバイスのシステム構成に関するものである請求項１から２９のいずれか一項に記載の方法。
【請求項３１】
電子デバイスであって、
１つ以上のプロセッサと、
メモリと、
メモリに記憶された１つ以上のプログラムと、を備え、前記１つ以上のプログラムは、請求項１から３０のいずれか一項に記載の方法を実行する命令を含む、電子デバイス。
【請求項３２】
電子デバイスの１つ以上のプロセッサによって実行される１つ以上のプログラムを含むコンピュータ可読記憶媒体であって、前記１つ以上のプログラムは、命令を含み、前記命令は、前記１つ以上のプロセッサによって実行されるとき、前記電子デバイスに請求項１から３０のいずれか一項に記載の方法を実行させる、コンピュータ可読記憶媒体。
【国際調査報告】
2019522250.tif 000085
2019522250.tif 000086
2019522250.tif 000087