(57)【要約】      （修正有）【課題】グループコンテキストにおいてインタラクティブアシスタントモジュールが制限付きコンテンツに安全にアクセスし、それを提供するための方法、装置、システム及びコンピュータ可読媒体を提供する。【解決手段】方法は、第１の個人とインタラクティブアシスタントモジュールとの間の対話が少なくとも第２の個人によって感覚的に知覚可能であると決定する。ついで、インタラクティブアシスタントモジュールによって対話内に自動的に組み込まれるべきである制限付きコンテンツを識別する。制限付きコンテンツへのアクセスは、第１の個人によって制御される。制限付きコンテンツは、第２の個人が制限付きコンテンツを知覚することを許可されているとの決定に応答して、対話内に条件付きで組み込まれる。【選択図】図７
2020013603.tif 000002
【特許請求の範囲】
【請求項１】
1つまたは複数のプロセッサを使用して実施される方法であって、
第1の個人とインタラクティブアシスタントソフトウェアモジュールとの間で口頭自然言語対話を行うために第1のコンピューティングデバイス上の前記インタラクティブアシスタントソフトウェアモジュールを操作するステップであって、前記インタラクティブアシスタントソフトウェアモジュールは、前記口頭自然言語対話中に提供された自然言語入力のセマンティックな意味を解釈し、1つまたは複数の応答動作を実行するように構成される、ステップと、
前記口頭自然言語対話が少なくとも第2の個人に聴き取れると決定するステップであって、前記決定するステップは、1つまたは複数の信号に基づいて、前記第2の個人が前記第1のコンピューティングデバイスの近くにいると決定するステップを含む、ステップと、
前記第1の個人または前記第2の個人によって提供された自然言語入力に応答して、前記インタラクティブアシスタントソフトウェアモジュールによって出力されるべき制限付きコンテンツを識別するステップであって、前記制限付きコンテンツへのアクセスは、前記第1の個人によって制御される、ステップと、
前記第1の個人が所持している第2のコンピューティングデバイス上でレンダリングされるグラフィックユーザインターフェース上に、前記インタラクティブアシスタントソフトウェアモジュールが前記制限付きコンテンツを出力するための前記第1の個人からの許可を求める指示を提供するステップと、
前記第2のコンピューティングデバイスにおいて、前記第1の個人から、前記インタラクティブアシスタントソフトウェアモジュールが前記制限付きコンテンツを出力するための許可を求める前記指示に対する応答を受信するステップと、
前記インタラクティブアシスタントソフトウェアモジュールによって、前記インタラクティブアシスタントソフトウェアモジュールが前記制限付きコンテンツを出力することを前記応答が許可していることに基づいて、前記制限付きコンテンツを条件付きで出力するステップと、
前記インタラクティブアシスタントソフトウェアモジュールによって、前記インタラクティブアシスタントソフトウェアモジュールが前記制限付きコンテンツを出力することを前記応答が許可していないことに基づいて、前記制限付きコンテンツの代用として制限なしコンテンツを条件付きで出力するステップと
を含む、方法。
【請求項２】
前記第2のコンピューティングデバイスは、スマートフォンである、請求項1に記載の方法。
【請求項３】
前記第2のコンピューティングデバイスは、スマートウォッチである、請求項1に記載の方法。
【請求項４】
前記第2のコンピューティングデバイスは、スマート眼鏡を含む、請求項1に記載の方法。
【請求項５】
前記制限なしコンテンツは、自然言語出力として条件付きで出力される、請求項1に記載の方法。
【請求項６】
前記制限なしコンテンツは、前記第1の個人によって理解されるが前記第2の個人によってはされない言語でレンダリングされた前記制限付きコンテンツを含む、請求項5に記載の方法。
【請求項７】
前記制限付きコンテンツは、自然言語出力として条件付きで出力される、請求項1に記載の方法。
【請求項８】
前記制限付きコンテンツは、前記第2の個人によって理解される言語で条件付きで出力される、請求項7に記載の方法。
【請求項９】
前記制限付きコンテンツは、前記第1の個人と前記第2の個人との両方によって理解される言語で条件付きで出力される、請求項7に記載の方法。
【請求項１０】
前記1つまたは複数の信号は、
前記第1の個人と前記第2の個人とが一緒に存在していることを指示するカレンダーエントリ、
オーディオセンサによって生成されるオーディオ信号、
前記第1の個人の位置座標と複数の個人が住んでいる可能性が高いと知られている位置との間の対応関係、
1つまたは複数の自動車シートセンサ信号、または、
前記第1の個人と他者とが一緒に存在していたことを示す履歴のうちの1つまたは複数を含む、請求項1に記載の方法。
【請求項１１】
1つまたは複数のプロセッサを使用して実施される方法であって、
第1の個人とインタラクティブアシスタントソフトウェアモジュールとの間の口頭自然言語対話が少なくとも第2の個人に聴き取れると決定するステップであって、前記決定するステップは、1つまたは複数の信号に基づいて、前記第2の個人が前記第1の個人と一緒に存在していると決定するステップを含み、前記インタラクティブアシスタントソフトウェアモジュールは、前記口頭自然言語対話の一部として前記第1の個人によって提供された自然言語入力のセマンティックな意味を解釈し、1つまたは複数の応答動作を実行するように構成される、ステップと、
前記第1の個人によって提供された自然言語入力に応答して、前記インタラクティブアシスタントソフトウェアモジュールによって前記対話内に自動的に組み込まれるべき制限付きコンテンツを識別するステップであって、前記制限付きコンテンツへのアクセスは、前記第1の個人によって制御される、ステップと、
前記インタラクティブアシスタントソフトウェアモジュールによって、前記第2の個人が前記制限付きコンテンツを聴くことを許可されているとの決定に応答して、前記インタラクティブアシスタントソフトウェアモジュールの自然言語出力として前記対話内に、第1の言語で前記制限付きコンテンツを条件付きで組み込むステップであって、前記第1の言語は、少なくとも前記第2の個人によって理解される、ステップと、
前記インタラクティブアシスタントソフトウェアモジュールによって、前記第2の個人が前記制限付きコンテンツを聴くことを許可されていないとの決定に応答して、前記インタラクティブアシスタントソフトウェアモジュールの自然言語出力として前記対話内に、第2の言語で前記制限付きコンテンツを条件付きで組み込むステップであって、前記第2の言語は、前記第1の個人によって理解されるが前記第2の個人によってはされない、ステップと
を含む、方法。
【請求項１２】
前記第1の言語は、前記第1の個人と前記第2の個人との両方によって理解される、請求項11に記載の方法。
【請求項１３】
1つまたは複数のプロセッサを使用して実施される方法であって、
第1の個人から、第1の個人とインタラクティブアシスタントソフトウェアモジュールとの間の口頭自然言語対話の一部として前記インタラクティブアシスタントソフトウェアモジュールに向けられた口頭自然言語入力を受信するステップであって、前記インタラクティブアシスタントソフトウェアモジュールは、前記口頭自然言語対話中に提供された自然言語入力のセマンティックな意味を解釈し、1つまたは複数の応答動作を実行するように構成される、ステップと、
前記第1の個人から受信された前記口頭自然言語入力に応答して、前記インタラクティブアシスタントソフトウェアモジュールによって前記対話内に自動的に組み込まれるべき第1のコンテンツを識別するステップと、
前記インタラクティブアシスタントソフトウェアモジュールによって、前記インタラクティブアシスタントソフトウェアモジュールの自然言語出力として前記対話内に、前記第1のコンテンツを組み込むステップであって、前記第1のコンテンツは、前記第1の個人によって理解されるが第2の個人によってはされない第1の言語で前記対話内に組み込まれる、ステップと、
前記口頭自然言語対話が前記第2の個人に聴き取れるようになっていたと決定するステップであって、前記決定するステップは、1つまたは複数の信号に基づいて、前記第2の個人が前記第1の個人と一緒に存在していたことを検出するステップを含む、ステップと、
前記第1の個人または前記第2の個人によって前記インタラクティブアシスタントソフトウェアモジュールに向けられた後続の口頭自然言語入力に応答して、前記インタラクティブアシスタントソフトウェアモジュールによって前記対話内に自動的に組み込まれるべき第2のコンテンツを識別するステップと、
前記インタラクティブアシスタントソフトウェアモジュールによって、前記インタラクティブアシスタントソフトウェアモジュールの自然言語出力として前記対話内に、前記第2のコンテンツを組み込むステップであって、前記第2のコンテンツは、少なくとも前記第2の個人によって理解される第2の言語で前記対話内に組み込まれる、ステップと
を含む、方法。
【請求項１４】
前記第2の言語は、前記第1の個人と前記第2の個人との両方によって理解される、請求項13に記載の方法。
【請求項１５】
前記第2のコンテンツを前記対話内に組み込む許可を前記第1の個人に要請する出力を前記第1の個人に提供するステップであって、許可を要請する前記出力は、前記第2の個人が前記第1の個人と一緒に存在していたことを検出したことに応答して提供される、ステップをさらに含む、請求項13に記載の方法。
【請求項１６】
前記1つまたは複数の信号は、前記第1の個人と前記第2の個人とが一緒に存在していることを指示するカレンダーエントリを含む、請求項13に記載の方法。
【請求項１７】
前記1つまたは複数の信号は、オーディオセンサによって生成されるオーディオ信号を含む、請求項13に記載の方法。
【請求項１８】
前記1つまたは複数の信号は、前記第1の個人の位置座標と複数の個人が住んでいる可能性が高いと知られている位置との間の対応関係を含む、請求項13に記載の方法。
【請求項１９】
前記1つまたは複数の信号は、1つまたは複数の自動車シートセンサ信号を含む、請求項13に記載の方法。
【請求項２０】
前記1つまたは複数の信号は、前記第1の個人と他者とが一緒に存在していたことを示す履歴を含む、請求項13に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
グループコンテキストにおける個人制御コンテンツの条件付き開示に関する。
【背景技術】
【０００２】
インタラクティブアシスタントモジュール(interactive assistant module)(「パーソナルアシスタントモジュール」または「モバイルアシスタント」としても知られる)は、スマートフォン、タブレットコンピュータ、自動車用コンピューティングシステム(automobile computing system)(たとえば、ナビゲーションシステム、車両メディアシステム(vehicle media system)など)、スタンドアロン音声起動デバイス(voice-activated device)などの、様々なコンピューティングデバイス上で操作され得る。インタラクティブアシスタントモジュールは、複数の個人によって感覚的に知覚可能であり得るモダリティを使用することで出力を提供し得る。たとえば、スタンドアロンのパーソナルアシスタントデバイスは、複数の近くにいる個人に聴き取れる可聴出力を提供するものとしてよい。グループチャットコンテキスト(たとえば、グループマルチメディアメッセージングサービス、すなわち「MMS」メッセージ)において、メッセージ交換スレッド内の任意の参加者は、インタラクティブアシスタントモジュールによってメッセージ交換スレッドに組み込まれたコンテンツを見ることができる。いくつかの場合において、インタラクティブアシスタントモジュールは、1人または複数の個人に関連付けられ、および/またはそれらの個人の制御の下にあるセンシティブおよび/または制限付きコンテンツにアクセスできるものとしてよい。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本開示は、概して、グループコンテキストにおいてインタラクティブアシスタントモジュールが制限付きコンテンツに安全にアクセスし、それを開示するための方法、装置、およびコンピュータ可読媒体(一時的および非一時的)を対象とする。これらおよび他の実装形態のうちのいくつかは、様々な技術的利点をもたらし得る。たとえば、様々な実装形態が、グループコンテキストにおける情報のセキュリティ改善を実現する。様々な実装形態において、制限付きコンテンツは、ユーザニックネーム、個人の好み(たとえば、個人Aは海産食品が嫌いである)、写真、ビデオ、録音、電話番号、連絡先情報、旅行情報(たとえば、旅行プラン)、電子メール/テキストコンテンツ、現在位置、スケジュール情報、タスクリスト、認証資格情報(たとえば、ユーザ名、パスワード)、など、機密であるか、または他の何らかの形でセンシティブであり得るか、またはそうでなくてもよい1人または複数の個人によって制御される様々な情報を含み得る。たとえば、個人は、1人のときには自分のインタラクティブアシスタントモジュールがニックネーム「your majesty(陛下)」で呼ぶことを好むことがあるが、他者がいるときにはインタラクティブアシスタントモジュールが名前を使用することを好むこともあり得る。
【課題を解決するための手段】
【０００４】
様々な実装形態において、そのような制限付きコンテンツは、潜在的にそれおよび/または制限付きコンテンツに関連付けられている許可を知覚し得る個人に基づき条件付きで開示される、たとえば、メッセージ交換スレッドに組み込まれるか、または音声起動インタラクティブアシスタントモジュールによって話される、ものとしてよい。いくつかの実装形態において、制限付きコンテンツへのアクセスが拒否されるべきであるときに、制限なしコンテンツが、その代わりに、たとえば、制限付きコンテンツの代用として出力されるものとしてよい。
【０００５】
様々な実装形態において、インタラクティブアシスタントモジュールと1人または複数の個人との間の口頭もしくは文書による対話など、インタラクティブアシスタントモジュールによって使用される出力モダリティが、1人または複数の他の個人によって感覚的に知覚可能であり得ることが決定され得る。また、インタラクティブアシスタントモジュールは、特定の個人によって制御される(明示的な要求により、または発話もしくはステートメントに応答して自動的に)制限付きコンテンツを開示するものであると決定され得る。インタラクティブアシスタントモジュールが通常の出力モダリティを使用して制限付きコンテンツを開示する前に、そうすることを許可されるかどうかを決定するものとしてよい。たとえば、いくつかの実装形態において、インタラクティブアシスタントモジュールは、コンテンツが、特定の個人が様々なレベルのアクセス権を付与しているタイプ(または「クラス」)のものかどうかを決定し得る。これらの決定に基づき、インタラクティブアシスタントモジュールは、条件付きで、制限付きコンテンツを開示し得る。いくつかの実装形態において、インタラクティブアシスタントモジュールが制限付きコンテンツを開示する許可をまだ与えられていない場合、インタラクティブアシスタントモジュールは、制限付きコンテンツを開示する許可を求めて、たとえば、異なる出力モダリティ(たとえば、テキストメッセージ、所有者の電話機上のポップアップウインドウなど)を使用して、制限付きコンテンツを制御することを個人に促すものとしてよい。
【０００６】
インタラクティブアシスタントモジュールは、それが使用するモダリティが様々な仕方で他者によって「感覚的に知覚可能である」、すなわち、他者が見ること、触ること、聴くこと、嗅ぐことなどの1つまたは複数の感覚を使用してモダリティを介して提供される出力を検出することができる、可能性が高いと決定することができる。いくつかの実装形態において、インタラクティブアシスタントモジュールは、腕時計/電話機装着位置座標センサ(たとえば、全地球測位システム、すなわち「GPS」、ワイヤレス三角測量など)を使用して、特定の個人が他者も存在する可能性が高いレストランまたはバーなどの公共の場所にいると決定し得る。他の実装形態において、インタラクティブアシスタントモジュールは、個人のカレンダーなどの信号を使用して、他の個人が存在している可能性が高いかどうか(たとえば、その個人が会合に出る予定であるか?)を決定し得る。自動車のコンテキストでは、車載コンピュータシステム上で動作するインタラクティブアシスタントモジュールは、シートセンサおよび/またはシートベルトからの信号を使用して、個人が独りで車両内にいないと決定し得る。いくつかの実装形態において、特にスタンドアロン音声起動デバイスを使用する場合、インタラクティブアシスタントモジュールは、時間の経過を追って、1人または複数の個人が一緒に存在していると思われるときのパターンを検出するものとしてよい。たとえば、パーソナルアシスタントデバイスは、平日の夜、午後6〜10時の間に、個人の配偶者および/または他の家族が一緒に存在する傾向があると決定し得る。グループチャットコンテキスト(たとえば、MMSスレッド)において、インタラクティブアシスタントモジュールは、グループチャットの参加者を単純に調査するだけであってよい。
【０００７】
いくつかの実装形態において、インタラクティブアシスタントモジュールは、一緒に存在するか、または他の何らかの形でその出力を知覚するであろう特定の個人を識別するものとしてよく、それにより、制限付きコンテンツを開示するかどうかについてより細かい決定を下すことができる。たとえば、スタンドアロンのパーソナルアシスタントデバイスまたはスマートフォン上で動作するインタラクティブアシスタントモジュールは、近くにいる個人が携帯しているモバイルデバイスまたは識別デバイス(たとえば、無線周波数識別、すなわち、「RFID」バッジ)からの話者認識および/または信号を使用して、誰かが存在していると単純に決定するのではなく、誰が存在しているのかをより細かく識別することも可能である。様々な実装形態において、インタラクティブアシスタントモジュールは、グループID番号を一緒に存在していると検出される個人の様々な組合せ(またはメッセージ交換スレッドへの参加者)に割り当てるものとしてよく、それにより、インタラクティブアシスタントモジュールは、そのようなグループコンテキスト内で共有することを許容可能であるか、または許容可能でない様々な制限付きコンテンツを「覚えておく」ことができる。
【０００８】
いくつかの実装形態において提供され得るコンピュータ実施方法は、1つまたは複数のプロセッサによって、第1の個人とインタラクティブアシスタントモジュールとの間の対話が少なくとも第2の個人によって感覚的に知覚可能であると決定する動作と、これらのプロセッサのうちの1つまたは複数によって、インタラクティブアシスタントモジュールによって対話内に自動的に組み込まれるべき制限付きコンテンツを識別する動作であって、制限付きコンテンツへのアクセスは、第1の個人によって制御される、動作と、第2の個人が制限付きコンテンツを知覚することを許可されているとの決定に応答して、これらのプロセッサのうちの1つまたは複数によって、対話内に制限付きコンテンツを条件付きで組み込む動作とを含む。
【０００９】
本明細書で開示されているこの方法および技術の他の実装形態は各々、任意選択で、次の特徴のうちの1つまたは複数を含んでいてよい。
【００１０】
様々な実装形態において、この方法は、プロセッサの1つまたは複数によって、制限付きコンテンツを対話に組み込む許可を第1の個人に要請する出力を第1の個人に提供するステップをさらに含み得る。許可を要請する出力は、第2の個人が制限付きコンテンツを知覚することを許可されないと決定したことに応答して提供され得る。第2の個人が許可されているという決定は、第1の個人から、制限付きコンテンツを対話に組み込む許可を受け取るステップを含み得る。いくつかの実装形態において、第1の個人の間の対話は、第1の出力モダリティ上で行われるものとしてよく、承認を要請する出力は、第2の個人によって感覚的に知覚可能でない第2の出力モダリティを介して第1の個人に提供され得る。
【００１１】
いくつかの実装形態において、対話が少なくとも第2の個人に感覚的に知覚可能であると決定するステップは、第2の個人が第1の個人との対話の参加者であると決定するステップを含み得る。いくつかの実装形態において、対話が少なくとも第2の個人に感覚的に知覚可能であると決定するステップは、1つまたは複数の信号に基づき、第2の個人が第1の個人と一緒に存在していると決定するステップを含み得る。いくつかの実装形態において、1つまたは複数の信号は、第1の個人と第2の個人とが一緒に存在していることを指示するカレンダーエントリを含み得る。いくつかの実装形態において、1つまたは複数の信号は、オーディオセンサによって生成されるオーディオ信号を含み得る。いくつかの実装形態において、1つまたは複数の信号は、第1の個人の位置座標と複数の個人が住んでいる可能性が高いと知られている位置との間の対応関係を含み得る。いくつかの実装形態において、1つまたは複数の信号は、1つまたは複数の自動車シートセンサ信号を含み得る。いくつかの実装形態において、1つまたは複数の信号は、第1の個人と他者とが一緒に存在していたことを示す履歴を含み得る。
【００１２】
いくつかの実装形態において、この方法は、第2の個人が制限付きコンテンツを知覚することを許可されていないとの決定に応答して、これらのプロセッサのうちの1つまたは複数によって、対話内に制限なしコンテンツを制限付きコンテンツの代用として条件付きで組み込むステップをさらに含み得る。いくつかの実装形態において、制限付きコンテンツは、第1の個人にとって機密である情報を含み得る。いくつかの実装形態において、制限付きコンテンツは、第1の個人のニックネームを含み得る。いくつかの実装形態において、制限付きコンテンツは、第2の個人に潜在的に不快感を与えるとみなされるコンテンツを含み得る。
【００１３】
いくつかの実装形態において、第2の個人が制限付きコンテンツを知覚することを許可されているとの決定は、第2の個人が制限付きコンテンツが関連付けられている制限付きコンテンツのクラスを知覚することを許可されているとの決定を含み得る。いくつかの実装形態において、第2の個人が制限付きコンテンツを知覚することを許可されているとの決定は、第2の個人が制限付きコンテンツを知覚することを以前に許可されているとの決定を含み得る。
【００１４】
他の実装形態は、上で説明されている方法のうちの1つまたは複数などの方法を実行するためにプロセッサによって実行可能な命令を記憶する非一時的コンピュータ可読記憶媒体を含み得る。さらに別の実装は、メモリと、上で説明されている方法のうちの1つまたは複数などの方法を、単独でまたは集合的に実行する1つもしくは複数のモジュールまたはエンジンを実装するための、メモリに記憶されている命令を実行するように動作可能な1つまたは複数のプロセッサとを備えるシステムを含み得る。
【００１５】
前述の概念および本明細書でより詳しく説明されている追加の概念のすべての組合せは、本明細書で開示されている主題の一部であると企図されることは理解されるべきである。たとえば、本開示の末尾に現れる請求されている主題のすべての組合せは、本明細書で開示されている主題の一部であると企図される。
【図面の簡単な説明】
【００１６】
【図１】様々な実装形態による、本明細書で説明されている1つまたは複数の技術が実用され得る環境を例示する図である。
【図２】様々な実装形態による、クライアントデバイスがメッセージ交換クライアントに対するグラフィカルユーザインターフェースをどのようにレンダリングし得るかの例を示す図である。
【図３】様々な実装形態による、クライアントデバイスがメッセージ交換クライアントに対するグラフィカルユーザインターフェースをどのようにレンダリングし得るかの例を示す図である。
【図４】様々な実装形態による、複数のユーザがインタラクティブアシスタントモジュールをインタラクティブに操作するシナリオにおいて実用され得る開示されている技術の一例を示す図である。
【図５Ａ】様々な実装形態による、複数のユーザがインタラクティブアシスタントモジュールをインタラクティブに操作するシナリオにおいて実用され得る開示されている技術の別の例を示す図である。
【図５Ｂ】様々な実装形態による、複数のユーザがインタラクティブアシスタントモジュールをインタラクティブに操作するシナリオにおいて実用され得る開示されている技術の別の例を示す図である。
【図５Ｃ】様々な実装形態による、複数のユーザがインタラクティブアシスタントモジュールをインタラクティブに操作するシナリオにおいて実用され得る開示されている技術の別の例を示す図である。
【図６Ａ】様々な実装形態による、複数のユーザがインタラクティブアシスタントモジュールをインタラクティブに操作するシナリオにおいて実用され得る開示されている技術のさらに別の例を示す図である。
【図６Ｂ】様々な実装形態による、複数のユーザがインタラクティブアシスタントモジュールをインタラクティブに操作するシナリオにおいて実用され得る開示されている技術のさらに別の例を示す図である。
【図７】様々な実装形態による、グループコンテキストにおいてインタラクティブアシスタントモジュールが制限付きコンテンツに安全にアクセスし、開示するための例示的な方法を示すフローチャートである。
【図８】コンピュータシステムの例示的なアーキテクチャの概略を示す図である。
【発明を実施するための形態】
【００１７】
図1は、グループコンテキストにおいてインタラクティブアシスタントモジュールが制限付きコンテンツに安全にアクセスし、開示し得る環境を例示している。例示的な環境は、いわゆる「メッセージ交換スレッド」に参加するためにそれぞれのユーザ(図示せず)によって操作されている複数のクライアントデバイス1061-Nと、1つまたは複数のスタンドアロン音声起動デバイス(たとえば、スマートスピーカー)106N+1と、ナレッジシステム102とを備える。ナレッジシステム102は、たとえば、ネットワークを通じて通信する1つまたは複数のコンピュータで実装されてよい。ナレッジシステム102は、本明細書で説明されているシステム、コンポーネント、および技術が実装され得る、ならびに/または本明細書で説明されているシステム、コンポーネント、および技術がインターフェースし得る情報検索システムの一例である。
【００１８】
ユーザは、1つまたは複数のクライアントデバイス106を介してナレッジシステム102をインタラクティブに操作するものとしてよい。各クライアントデバイス106は、ローカルエリアネットワーク(LAN)またはインターネットなどのワイドエリアネットワーク(WAN)などの1つまたは複数のネットワーク104を通じてナレッジシステム102に結合されているコンピュータであってよい。クライアントデバイス1061-Nの各々は、たとえば、デスクトップコンピューティングデバイス、ラップトップコンピューティングデバイス、タブレットコンピューティングデバイス、携帯電話コンピューティングデバイス、ユーザの車両のコンピューティングデバイス(たとえば、車載通信システム、車載娯楽システム、車載ナビゲーションシステム)、またはコンピューティングデバイスを備えるユーザの着用可能装置(たとえば、コンピューティングデバイスを有するユーザの腕時計、コンピューティングデバイスを有するユーザの眼鏡)であってよい。前述のスタンドアロン音声起動デバイス106N+1などの、追加のおよび/または代替的クライアントデバイスは、本開示の選択された態様により構成され得る。多くの場合において、個人は、その個人に関連付けられているクライアントデバイスの協調「エコシステム」を集合的に形成する複数のクライアントデバイス106を操作/所有し得る。
【００１９】
各クライアントデバイス106は、メッセージ交換クライアント108およびインタラクティブアシスタントモジュール110などの、様々な異なるアプリケーションを操作し得る。それに加えて、いくつかの実装形態において、各クライアントデバイス106は、ユーザデータ112の1つまたは複数のソースにアクセスできるものとしてよい。ユーザデータ112は、1つまたは複数のインタラクティブアシスタントモジュール110にアクセス可能であるものとしてよい1人または複数の個人によって制御される様々な情報を含み得る。いくつかの実装形態において、ユーザデータ112は、特定の個人に関連付けられ、制御する個人による許可がないと他の個人に容易にアクセス可能であり得ない制限付きコンテンツを含み得る。制限付きコンテンツの非限定的な例については、上で述べた。ユーザデータ112は、クライアントデバイス106上でローカルに、および/または以下で説明されているインデックス126などで、1つまたは複数のサーバ/データベース上でリモートに記憶され得る。
【００２０】
いくつかの実装形態において、各インタラクティブアシスタントモジュール110は、それらがサービスを提供する特定の個人によって制御されるか、所有されるか、または他の何らかの形で関連付けられるユーザデータ112にアクセスできるものとしてよい。他の実装形態において、インタラクティブアシスタントモジュール110は、特定の個人にサービスを提供し得ず、その代わりに、1つのまたは複数の入力モダリティを介してインタラクティブアシスタントモジュール110をインタラクティブに操作する任意の個人にサービスを提供し得る。そのような場合、インタラクティブアシスタントモジュール110は、1人または複数のユーザに関連付けられているユーザデータ112にアクセスアクセスできるものとしてよい。以下でより詳しく説明されるように、インタラクティブアシスタントモジュール110は、開示が許可なく1人または複数の個人によって感覚的に知覚可能であるかどうかに基づき制限付きコンテンツを条件付きで開示し得る。
【００２１】
メッセージ交換クライアント108は、1人または複数の他の個人とのメッセージ交換スレッドへの参加を円滑にし得る。メッセージ交換クライアント108は、様々な形態をとり得る。いくつかの実装形態において、メッセージ交換クライアント108は、ショートメッセージングサービス(「SMS」)および/またはMMSクライアント、オンラインチャットクライアント(たとえば、インスタントメッセンジャー、インターネットリレーチャット、すなわち「IRC」など)、ソーシャルネットワークに関連付けられているメッセージングアプリケーション、クライアントデバイス上で動作しているインタラクティブアシスタントモジュールと会話するためのインターフェース、などの形態をとり得る。いくつかの実装形態において、メッセージ交換クライアント108は、ウェブブラウザ(図示せず)によってレンダリングされるウェブページ内に実装され得る。様々な場合において、メッセージ交換スレッドの参加者によって操作される2つのクライアントデバイス106は、それにも関わらず共通通信プロトコルを使用して通信を円滑にする異なるメッセージ交換クライアント108を実行し得る。たとえば、クライアントデバイス1061には、一方のベンダーによって配布される一方のSMSアプリケーションをインストールしておき、クライアントデバイス106Nには、他方のベンダーによって配布される他方のSMSアプリケーションをインストールしておくものとしてよい。
【００２２】
背景技術において説明されているように、様々な実装形態において、インタラクティブアシスタントモジュール110は、ユーザが自然言語コマンドおよび要求を発行するためのユーザフレンドリーなインターフェースを実現するために所与のクライアントコンピューティングデバイス106上で実行されるソフトウェアプロセスの形態をとり得る。インタラクティブアシスタントモジュール110は、インタラクティブアシスタントモジュール110を起動するように選択される1つまたは複数のコードワードをユーザが発話するか、または他の何らかの形で入力するなどの、様々な刺激によって呼び出されるか、または「目覚めさせられ」得る。それに加えて、いくつかの実装形態において、インタラクティブアシスタントモジュール110は、インタラクティブアシスタントモジュール110が個人から受信された入力(口頭のもしくは他の何らかの手段によるもの)のセマンティックな意味を構文解析し、解釈し、同じような応答をすることを可能にする1つまたは複数の文法解析器、構文解析器、対話マネージャ、意味プロセッサ、構文プロセッサ、および/または他のコンポーネント(図示せず)を装備する(か、またはそれらにアクセスできる)ものとしてよい。インタラクティブアシスタントモジュール110が、個人のステートメントまたは発話の意味を構文解析して、解釈した後、インタラクティブアシスタントモジュール110は、限定はしないが、リモートおよび/またはローカルソース(たとえば、ユーザデータ112)から情報の検索を実行すること、個人との対話を行うこと、1つまたは複数のアプリケーションを起動すること、電子メールもしくはテキストメッセージを作成しおよび/または送信すること、様々な入力および出力コンポーネント(たとえば、カメラ、モーションセンサ、GPSなど)を操作すること、方向を提供すること、などを含む、様々な応答動作を実行し得る。
【００２３】
本明細書で説明されているいくつかの実装形態において、個人は、たとえば、音声入力、テキスト入力、などを使用して、メッセージ交換スレッドにおいてインタラクティブアシスタントモジュール110と通信し得る。さらに、インタラクティブアシスタントモジュール110は、複数のクライアントデバイス106(たとえば、図1の1061-N)上で動作し、複数の参加者によって制御される複数のメッセージ交換クライアント108を伴うメッセージ交換スレッドに参加し得る。たとえば、以下でより詳しく説明されるように、インタラクティブアシスタントモジュール110は、1人または複数の参加者によってメッセージ交換スレッドに寄与する1つまたは複数のメッセージに応答してコンテンツを自動的に選択し、メッセージ交換スレッド内に組み込むものとしてよい。
【００２４】
いくつかの実装形態において、1人または複数の個人は、進行中テキストメッセージ交換スレッドの一部であり得るか、または必ずしも一部であり得ないインタラクティブアシスタントモジュール110と口頭対話をやり取りし得る。たとえば、様々な個人は、音声起動製品106N+1上で実行するインタラクティブアシスタントモジュール110N+1とのインタラクティブ音声ベース対話を行い得る。音声起動製品(特に、スマートスピーカーとして販売されるとき)の一般的な使用の1つは、音楽または様々なマルチメディアファイルを再生することである。しかしながら、様々な実装形態において、音声起動製品106N+1上で実行するインタラクティブアシスタントモジュール110N+1は、他のタイプのクライアントデバイス1061-N上で実行するインタラクティブアシスタントモジュール1101-Nによって提供されるような同じ機能の多くを提供し得る。たとえば、音声起動製品106N+1上で動作しているインタラクティブアシスタントモジュール110N+1は、他のクライアントデバイス上で動作している他のインタラクティブアシスタントモジュール110にアクセス可能である同じユーザデータ112N+1にアクセスできるものとしてよい。したがって、インタラクティブアシスタントモジュール110N+1は、口述筆記する、指示を与える、リモートおよびローカルデータリソース(たとえば、ユーザデータ112N+1)の検索を実行する、アプリケーションを起動する、メッセージの草稿を作成し送信する、カメラおよびプリンタなどの入力および出力デバイスを操作する、など、インタラクティブアシスタントモジュール1101-Nによって実行されるタスクに類似する様々なタスクを実行し得る。
【００２５】
スタンドアロン音声起動製品106N+1に適用可能であるものとして本明細書で説明されている例は、他のタイプのクライアントデバイス106にも等しく適用可能であるものとしてよいことを理解されたい。1人または複数の個人は、自分の声を使用して、スマートフォン、スマートウォッチ、タブレットコンピュータなどで動作するインタラクティブアシスタントモジュール110をたやすくインタラクティブに操作し得る。たとえば、個人は、自分のスマートフォンをテーブルの上に置き、その個人および一緒に存在する任意の他の個人がそのスマートフォンで口頭対話を行うものとしてよい。そのような場合において、他の一緒に存在する個人は、そのインタラクションを聴くことができるものとしてよく、したがって、スマートフォンは、スタンドアロン音声起動製品と同様に動作し得る。
【００２６】
各クライアントデバイス106およびナレッジシステム102は、データおよびソフトウェアアプリケーションを記憶しておくための1つまたは複数のメモリと、データにアクセスしアプリケーションを実行するための1つまたは複数のプロセッサと、ネットワーク上の通信を円滑にする他のコンポーネントとを備えてよい。1つまたは複数のクライアントデバイス106および/またはナレッジシステム102によって実行される動作は、複数のコンピュータシステムに分散させてよい。ナレッジシステム102は、たとえば、ネットワークを通じて互いに結合されている1つまたは複数の位置にある1つまたは複数のコンピュータ上で実行されるコンピュータプログラムとして実装され得る。
【００２７】
様々な実装形態において、ナレッジシステム102は、メッセージ交換エンジン120、インタラクティブアシスタントエンジン122、ユーザデータエンジン124、インデックス作成エンジン128、および/または情報エンジン132を備え得る。いくつかの実装形態において、エンジン120、122、124、128、および/または132のうちの1つまたは複数は、省かれ得る。いくつかの実装形態において、エンジン120、122、124、128、および/または132のうちの1つまたは複数のすべてのもしくはいくつかの態様は、組み合わされ得る。いくつかの実装形態において、エンジン120、122、124、128、および/または132のうちの1つまたは複数は、ナレッジシステム102から分離しているコンポーネントで実装され得る。いくつかの実装形態において、エンジン120、122、124、128、および/または132のうちの1つもしくは複数、またはその任意の稼動部分は、1つまたは複数のクライアントデバイス106によって実行されるコンポーネントで実装され得る。
【００２８】
様々な実装形態において、メッセージ交換エンジン120は、複数の参加者によって制御される複数のクライアントデバイス1061-N上で動作している複数のメッセージ交換クライアント108の間のメッセージ交換スレッドを円滑にするように構成され得る。たとえば、メッセージ交換エンジン120は、メッセージのグローバル「トランスクリプト」を維持するものとしてよく、他のコンテンツ参加者はメッセージ交換スレッドにおいて互いにやり取りするものとしてよい。本明細書において使用されているように、「トランスクリプト」は、メッセージ交換スレッドの1人または複数の参加者によって交換され、および/または見られるテキスト、画像、音声、および/またはアプレットのライブ記録を指すものとしてよい。いくつかの実装形態において、メッセージ交換スレッドのトランスクリプトは、参加者が会話するときにリアルタイムでまたはほぼリアルタイムで更新され得る。
【００２９】
インタラクティブアシスタントエンジン122は、1つまたは複数のクライアントデバイス106上で動作している1つまたは複数のインタラクティブアシスタントモジュール110によって提供される機能を強化し、補完し、および/または補足するように構成され得る。たとえば、クライアントデバイス106は、比較的リソース制約的であり得る。ローカルインタラクティブアシスタントモジュール110は、構文解析器、構文プロセッサ、文法解析器、意味プロセッサ、などのユーザ入力(口頭のもしくは他の何らかの入力)を構文解析し、解釈するために様々なオフラインコンポーネントへのアクセスを備える、または他の何らかの形でそれにアクセスできるものとしてよい。しかしながら、クライアントデバイス106の限られたコンピューティングリソース(たとえば、メモリ、プロセッサ処理能力など)を考えると、ユーザ入力を構文解析し、解釈するためのこれらのオフラインコンポーネントは比較的限界があり得る。
【００３０】
したがって、1つまたは複数のインタラクティブアシスタントモジュール110は、1つまたは複数のオンラインインタラクティブアシスタントエンジン122とインタラクティブに操作するか、または他の何らかの形で操作し得る。インタラクティブアシスタントエンジン122は、限定はしないが、意味プロセッサ、文法解析器、構文解析器、構文プロセッサ、などを含む、様々なオンラインリソースおよびコンポーネント(図示せず)にアクセスできるものとしてよい。これらのオンラインリソースおよびコンポーネントは、クライアントデバイス106上で利用可能なオフラインの相手方に比べてはるかにロバストであり得る。さらに、インタラクティブアシスタントエンジン122は、複数のオンラインサーバの事実上限界のないコンピューティングリソース(たとえば、いわゆる、「クラウド」)を利用して、口頭のまたは他の何らかの手段によるユーザ提供の入力のより正確な構文解析および解釈を実行することができるものとしてよい。様々な実装形態において、クライアントデバイス106上で動作するインタラクティブアシスタントモジュール110は、オフラインリソースとオンラインリソースの任意の組合せ(インタラクティブアシスタントエンジン122に利用可能なリソースを含む)を利用して、たとえば、クライアントデバイス106が現在オンラインであるかどうか、ワイヤレスクライアントデバイス106に利用可能なネットワーク接続の強度、受け取るユーザ入力の複雑度、などの要因に応じて、ユーザ入力を構文解析し、および/または解釈するものとしてよい。特定のアクションが本明細書においてインタラクティブアシスタントモジュール110またはインタラクティブアシスタントエンジン122によって実行されるものとして説明されているときに、そのようなアクションはいずれかのコンポーネントによって、単独でまたは他のコンポーネントと組み合わせて実行され得ることが理解されたい。
【００３１】
ユーザデータエンジン124は、オンラインでインデックス126に記憶されている様々なユーザデータ112にアクセスできるものとしてよい。電子メール、テキストメッセージ、カレンダーエントリ、ニックネーム、旅行プラン、オンラインプロファイル、オンライン連絡先リスト、ソーシャルネットワークプロファイル、タスクリスト、および様々な他のユーザデータ112は、クライアントデバイス106のローカル上であることに加えて、またはその代わりに、クライアントデバイス106のリモートにある1つまたは複数のコンピューティングシステム上に全体としてまたは一部だけ記憶されてよい。この意味で、インデックス126は、単に、互いに関係していてもしていなくてもよい、およびクライアントデバイス106上のローカルで利用可能であっても利用可能でなくてもよい様々なユーザデータ112を記憶し得る1つもしくは複数のデータベースまたは他の記憶メカニズムを表す。ユーザデータエンジン124は、ユーザデータ112のこれらの様々なソースにアクセスするように構成されてよい。実装形態が本明細書において、ユーザデータ112を条件付きで組み込むか、出力するか、または他の何らかの形で開示するものとして説明されているときに、ユーザデータ112は、クライアントデバイス106上に記憶されているローカルユーザデータ112から、インデックス126(任意の数の異種のデータソースを含むことができる)に記憶されているリモートユーザデータから、および/またはこれら2つの任意の組合せから取得され得ることが理解されたい。いくつかの実装形態において、インタラクティブアシスタントモジュール110またはインタラクティブアシスタントエンジン122がクライアントデバイス106からユーザデータ112を取得することができない場合、ユーザデータ112は、ユーザデータエンジン124にそれを要求することによって代わりに取得され得る。
【００３２】
インデックス作成エンジン128は、ナレッジシステム102による使用のためにインデックス130を維持し得る。インデックス作成エンジン128は、たとえば、従来のおよび/または他のインデックス作成技術を使用して、ドキュメントを処理し、インデックス130内のインデックスエントリを更新する。たとえば、インデックス作成エンジン128は、ワールドワイドウェブなどの1つまたは複数のリソースをクローリングし、そのようなクローリングを介してアクセスされたドキュメントのインデックスを作成し得る。別の例として、インデックス作成エンジン128は、そのようなドキュメントを管理するウェブマスターなどの1つまたは複数のリソースから1つまたは複数のドキュメントに関係する情報を受け取り、そのような情報に基づきドキュメントのインデックスを作成し得る。ドキュメントは、ドキュメントアドレスに関連付けられている任意のデータである。ドキュメントは、ウェブページ、ワープロドキュメント、ポータブルドキュメントフォーマット(PDF)ドキュメント、画像、電子メール、カレンダーエントリ、ビデオ、およびウェブフィードを含むが、これらの例は一部でしかない。各ドキュメントは、たとえば、テキスト、画像、ビデオ、音声、埋め込み情報(たとえば、メタ情報および/またはハイパーリンク)、および/または埋め込み命令(たとえば、JavaScript(登録商標)などのECMAScript実装形態)などのコンテンツを含み得る。
【００３３】
情報エンジン132は、ナレッジシステム102による使用のためにドキュメント特有でない情報を含むか、またはそれへのアクセスを円滑にする別のインデックス134を維持してもよい。たとえば、ナレッジシステム102は、特定の情報を探し求めるように見える検索クエリに応答して情報を返すように構成され得る。ユーザが「Ronald Reagan's birthday(ロナルド・レーガンの誕生日)」を検索している場合、ナレッジシステム102は、たとえば、情報エンジン132から、日付「February 6, 1911(1911年2月6日)」を受け取るものとしてよい。この情報は、インデックス作成エンジン128から受け取ったドキュメントとは別の検索結果の一部としてユーザに返され得る。様々な実装形態において、インデックス134はそれ自体情報を含み得るか、またはオンライン百科事典、年鑑、などの1つまたは複数の他の情報ソースにリンクしてもよい。様々な実装形態において、インデックス130またはインデックス134は、クエリ(またはクエリ語)とドキュメントおよび/または情報との間のマッピングを含み得る。
【００３４】
本明細書において、「データベース」および「インデックス」という語は、データの任意の集合体を指すように広い意味で使用される。データベースのデータおよび/またはインデックスは、任意の特定の方法で構造化されている必要はなく、1つまたは複数の地理的位置にある記憶デバイス上に記憶され得る。したがって、たとえば、インデックス126、130、および134は、データの複数の集合体を含んでいてよく、その各々は異なる仕方で編成され、アクセスされてよい。
【００３５】
様々な実装形態において、1つまたは複数のメッセージ交換クライアント108、メッセージ交換エンジン120、インタラクティブアシスタントモジュール110、および/またはインタラクティブアシスタントエンジン122は、2つ以上のメッセージ交換クライアント108を伴うメッセージ交換スレッドから発せられる1つまたは複数のきっかけを検出するように構成され得る。様々な実装形態において、1つまたは複数のきっかけは、たとえば、インタラクティブアシスタントモジュール110を用いて、様々な情報をメッセージ交換スレッドに組み込むことをトリガし得る。この情報は、限定はしないが、メッセージ交換スレッドと異なるアプリケーションにリンクし得る1つまたは複数の選択可能なアプリケーションリンク、インデックス作成エンジン128および/または情報エンジン132によって取り出される情報および/またはドキュメント、ユーザデータ112に含まれる個人に関連付けられている(たとえば、制御される)情報などを含むものとしてよい。
【００３６】
いくつかの実装形態において、きっかけは、複数のメッセージ交換クライアント108の間のメッセージ交換スレッドのコンテンツから発せられ得る。たとえば、1つまたは複数のアプリケーションに関連付けられているエンティティまたはキーワード/キーフレーズに言及している1人または複数の参加者は、1つまたは複数のアプリケーションへの1つまたは複数の選択可能なアプリケーションリンクをメッセージ交換スレッドに組み込むためのきっかけを構成するものとしてよい。きっかけの別の例は、アプリケーションに関連付けられているパターンまたはテンプレートとマッチする別のものに1人または複数の参加者によって向けられるステートメントである。さらに他の実装形態において、きっかけはより明示的なものであってもよい。たとえば、ユーザは、自分のインタラクティブアシスタントモジュールに向けられているスレッド内に、メッセージ、たとえば「Hey BOT, what's the weather in San Francisco?(やあ、BOT、サンフランシスコの天気は?)」を入力することも可能である。これは、インタラクティブアシスタントモジュールに、サンフランシスコの天気に関する情報をメッセージ交換スレッドのトランスクリプトに組み込むこと、および/またはサンフランシスコの天気をすでにプリロードされている天気アプリへのリンクを促すものとしてよい。
【００３７】
いくつかの実装形態において、ナレッジシステム102は、たとえば、情報エンジン132および/または別のコンポーネントの一部として、知られているエンティティ(たとえば、人々、場所、物)の記録および知られているエンティティの間の関係を含むいわゆるナレッジベースを有するものとしてよい。いくつかの実装形態において、そのようなナレッジベースは、たとえば、インデックス134で、ノードがエンティティを表し、エッジがエンティティの間の関係を表すグラフとして実装され得るが、これは必要というわけではない。いくつかのそのような実装形態において、そのようなナレッジベースからのエンティティに関する情報は、メッセージ交換エンジン120、1つもしくは複数のメッセージ交換クライアント108、インタラクティブアシスタントモジュール110、および/またはインタラクティブアシスタントエンジン122などのコンポーネントに利用可能なようにされ得る。それらのコンポーネントは、次いで、エンティティ情報を使用して、メッセージ交換スレッドのコンテンツまたは1人もしくは複数の個人とインタラクティブアシスタントモジュール110との間の他の対話に要求されるか、または関連する情報を識別するものとしてよい。
【００３８】
上で述べたように、様々な実装形態において、個人に関連付けられているか、または他の何らかの形で個人によって制御されるユーザデータ112は、制限されることもあれば制限されないこともある。たとえば、第1の個人が電話連絡先リスト、ソーシャルネットワーク、などの、1つまたは複数のソースからの連絡先を含む連絡先リストを有するものとしてよい。デフォルトにより、第1の個人の連絡先情報は、任意のクライアントデバイス106上で動作するインタラクティブアシスタントモジュール110などのコンポーネントがその情報を開示するか、または他の何らかの形で、グループコンテキストにおいて他の個人に利用可能になるようにする前に第1の個人からの許可が取得されなければならないという点で制限付きであると考えられ得る。
【００３９】
第1の個人または別の個人が、インタラクティブアシスタントモジュール110に連絡先情報を要求すると仮定する。たとえば、インタラクティブアシスタントモジュール110によって、第1の個人とインタラクティブアシスタントモジュール110との間の対話が少なくとも第2の個人によって感覚的に知覚可能であること、および/またはコンピュータ生成音声出力、視覚的出力(たとえば、テキストメッセージ交換スレッド内のメッセージ)、などの、インタラクティブアシスタントモジュール110によって使用される出力モダリティが2人以上の個人のグループによって感覚的に知覚可能であることが決定され得る。そのような決定の後、インタラクティブアシスタントモジュール110は、対話内に自動的に組み込まれるか、または他の何らかの形で、インタラクティブアシスタントモジュールによって出力されるべきコンテンツを潜在的に制限付きであるものとして識別し得る。インタラクティブアシスタントモジュール110は、制限付きコンテンツを知覚し得る1人または複数の他の個人がそうすることを許可されているとの決定に応答して、対話内に制限付きコンテンツを条件付きで組み込み得る。
【００４０】
図2は、Svenという名前のユーザによって操作される例示的なクライアントデバイス206を示している。クライアントデバイス206は、クライアントデバイス206上で動作するメッセージ交換クライアント(図2に特には示されていない)に関連付けられているグラフィカルユーザインターフェース250を含む。グラフィカルユーザインターフェース250は、Svenと2人の他のユーザ、JohnおよびDennisとの間のメッセージ交換スレッドまたはテキスト対話のトランスクリプト252を表示する。グラフィカルユーザインターフェース250は、また、たとえば、他の2人の参加者による前のステートメントに応答して、Svenがテキストまたは他のコンテンツをメッセージ交換スレッド内に入力するために使用できるテキスト入力フィールド254も含む。
【００４１】
この例では、Svenが「Tim Davis」という名前の誰かに対する連絡先情報を自分の連絡先リスト内に有していると仮定する。Johnは、最近Tim Davisに見かけたと述べている。Dennisは、「What's his [Tim Davis'] phone number?(彼(Tim Davis)の電話番号は?)」と尋ねた。クライアントデバイス206(またはJohnもしくはDennisによって操作される別のクライアントデバイス)上で動作しているインタラクティブアシスタントモジュール110(Svenにサービスを提供するか、または他の何らかの形で特に関連付けられているものとしてよいか、またはそうでないとしてよい)は、Svenが自分の連絡先リストの開示、および/または特にTim Davisの連絡先情報の開示を以前に許可しているかどうかを決定し得る。この例では、インタラクティブアシスタントモジュール110は、Tim Davisの連絡先情報の開示を以前に許可していると決定した。したがって、インタラクティブアシスタントモジュール110(図2および他の図における「IAM」)は、Tim Davisの連絡先情報をメッセージ交換スレッド内に自動的に組み込むことによって応答した。
【００４２】
個人は、様々な仕方でその個人に関連付けられている(たとえば、個人によって制御される)ユーザデータ112に含まれる制限付きコンテンツの開示を許可し得る。いくつかの実装形態において、個人は、自分の時間で、1つまたは複数のクライアントデバイス106を操作するか、または他の何らかの形でインタラクティブに操作することでユーザデータ112に含まれている特定のコンテンツアイテムを先制して許可してもよい。たとえば、Svenは、Svenの連絡先リスト内の1つまたは複数の連絡先を開示するために1つまたは複数のインタラクティブアシスタントモジュール110(たとえば、Svenまたは他者にサービスを提供する)を先制して許可し得る。個人は、1つまたは複数のグラフィカルユーザインターフェースを使用すること、インタラクティブアシスタントモジュール110に命令する(たとえば、音声コマンドを使用する)ことによる、などの様々な仕方で開示を許可し得る。
【００４３】
いくつかの実装形態において、個人に別個の出力が提供され、それによりその個人によって制御される制限付きコンテンツを開示する許可を個人に要請するものとしてよい。要請は、たとえば、開示されていれば制限付きコンテンツを知覚するであろう別の個人が制限付きコンテンツを知覚することを許可されないとの決定に応答して提供され得る。いくつかの実装形態において、承認を要請する出力は、他者によって感覚的に知覚可能であり得ない異なる出力モダリティを使用して制御する個人に提供されることもされないこともあり得る。
【００４４】
これの一例が、図3に示されている。Svenによって操作されるスマートウォッチの形態の別のクライアントデバイス306は、クライアントデバイス306上で動作するメッセージ交換クライアント(図3に特には示されていない)に関連付けられているグラフィカルユーザインターフェース350を含む。グラフィカルユーザインターフェース350は、Svenとインタラクティブアシスタントモジュール110との間の別個のトランスクリプト352またはテキスト対話を表示する。Svenが自分のスマートフォン(図2のクライアントデバイス206)でJohnおよびDennisとのメインメッセージ交換スレッドに参加していると仮定する。図3において、Svenは、Tim Davisの連絡先情報を開示する許可を求める別個のメッセージをインタラクティブアシスタントモジュール110から受け取っている。Svenは、「Yes」ボタン(3661)または「No」ボタン(3662)を押して、図2のメッセージ交換スレッド252でTim Davisの連絡先情報を開示することを、それぞれ、インタラクティブアシスタントモジュール110に許可するか、または許可しない。いくつかの実装形態において、追加のボタン3663および/または3664は、たとえば、Svenが後で許可を促されないように、開示を恒久的に制限するか、または許可するためにSvenによって選択可能であるものとしてよい(すなわち、Svenの応答は「durable」になり、適用されて先に進む)。図3に示されている要請は、Svenのスマートウォッチを使用して求められ、これはJohnまたはDennisには知覚可能でないと思われるので、Svenは、Tim Davisの連絡先情報へのアクセスを慎重に許すか、または拒絶することができる。同じ原理が、自分の電子メール、カレンダー、ニックネーム、タスクリスト、個人データなどの、Svenによって制御される任意の制限付きコンテンツに適用されてよい。
【００４５】
図3の例では、制限付きコンテンツを開示する承認を請求する出力は、Sven、John、およびDennisの間のメッセージ交換スレッドに使用されるものとは別個のモダリティを使用してSvenに提供される。しかしながら、これは、限定することを意味していない。様々な実装形態において、そのような要請は、同じ出力モダリティを使用して提供され得る。図4では、たとえば、2人の個人、DavisおよびSarahは、スタンドアロン音声起動製品(106N+1に類似する)の形態のクライアントデバイス406と一緒に存在している。SarahはDavidに、「Do you know Geoff's phone number?(Geoffの電話番号、知ってる?)」と尋ねる。Davidが応える間もなく(またはたぶん、Davidが電話番号を覚えていないことを指示した後に)、クライアントデバイス406上で動作しているインタラクティブアシスタントモジュール(図4には示されていない、図1の110を参照)が、声に出して、「David, is it OK if I provide Geoff's phone number?(David、Geoffの電話番号を教えてもいいですか?)」と尋ねる。Davidは、「Yes, that's fine.(もちろん、オーケー。)」と応答することによって許可を与える。次いで、クライアントデバイス406は、Sarahに聞こえるようにGeoffの電話番号を声に出して言う。
【００４６】
インタラクティブアシスタントモジュールがSarahを存在しているものとして特に識別し、その連絡先情報(たとえば、Davidの連絡先リストからの)を有している他の実装形態において、インタラクティブアシスタントモジュールは、それに加えて、または代替的に、Sarahが書き留めたり覚えておかなくてもよいように、Sarahへのテキストメッセージなどの、さらに別のモダリティを使用して、SarahにGeoffの電話番号を提供し得る。そして、代替的実装形態において、クライアントデバイス406は、別々に(および場合によっては、控えめに)、Davidにテキストメッセージまたは他の類似する通信連絡(たとえば、図3に示されていたような)を送信しGeoffの電話番号を開示するDavidの許可を求めるものとしてよい。
【００４７】
再び図1を参照すると、インタラクティブアシスタントモジュール110および/またはインタラクティブアシスタントエンジン122は、様々な仕方で、第1の個人とインタラクティブアシスタントモジュール110との間の対話が少なくとも1人または複数の他の個人によって感覚的に知覚可能であると決定し得るか、または代替的に、インタラクティブアシスタントモジュール110によって使用される出力モダリティが2人以上の個人のグループによって感覚的に知覚可能であると決定し得る。複数の個人が、クライアントデバイス1061-Nの間の場合のように、別個のクライアントデバイス上で動作するそれぞれのメッセージ交換クライアント108を使用してテキストメッセージ交換スレッドに参加しているシナリオにおいて、複数の個人がメッセージ交換スレッドに組み込まれているコンテンツを知覚すると決定することは容易であり得る。インタラクティブアシスタントモジュール110および/またはインタラクティブアシスタントエンジン122は、個別のメッセージの送信者および/または受信者を単に見積もるだけであり得る。
【００４８】
しかしながら、複数の個人がスタンドアロン音声起動製品(106N+1に類似する)と一緒に存在するシナリオでは、追加の信号は、インタラクティブアシスタントモジュール110によって提供される出力が複数の個人によって知覚されると決定すると考えられてよく、そのうちの一部は制限付きコンテンツを知覚することを以前に許可されていることも、以前に許可されていないこともあり得る。いくつかの実装形態において、インタラクティブアシスタントモジュール110は、様々なユーザデータ112を調べて、複数の個人が一緒に存在している可能性が高いと決定することもあり得る。たとえば、いくつかの実装形態において、インタラクティブアシスタントモジュール110は、たとえばインタラクティブアシスタントモジュール110によってサービスを提供される個人および/または関連付けられている他の個人に関連付けられている、1つまたは複数のカレンダーエントリを調べて(インタラクティブアシスタントモジュールがそれらのカレンダーエントリを見る許可を有していると仮定する)、その個人が他の個人との会合に出席する予定であると決定するものとしてよい。
【００４９】
他の実装形態において、インタラクティブアシスタントモジュール110は、それがサービスを提供する個人に関連付けられている電子メールスレッドおよび/またはテキストメッセージを調べて、個人が特定の時刻および場所で他の個人と会う傾向があると決定するものとしてよい。いくつかの実装形態において、インタラクティブアシスタントモジュール110は、たとえば、サービスを受ける個人に関係する他の個人(たとえば、友人、関係者など)のソーシャルネットワーク活動と併せてそれがサービスを提供する個人のソーシャルネットワーク活動を調べ、たとえば、個人がパーティに行こうとしているか、または特定のイベントおよび/または会場で「チェックイン」していると決定するものとしてよい。
【００５０】
他の実装形態において、インタラクティブアシスタントモジュール110は、ユーザデータ112に関係し得るか、または関係し得ない他の信号を調べて、複数の個人が一緒に存在していると決定することもあり得る。たとえば、スタンドアロン音声起動製品106N+1上で動作するインタラクティブアシスタントモジュール110N+1は、スタンドアロン音声起動製品106N+1と一体であるか、または通信しているマイクロフォンなどの1つまたは複数のオーディオセンサによって生成される1つまたは複数のオーディオ信号を解析して、複数の個人が一緒に存在していると決定するものとしてよい。いくつかの実装形態において、スタンドアロン音声起動製品106N+1は、単純に、オーディオ信号に基づき、複数の個人が一緒に存在していることを検出し得るが、必ずしも、それらの検出された個人の識別情報を決定し得ない。いくつかの実装形態において、たとえば1つまたは複数のクライアントデバイス106と一体である1つまたは複数のモーションセンサは、複数の個人が一緒に存在していることを検出するために使用され得る。
【００５１】
いくつかの実装形態において、複数の個人が一緒に存在していることを検出するために使用される1つまたは複数の信号は、制限付きコンテンツを潜在的に開示することになるクライアントデバイス106を携帯する個人の位置座標と複数の個人が住んでいる可能性が高いと知られている位置との間の対応関係を含み得る。個人がクライアントデバイス106を携帯してレストランまたはカフェなどの公共の場所に入ると仮定する。クライアントデバイス106の位置座標コンポーネント(図示せず)は、全地球測位システム(「GPS」)、三角測量(たとえば、Wi-Fiまたはセルラーワイヤレス信号を使用する)、などの様々な技術を使用して、個人が他者が住むことになる可能性が高い位置のところにいると決定するものとしてよい。他の実装形態において、個人は、単純に空間を「安全でない」または「公共」として指定するものとしてよく、したがって、その空間内に入っているとクライアントデバイス106が検出したときには必ず、インタラクティブアシスタントモジュール110は他の、潜在的に無許可の個人が存在していると推定してよい。
【００５２】
いくつかの実装形態において、1つまたは複数の自動車シートセンサは、複数の個人が一緒に存在していると決定するためにインタラクティブアシスタントモジュール110によって使用され得る信号を提供するものとしてよい。インタラクティブアシスタントモジュール110は、車両に一体化されているコンピューティングデバイス(たとえば、オンボードナビゲーションシステム、または車両メディアを制御するシステム)上で動作していると仮定する。個人がシートに座っているときにそのことを検出する1つまたは複数の人感センサが車両のシート上で使用され得る。たとえば、これらのセンサは、シートに座っている個人の体重を検出し、シートベルトが締められていることを検出し、および/または1つまたは複数のカメラを使用して乗客の存在を可視的に検出するものとしてよい。どのタイプのセンサが使用されようと、それらのセンサによって提供される人感信号は、制限付きコンテンツを知覚する許可を有していても、または有していなくてもよい複数の乗客が車両内にいると決定するためにインタラクティブアシスタントモジュール110によって使用され得る。
【００５３】
いくつかの実装形態において、インタラクティブアシスタントモジュール110は、一緒に存在していることの検出の履歴に基づき複数の個人が一緒に存在している可能性があると決定し得る。たとえば、クライアントデバイス106が、いくつかの特定の日のいくつかの特定の時刻に、複数の個人が一緒に存在していることを検出する(たとえば、ディナーテーブルに、毎週の会合で、など)。時間の経過を追って、インタラクティブアシスタントモジュール110は、一緒に存在しているというこれらの再発する事例を学習し、それにより、将来のそれらの時刻/場所で、インタラクティブアシスタントモジュール110は、個人が別に指示しない限り、複数の個人が一緒に存在していることを単純に推定し得る。
【００５４】
いくつかの実装形態において、スタンドアロン音声起動製品106N+1は、他者が単に一緒に存在していることに加えて、一緒に存在している特定の人々の識別情報を検出するように構成され得る。たとえば、いくつかの実装形態において、スタンドアロン音声起動製品106N+1は、音声に基づき特定の人々を識別するように(たとえば、訓練を介して)構成されている音声認識ソフトウェアを備え得る。たとえば、スタンドアロン音声起動製品106N+1が家庭もしくは事務所に配備されている場合、これは、家族、友人、従業員などの個人の音声を認識するように時間の経過を追って訓練され得る(たとえば、機械学習技術、ニューラルネットワークなどを使用して)。
【００５５】
他の実装形態において、スタンドアロン音声起動製品106N+1は、クライアントデバイス106に関連付けられている1つもしくは複数のワイヤレス信号または一緒に存在している様々な個人によって携帯される単純なタグ(たとえば、一体型RFID技術を使用するIDバッジ)を検出し得る。いくつかの実装形態において、スタンドアロン音声起動製品106N+1は、Wi-Fiルーターをポーリングして、どのクライアントデバイス106が現在接続されているかを決定することができ、場合によっては、たとえば、ルックアップテーブル、デバイス名などを使用して、それらのクライアントデバイス106を特定の個人と関連付けることができるものとしてよい。他の実装形態において、スタンドアロン音声起動製品106N+1は、Bluetooth(登録商標)信号、光信号など、1つまたは複数のクライアントデバイスから直接発せられる1つまたは複数のワイヤレス信号を検出し得る。いくつかの実装形態において、上で説明されている一緒に存在していることを示す情報の履歴は、どの特定の個人が典型的には一緒に存在しているかに関する情報を含み得、したがって、インタラクティブアシスタントモジュールは、そのような個人が将来の特定の時刻/場所に一緒に存在していると推定することができる。
【００５６】
インタラクティブアシスタントモジュール110が一緒に存在している個人の特定の識別情報を決定することができる実装形態において、インタラクティブアシスタントモジュール110は、特定の個人によって制御される特定のコンテンツがそれらの一緒に存在している個人に開示することを許可されるかどうかを決定するように構成され得る。図5A〜図5Cは、そのような一例を示している。図5Aでは、SarahおよびDavidは、もう一度、音声起動製品506と一緒に存在している。一緒に存在している間、2人は、結果として一方または両方の個人によって制御される様々な制限付きコンテンツを開示する(たとえば、声に出して)スタンドアロン音声起動製品506上でインタラクティブアシスタントモジュール110を実行させる会話を有すると仮定する。特に、一方または両方の個人が、インタラクティブアシスタントモジュール110が特定のユーザデータ112を開示するための許可をその会話中に出すと仮定する。インタラクティブアシスタントモジュールは、DavidおよびSarahを、将来の制限付きコンテンツを開示することを許可されるかどうかを決定するためにインタラクティブアシスタントモジュール110が後で使用することができる、たとえば、グループ識別子を有するグループに関連付けるものとしてよい。
【００５７】
図5Bでは、DavidおよびSarahは、もう一度、一緒に存在しているが、このときは、Dennisも一緒に存在している。Dennisは、図5Aに示されている会話に関わっていなかった。その結果、Dennisは、図5Aの会話中にインタラクティブアシスタントモジュール110によって作成されるグループに関連付けられ得ない。しかしながら、Dennisは一緒に存在しているので、スタンドアロン音声起動製品506(たとえば、その上で実行されるインタラクティブアシスタントモジュール110)によって提供される任意の可聴出力は、Dennisによって知覚され得る。図5Bにおいて一緒に存在している個人がスタンドアロン音声起動製品506上で動作するインタラクティブアシスタントモジュール110に、図5Aの会話中に開示を許可された制限付きコンテンツを開示することを要求するか、または他の何らかの形で促すと仮定する。インタラクティブアシスタントモジュール110は、存在している個人(Sarah、Dennis、David)が図5Aにおいてすでに確立されているグループ(Sarah、David)とマッチしないと決定し得る。したがって、インタラクティブアシスタントモジュール110は、制限付きコンテンツを開示することを拒否し得るか、または少なくとも、Dennisによって知覚されるであろう方式で制限付きコンテンツを開示する前に、許可に関して制限付きコンテンツを制御する個人を促し得る。
【００５８】
後で、SarahおよびDennisは、図5Cに示されているように、もう一度、スタンドアロン音声起動製品506と一緒に存在している。Dennisはもはや一緒には存在していない。スタンドアロン音声起動製品506上で実行されるインタラクティブアシスタントモジュール110は、図5Aの会話中に存在していた個人の同じグループがもう一度集められると決定し得る。その決定に基づき、SarahまたはDennisがインタラクティブアシスタントモジュール110に、図5Aの会話中に許可されたとおりに類似の制限付きコンテンツを提供することを要求するか、または他の何らかの形で促す場合に、インタラクティブアシスタントモジュール110は、自由にそうできるものとしてよい。もちろん、いずれかの個人がインタラクティブアシスタントモジュール110に、以前に許可されていなかった制限付きコンテンツを開示することを要求するか、または他の何らかの形で促す場合、インタラクティブアシスタントモジュール110は、もう一度、開示を拒否し、および/または承認を要請するものとしてよい。
【００５９】
図5A〜図5Cの例において、インタラクティブアシスタントモジュール110は、様々な個人と音声起動対話を行い、グループおよびグループパーミッションを確立した。しかしながら、これらの技術は、他のシナリオでも等しく適用可能である。たとえば、ユーザのグループがオンラインチャットまたはテキストメッセージ交換(すなわち、上述のメッセージ交換スレッド)に参加しており、およびメッセージの交換中に、参加者がインタラクティブアシスタントモジュール110が様々な制限付きコンテンツをスレッド内に組み込むことを許可すると仮定する。ユーザの同じグループが、後で、別のメッセージ交換スレッドに参加する(または同じメッセージ交換スレッドを再訪する)場合、参加者の1人または複数に関連付けられている1つまたは複数のインタラクティブアシスタントモジュール110は、同じグループ識別情報が適用されると決定するものとしてよく、したがって、同じまたは類似の制限付きコンテンツを自由に開示することができるものとしてよい。
【００６０】
いくつかの実装形態において、グループ識別子は、完全に異なる出力モダリティを有する複数のグループコンテキストにまたがるものとしてよい。テキストメッセージ交換スレッド(たとえば、オンラインチャット、テキストメッセージ交換など)において、インタラクティブアシスタントモジュール110は、参加者のグループに関連付けられているグループ識別子を確立し、ある特定の制限付きコンテンツがそのグループに対して開示されることを許可されると仮定する。後で、個人の同じグループが、スタンドアロン音声起動製品106N+1などの、異なるクライアントデバイスと物理的に一緒に存在していると仮定する。スタンドアロン音声起動製品106N+1上で動作しているインタラクティブアシスタントモジュール110N+1は、一緒に存在していると検出された特定の個人の識別情報に基づき、同じグループが集められると決定し得る。いくつかの実装形態において、インタラクティブアシスタントモジュール110N+1は、同じグループ識別子を使用して、最初に許可を要請することなくどの制限付きコンテンツが開示され得るかを管理し得る。
【００６１】
上で述べたように、1人または複数の個人によって制御される制限付きコンテンツは、様々な異なるコンテンツを含み得る。いくつかの実装形態において、これは、電子メール、ソーシャルネットワークプロファイル、連絡先情報、パーソナルドキュメント、カレンダーなどの、個人によって制御されるユーザデータ112を含み得る。いくつかの実装形態において、制限付きコンテンツは、特定の個人に向けて調整され得るコンテンツを含み得る。たとえば、バイリンガルの個人は、独りでいる場合に、インタラクティブアシスタントモジュール110をインタラクティブに操作するときに、インタラクティブアシスタントモジュール110は中国語で話すが、バイリンガルの個人が他者と一緒に存在している(または複数参加者メッセージ交換スレッドに参加している)場合には、インタラクティブアシスタントモジュール110は英語でコミュニケーションをとることを好むことがある。
【００６２】
図6Aおよび図6Bは、複数の個人が一緒に存在しているかどうかに応じて制限付きコンテンツが条件付きで出力され得る別の例を示している。図6Aでは、Davidが自分の音声起動製品606を携えて独りでいる。Davidは、「Good morning(おはよう)」と話しかけ、音声起動製品606上で実行されているインタラクティブアシスタントモジュール110は、「Good morning, your majesty(おはようございます、陛下)」と応答する。図6Bでは、対照的に、DavidはSarahと一緒である。Davidは、自分が独りのときにのみ「your majesty(陛下)」と呼ばれたいことをインタラクティブアシスタントモジュール110にすでに指示してあるものとしてよい。したがって、図6Bにおいて、インタラクティブアシスタントモジュール110は、Davidが独りでないと検出しており、代わりに、Davidの挨拶に「Good morning, David(おはようございます、David)」で応答する。
【００６３】
図6Aおよび図6Bは、一緒に存在している別の個人が制限付きコンテンツを知覚することを許可されていないとの決定に応答して、制限なしコンテンツ(「David」)が制限付きコンテンツ(「your majesty(陛下)」)の代用として条件付きで対話に組み込まれる本開示の概念を示している。この概念は、他のシナリオに拡張され得る。たとえば、個人は、自分の連絡先リスト内の電話番号に対するグローバルな許可を提供し得るが、電子メールアドレス、住所などの、他の連絡先情報の開示を許可しなくてもよい。インタラクティブアシスタントモジュール110が、個人の連絡先リスト内に含まれる連絡先情報を提供することを要求されるか、または他の何らかの形で促されたときに、インタラクティブアシスタントモジュール110は、他の個人がその開示を知覚するかどうかに応じて電話情報のみ、または全連絡先情報を条件付きで開示し得る。または、他の個人が開示を知覚するおそれがある場合、インタラクティブアシスタントモジュール110は、家庭連絡先情報ではなく仕事連絡先情報のみを提供するものとしてよい。さらに別の例として、インタラクティブアシスタントモジュール110は、複数の個人が開示を知覚するかどうか、または特定の無許可の個人が開示を知覚し得るかどうかに応じて、不快感を与える可能性のある制限付きコンテンツを条件付きで開示し得る。
【００６４】
制限付きコンテンツは、様々なレベルの粒度で開示を制限され、および/または許可され得る。たとえば、いくつかの場合において、ユーザデータ112の「クラス」が許可され、および/または制限され得る。ユーザデータ112のクラスは、ユーザデータタイプ、または1つまたは複数の属性を含むユーザデータを含み得る。たとえば、個人は、自分の連絡先リスト内のすべての連絡先に関連付けられている情報を許可/制限し得る。別の例として、ユーザは、ある特定のユーザとの間のすべてのテキスト(もしくは電子メール)メッセージ、またはテキスト(もしくは電子メール)メッセージに関連付けられている情報を許可/制限し得る。それに加えて、または代替的に、個人は、すべてのカレンダーエントリ、またはある特定の属性を有するカレンダーエントリのみを選択的に許可/制限し得る(たとえば、平日の約束は機密扱いでなくてよいが、週末の約束は制限付きであるものとしてよい)。もちろん、個人は、個別の基準に基づきいくつかのコンテンツアイテムを許可するか、または制限してよい。たとえば、個人がパーティを主催する場合、個人は、そのイベントに関連付けられているカレンダーエントリを公共のものとして、またはパーティに招待されている個人に許可されているものとして指定し得る。個人が後で、グループディスカッションに参加する場合(メッセージ交換スレッドで、または音声起動製品の存在下で声により)、またディスカッションに関わっている他の個人もパーティに招待される場合、そうでなければ制限付きである可能性のあるパーティの詳細は、自由に開示され得る。ユーザデータのクラスは、特定の個人またはグループに対しても許可されてよい。たとえば、重役の旅行プランの詳細は、同僚には完全に利用可能であってよいが、顧客および/またはクライアントには部分的にしか利用可能でないものとしてよい。
【００６５】
次に図7を参照すると、グループコンテキストにおいてインタラクティブアシスタントモジュールが制限付きコンテンツに安全にアクセスし、開示するための例示的な一方法700が説明されている。便宜上、フローチャートの動作は、動作を実行するシステムを参照しつつ説明されている。このシステムは、本明細書で説明されている様々なエンジンおよび/またはクライアントアプリケーションを含む、様々なコンピュータシステムの様々なコンポーネントを備え得る。さらに、方法700の動作が特定の順序で示されているが、これは制限することを意味しない。1つまたは複数の動作が、順序変更、省略、または追加されてもよい。
【００６６】
ブロック702において、システムは、第1の個人とインタラクティブアシスタントモジュール(第1の個人にサービスを提供することを特に行っていても行っていなくてもよい)との間の対話が少なくとも第2の個人によって感覚的に知覚可能であると決定し得る。メッセージ交換クライアント108により円滑にされているメッセージ交換スレッドのコンテキストにおいて、この動作は、スレッド内の複数の参加者を識別することを単純に伴い得る。インタラクティブアシスタントモジュールが第1の個人との可聴対話を行っているコンテキストにおいて、この動作は、上述の信号のうちの1つまたは複数に基づき、たとえば1人または複数の他者が一緒に存在しているので、第1の個人が独りでないと決定するステップを含み得る。
【００６７】
ブロック704において、システムは、たとえば、個人の明示的な要求で、および/または1つまたは複数のきっかけに応答して、インタラクティブアシスタントモジュールによって対話内に自動的に組み込まれるべき制限付きコンテンツを識別し得る。たとえば、個人が写真を要求した場合、システムは、写真が、少なくとも、対話を知覚することができるとブロック702において決定された1人または複数の個人に対して、開示をまだ許可されていないと決定し得る。
【００６８】
ブロック706において、システムは、第2の個人(またはもし存在すれば追加の個人)がブロック704において識別された制限付きコンテンツを知覚することを許可されているかどうかを決定し得る。ブロック706における答えがyesである場合、方法700はブロック708に進むものとしてよい。ブロック708において、システムは、制限付きコンテンツを対話内に組み込み得る。メッセージ交換スレッドコンテキストにおいて、システムは、制限付きコンテンツをメッセージ交換スレッド内の参加者の何人かまたは全員が見ることができるメッセージ交換スレッドのトランスクリプトに組み込み得る。個人のグループが音声起動製品と一緒に存在しているコンテキストにおいて、システムは、制限付きコンテンツを聴き取れるように出力し得る。
【００６９】
再びブロック706において、答えがnoである場合、ブロック710において、システムは、制限付きコンテンツを制御する個人に制限付きコンテンツを開示する許可を要請する出力を提供し得る。上で述べたように、いくつかの実装形態において、要請は、制御する個人以外の個人によって感覚的に知覚可能であり得ない異なる出力モダリティを使用して提供され得る。それに加えて、または代替的に、要請は、同じモダリティを使用して提供され得る。メッセージ交換スレッドコンテキストにおいて、要請は、制御する個人から見えるトランスクリプトにのみ表示され、スレッド内の他の参加者から見えるトランスクリプトには表示され得ない。
【００７０】
ブロック712において、制御する個人が許可を提供する場合、方法700はブロック708に進み得るが、これはすでに説明されている。しかしながら、ブロック712における答えがnoである場合、方法700はブロック714に進むものとしてよい。ブロック714において、システムは、代わりに開示され得る好適な代用(すなわち、制限なし)コンテンツがあるかどうかを決定し得る。たとえば、上のニックネームの例では、「David」が「your majesty(陛下)」の代用となり得る。ブロック714における答えがyesである場合、ブロック716において、代用の制限なしコンテンツは、ブロック708と同様に、対話に組み込まれ得る。しかしながら、ブロック714における答えがnoである場合、方法700は何かが対話に組み込まれることなく終了し得る。
【００７１】
図8は、例示的なコンピュータシステム810のブロック図である。コンピュータシステム810は、典型的には、バスサブシステム812を介して多数の周辺デバイスと通信する少なくとも1つのプロセッサ814を備える。これらの周辺デバイスは、たとえば、メモリサブシステム825およびファイル記憶装置サブシステム826を含む、記憶装置サブシステム826、ユーザインターフェース出力デバイス820、ユーザインターフェース入力デバイス822、およびネットワークインターフェースサブシステム816を含むものとしてよい。入力および出力デバイスは、ユーザがコンピュータシステム810をインタラクティブに操作することを可能にする。ネットワークインターフェースサブシステム816は、外部ネットワークへのインターフェースを備え、他のコンピュータシステム内の対応するインターフェースデバイスに結合される。
【００７２】
ユーザインターフェース入力デバイス822は、キーボード、マウス、トラックボール、タッチパッド、もしくはグラフィックスタブレットなどのポインティングデバイス、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システムなどのオーディオ入力デバイス、マイクロフォン、および/または他の種類の入力デバイスを含むものとしてよい。一般に、「入力デバイス」という用語の使用は、情報をコンピュータシステム810内に、または通信ネットワーク上に入力するためのすべての可能な種類のデバイスおよび方法を含むことが意図されている。
【００７３】
ユーザインターフェース出力デバイス820は、表示サブシステム、プリンタ、ファックス機、またはオーディオ出力デバイスなどの非視覚的ディスプレイを含むものとしてよい。表示サブシステムは、陰極線管(CRT)、液晶ディスプレイ(LCD)などのフラットパネルデバイス、プロジェクションデバイス、または可視画像を生成するための他の何らかのメカニズムを含むものとしてよい。表示サブシステムは、オーディオ出力デバイスなどを介して非視覚的ディスプレイも備えてよい。一般に、「出力デバイス」という用語の使用は、情報をコンピュータシステム810からユーザまたは別のマシンもしくはコンピュータシステムに出力するためのすべての可能な種類のデバイスおよび方法を含むことが意図されている。
【００７４】
記憶装置サブシステム826は、本明細書で説明されているモジュールのうちのいくつかまたはすべての機能を実現するプログラミングおよびデータ構造を記憶する。たとえば、記憶装置サブシステム826は、方法700の選択された態様を実行し、ならびに/またはクライアントデバイス106および/もしくはナレッジシステム102のうちの1つまたは複数のコンポーネントを実装するためのロジック回路を備え得る。
【００７５】
これらのソフトウェアモジュールは、一般的に、プロセッサ814によって、単独で、または他のプロセッサと組み合わせて、実行される。記憶装置サブシステム826において使用されるメモリ825は、プログラム実行時に命令およびデータを記憶するためのメインランダムアクセスメモリ(RAM)830、ならびに固定された命令が記憶されるリードオンリーメモリ(ROM)832を含む多数のメモリを備えることができる。ファイル記憶装置サブシステム826は、プログラムおよびデータファイル用の永続的記憶域を備えることができ、ハードディスクドライブ、関連する取り外し可能媒体を伴ったフロッピーディスクドライブ、CD-ROMドライブ、光ドライブ、または取り外し可能メディアカートリッジを含むものとしてよい。ある特定の実装形態の機能を実装するモジュールは、ファイル記憶装置サブシステム826によって、記憶装置サブシステム826内、またはプロセッサ814によってアクセス可能な他のマシン内に記憶され得る。
【００７６】
バスサブシステム812は、コンピュータシステム810の様々なコンポーネントおよびサブシステムに意図されたとおりに互いに通信させるメカニズムを備える。バスサブシステム812は、単一のバスとして概略が図示されているが、バスシステムの代替的実装形態では、複数のバスを使用してよい。
【００７７】
コンピュータシステム810は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、または他の任意のデータ処理システムもしくはコンピューティングデバイスを含む様々な種類のもであってよい。コンピュータおよびネットワークはその性質上絶えず変化し続けるので、図8に示されているコンピュータシステム810の説明は、いくつかの実装形態を例示することを目的とする特定の例としてのみ意図されている。コンピュータシステム810の他の多くの構成は、図8に示されているコンピュータシステムよりも多い、または少ない構成要素を有するものが可能である。
【００７８】
本明細書で説明されているシステムがユーザに関する個人情報を収集するか、または個人情報を利用してよい状況において、ユーザは、プログラムまたは機能によりユーザ情報(たとえば、ユーザのソーシャルネットワークに関する情報、社会的行為もしくは活動、専門的職業、ユーザの選好、またはユーザの現在の地理的位置)を収集するかどうかを制御する、またはユーザに対してより高い関連性があると思われるコンテンツをコンテンツサーバから受信するかどうか、および/またはどのように受信するかを制御する機会を与えられるものとしてよい。また、ある特定のデータが、それが記憶されるか、または使用される前に1つまたは複数の方法で処理されるものとしてよく、したがって個人識別可能情報は取り除かれる。たとえば、ユーザの識別情報は、ユーザに対して個人識別可能情報が決定され得ないように処理されてよいか、または地理的位置情報(市名、郵便番号、州レベルなど)が得られる場合にユーザの地理的位置が一般化されるものとしてよく、したがって、ユーザの特定の地理的位置が決定され得ない。したがって、ユーザは、ユーザに関して情報がどのように収集され、どのように使用されるかを制御するものとしてよい。
【００７９】
いくつかの実装形態が本明細書において説明され例示されたが、機能を実行しおよび/もしくは結果を取得するための様々な他の手段および/もしくは構造体ならびに/または本明細書において説明されている利点のうちの1つもしくは複数が利用され得、そのような変更形態および/または修正形態の各々は本明細書で説明されている実装形態の範囲内にあるとみなされる。より一般的には、本明細書で説明されているすべてのパラメータ、寸法、材料、および構成形状は例示的であり、実際のパラメータ、寸法、材料、および/または構成形状は教示が使用される特定の1つまたは複数のアプリケーションに依存することを意味している。当業者であれば、単なる決まり切った実験を用いて、本明細書で説明されている特定の実装形態に対する多数の等価物を認識するか、または確認することができるであろう。したがって、前述の実装形態は、例としてのみ提示されていること、ならびに付属の請求項およびその等価物の範囲内で、具体的に説明され請求されている以外の実装形態が実施されてよいことは理解されるであろう。本開示の実装形態は、本明細書において説明されている各個別の特徴、システム、物品、材料、キット、および/または方法を対象とする。それに加えて、2つ以上のそのような特徴、システム、物品、材料、キット、および/または方法の任意の組合せは、そのような特徴、システム、物品、材料、キット、および/または方法が相互に矛盾することがなければ、本開示の範囲内に含まれる。
【符号の説明】
【００８０】
102  ナレッジシステム
106  クライアントデバイス
1061-N  クライアントデバイス
106N+1  スタンドアロン音声起動デバイス、スタンドアロン音声起動製品
108  メッセージ交換クライアント
110  インタラクティブアシスタントモジュール
1101-N  インタラクティブアシスタントモジュール
110N+1  インタラクティブアシスタントモジュール
112  ユーザデータ
112N+1  ユーザデータ
120  メッセージ交換エンジン
122  インタラクティブアシスタントエンジン
124  ユーザデータエンジン
126  インデックス
128  インデックス作成エンジン
130  インデックス
132  情報エンジン
134  インデックス
206  クライアントデバイス
250  グラフィカルユーザインターフェース
252  トランスクリプト、メッセージ交換スレッド
254  テキスト入力フィールド
306  クライアントデバイス
350  グラフィカルユーザインターフェース
352  トランスクリプト
3661  「Yes」ボタン
3662  「No」ボタン
3663  追加のボタン
3664  追加のボタン
406  クライアントデバイス
506  音声起動製品、スタンドアロン音声起動製品
810  コンピュータシステム
812  バスサブシステム
814  プロセッサ
816  ネットワークインターフェースサブシステム
820  ユーザインターフェース出力デバイス
822  ユーザインターフェース入力デバイス
825  メモリサブシステム
826  ファイル記憶装置サブシステム、記憶装置サブシステム
830  メインランダムアクセスメモリ(RAM)
832  リードオンリーメモリ(ROM)
【図１】
2020013603.tif 000003
【図２】
2020013603.tif 000004
【図３】
2020013603.tif 000005
【図４】
2020013603.tif 000006
【図５Ａ】
2020013603.tif 000007
【図５Ｂ】
2020013603.tif 000008
【図５Ｃ】
2020013603.tif 000009
【図６Ａ】
2020013603.tif 000010
【図６Ｂ】
2020013603.tif 000011
【図７】
2020013603.tif 000012
【図８】
2020013603.tif 000013
【外国語明細書】
2020013603000001.pdf