IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ インターナショナル・ビジネス・マシーンズ・コーポレーションの特許一覧

<>
  • 特表-動作コマンド境界 図1
  • 特表-動作コマンド境界 図2
  • 特表-動作コマンド境界 図3
  • 特表-動作コマンド境界 図4
  • 特表-動作コマンド境界 図5
  • 特表-動作コマンド境界 図6
  • 特表-動作コマンド境界 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-05-08
(54)【発明の名称】動作コマンド境界
(51)【国際特許分類】
   G06F 3/16 20060101AFI20240426BHJP
   G06F 3/01 20060101ALI20240426BHJP
   G06F 3/048 20130101ALI20240426BHJP
【FI】
G06F3/16 630
G06F3/16 650
G06F3/16 620
G06F3/01 510
G06F3/048
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023561143
(86)(22)【出願日】2022-05-04
(85)【翻訳文提出日】2023-10-04
(86)【国際出願番号】 IB2022054100
(87)【国際公開番号】W WO2022238815
(87)【国際公開日】2022-11-17
(31)【優先権主張番号】17/315,397
(32)【優先日】2021-05-10
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【弁理士】
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【弁理士】
【氏名又は名称】片岡 忠彦
(74)【復代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】エダ、サシカンス
(72)【発明者】
【氏名】ラクシット、サルバジット
(72)【発明者】
【氏名】パティル、サンディープ
【テーマコード(参考)】
5E555
【Fターム(参考)】
5E555AA46
5E555AA56
5E555BA01
5E555BA04
5E555BB01
5E555BB04
5E555BC01
5E555BD01
5E555BE17
5E555CA47
5E555CB64
5E555CC01
5E555DA08
5E555DA09
5E555DB41
5E555DC09
5E555DC35
5E555DD02
5E555DD06
5E555EA07
5E555EA08
5E555EA09
5E555EA14
5E555EA23
5E555FA00
(57)【要約】
コマンド境界を利用してコマンドを管理するための方法は、第1の電子デバイス上で動作する第1のインテリジェント仮想アシスタントのための第1のコマンド境界を確立する段階を含む。方法はまた、第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、第1のコマンド境界内の複数のソースからの音声の部分を識別する段階を含む。方法はまた、第1のコマンド境界内の複数のソースからの音声の部分においてコマンドが識別可能であると判定することに応答して、第1の電子デバイス上の第1のインテリジェント仮想アシスタントにコマンドを送信する段階を含む。
【特許請求の範囲】
【請求項1】
第1の電子デバイス上で動作する第1のインテリジェント仮想アシスタントのための第1のコマンド境界を確立する段階;
前記第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、前記第1のコマンド境界内の前記複数のソースからの前記音声の部分を識別する段階;及び
前記第1のコマンド境界内の前記複数のソースからの前記音声の前記部分においてコマンドが識別可能であると判定することに応答して、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに前記コマンドを送信する段階
を備える、コンピュータ実装方法。
【請求項2】
第2の電子デバイス上で動作する第2のインテリジェント仮想アシスタントのための第2のコマンド境界を確立する段階、ここで前記第1のコマンド境界は、前記第2のコマンド境界と重複しない、
を更に備える、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記第1の電子デバイス上で動作する前記第1のインテリジェント仮想アシスタントのための第1のコマンド規則のセット、及び、前記第2の電子デバイス上で動作する前記第2のインテリジェント仮想アシスタントのための第2のコマンド規則のセットを確立する段階
を更に備える、請求項2に記載のコンピュータ実装方法。
【請求項4】
個人情報について前記コマンドを分析する段階;
前記分析する段階に基づき、前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための個人情報コマンド境界に基づき、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに命令を送信する段階
を更に備える、前述の請求項1から3のいずれかに記載のコンピュータ実装方法。
【請求項5】
個人情報について前記コマンドを分析する段階は:
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類する段階;
前記分類に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための前記個人情報コマンド境界を確立するようユーザにクエリを行う段階、ここで前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに対する音量レベル応答は、前記個人情報コマンド境界に関連付けられている;及び
前記コマンドのための前記個人情報コマンド境界を記憶する段階
を更に有する、請求項4に記載のコンピュータ実装方法。
【請求項6】
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類する段階は:
前記コマンドを個人情報に関連するものとして、又は、前記コマンドの第1の部分を個人情報に関連するものとして分類する段階;及び
前記コマンドを、個人情報を含むもの、又は、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによる個人情報を伴う聞き取り可能な応答を生じさせるものとして分類する段階
を更に含む、請求項5に記載のコンピュータ実装方法。
【請求項7】
前記コマンドの前記第1の部分が個人情報を有するものとして分類され、前記コマンドが前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによる個人情報を伴う前記聞き取り可能な応答を生じさせることから、前記コマンドが個人情報に関連していると判定する段階
を更に備える、請求項6に記載のコンピュータ実装方法。
【請求項8】
1又は複数のコンピュータ可読記憶媒体、及び、前記1又は複数のコンピュータ可読記憶媒体上に集合的に記憶されたプログラム命令
を備え、前記記憶されたプログラム命令は、1又は複数のコンピュータプロセッサによって実行可能であり、前記記憶されたプログラム命令は:
第1の電子デバイス上で動作する第1のインテリジェント仮想アシスタントのための第1のコマンド境界を確立するためのプログラム命令;
前記第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、前記第1のコマンド境界内の前記複数のソースからの前記音声の部分を識別するためのプログラム命令;及び
前記第1のコマンド境界内の前記複数のソースからの前記音声の前記部分においてコマンドが識別可能であると判定することに応答して、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに前記コマンドを送信するためのプログラム命令
を有する、コンピュータプログラム製品。
【請求項9】
前記記憶されたプログラム命令は:
第2の電子デバイス上で動作する第2のインテリジェント仮想アシスタントのための第2のコマンド境界を確立するためのプログラム命令、ここで前記第1のコマンド境界は、前記第2のコマンド境界と重複しない、
を更に有する、請求項8に記載のコンピュータプログラム製品。
【請求項10】
前記記憶されたプログラム命令は:
前記第1の電子デバイス上で動作する前記第1のインテリジェント仮想アシスタントのための第1のコマンド規則のセット、及び、前記第2の電子デバイス上で動作する前記第2のインテリジェント仮想アシスタントのための第2のコマンド規則のセットを確立するためのプログラム命令
を更に有する、請求項8に記載のコンピュータプログラム製品。
【請求項11】
前記記憶されたプログラム命令は:
個人情報について前記コマンドを分析するためのプログラム命令;
前記分析に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための個人情報コマンド境界に基づき、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに命令を送信するためのプログラム命令
を更に有する、前述の請求項8から10のいずれかに記載のコンピュータプログラム製品。
【請求項12】
個人情報について前記コマンドを分析するためのプログラム命令は:
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類するためのプログラム命令;
前記分類に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための前記個人情報コマンド境界を確立するようユーザにクエリを行うためのプログラム命令、ここで前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに対する音量レベル応答は、前記個人情報コマンド境界に関連付けられている;及び
前記コマンドのための前記個人情報コマンド境界を記憶するためのプログラム命令
を更に含む、請求項11に記載のコンピュータプログラム製品。
【請求項13】
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類するためのプログラム命令は:
前記コマンドを個人情報に関連するものとして、又は、前記コマンドの第1の部分を個人情報に関連するものとして分類するためのプログラム命令;及び
前記コマンドを、個人情報を含むもの、又は、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによる個人情報を伴う聞き取り可能な応答を生じさせるものとして分類するためのプログラム命令
を更に含む、請求項12に記載のコンピュータプログラム製品。
【請求項14】
前記記憶されたプログラム命令は:
前記コマンドの前記第1の部分が個人情報を有するものとして分類され、前記コマンドが前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによる個人情報を伴う前記聞き取り可能な応答を生じさせることから、前記コマンドが個人情報に関連していると判定するためのプログラム命令
を更に有する、請求項13に記載のコンピュータプログラム製品。
【請求項15】
1又は複数のコンピュータプロセッサ;
1又は複数のコンピュータ可読記憶媒体;及び
前記1又は複数のコンピュータプロセッサの少なくとも1つによって実行されるための、前記1又は複数のコンピュータ可読記憶媒体上に記憶されたプログラム命令
を備え、前記プログラム命令は:
第1の電子デバイス上で動作する第1のインテリジェント仮想アシスタントのための第1のコマンド境界を確立するためのプログラム命令;
前記第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、前記第1のコマンド境界内の前記複数のソースからの前記音声の部分を識別するためのプログラム命令;及び
前記第1のコマンド境界内の前記複数のソースからの前記音声の前記部分においてコマンドが識別可能であると判定することに応答して、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに前記コマンドを送信するためのプログラム命令
を有する、コンピュータシステム。
【請求項16】
前記記憶されたプログラム命令は:
第2の電子デバイス上で動作する第2のインテリジェント仮想アシスタントのための第2のコマンド境界を確立するためのプログラム命令、ここで前記第1のコマンド境界は、前記第2のコマンド境界と重複しない、
を更に有する、請求項15に記載のコンピュータシステム。
【請求項17】
前記記憶されたプログラム命令は:
前記第1の電子デバイス上で動作する前記第1のインテリジェント仮想アシスタントのための第1のコマンド規則のセット、及び、前記第2の電子デバイス上で動作する前記第2のインテリジェント仮想アシスタントのための第2のコマンド規則のセットを確立するためのプログラム命令
を更に有する、請求項15に記載のコンピュータシステム。
【請求項18】
前記記憶されたプログラム命令は:
個人情報について前記コマンドを分析するためのプログラム命令;
前記分析に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための個人情報コマンド境界に基づき、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに命令を送信するためのプログラム命令
を更に有する、前述の請求項15から17のいずれかに記載のコンピュータシステム。
【請求項19】
個人情報について前記コマンドを分析するための前記プログラム命令、前記記憶されたプログラム命令は:
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類するためのプログラム命令;
前記分類に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための前記個人情報コマンド境界を確立するようユーザにクエリを行うためのプログラム命令、ここで前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに対する音量レベル応答は、前記個人情報コマンド境界に関連付けられている;及び
前記コマンドのための前記個人情報コマンド境界を記憶するためのプログラム命令
を更に有する、請求項18に記載のコンピュータシステム。
【請求項20】
第1の電子デバイス上で動作するインテリジェント仮想アシスタントのためのニアフィールド半径を確立する段階、ここで前記ニアフィールド半径は、ニアフィールド音声及びファーフィールド音声を分離するコマンド境界である;
前記第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、前記ニアフィールド半径内の前記複数のソースから前記音声の部分を識別する段階;及び
前記ニアフィールド半径内の前記複数のソースからの前記音声の前記部分においてコマンドが識別可能であると判定することに応答して、前記インテリジェント仮想アシスタントに前記コマンドを実行するよう命令する段階
を備える、コンピュータ実装方法。
【請求項21】
前記第1の電子デバイスによって実行可能な前記コマンドについて、前記ニアフィールド半径内の前記複数のソースからの前記音声の前記部分を分析する段階
を更に備える、請求項20に記載のコンピュータ実装方法。
【請求項22】
第2の電子デバイスが前記コマンドに関連付けられていると判定することに応答して、前記第2の電子デバイス内に前記コマンドを表示する段階;及び
前記第2の電子デバイスから前記コマンドに対する修正を受信することに応答して;前記インテリジェント仮想アシスタントに、前記修正を伴う前記コマンドを実行するよう命令する段階
を更に備える、請求項20又は21に記載のコンピュータ実装方法。
【請求項23】
第1のインジケータは前記コマンドの第1のサブコマンドに割り当てられており、第2のインジケータは前記コマンドの第2のサブコマンドに割り当てられている、前述の請求項20から22のいずれかに記載のコンピュータ実装方法。
【請求項24】
前記第2の電子デバイスから前記コマンドに対する前記修正を受信する段階、ここで前記修正は、前記第1のインジケータを前記コマンドの前記第2のサブコマンドに、及び前記第2のインジケータを前記コマンドの前記第1のサブコマンドに割り当てる、
を更に備える、請求項23に記載のコンピュータ実装方法。
【請求項25】
前記第1のインジケータは、前記第2のインジケータで前記コマンドの前記第1のサブコマンドを実行する前に、前記コマンドの前記第2のサブコマンドを実行するよう前記インテリジェント仮想アシスタントに命令する、請求項24に記載のコンピュータ実装方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、概してインテリジェント仮想アシスタントに関し、具体的には、インテリジェント仮想アシスタントを採用するデバイスのための動作コマンド境界を確立することに関する。
【0002】
インテリジェント仮想アシスタント(IVA)は、ユーザによって提供された口頭のコマンド又は質問に基づきユーザのために様々なタスクを実行することができるソフトウェアエージェントを表し、IVAは電子デバイス上で動作する。モノのインターネット(IoT)デバイスは、IVAを有する電子デバイスの一例であり、インターネットを介して他のデバイス及びシステムに接続してこれらとデータを交換し、任意の口頭のコマンド又は質問を処理することができる。口頭のコマンド又は質問を提供するユーザは、通常、IVAを有する電子デバイスの近傍に位置し、電子デバイス上のマイクロフォンは、口頭のコマンド又は質問を捕捉し得る。しかしながら、ユーザの周辺環境が、個人間の無関係な会話などの様々な干渉雑音を含み得る事例があり、これは、IVAを有する電子デバイスが口頭のコマンド又は質問を捕捉する方法に影響を及ぼし得る。ニアフィールド音とファーフィールド音の間の区別の欠如は、IVAが口頭のコマンド又は質問を正確に捕捉する方法に影響を及ぼす。
【0003】
ユーザの周辺環境はまた、複数の電子デバイス上で動作する複数のIVAを含むことができ、口頭のコマンド又は質問は、周辺環境を共有する複数のIVAの1つよりも多くによって捕捉可能である。現在、ユーザは、共有環境内の特定の電子デバイス上で動作する特定のIVAを識別してコマンド又は質問を向けることができるが、ユーザは、特定の電子デバイス上で動作する特定のIVAのための識別単語又は語句を覚えておく必要がある。識別単語又は語句は、周辺環境及びその内部で動作する複数のIVAに精通していない個人によって必ずしも知られているとは限らない場合がある。幾つかの事例において、IVAは、ユーザによる2つのIVA間の誤識別に起因して、周辺環境内の別のIVAに向けられた口頭のコマンドを誤って受信し得る。そのため、複数の部屋を有する環境内で複数のIVAが動作している場合、口頭のコマンドを誤って受信したIVAにて悪意ある個人が機密情報を盗み聞きする可能性があり、潜在的にセキュリティ違反を生じさせる。機密情報を盗み聞きすることに加えて、悪意ある個人は、口頭のコマンド又は質問によって、IVAを通じて機密情報にアクセスし得る。
【発明の概要】
【0004】
本発明に係る実施形態はまた、コマンド境界を利用してコマンドを管理するための方法、コンピュータプログラム製品及びコンピュータシステムを開示し、方法、コンピュータプログラム製品及びコンピュータシステムは、第1の電子デバイス上で動作する第1のインテリジェント仮想アシスタントのための第1のコマンド境界を確立し得る。方法、コンピュータプログラム製品及びコンピュータシステムは、第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、第1のコマンド境界内の複数のソースからの音声の部分を識別し得る。方法、コンピュータプログラム製品及びコンピュータシステムは、第1のコマンド境界内の複数のソースからの音声の部分においてコマンドが識別可能であると判定することに応答して、第1の電子デバイス上の第1のインテリジェント仮想アシスタントにコマンドを送信し得る。
【0005】
本発明に係る実施形態は、第2の電子デバイス上で動作する第2のインテリジェント仮想アシスタントのための第2のコマンド境界を確立することができ、ここで第1のコマンド境界は、第2のコマンド境界と重複しない。本発明に係る実施形態は、第1の電子デバイス上で動作する第1のインテリジェント仮想アシスタントのための第1のコマンド規則のセット、及び、第2の電子デバイス上で動作する第2のインテリジェント仮想アシスタントのための第2のコマンド規則のセットを確立し得る。
【0006】
本発明に係る実施形態は、個人情報についてコマンドを分析し得る。コマンドが個人情報に関連すると判定することに応答して、本発明に係る実施形態は、コマンドのための個人情報コマンド境界に基づき、第1の電子デバイス上の第1のインテリジェント仮想アシスタントに命令を送信し得る。本発明に係る実施形態は、第1の電子デバイス上の第1のインテリジェント仮想アシスタントによって実行可能なコマンドを分類し得る。分類に基づきコマンドが個人情報に関連すると判定することに応答して、本発明に係る実施形態は、コマンドのための個人情報コマンド境界を確立するようユーザにクエリを行うことができ、ここで第1の電子デバイス上の第1のインテリジェント仮想アシスタントに対する音量レベル応答は、個人情報コマンド境界に関連付けられている。
【0007】
本発明に係る実施形態は、個人情報に関連するコマンド及び個人情報に関連するコマンドの第2の部分を分類し、個人情報を含むもの、又は、第1の電子デバイス上の第1のインテリジェント仮想アシスタントによる個人情報を伴う聞き取り可能な応答を生じさせるものとして、コマンドを分類し得る。本発明に係る実施形態は、コマンドの第1の部分が個人情報を有するものとして分類され、コマンドが第1の電子デバイス上の第1のインテリジェント仮想アシスタントによる個人情報を伴う聞き取り可能な応答を生じさせることから、コマンドが個人情報に関連していると判定し得る。
【0008】
本発明に係る実施形態は、コマンド境界を利用してコマンドを管理するための方法、コンピュータプログラム製品及びコンピュータシステムを開示し、方法、コンピュータプログラム製品及びコンピュータシステムは、第1の電子デバイス上で動作するインテリジェント仮想アシスタントのためのニアフィールド半径を確立することができ、ここでニアフィールド半径は、ニアフィールド音声及びファーフィールド音声を分離するコマンド境界である。方法、コンピュータプログラム製品及びコンピュータシステムは、第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、ニアフィールド半径内の複数のソースからの音声の部分を識別し得る。方法、コンピュータプログラム製品及びコンピュータシステムは、ニアフィールド半径内の複数のソースからの音声の部分においてコマンドが識別可能であると判定することに応答して、インテリジェント仮想アシスタントにコマンドを実行するよう命令し得る。
【図面の簡単な説明】
【0009】
図1】本発明の一実施形態に係る、分散データ処理環境を示す機能ブロック図である。
【0010】
図2】本発明の一実施形態に係る、ニアフィールドコマンド境界を利用してインテリジェント仮想アシスタントコマンドを管理するためのコマンド境界プログラムのフローチャートを示す。
【0011】
図3】本発明の一実施形態に係る、共有環境内で動作する複数のインテリジェント仮想アシスタントのためのコマンド境界を利用してインテリジェント仮想アシスタントコマンドを管理するコマンド境界プログラムのフローチャートを示す。
【0012】
図4】本発明の一実施形態に係る、インテリジェント仮想アシスタントに向けられたコマンドを個人情報について分析するコマンド境界プログラムのフローチャートを示す。
【0013】
図5】本発明の一実施形態に係る、図1のサーバコンピュータなどのコンピュータシステムのコンポーネントのブロック図である。
【0014】
図6】本発明の一実施形態に係る、クラウドコンピューティング環境を示す。
【0015】
図7】本発明の一実施形態に係る、抽象化モデル層を示す。
【発明を実施するための形態】
【0016】
図1は、本発明の1つの実施形態に係る、全体として100と指定されている分散データ処理環境を示す機能ブロック図である。本明細書において使用される「分散」という用語は、単一のコンピュータシステムとして共に動作する複数の物理的に別個のデバイスを含むコンピュータシステムについて説明する。図1は、1つの実装形態の例示のみを提供しており、異なる実施形態が実装され得る環境に関していかなる限定も示唆しない。図示された環境に対する多くの修正が、特許請求の範囲によって列挙される本発明の範囲から逸脱することなく当業者により行われ得る。
【0017】
分散データ処理環境は、サーバコンピュータ102、クライアントデバイス104、拡張現実(AR)デバイス106、及びモノのインターネット(IoT)デバイス108を含み、これらは全て、ネットワーク110を介して相互接続されている。サーバコンピュータ102は、スタンドアロンコンピューティングデバイス、管理サーバ、ウェブサーバ、モバイルコンピューティングデバイス、又は、データを受信、送信、及び処理することができる任意の他の電子デバイス又はコンピューティングシステムであり得る。他の実施形態において、サーバコンピュータ102は、クラウドコンピューティング環境においてなど、複数のコンピュータをサーバシステムとして利用するサーバコンピューティングシステムを表し得る。別の実施形態において、サーバコンピュータ102は、ラップトップコンピュータ、タブレットコンピュータ、ネットブックコンピュータ、パーソナルコンピュータ(PC)、デスクトップコンピュータ、スマートフォン、又は、ネットワーク110を介して分散データ処理環境内のクライアントデバイス104、ARデバイス106、IoTデバイス108、及び他のコンピューティングデバイス(図示せず)と通信することができる任意のプログラマブル電子デバイスであり得る。別の実施形態において、サーバコンピュータ102は、分散データ処理環境内でアクセスされた場合にシームレスなリソースの単一のプールとして機能するクラスタ化されたコンピュータ及びコンポーネント(例えば、データベースサーバコンピュータ、アプリケーションサーバコンピュータ等)を利用するコンピューティングシステムを表す。サーバコンピュータ102は、コマンド境界プログラム112及びデータベース114を含む。サーバコンピュータ102は、図5に関して更に詳細に示され説明される通り、内部及び外部ハードウェアコンポーネントを含み得る。
【0018】
クライアントデバイス104は、ネットワーク110を介して分散データ処理環境内の様々なコンポーネント及びデバイス(例えば、サーバコンピュータ102、ARデバイス106、及びIoTデバイス108)と通信することができるラップトップコンピュータ、タブレットコンピュータ、スマートフォン、スマートウォッチ、スマートスピーカ、又は、任意のプログラマブル電子デバイスであり得る。クライアントデバイス104は、ウェアラブルコンピュータであり得る。ウェアラブルコンピュータは、保持者によって衣服の下、衣服と共に、又は衣服の上で、並びに、眼鏡、帽子、又は他のアクセサリ内で、又はこれらに接続されて、装着され得る小型電子デバイスである。ウェアラブルコンピュータは、単にハードウェアでコード化されたロジックに比べてより複雑な計算サポートを必要とするアプリケーションにおいてとりわけ有用である。概して、クライアントデバイス104は、機械可読プログラム命令を実行し、ネットワーク110などのネットワークを介して分散データ処理環境内の他のコンピューティングデバイス(図示せず)と通信することができる、1又は複数のプログラマブル電子デバイス、又はプログラマブル電子デバイスの組み合わせを表す。1つの実施形態において、クライアントデバイス104は、ユーザに関連付けられた1又は複数のデバイスを表す。クライアントデバイス104は、サーバコンピュータ102上のコマンド境界プログラム112と対話するためのユーザインタフェース122のインスタンスを含む。
【0019】
ARデバイス106は、ユーザにコンテンツを表示することができる超小型集積回路を有するユーザウェアラブル拡張現実デバイス(例えば、電子コンタクトレンズ、ウェアラブル電子ヘッドセット)を表す。ARデバイス106は、マイクロコントローラ116、ディスプレイ118、及びマイクロフォン120を含み、コマンド境界プログラム112は、1又は複数のIoTデバイス108による実行のために、ARデバイス106を装着しているユーザから口頭のコマンド又は質問を受信し得る。マイクロコントローラ116は、ディスプレイ118の表示制御回路、ネットワーク110を介して通信し、統合電源を管理するための通信及び電力変換回路、及びARデバイス106を装着しているユーザの眼球運動をモニタリングするためのセンサ読み出し及び制御回路を含み得る。ディスプレイ118は、ARデバイス106のユーザが、コマンド境界プログラム112からの様々な通知及びクエリを閲覧することを可能にする。ARデバイス106が電子コンタクトレンズである一例において、ディスプレイ118は、コンテンツを閲覧するためにARデバイス106に統合された半透明ディスプレイ及びマイクロレンズアレイである。ARデバイス106はまた、電力貯蔵モジュール、電力貯蔵モジュールを充電するための太陽電池モジュール、データ収集(例えば、眼球運動の追跡)のためのバイオセンサモジュール、及び、ネットワーク110を介してサーバコンピュータ102、クライアントデバイス104、及びIoTデバイス108と通信するための通信及び電力モジュールを含み得る。マイクロフォン120は、IoTデバイス108に向けられた口頭のコマンド又は質問を捕捉し、マイクロコントローラ116は、捕捉された口頭のコマンド又は質問を、サーバコンピュータ102上のコマンド境界プログラム112に伝送する。
【0020】
IoTデバイス108は、クライアントデバイス104及び/又はARデバイス106のユーザによって提供されたボイスコマンドを受信及び実行することができる、ネットワーク110に接続された電子デバイスを表す。各IoTデバイス108は、ユーザによって提供されたコマンド又は質問に基づきユーザのために様々なタスクを実行することができるソフトウェアエージェントを表す、インテリジェント仮想アシスタント(IVA)のインスタンスを含む。IoTデバイス108は、電気製品、ホームセキュリティシステム、健康モニタリングデバイス、工場設備、無線在庫トラッカ、生体認証セキュリティスキャナ、及び、インターネット(例えば、ネットワーク110)を介して他のデバイス及びシステムに接続し、これらとデータを交換するためのセンサ及びソフトウェアが埋め込まれた任意の他の電子デバイスを含み得るが、これらに限定されない。
【0021】
ネットワーク110は、例えば、電気通信ネットワーク、ローカルエリアネットワーク(LAN)、インターネットなどのワイドエリアネットワーク(WAN)、又はこれら3つの組み合わせであり得、有線、無線、又は光ファイバ接続を含み得る。ネットワーク110は、ボイス、データ、及び映像情報を含むマルチメディア信号を含む、データ、ボイス、及び/又は映像信号を受信及び伝送することができる1又は複数の有線及び/又は無線ネットワークを含み得る。概して、ネットワーク110は、分散データ処理環境内のサーバコンピュータ102、クライアントデバイス104、ARデバイス106、IoTデバイス108、及び他のコンピューティングデバイス(図示せず)の間の通信をサポートする接続及びプロトコルの任意の組み合わせであり得る。
【0022】
コマンド境界プログラム112は、コマンド境界を利用して共有環境内で動作するIoTデバイス108に向けられた口頭のコマンドを管理することができ、コマンド境界プログラム112の管理ユーザが、当該管理ユーザのプライバシーが維持されることを確実にするために、本明細書において説明される1又は複数の機能に同意することを可能にする。コマンド境界プログラム112は、各IoTデバイス108のためのニアフィールド半径を確立することにより、IoTデバイス108に向けられた口頭のコマンドを管理する。コマンド境界プログラム112は、IoTデバイス108の近傍内の複数のソースから音声を受信し、IoTデバイス108のニアフィールド半径内の複数のソースからの音声を識別する。コマンド境界プログラム112は、IoTデバイス108によって実行可能なコマンドについて、IoTデバイス108のニアフィールド半径内の複数のソースから識別された音声を分析する。コマンド境界プログラム112が、識別された音声が識別可能なコマンドを含んでいないと判定する場合、コマンド境界プログラム112は、クライアントデバイス104、ARデバイス106、及び/又はIoTデバイス108を介して、コマンドが識別不可能であることをユーザに通知する。コマンド境界プログラム112が、識別された音声が識別可能なコマンドを含んでいると判定する場合、コマンド境界プログラム112は、ARデバイス(例えば、ARデバイス106)がコマンドに関連付けられているかどうかを判定する。コマンド境界プログラム112が、ARデバイスがコマンドに関連付けられていないと判定する場合、コマンド境界プログラム112は、IoTデバイス108にコマンドを実行するよう命令する。コマンド境界プログラム112が、ARデバイスがコマンドに関連付けられている(すなわち、ARデバイス106)と判定する場合、コマンド境界プログラム112は、識別されたコマンドをARデバイス106内に表示し、ARデバイス106に関連付けられたユーザは、識別されたコマンドに対して修正を実行し得る。コマンド境界プログラム112が、識別されたコマンドに対する修正が受信されなかったと判定する場合、コマンド境界プログラム112は、IoTデバイス108にコマンドを実行するよう命令する。コマンド境界プログラム112が、識別されたコマンドに対する修正が受信されたと判定する場合、コマンド境界プログラム112は、IoTデバイス108に修正されたコマンドを実行するよう命令する。
【0023】
コマンド境界プログラム112はまた、各IoTデバイス108のための動作コマンド境界を確立することにより、コマンド境界を利用して、共有環境内で動作するIoTデバイス108に向けられた口頭のコマンドを管理し得る。コマンド境界プログラム112は、画定されたエリア内の複数のIoTデバイス108を識別し、複数のIoTデバイス108のそれぞれのための動作コマンド境界を確立して、意図しないIoTデバイス108がユーザによって提供された口頭のコマンド又は質問を誤って捕捉する可能性を低減する。コマンド境界プログラム112は更に、複数のIoTデバイス108のそれぞれのためのコマンド規則を確立し、無許可のユーザが複数のIoTデバイス108を介して情報を抽出することを試みる場合にセキュリティの完全性が維持されることを確実にする。コマンド境界プログラム112は、複数のIoTデバイス108の少なくとも1つによって実行可能なコマンドを伴う音声を受信し、個人情報について音声コマンドを分析する。コマンド境界プログラム112は、複数のIoTデバイス108のそれぞれに対する音声コマンドに関連付けられた音声ソースの距離を識別する。
【0024】
コマンド境界プログラム112が、音声ソースが特定のIoTデバイス108のコマンド境界内にないと判定する場合、コマンド境界プログラム112は、コマンドを伴う音声を無視する。コマンド境界プログラム112が、音声ソースが特定のIoTデバイス108のコマンド境界内にあると判定する場合、コマンド境界プログラム112は、音声ソースコマンド規則が満たされているかどうかを判定する。コマンド境界プログラム112が、音声ソースコマンド規則が満たされていないと判定する場合、コマンド境界プログラム112は、コマンドを伴う音声を無視する。コマンド境界プログラム112が、音声ソースコマンド規則が満たされていると判定する場合、コマンド境界プログラム112は、コマンド検出が無効化されているかどうかを判定する。コマンド境界プログラム112が、コマンド検出が無効化されていると判定する場合、コマンド境界プログラム112は、コマンドを伴う音声を無視する。コマンド境界プログラム112が、コマンド検出が有効化されていると判定する場合、コマンド境界プログラム112は、適切なIoTデバイス108にコマンドを送信する。
【0025】
コマンド境界プログラム112は、IoTデバイス108によって実行可能なコマンドを分類し、コマンドが個人情報に関連しているかどうかを判定することにより、個人情報についてコマンドを分析する。コマンド境界プログラム112が、コマンドが個人情報に関連していないと判定する場合、コマンド境界プログラム112は、複数のIoTデバイス108のそれぞれに対する音声ソースの距離を識別する。コマンド境界プログラム112が、コマンドが個人情報に関連していると判定する場合、コマンド境界プログラム112は、複数のIoTデバイス108によって実行可能なコマンドのための個人情報コマンド境界を確立するようユーザにクエリを行う。コマンド境界プログラム112は、複数のIoTデバイス108によって実行可能なコマンドのための個人情報コマンド境界を受信し、記憶する。
【0026】
データベース114は、フロアプラン(例えば、個人の住宅、製造フロア、倉庫フロア)、各IoTデバイス108のためのニアフィールド半径境界、各IoTデバイス108のための動作コマンド境界、各IoTデバイス108のための音声ソースコマンド規則、各IoTデバイス108のための個人情報コマンド境界、及び、IoTデバイス108に向けられた口頭のコマンドを管理するためにコマンド境界プログラム112が利用する任意の他のデータを含む様々なデータを記憶するレポジトリである。示された実施形態において、データベース114は、サーバコンピュータ102上に存在する。別の実施形態において、データベース114は、コマンド境界プログラム112がデータベース114へのアクセスを有するという条件のもと、クライアントデバイス104上又は分散データ処理環境内の他の場所に存在し得る。データベースは、データの整理された集合体であり、データベース114は、データベースサーバ、ハードディスクドライブ、又はフラッシュメモリなど、コマンド境界プログラム112によってアクセス及び利用され得るデータ及び構成ファイルを記憶することができる任意のタイプの記憶デバイスで実装され得る。
【0027】
ユーザインタフェース122は、ネットワーク110を介して、ユーザがサーバコンピュータ102、クライアントデバイス104、ARデバイス106、及びIoTデバイス108に要求を行う、又はコマンドを発行することを可能にする。ユーザインタフェース122はまた、ネットワーク110を介して、ユーザがクライアントデバイス104上で情報及び命令を応答して受信することを可能にする。1つの実施形態において、クライアントデバイス104のユーザは、自然言語におけるボイスコマンドを介してユーザインタフェース122にアクセスする。1つの実施形態において、ユーザインタフェース122は、グラフィカルユーザインタフェース(GUI)又はウェブユーザインタフェース(WUI)であり得、テキスト、文書、ウェブブラウザウィンドウ、ユーザオプション、アプリケーションインタフェース、及び動作のための命令を表示することができ、プログラムがユーザに提示する情報(グラフィック、テキスト、及び音など)、及びプログラムを制御するためにユーザが採用する制御シーケンスを含む。ユーザインタフェース122は、クライアントデバイス104のユーザが、サーバコンピュータ102上で動作するコマンド境界プログラム112と対話することを可能にする。
【0028】
図2は、本発明の一実施形態に係る、ニアフィールドコマンド境界を利用してインテリジェント仮想アシスタントコマンドを管理するためのコマンド境界プログラムのフローチャートを示す。
【0029】
コマンド境界プログラム112は、IoTデバイスのためのニアフィールド半径を確立する(202)。コマンド境界プログラム112は、ニアフィールド音声及びファーフィールド音声を区別することができ、コマンド境界プログラム112は、IoTデバイスによって実行可能なコマンドを識別する場合に、ニアフィールド音声半径内で受信されたボイスコマンドを処理する。コマンド境界プログラム112は、関連付けられたクライアントデバイス及び/又はARデバイスを通じて管理ユーザにクエリを行うことにより、IoTデバイスのためのニアフィールド半径を確立し得る。代替的に、コマンド境界プログラム112は、ニアフィールド音声及びファーフィールド音声を分離する所定の半径(すなわち、境界)を利用することができ、所定の半径の範囲内で捕捉された音声はニアフィールド音声であり、所定の半径の範囲外で捕捉された音声はファーフィールド音声である。管理ユーザにクエリを行うことによりニアフィールド半径を確立するために、コマンド境界プログラム112は、管理ユーザに関連付けられたクライアントデバイス及び/又はARデバイスに、ニアフィールド音声及びファーフィールド音声を分離する半径(例えば、10フィート(3.05メートル)、3.5メートル)を入力する要求を送信し得る。ARデバイスを利用してニアフィールド半径を入力する場合、コマンド境界プログラム112は、IoTデバイスのためのニアフィールド半径を確立するために、所望のフィールド半径に沿ってサンプルコマンドを提供するようユーザに命令することにより、IoTデバイスを訓練し得る。コマンド境界プログラム112は、IoTデバイスの訓練中に提供されたサンプルコマンドを利用して、IoTデバイスによって受信された将来のコマンドを比較し、将来のコマンドのどれがIoTデバイスのニアフィールド半径内に位置しているかを識別し得る。
【0030】
コマンド境界プログラム112は、IoTデバイスの近傍内の複数のソースから音声を受信する(204)。IoTデバイスのためのニアフィールド半径を確立することに続き、IoTデバイス上のマイクロフォンは、IoTデバイスを起動して近傍内の音声を捕捉するための、トリガワードとも称されるウェイクワードを捕捉する。IoTデバイスは、所定の継続時間(例えば、30秒間)において、又は音声レベル(例えば、デシベル測定値)が所定の閾値を上回る継続時間において、音声を捕捉し得る。IoTデバイスにより捕捉された音声は、近傍内の複数のソースからのものであり得、複数のソースは、複数の会話に参加する様々な個人、及び、周辺環境に存在し得る任意の周囲雑音(例えば、建設、音楽、車両)を含み得る。IoTデバイスは、近傍内の複数のソースから音声を捕捉し、捕捉された音声をコマンド境界プログラム112に送信する。
【0031】
コマンド境界プログラム112は、IoTデバイスのニアフィールド半径内の複数のソースからの音声を識別する(206)。コマンド境界プログラム112は、複数のソースから受信された音声を解析し、信号処理を通じてIoTデバイスによって捕捉された可能性のある周辺環境からの任意の周囲雑音を取り除く。続いて、コマンド境界プログラム112は、音声レベル(例えば、平均デシベル測定値)、音響的手掛かり(例えば、音の周波数)、及び発話の鮮明さ(例えば、デシベル測定値のピーク)を活用することにより、ニアフィールド音声及びファーフィールド音声を識別する。幾つかの実施形態において、コマンド境界プログラム112は、IoTデバイスの近傍に位置するARデバイスから受信されたデータを活用して、ニアフィールド半径の範囲内に位置する音声を識別することができる。例えば、コマンド境界プログラム112は、ARデバイスのそれぞれがIoTデバイスと共有されたローカルネットワークに接続する場合に、IoTデバイスの近傍内で動作するARデバイスを識別し得る。コマンド境界プログラム112は、識別されたARデバイスの位置情報を利用して、ARデバイスのいずれかがIoTデバイスのニアフィールド半径内に位置しているかどうかを判定する。更に、コマンド境界プログラム112は、IoTデバイスのニアフィールド半径内に位置するARデバイスの部分にクエリを行い、ARデバイスの部分のそれぞれのマイクロフォンが、コマンド境界プログラム112が(204)において以前に受信した音声を捕捉したかどうかを判定し得る。
【0032】
コマンド境界プログラム112は、IoTデバイスによって実行可能なコマンドについて、IoTデバイスのニアフィールド半径内の複数のソースからの識別された音声を分析する(208)。コマンド境界プログラム112は、IoTデバイスのニアフィールド半径内で識別された音声を解析して、IoTデバイスによって実行可能なコマンドを識別し、コマンドは、IoTデバイスが動作を実行するための質問又は命令であり得る。コマンド境界プログラム112は、自然言語処理(NLP)を利用して、IoTデバイスによって実行可能なコマンドを識別する。コマンド境界プログラム112は、コマンドが識別可能であるかどうかを判定する(決定210)。コマンド境界プログラム112が、コマンドが識別不可能であると判定する場合(「いいえ」の分岐、決定210)、コマンド境界プログラム112は、コマンドが識別不可能であるとユーザに通知する(214)。コマンド境界プログラム112が、コマンドが識別可能であると判定する場合(「はい」の分岐、決定210)、コマンド境界プログラム112は、ARデバイスがコマンドに関連付けられているかどうかを判定する(決定216)。
【0033】
コマンド境界プログラム112は、コマンドが識別不可能であるとユーザに通知する(214)。本実施形態において、コマンド境界プログラム112は、コマンドが識別不可能であるとの聞き取り可能な応答を用いて応答するようIoTデバイスに命令する。コマンド境界プログラム112はまた、個人が識別可能なコマンドを提供することを支援するために、聞き取り可能な応答において1又は複数の推奨を提供し得る。1つの例において、コマンド境界プログラム112は、ウェイクワード及びコマンドの組み合わせを提供する前に、IoTデバイスのより近くに移動するよう個人に命令する推奨を提供する。別の例において、コマンド境界プログラム112は、IoT半径に対するニアフィールド半径を拡大するよう個人に命令する推奨を提供する。別の実施形態において、コマンド境界プログラム112は、IoTデバイスのニアフィールド半径における音声に関連付けられたクライアントデバイス及び/又はARデバイスに通知を送信することにより、コマンドが識別不可能であるとユーザに通知する。
【0034】
コマンド境界プログラム112は、ARデバイスがコマンドに関連付けられているかどうかを判定する(決定216)。前述の通り、コマンド境界プログラム112は、IoTデバイスの近傍に位置するARデバイスから受信されたデータを活用して、ニアフィールド半径の範囲内に位置する音声を識別することができる。コマンド境界プログラム112が、ARデバイスがコマンドに関連付けられていると判定する場合(「はい」の分岐、決定216)、コマンド境界プログラム112は、コマンドをARデバイス内に表示する(218)。コマンド境界プログラム112が、ARデバイスがコマンドに関連付けられていないと判定する場合(「いいえ」の分岐、決定216)、コマンド境界プログラム112は、IoTデバイスにコマンドを実行するよう命令する。
【0035】
コマンド境界プログラム112は、コマンドをARデバイス内に表示する(218)。コマンド境界プログラム112は、IoTデバイスに向けられたコマンドを、当該コマンドに関連付けられたARデバイス内に表示し、ユーザがコマンド及び任意のサブコマンドに修正を提供することを可能にする。1つの実施形態において、コマンド境界プログラム112は、単語をIoTデバイスに対するウェイクワード又はフレーズと結び付けることにより、コマンドを以前に識別した。コマンド境界プログラム112は、ビジュアルインジケータを用いて、部分的にコマンド(すなわち、サブコマンド)をARデバイス内に表示する。サブコマンドに対する第1の一意のインジケータ(すなわち、色、フォント、強調表示)は、IoTデバイスが実行すべき現在のコマンド、及び、IoTデバイスが続いて実行すべきキュー内の別のサブコマンドに対する第2の一意のインジケータを提示し得る。コマンド境界プログラム112は、各サブコマンドをユーザが修正することを可能にし、IoTデバイスが識別されたコマンドの各サブコマンドを実行すべき順序をユーザが修正することを可能にする。
【0036】
1つの例において、コマンド境界プログラム112は、「AB、リビングルームの照明を消して、廊下の照明を点けて」と述べる、IoTデバイスのニアフィールド半径内に位置する関連付けられたARデバイスを有する個人からのコマンドを識別する。コマンド境界プログラム112は、識別されたコマンドを、当該コマンドに関連付けられたARデバイス内に表示し、第1のインジケータは、ウェイクワードとして「AB」を強調表示し、第2のインジケータは、第1のサブコマンドとして「リビングルームの照明を消して」を強調表示し、第3のインジケータは、第2のサブコマンドとして「廊下の照明を点けて」を強調表示する。代替的に、コマンド境界プログラム112は、識別されたコマンドを、当該コマンドに関連付けられたARデバイス内に表示し、第1のインジケータ(例えば、緑のフォント色)は、第1のサブコマンドとして「リビングルームの照明を消して」を強調表示し、第2のインジケータ(例えば、赤のフォント色)は、第2のサブコマンドとして「廊下の照明を点けて」を強調表示し、第1のサブコマンドは、第2のサブコマンドに先立ちIoTデバイスによって実行されることになる。コマンド境界プログラム112は、ユーザが、第1のサブコマンド及び第2のサブコマンドのインジケータを変更することにより、IoTデバイスが実行するサブコマンドの順序を修正することを可能にする。修正の結果、第1のインジケータは、第1のサブコマンドとして「廊下の照明を点けて」を強調表示し、第2のインジケータは、「リビングルームの照明を消して」を強調表示する。コマンド境界プログラム112は、識別されたコマンドに関連付けられたARデバイスのユーザによって提供された聞き取り可能な命令を介して、サブコマンドに対する任意の修正を受け入れ得る。代替的に、コマンド境界プログラム112は、識別されたコマンドに関連付けられたARデバイスとペアリングされたクライアントデバイス(例えば、携帯電話)上の物理的入力を介して、サブコマンドに対する任意の修正を受け入れ得る。
【0037】
別の例において、コマンド境界プログラム112は、「AB、アラームをセットして…そして、正午に私のマネージャに連絡するよう私にリマインドして」と述べる、IoTデバイスのニアフィールド半径内に位置する関連付けられたARデバイスを有する個人からのコマンドを識別する。コマンド境界プログラム112は、第1のサブコマンドとして「正午に私のマネージャに連絡するよう私にリマインドして」を強調表示する第1のインジケータを用いて、識別されたコマンドをARデバイス内に表示する。しかしながら、コマンド境界プログラム112は、「アラームをセットして…」の第2のサブコマンドを完全に捕捉することができず、識別されたコマンドをARデバイス内に表示することにより、ユーザは、第2のサブコマンドの任意の欠落部分を含めるようにコマンドを修正し得る。コマンド境界プログラム112は、第2のサブコマンドをその全体として反復し(例えば、「アラームを午前11時55分にセットして」)、第2のインジケータを第2のサブコマンドに割り当てることにより、第2のサブコマンドに対する修正を受け入れ得る。コマンド境界プログラム112は、ユーザが、識別されたコマンドの第1のサブコマンド及び第2のサブコマンドの順序を後に変更することを可能にする。
【0038】
コマンド境界プログラム112は、コマンドの修正が受信されたかどうかを判定する(決定220)。コマンド境界プログラム112が、修正が受信されたと判定する場合(「はい」の分岐、決定220)、コマンド境界プログラム112は、修正されたコマンドを実行するようIoTデバイスに命令する(222)。コマンド境界プログラム112が、修正が受信されなかったと判定する場合(「いいえ」の分岐、決定220)、コマンド境界プログラム112は、コマンドを実行するようIoTデバイスに命令する(224)。
【0039】
図3は、本発明の一実施形態に係る、共有環境内で動作する複数のインテリジェント仮想アシスタントのためのコマンド境界を利用してインテリジェント仮想アシスタントコマンドを管理するコマンド境界プログラムのフローチャートを示す。
【0040】
コマンド境界プログラム112は、画定されたエリア内の複数のIoTデバイスを識別する(302)。コマンド境界プログラム112は、各IoTデバイスがローカルネットワークに接続すると、画定されたエリア内の複数のIoTデバイスを識別する。1つの例において、複数のIoTデバイス上で動作する複数のIVAは、個人宅内のローカルネットワークに接続され、コマンド境界プログラム112は、複数のIoTデバイスが個人宅内のローカルネットワークに接続すると、それらのそれぞれを識別する。別の例において、複数のIoTデバイス上で動作する複数のIVAは、オフィス環境内のローカルネットワークに接続され、コマンド境界プログラム112は、複数のIoTデバイスがオフィス環境内のローカルネットワークに接続すると、それらのそれぞれを識別する。コマンド境界プログラム112は、複数のIoTデバイスのそれぞれに対し、複数のIoTデバイスのうちのIoTデバイスが聞き取り可能なコマンドを捕捉できるかどうかを判定するための音声捕捉テストを実行するよう命令する能力を有する。例えば、コマンド境界プログラム112は、ローカルネットワークに接続された第1のIoTデバイスに対し、判定された周波数で一意の音声を生成するよう命令し、残りのIoTデバイスは、判定された周波数で一意の音声を聞き取るよう命令される。一意の音声が残りのIoTデバイスのうち少なくとも1つのIoTデバイスによって捕捉される場合、コマンド境界プログラム112は、一意の音声を生成するIoTデバイス及び一意の音声を捕捉した少なくとも1つのIoTデバイスが動作コマンドエリアを共有していると判定する。動作コマンドエリアは、ユーザが生成した聞き取り可能なコマンドが、IoTデバイスによって捕捉可能である、この場合は少なくとも2つのIoTデバイスによって捕捉可能であるエリアを表す。コマンド境界プログラム112は、複数のIoTデバイスのどのコマンド境界が互いに重複しているかを判定するために、各IoTデバイスに対する音声捕捉テストを実行し得る。
【0041】
コマンド境界プログラム112は、複数のIoTデバイスのそれぞれのために動作コマンド境界を確立する(304)。本実施形態において、コマンド境界プログラム112は、複数のIoTデバイスのそれぞれのために動作コマンド境界を確立するよう、管理ユーザにクエリを行う。管理ユーザは、複数のIoTデバイスのそれぞれを取り囲む半径(例えば、10フィート(3.05メートル)、3.5メートル)として各動作コマンド境界を確立する能力を有する。コマンド境界プログラム112は、管理ユーザに関連付けられたARデバイス又はクライアントデバイス上のユーザ入力又は口頭のコマンドを介して、複数のIoTデバイスのそれぞれのための動作コマンド境界を受信し得る。別の実施形態において、コマンド境界プログラム112は、複数のIoTデバイス上で実行された追加の音声捕捉テストに基づき、複数のIoTデバイスのそれぞれのための動作コマンド境界を確立する。コマンド境界プログラム112は、各IoTデバイスに対し、複数のIoTデバイスのうち残りのIoTデバイスのどれが様々な音量レベルで一意の音声を捕捉するかを判定するために、様々な音量レベルで一意の音声を生成するよう命令し得る。例えば、第1のIoTデバイスは、5つの様々な音声レベルで一意の音声を生成し、第2のIoTデバイスは、5つの様々な音声レベルの最大音量で一意の音声を捕捉する。コマンド境界プログラム112は、5つの様々な音声レベルのそれぞれのための所定の音声捕捉距離を利用して、第1のIoTデバイスによって生成された最大音量で一意の音声を捕捉する第2のIoTデバイスに基づき、第1のIoTデバイス及び第2のIoTデバイスの間の距離を判定する。所定の距離に基づき、コマンド境界プログラム112は、第1のIoTデバイスのための動作コマンド境界を確立し、第1のIoTデバイスのための動作コマンド境界の半径は、最大音量で捕捉された一意の音声に対する所定の距離よりも小さい。コマンド境界プログラム112は、動作コマンド境界のそれぞれを確立するために、複数のデバイスのそれぞれについて様々な音量レベルで一意の音声を実行する。
【0042】
コマンド境界プログラム112は、複数のIoTデバイスのそれぞれのためにコマンド規則を確立する(306)。コマンド境界プログラム112は、ユーザが提供した制約に基づき、複数のIoTデバイスのそれぞれのためにコマンド規則を確立し得る。代替的に、コマンド境界プログラム112は、各IoTデバイスに対するコマンドパターンを学習し、学習されたコマンドパターンに基づき、各IoTデバイスのためのコマンド規則を確立する能力を有する。1つの例において、コマンド規則は、ユーザの確立された発声パターンの1又は複数、及び/又はコマンドを提供するユーザに関連付けられた1又は複数のデバイス(例えば、クライアントデバイス、ARデバイス)に基づき、どの個人が各IoTデバイス上で動作する各IAVと対話し得るかを示す。別の例において、コマンド規則は、ユーザが動作コマンド境界の外側に位置する場合に、ユーザがIoTデバイスにコマンドを提供し得るかどうかを示す。ユーザがIoTデバイスの動作コマンド境界の外側に位置し、中間デバイス(例えば、クライアントデバイス、ARデバイス)を介してIoTデバイスにコマンドを提供している場合、コマンド境界プログラム112は、セキュリティ上の理由によりコマンドを無視し得る。ユーザがIoTデバイスの動作コマンド境界内に位置し、中間デバイス(例えば、クライアントデバイス、ARデバイス)を介してIoTデバイスにコマンドを提供している場合、コマンド境界プログラム112は、コマンドを受け入れる。
【0043】
コマンド境界プログラム112は、IoTデバイスによって実行可能なコマンドを伴う音声を受信する(308)。コマンド境界プログラム112は、共有環境内で動作する複数のIoTデバイスの1つから、IoTデバイスによって実行可能なコマンドを伴う音声を受信する。コマンド境界プログラム112は、個人情報についてコマンドを分析する(310)。コマンド境界プログラム112は、個人情報についてコマンドを伴う受信された音声を分析し、セキュリティの完全性を確実にするために動作が必要とされるかどうかを判定する。コマンド境界プログラム112による、個人情報についてコマンドを分析することは、図4に関して更に詳細に論述される。
【0044】
コマンド境界プログラム112は、複数のIoTデバイスのそれぞれに対する音声ソースの距離を識別する(312)。1つの実施形態において、コマンド境界プログラム112は、コマンドを伴う音声が受信された時点における複数のIoTデバイスの捕捉された音声レベルを利用して、複数のIoTデバイスのそれぞれに対する音声ソースの距離を判定する能力を有する。コマンド境界プログラム112はまた、コマンドを伴う音声が受信された時点における複数のIoTデバイスの音声レベルを、(304)において様々な音量レベルで複数のIoTデバイス上で実行された追加の音声捕捉テストの結果と比較し得る。別の実施形態において、コマンド境界プログラム112は、コマンドを伴う受信された音声がARデバイスに関連付けられていると判定し、コマンド境界プログラム112は、位置情報についてARデバイスにクエリを行う。コマンド境界プログラム112は、ARデバイスの受信された位置情報及び共有環境内の複数のIoTデバイスのそれぞれの既知の位置を利用して、複数のIoTデバイスのそれぞれに対する音声ソースの距離を識別する。
【0045】
コマンド境界プログラム112は、音声ソースがIoTデバイスのコマンド境界内に位置するかどうかを判定する(決定314)。コマンド境界プログラム112が、音声ソースがIoTデバイスのコマンド境界内に位置していると判定する場合(「はい」の分岐、決定314)、コマンド境界プログラム112は、音声ソースコマンド規則が満たされているかどうかを判定する(決定316)。コマンド境界プログラム112が、音声ソースがIoTデバイスのコマンド境界内に位置していないと判定する場合(「いいえ」の分岐、決定314)、コマンド境界プログラム112は、コマンドを伴う音声を無視する(322)。複数のIoTデバイスのうち少なくとも1つのIoTデバイスがコマンドを伴う音声を捕捉できた場合でも、音声ソースが複数のIoTデバイスの動作境界の外側に位置していたため、コマンド境界プログラム112は、コマンドを伴う音声を無視する。
【0046】
コマンド境界プログラム112は、音声ソースコマンド規則が満たされているかどうかを判定する(決定316)。コマンド境界プログラム112が、音声ソースコマンド規則が満たされていると判定する場合(「はい」の分岐、決定316)、コマンド境界プログラム112は、コマンド検出が有効化されているかどうかを判定する(決定318)。コマンド境界プログラム112が、音声ソースコマンド規則が満たされていないと判定する場合(「いいえ」の分岐、決定316)、コマンド境界プログラム112は、コマンドを伴う音声を無視する(決定322)。
【0047】
コマンド境界プログラム112は、コマンド検出が有効化されているかどうかを判定する(決定318)。コマンド境界プログラム112は、管理ユーザが複数のIoTデバイスのコマンド検出を一時的に無効化することを可能にし、複数のIoTデバイスに対するウェイクワードは、一時的に(例えば、1時間)無効化される。コマンド境界プログラム112が、コマンド検出が有効化されていると判定する場合(「はい」の分岐、決定318)、コマンド境界プログラム112は、適切なIoTデバイスにコマンドを送信する(320)。コマンド境界プログラム112が、コマンド検出が有効化されていないと判定する場合(「いいえ」の分岐、決定318)、コマンド境界プログラム112は、コマンドを伴う音声を無視する(決定322)。
【0048】
コマンド境界プログラム112は、適切なIoTデバイスにコマンドを送信する(320)。本実施形態において、コマンドが個人情報に関連している場合、コマンド境界プログラム112は、セキュリティの完全性を確実にするための動作のコマンド及び命令を適切なIoTデバイスに送信する。適切なIoTデバイスは、その複数のIoTデバイスのうち以前に識別されたIoTデバイスを表し、これは、対応するコマンド境界内に位置する音声ソースを含む。1つの例において、命令は、適切なIoTデバイス上で動作するIVAが、個人情報に関連するコマンドに応答する場合に特定の音量レベルを利用することを含み得、特定の音量レベルは、ユーザによって以前に確立された動作音量レベルよりも低い。IoTデバイス上のIVAによる聞き取り可能な応答の特定の音量レベルは、IoTデバイスための個人情報コマンド境界に関連付けられており、個人情報コマンド境界は、個人情報コマンド境界の外側にいる個人がIoTデバイス上のIVAによる聞き取り可能な応答を聞くことができないよう、応答の音量レベルが十分に低いことを確実にする。別の例において、命令は、適切なIoTデバイス上で動作するIVAが、管理ユーザに関連付けられたクライアントデバイス及び/又はARデバイスにテキスト応答を送信することを含み得る。更に別の例において、命令は、適切なIoTデバイス上で動作するIVAが、IoTデバイスによって実行可能なコマンドを伴う受信された音声に関連付けられたクライアントデバイス及び/又はARデバイスにテキスト応答を送信することを含み得る。
【0049】
図4は、本発明の一実施形態に係る、インテリジェント仮想アシスタントに向けられたコマンドを個人情報について分析するコマンド境界プログラムのフローチャートを示す。
【0050】
コマンド境界プログラム112は、IoTデバイスによって実行可能なコマンドを分類する(402)。コマンド境界プログラム112は、ユーザフィードバックベースの反復訓練モデルを利用して、IoTデバイスによって実行可能なコマンドを識別及び分類し得る。コマンド境界プログラム112は、自然言語処理を利用して、コマンドの部分を、個人情報を含むもの、又は個人情報を含まないものとして分類し、個人情報を含むコマンドの部分を識別する。1つの例において、コマンド境界プログラム112は、「AB、末尾が~1234の私のクレジットカードについてクレジットカード会社に電話してください」と述べるコマンドを受信し、「末尾が~1234の私のクレジットカード」の部分を、個人情報を含むものとして分類する。別の例において、コマンド境界プログラム112は、「AB、C社からの我々の前回の出荷のために利用された口座番号は何でしたか?」と述べるコマンドを受信し、コマンドのいかなる部分も個人情報を含むものとして分類しない。コマンドは「口座番号」という単語を含むものの、コマンド内にはいかなる「番号」も含まれていない。コマンド境界プログラム112はまた、IoTデバイスによって実行可能なコマンドを、個人情報を含むもの、又は個人情報を伴う聞き取り可能な応答を生じさせるものとして分類する。コマンド境界プログラム112が、「AB、末尾が~1234の私のクレジットカードについてクレジットカード会社に電話してください」と述べるコマンドを受信する前述の例から、コマンド境界プログラム112は、当該コマンドを、個人情報を含む、IoTデバイスによって実行可能なコマンドとして分類する。コマンド境界プログラム112が、「AB、C社からの我々の前回の出荷のために利用された口座番号は何でしたか?」と述べるコマンドを受信する前述の例から、コマンド境界プログラム112は、当該コマンドを、個人情報を伴う聞き取り可能な応答を生じさせるコマンドとして分類する。
【0051】
コマンド境界プログラム112は、コマンドが個人情報に関連しているかどうかを判定する(決定404)。コマンドの少なくとも部分が個人情報を有するものとして分類される場合、及び、コマンドが個人情報を伴う聞き取り可能な応答を生じさせる場合に、コマンドは個人情報に関連している。コマンド境界プログラム112が、コマンドが個人情報に関連していると判定する場合(「はい」の分岐、決定404)、コマンド境界プログラム112は、IoTデバイスによって実行可能なコマンドのための個人情報コマンド境界を確立するようユーザにクエリを行う(406)。コマンド境界プログラム112が、コマンドが個人情報に関連していないと判定する場合(「いいえ」の分岐、決定404)、コマンド境界プログラム112は、複数のIoTデバイスのそれぞれに対する音声ソースの距離の識別に進む(図3、312)。
【0052】
コマンド境界プログラム112は、IoTデバイスによって実行可能なコマンドのための個人情報コマンド境界を確立するようユーザにクエリを行う(406)。本実施形態において、コマンド境界プログラム112は、個人情報に関連するコマンドに応答する場合に特定の音量レベルに関連付けられた個人情報コマンド境界を確立するよう管理ユーザにクエリを行い、特定の音量レベルは、ユーザによって以前に確立された動作音量レベルよりも低い。コマンド境界プログラム112は、図3の(304)においてコマンド境界プログラム112が複数のデバイスのそれぞれために動作コマンド境界を確立する方法と同様に、ユーザから個人情報コマンド境界を受信する。個人情報コマンド境界の半径は、IoTデバイスのための動作コマンド境界の半径よりも小さい。コマンド境界プログラム112が、ユーザから個人情報コマンド境界を受信しない場合、又は、コマンド境界プログラム112が、個人情報コマンド境界について受信された半径が所定のレベルを上回っていると判定する場合、コマンド境界プログラム112は、個人情報コマンド境界の所定のレベルを上回る半径に伴う潜在的なセキュリティ問題について警告する追加の通知を送信する。
【0053】
コマンド境界プログラム112は、IoTデバイスによって実行可能なコマンドのための個人情報コマンド境界を記憶する(408)。コマンド境界プログラム112は、IoTデバイスによって実行可能なコマンドのための個人情報コマンド境界を記憶し、適切なIoTデバイスに対し、コマンドと共に、個人情報コマンド境界を命令として送信する。適切なIoTデバイスは、特定の音量レベルでコマンドに対する聞き取り可能な応答を提供する場合に、個人情報コマンド境界を利用する。
【0054】
図5はコンピュータシステム500を示し、サーバコンピュータ102は、コマンド境界プログラム112を含むコンピュータシステム500の一例である。コンピュータシステムは、プロセッサ504、キャッシュ516、メモリ506、永続的ストレージ508、通信ユニット510、入力/出力(I/O)インタフェース512及び通信ファブリック502を含む。通信ファブリック502は、キャッシュ516、メモリ506、永続的ストレージ508、通信ユニット510、及び入力/出力(I/O)インタフェース512の間の通信を提供する。通信ファブリック502は、プロセッサ(マイクロプロセッサ、通信及びネットワークプロセッサ等など)、システムメモリ、周辺デバイス、及びシステム内の任意の他のハードウェアコンポーネントの間で、データ及び/又は制御情報の受け渡しを行うように設計された任意のアーキテクチャを用いて実装され得る。例えば、通信ファブリック502は、1又は複数のバス又はクロスバースイッチを用いて実装され得る。
【0055】
メモリ506及び永続的ストレージ508は、コンピュータ可読記憶媒体である。本実施形態において、メモリ506はランダムアクセスメモリ(RAM)を含む。概して、メモリ506は、任意の好適な揮発性又は不揮発性のコンピュータ可読記憶媒体を含み得る。キャッシュ516は、メモリ506から、最近アクセスされたデータ、及び最近アクセスされたデータに近接するデータを保持することにより、プロセッサ504の性能を強化する高速メモリである。
【0056】
本発明の実施形態を実践するために使用されるプログラム命令及びデータは、キャッシュ516を介した、それぞれのプロセッサ504の1又は複数による実行のために、永続的ストレージ508及びメモリ506に記憶され得る。一実施形態において、永続的ストレージ508は磁気ハードディスクドライブを含む。磁気ハードディスクドライブの代替として、又はこれに加えて、永続的ストレージ508は、ソリッドステートハードドライブ、半導体記憶デバイス、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM)、フラッシュメモリ、又は、プログラム命令又はデジタル情報を記憶できる任意の他のコンピュータ可読記憶媒体を含み得る。
【0057】
永続的ストレージ508によって使用される媒体はまた、着脱可能であり得る。例えば、着脱可能なハードドライブが永続的ストレージ508に使用され得る。他の例は、永続的ストレージ508の一部でもある別のコンピュータ可読記憶媒体上に転送するためにドライブに挿入される光ディスク及び磁気ディスク、サムドライブ、及びスマートカードを含む。
【0058】
通信ユニット510は、これらの例において、他のデータ処理システム又はデバイスとの通信を提供する。これらの例において、通信ユニット510は、1又は複数のネットワークインタフェースカードを含む。通信ユニット510は、物理通信リンク及び無線通信リンクのいずれか又は両方の使用を通じて通信を提供し得る。本発明の実施形態を実践するために使用されるプログラム命令及びデータは、通信ユニット510を通して、永続的ストレージ508にダウンロードされ得る。
【0059】
I/Oインタフェース512は、各コンピュータシステムに接続され得る他のデバイスとのデータの入力及び出力を可能にする。例えば、I/Oインタフェース512は、キーボード、キーパッド、タッチスクリーン及び/又は何らかの他の好適な入力デバイスなどの外部デバイス518への接続を提供し得る。外部デバイス518は、例えば、サムドライブ、ポータブル光ディスク又は磁気ディスク及びメモリカードなど、ポータブルコンピュータ可読記憶媒体をも含み得る。本発明の実施形態を実践するために使用されるソフトウェア及びデータは、そのようなポータブルコンピュータ可読記憶媒体上に記憶されてよく、I/Oインタフェース512を介して永続的ストレージ508上にロードされてよい。I/Oインタフェース512はまた、ディスプレイ520に接続する。
【0060】
ディスプレイ520は、データをユーザに対して表示するメカニズムを提供し、例えば、コンピュータモニタであり得る。
【0061】
本明細書において説明されるプログラムは、本発明の具体的な実施形態においてそれらが実装される用途に基づき識別される。しかしながら、本明細書における任意の特定のプログラム名称は、単に便宜上の目的で使用されており、従って、本発明は、そのような名称によって識別及び/又は示唆される任意の特定の用途のみにおいて使用することに限定されるべきでないことが理解されるべきである。
【0062】
本発明は、統合のあらゆる可能な技術詳細レベルにおけるシステム、方法、及び/又はコンピュータプログラム製品であり得る。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体(又は複数の媒体)を含み得る。
【0063】
コンピュータ可読記憶媒体は、命令実行デバイスによって使用するための命令を保持及び記憶し得る有形デバイスであり得る。コンピュータ可読記憶媒体は、例えば、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、又は上述したものの任意の好適な組み合わせであり得るが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例の非包括的なリストは、以下、すなわち、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピディスク、パンチカード又は命令が記録された溝内の隆起構造などの機械的にエンコードされたデバイス、及び上述したものの任意の好適な組み合わせを含む。本明細書において使用されるコンピュータ可読記憶媒体は、電波又は他の自由に伝搬する電磁波、導波路又は他の伝送媒体を通じて伝搬する電磁波(例えば、光ファイバケーブルを通過する光パルス)、又はワイヤを通じて伝送される電気信号などの一時的信号自体であると解釈されるべきではない。
【0064】
本明細書において説明されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から、それぞれのコンピューティング/処理デバイスに、又は、ネットワーク、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク及び/又は無線ネットワークを介して、外部コンピュータ又は外部記憶デバイスに、ダウンロードされ得る。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ及び/又はエッジサーバを備え得る。各コンピューティング/処理デバイス内のネットワークアダプタカード又はネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、コンピュータ可読プログラム命令を、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に記憶するために転送する。
【0065】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の構成データであり得、又は、Smalltalk(登録商標)又はC++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語のような手続き型プログラミング言語を含む1又は複数のプログラミング言語の任意の組み合わせで書き込まれたソースコード又はオブジェクトコードのいずれかであり得る。コンピュータ可読プログラム命令は、スタンドアロンソフトウェアパッケージとして、ユーザのコンピュータ上で全体を実行すること、ユーザのコンピュータ上で一部分を実行することができ、ユーザのコンピュータ上で一部分を、リモートコンピュータ上で一部分を実行すること、又は、リモートコンピュータ又はサーバ上で全体を実行することができる。後者のシナリオでは、リモートコンピュータが、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されてよく、又はその接続が、(例えば、インターネットサービスプロバイダを用いたインターネットを介して)外部コンピュータに対して行われてよい。幾つかの実施形態において、例えば、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)、又はプログラマブルロジックアレイ(PLA)を含む電子回路は、本発明の態様を実行するために、コンピュータ可読プログラム命令の状態情報を利用することによってコンピュータ可読プログラム命令を実行して、電子回路をパーソナライズし得る。
【0066】
本発明の態様は、本明細書において、本発明の実施形態に係る方法、装置(システム)、及びコンピュータプログラム製品のフローチャート図及び/又はブロック図を参照して説明されている。フローチャート図及び/又はブロック図の各々のブロック、及び、フローチャート図及び/又はブロック図におけるブロックの組み合わせが、コンピュータ可読プログラム命令によって実装され得ることが理解されよう。
【0067】
これらのコンピュータ可読プログラム命令は、コンピュータ、又は他のプログラマブルデータ処理装置のプロセッサに提供されてマシンを生成することができ、それにより、コンピュータ又は他のプログラマブルデータ処理装置のプロセッサを介して実行される命令が、フローチャート及び/又はブロック図の1又は複数のブロックで指定された機能/動作を実装するための手段を作成する。これらのコンピュータ可読プログラム命令は、コンピュータ、プログラマブルデータ処理装置及び/又は他のデバイスに特定の方式で機能するように指示することができるコンピュータ可読記憶媒体にも記憶されてよく、それにより、その中に命令が記憶されたコンピュータ可読記憶媒体が、フローチャート及び/又はブロック図の1又は複数のブロックで指定された機能/動作の態様を実装する命令を含む製品を備える。
【0068】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブルデータ処理装置、又は他のデバイス上にロードされて、一連の動作段階をコンピュータ、他のプログラマブル装置、又は他のデバイス上で実行させ、コンピュータ実装プロセスを生成してよく、それにより、コンピュータ、他のプログラマブル装置、又は他のデバイス上で実行される命令は、フローチャート及び/又はブロック図の1又は複数のブロックで指定された機能/動作を実装する。
【0069】
図におけるフローチャート及びブロック図は、本発明の様々な実施形態に係る、システム、方法、及びコンピュータプログラム製品の可能な実装形態のアーキテクチャ、機能、及び動作を示す。これに関して、フローチャート又はブロック図における各ブロックは、指定された論理機能を実装するための1又は複数の実行可能命令を含む命令のモジュール、セグメント、又は部分を表し得る。幾つかの代替的な実装形態において、ブロックに記されている機能は、図に記されている順序とは異なる順序で行われ得る。例えば、連続して示されている2つのブロックが、実際には、1つの段階として実現されてよく、同時に、実質的に同時に、部分的に又は全体的に時間が重複する方式で実行されてよく、又は、ブロックは、場合によっては、関与する機能に応じて逆の順序で実行されてよい。ブロック図及び/又はフローチャート図の各ブロック、及び、ブロック図及び/又はフローチャート図のブロックの組み合わせは、指定された機能又は動作を実行する、又は、特定用途向けハードウェア命令及びコンピュータ命令の組み合わせを実行する特定用途向けハードウェアベースのシステムにより実装され得ることにも留意されたい。
【0070】
本開示は、クラウドコンピューティングに関する詳細な説明を含むが、本明細書に列挙される教示内容の実装形態は、クラウドコンピューティング環境に限定されないことを理解されたい。むしろ、本発明の実施形態は、現在既知、又は、今後開発される任意の他のタイプのコンピューティング環境と併せて実装されることが可能である。
【0071】
クラウドコンピューティングは、管理の労力又はサービスのプロバイダとの対話を最小限に抑えながら迅速にプロビジョニング及びリリースされ得る構成可能なコンピューティングリソース(例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、及びサービス)の共有プールに対する便利なオンデマンドのネットワークアクセスを可能にするためのサービス提供のモデルである。本クラウドモデルは、少なくとも5つの特性、少なくとも3つのサービスモデル、及び少なくとも4つの展開モデルを含み得る。
【0072】
特性は以下の通りである。
【0073】
オンデマンドセルフサービス:クラウドコンシューマは、サービスプロバイダとの人的対話を要することなく、必要に応じて自動的に、サーバ時間及びネットワークストレージなどのコンピューティング能力を一方的にプロビジョニングすることができる。
【0074】
幅広いネットワークアクセス:能力は、ネットワークを介して利用可能であり、また、異種混交のシンクライアントプラットフォーム又はシッククライアントプラットフォーム(例えば、携帯電話、ラップトップ、及びPDA(登録商標))による使用を促進する標準的なメカニズムを通じてアクセスされる。
【0075】
リソースプーリング:プロバイダのコンピューティングリソースは、マルチテナントモデルを用いて複数のコンシューマにサービスを提供するようにプールされており、様々な物理リソース及び仮想リソースが需要に沿って動的に割り当て及び再割り当てされる。コンシューマは一般に提供されたリソースの正確な位置に対する制御又は知識を有していないが、より高いレベルの抽象化(例えば、国、州、又はデータセンタ)において位置を指定することが可能である場合があるという点で、位置の独立性がある。
【0076】
迅速な拡張性:能力は迅速に且つ伸縮自在に、場合によっては自動的にプロビジョニングされ、即座にスケールアウトすることも、迅速にリリースして即座にスケールインすることもできる。コンシューマにとって、多くの場合、プロビジョニングのために利用可能な能力は無制限であるように見え、任意の時点において任意の量で購入され得る。
【0077】
計測サービス:クラウドシステムは、ある抽象化レベルでサービスのタイプ(例えば、ストレージ、処理、帯域幅、及びアクティブなユーザアカウント)に適した計測能力を活用することにより、リソースの使用を自動的に制御及び最適化する。リソース使用量はモニタリング、制御及び報告されてよく、それにより、利用されるサービスのプロバイダ及びコンシューマの両方に透明性を提供する。
【0078】
サービスモデルは以下の通りである。
【0079】
サービスとしてのソフトウェア(SaaS):コンシューマに提供される能力は、クラウドインフラストラクチャ上で動作しているプロバイダのアプリケーションを使用することである。アプリケーションは、ウェブブラウザ(例えば、ウェブベースの電子メール)などのシンクライアントインタフェースを通じて様々なクライアントデバイスからアクセス可能である。コンシューマは、限定されたユーザ固有のアプリケーション構成設定を考え得る例外として、ネットワーク、サーバ、オペレーティングシステム、ストレージ又は更には個々のアプリケーション能力を含む、基礎をなすクラウドインフラストラクチャを管理又は制御しない。
【0080】
サービスとしてのプラットフォーム(PaaS):コンシューマに提供される能力は、プロバイダによってサポートされるプログラミング言語及びツールを用いて作成された、コンシューマが作成又は取得したアプリケーションをクラウドインフラストラクチャ上に展開することである。コンシューマは、ネットワーク、サーバ、オペレーティングシステム、又はストレージを含む、基礎をなすクラウドインフラストラクチャを管理又は制御しないが、展開されたアプリケーション、及び場合によってはアプリケーションホスティング環境構成に対して制御を有する。
【0081】
サービスとしてのインフラストラクチャ(IaaS):コンシューマに提供される能力は、処理、ストレージ、ネットワーク、及び他の基本的なコンピューティングリソースをプロビジョニングすることであり、コンシューマは、オペレーティングシステム及びアプリケーションを含み得る任意のソフトウェアを展開し、動作させることができる。コンシューマは、基礎をなすクラウドインフラストラクチャを管理又は制御しないが、オペレーティングシステム、ストレージ、展開されたアプリケーションに対する制御を有するとともに、場合によっては選択されたネットワーキングコンポーネント(例えば、ホストファイアウォール)に対する限定的な制御を有する。
【0082】
展開モデルは以下の通りである。
【0083】
プライベートクラウド:クラウドインフラストラクチャは、組織のためだけに運用される。それは、当該組織又はサードパーティによって管理されてよく、オンプレミス又はオフプレミスで存在し得る。
【0084】
コミュニティクラウド:クラウドインフラストラクチャは、複数の組織により共有されており、共通の関心事(例えば、ミッション、セキュリティ要件、ポリシ、及び法令順守に関わる考慮事項)を有する特定のコミュニティをサポートする。それは、当該組織又はサードパーティによって管理されてよく、オンプレミス又はオフプレミスで存在し得る。
【0085】
パブリッククラウド:クラウドインフラストラクチャは、一般大衆又は大規模な業界団体にとって利用可能になり、クラウドサービスを販売する組織により所有される。
【0086】
ハイブリッドクラウド:このクラウドインフラストラクチャは、2又はそれより多くのクラウド(プライベート、コミュニティ、又はパブリック)の複合体であり、これは、独自のエンティティのままであるが、データ及びアプリケーションのポータビリティ(例えば、クラウド間の負荷分散のためのクラウドバースト)を可能にする標準化された技術又は独自技術によってともに結合される。
【0087】
クラウドコンピューティング環境は、ステートレス性、低結合性、モジュール性、及び意味的相互運用性に重点を置いたサービス指向型である。クラウドコンピューティングの中核には、相互接続されたノードのネットワークを含むインフラストラクチャが存在する。
【0088】
ここで図5を参照すると、例示的なクラウドコンピューティング環境50が示されている。図示の通り、クラウドコンピューティング環境50は、例えば、パーソナルデジタルアシスタント(PDA)又はセルラー電話54A、デスクトップコンピュータ54B、ラップトップコンピュータ54C、及び/又は自動車コンピュータシステム54Nなどの、クラウドコンシューマによって使用されるローカルコンピューティングデバイスが通信し得る1又は複数のクラウドコンピューティングノード10を含む。ノード10は、互いに通信し得る。それらは、本明細書の上記で説明されたようなプライベートクラウド、コミュニティクラウド、パブリッククラウド、又はハイブリッドクラウド、又はこれらの組み合わせなど、1又は複数のネットワーク内で物理的に又は仮想的にグループ化され得る(図示せず)。これにより、クラウドコンピューティング環境50は、クラウドコンシューマがローカルコンピューティングデバイス上でリソースを維持する必要のないインフラストラクチャ、プラットフォーム、及び/又はソフトウェアをサービスとして提供することが可能となる。図5に示すコンピューティングデバイス54A~54Nのタイプは、単なる例示を意図していること、及び、コンピューティングノード10及びクラウドコンピューティング環境50は、ネットワーク及び/又はネットワークアドレス可能接続の任意のタイプを通じて、コンピュータ化デバイスの任意のタイプと(例えば、ウェブブラウザを使用して)通信し得ることが理解される。
【0089】
ここで図6を参照すると、クラウドコンピューティング環境50(図5)によって提供される機能的抽象化層のセットが示されている。図6に示す、コンポーネント、層、機能は単なる例示を意図しており、本発明の実施形態はこれらに限定されないことが事前に理解されるべきである。図示の通り、以下の層及び対応する機能が提供されている。
【0090】
ハードウェア及びソフトウェア層60は、ハードウェアコンポーネント及びソフトウェアコンポーネントを含む。ハードウェアコンポーネントの例は、メインフレーム61;RISC(縮小命令セットコンピュータ)アーキテクチャベースサーバ62;サーバ63;ブレードサーバ64;記憶デバイス65;及びネットワーク及びネットワーキングコンポーネント66を含む。幾つかの実施形態において、ソフトウェアコンポーネントは、ネットワークアプリケーションサーバソフトウェア67及びデータベースソフトウェア68を含む。
【0091】
仮想化層70は、以下、すなわち、仮想サーバ71、仮想ストレージ72、仮想プライベートネットワークを含む仮想ネットワーク73、仮想アプリケーション及びオペレーティングシステム74、及び仮想クライアント75である、仮想エンティティの例が提供され得る抽象化層を提供する。
【0092】
1つの例において、管理層80は、以下で説明される機能を提供し得る。リソースプロビジョニング81は、クラウドコンピューティング環境内でタスクを実行するのに利用される、コンピューティングリソース及び他のリソースの動的な調達を提供する。計測及び価格設定82は、クラウドコンピューティング環境内でリソースが利用される際のコスト追跡、及びこれらのリソースの消費に対する請求又はインボイス作成を提供する。1つの例において、これらのリソースは、アプリケーションソフトウェアライセンスを含み得る。セキュリティは、クラウドコンシューマ及びタスクのアイデンティティ検証、並びに、データ及び他のリソースの保護を提供する。ユーザポータル83は、コンシューマ及びシステム管理者のために、クラウドコンピューティング環境へのアクセスを提供する。サービスレベル管理84は、必要とされるサービスレベルが満たされるように、クラウドコンピューティングリソース割り当て及び管理を提供する。サービスレベルアグリーメント(SLA)計画及び履行85は、SLAに従って将来の要件が予測されるクラウドコンピューティングリソースの事前準備及び調達を提供する。
【0093】
ワークロード層90は、クラウドコンピューティング環境が利用され得る機能の例を提供する。この層から提供され得るワークロード及び機能の例は、マッピング及びナビゲーション91;ソフトウェア開発及びライフサイクル管理92;仮想教室教育提供93;データ分析処理94;トランザクション処理95;及びコマンド境界プログラム112を含む。
【0094】
本明細書において説明されるプログラムは、本発明の具体的な実施形態においてそれらが実装される用途に基づいて識別される。しかしながら、本明細書における任意の特定のプログラム名称は、単に便宜上の目的で使用されており、従って、本発明は、そのような名称によって識別及び/又は示唆される任意の特定の用途のみにおいて使用することに限定されるべきでないことが理解されるべきである。
【0095】
本発明は、統合のあらゆる可能な技術詳細レベルにおけるシステム、方法、及び/又はコンピュータプログラム製品であり得る。コンピュータプログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読記憶媒体(又は複数の媒体)を含み得る。
【0096】
コンピュータ可読記憶媒体は、命令実行デバイスによって使用するための命令を保持及び記憶し得る有形デバイスであり得る。コンピュータ可読記憶媒体は、例えば、電子記憶デバイス、磁気記憶デバイス、光記憶デバイス、電磁記憶デバイス、半導体記憶デバイス、又は上述したものの任意の好適な組み合わせであり得るが、これらに限定されない。コンピュータ可読記憶媒体のより具体的な例の非包括的なリストは、以下、すなわち、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROM又はフラッシュメモリ)、スタティックランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスクリードオンリメモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピディスク、パンチカード又は命令が記録された溝内の隆起構造などの機械的にエンコードされたデバイス、及び上述したものの任意の好適な組み合わせを含む。本明細書において使用されるコンピュータ可読記憶媒体は、電波又は他の自由に伝搬する電磁波、導波路又は他の伝送媒体を通じて伝搬する電磁波(例えば、光ファイバケーブルを通過する光パルス)、又はワイヤを通じて伝送される電気信号などの一時的信号自体であると解釈されるべきではない。
【0097】
本明細書において説明されるコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から、それぞれのコンピューティング/処理デバイスに、又は、ネットワーク、例えば、インターネット、ローカルエリアネットワーク、ワイドエリアネットワーク及び/又は無線ネットワークを介して、外部コンピュータ又は外部記憶デバイスに、ダウンロードされ得る。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ及び/又はエッジサーバを備え得る。各コンピューティング/処理デバイス内のネットワークアダプタカード又はネットワークインタフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、コンピュータ可読プログラム命令を、それぞれのコンピューティング/処理デバイス内のコンピュータ可読記憶媒体に記憶するために転送する。
【0098】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の構成データであり得、又は、Smalltalk(登録商標)又はC++等のようなオブジェクト指向プログラミング言語、及び「C」プログラミング言語又は同様のプログラミング言語のような手続き型プログラミング言語を含む1又は複数のプログラミング言語の任意の組み合わせで書き込まれたソースコード又はオブジェクトコードのいずれかであり得る。コンピュータ可読プログラム命令は、スタンドアロンソフトウェアパッケージとして、ユーザのコンピュータ上で全体を実行すること、ユーザのコンピュータ上で一部分を実行することができ、ユーザのコンピュータ上で一部分を、リモートコンピュータ上で一部分を実行すること、又は、リモートコンピュータ又はサーバ上で全体を実行することができる。後者のシナリオでは、リモートコンピュータが、ローカルエリアネットワーク(LAN)又はワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されてよく、又はその接続が、(例えば、インターネットサービスプロバイダを用いたインターネットを介して)外部コンピュータに対して行われてよい。幾つかの実施形態において、例えば、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)、又はプログラマブルロジックアレイ(PLA)を含む電子回路は、本発明の態様を実行するために、コンピュータ可読プログラム命令の状態情報を利用することによってコンピュータ可読プログラム命令を実行して、電子回路をパーソナライズし得る。
【0099】
本発明の態様は、本明細書において、本発明の実施形態に係る方法、装置(システム)、及びコンピュータプログラム製品のフローチャート図及び/又はブロック図を参照して説明されている。フローチャート図及び/又はブロック図の各々のブロック、及び、フローチャート図及び/又はブロック図におけるブロックの組み合わせが、コンピュータ可読プログラム命令によって実装され得ることが理解されよう。
【0100】
これらのコンピュータ可読プログラム命令は、コンピュータ、又は他のプログラマブルデータ処理装置のプロセッサに提供されてマシンを生成することができ、それにより、コンピュータ又は他のプログラマブルデータ処理装置のプロセッサを介して実行される命令が、フローチャート及び/又はブロック図の1又は複数のブロックで指定された機能/動作を実装するための手段を作成する。これらのコンピュータ可読プログラム命令は、コンピュータ、プログラマブルデータ処理装置及び/又は他のデバイスに特定の方式で機能するように指示することができるコンピュータ可読記憶媒体にも記憶されてよく、それにより、その中に命令が記憶されたコンピュータ可読記憶媒体が、フローチャート及び/又はブロック図の1又は複数のブロックで指定された機能/動作の態様を実装する命令を含む製品を備える。
【0101】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラマブルデータ処理装置、又は他のデバイス上にロードされて、一連の動作段階をコンピュータ、他のプログラマブル装置、又は他のデバイス上で実行させ、コンピュータ実装プロセスを生成してよく、それにより、コンピュータ、他のプログラマブル装置、又は他のデバイス上で実行される命令は、フローチャート及び/又はブロック図の1又は複数のブロックで指定された機能/動作を実装する。
【0102】
図におけるフローチャート及びブロック図は、本発明の様々な実施形態に係る、システム、方法、及びコンピュータプログラム製品の可能な実装形態のアーキテクチャ、機能、及び動作を示す。これに関して、フローチャート又はブロック図における各ブロックは、指定された論理機能を実装するための1又は複数の実行可能命令を含む命令のモジュール、セグメント、又は部分を表し得る。幾つかの代替的な実装形態において、ブロックに記されている機能は、図に記されている順序とは異なる順序で行われ得る。例えば、連続して示されている2つのブロックが、実際には、1つの段階として実現されてよく、同時に、実質的に同時に、部分的に又は全体的に時間が重複する方式で実行されてよく、又は、ブロックは、場合によっては、関与する機能に応じて逆の順序で実行されてよい。ブロック図及び/又はフローチャート図の各ブロック、及び、ブロック図及び/又はフローチャート図のブロックの組み合わせは、指定された機能又は動作を実行する、又は、特定用途向けハードウェア命令及びコンピュータ命令の組み合わせを実行する特定用途向けハードウェアベースのシステムにより実装され得ることにも留意されたい。
図1
図2
図3
図4
図5
図6
図7
【手続補正書】
【提出日】2023-11-24
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
第1の電子デバイス上で動作する第1のインテリジェント仮想アシスタントのための第1のコマンド境界を確立する段階;
前記第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、前記第1のコマンド境界内の前記複数のソースからの前記音声の部分を識別する段階;及び
前記第1のコマンド境界内の前記複数のソースからの前記音声の前記部分においてコマンドが識別可能であると判定することに応答して、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに前記コマンドを送信する段階
を備える、コンピュータ実装方法。
【請求項2】
第2の電子デバイス上で動作する第2のインテリジェント仮想アシスタントのための第2のコマンド境界を確立する段階、ここで前記第1のコマンド境界は、前記第2のコマンド境界と重複しない、
を更に備える、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記第1の電子デバイス上で動作する前記第1のインテリジェント仮想アシスタントのための第1のコマンド規則のセット、及び、前記第2の電子デバイス上で動作する前記第2のインテリジェント仮想アシスタントのための第2のコマンド規則のセットを確立する段階
を更に備える、請求項2に記載のコンピュータ実装方法。
【請求項4】
個人情報について前記コマンドを分析する段階;
前記分析する段階に基づき、前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための個人情報コマンド境界に基づき、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに命令を送信する段階
を更に備える、前述の請求項1から3のいずれか一項に記載のコンピュータ実装方法。
【請求項5】
個人情報について前記コマンドを分析する段階は:
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類する段階;
前記分類に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための前記個人情報コマンド境界を確立するようユーザにクエリを行う段階、ここで前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに対する音量レベル応答は、前記個人情報コマンド境界に関連付けられている;及び
前記コマンドのための前記個人情報コマンド境界を記憶する段階
を更に有する、請求項4に記載のコンピュータ実装方法。
【請求項6】
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類する段階は:
前記コマンドを個人情報に関連するものとして、又は、前記コマンドの第1の部分を個人情報に関連するものとして分類する段階;及び
前記コマンドを、個人情報を含むもの、又は、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによる個人情報を伴う聞き取り可能な応答を生じさせるものとして分類する段階
を更に含む、請求項5に記載のコンピュータ実装方法。
【請求項7】
前記コマンドの前記第1の部分が個人情報を有するものとして分類され、前記コマンドが前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによる個人情報を伴う前記聞き取り可能な応答を生じさせることから、前記コマンドが個人情報に関連していると判定する段階
を更に備える、請求項6に記載のコンピュータ実装方法。
【請求項8】
又は複数のコンピュータプロセッサに、
1の電子デバイス上で動作する第1のインテリジェント仮想アシスタントのための第1のコマンド境界を確立する手順;
前記第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、前記第1のコマンド境界内の前記複数のソースからの前記音声の部分を識別する手順;及び
前記第1のコマンド境界内の前記複数のソースからの前記音声の前記部分においてコマンドが識別可能であると判定することに応答して、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに前記コマンドを送信する手順
を実行させるための、コンピュータプログラム。
【請求項9】
前記1又は複数のコンピュータプロセッサに、
第2の電子デバイス上で動作する第2のインテリジェント仮想アシスタントのための第2のコマンド境界を確立する手順、ここで前記第1のコマンド境界は、前記第2のコマンド境界と重複しない、
を更に実行させるための、請求項8に記載のコンピュータプログラム。
【請求項10】
前記1又は複数のコンピュータプロセッサに、
記第1の電子デバイス上で動作する前記第1のインテリジェント仮想アシスタントのための第1のコマンド規則のセット、及び、前記第2の電子デバイス上で動作する前記第2のインテリジェント仮想アシスタントのための第2のコマンド規則のセットを確立する手順
に実行させるための、請求項9に記載のコンピュータプログラム。
【請求項11】
前記1又は複数のコンピュータプロセッサに、
人情報について前記コマンドを分析する手順;及び
前記分析に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための個人情報コマンド境界に基づき、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに命令を送信する手順
を更に実行させるための、前述の請求項8から10のいずれか一項に記載のコンピュータプログラム。
【請求項12】
個人情報について前記コマンドを分析する手順は
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類する手順;
前記分類に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための前記個人情報コマンド境界を確立するようユーザにクエリを行う手順、ここで前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに対する音量レベル応答は、前記個人情報コマンド境界に関連付けられている;及び
前記コマンドのための前記個人情報コマンド境界を記憶する手順
更に含む、請求項11に記載のコンピュータプログラム。
【請求項13】
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類する手順は
前記コマンドを個人情報に関連するものとして、又は、前記コマンドの第1の部分を個人情報に関連するものとして分類する手順;及び
前記コマンドを、個人情報を含むもの、又は、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによる個人情報を伴う聞き取り可能な応答を生じさせるものとして分類する手順
更に含む、請求項12に記載のコンピュータプログラム。
【請求項14】
前記1又は複数のコンピュータプロセッサに、
前記コマンドの前記第1の部分が個人情報を有するものとして分類され、前記コマンドが前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによる個人情報を伴う前記聞き取り可能な応答を生じさせることから、前記コマンドが個人情報に関連していると判定する手順
に実行させるための、請求項13に記載のコンピュータプログラム。
【請求項15】
1又は複数のコンピュータプロセッサ;
1又は複数のコンピュータ可読記憶媒体;及び
前記1又は複数のコンピュータプロセッサの少なくとも1つによって実行されるための、前記1又は複数のコンピュータ可読記憶媒体上に記憶されたプログラム命令
を備え、前記プログラム命令は:
第1の電子デバイス上で動作する第1のインテリジェント仮想アシスタントのための第1のコマンド境界を確立するためのプログラム命令;
前記第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、前記第1のコマンド境界内の前記複数のソースからの前記音声の部分を識別するためのプログラム命令;及び
前記第1のコマンド境界内の前記複数のソースからの前記音声の前記部分においてコマンドが識別可能であると判定することに応答して、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに前記コマンドを送信するためのプログラム命令
を有する、コンピュータシステム。
【請求項16】
前記記憶されたプログラム命令は:
第2の電子デバイス上で動作する第2のインテリジェント仮想アシスタントのための第2のコマンド境界を確立するためのプログラム命令、ここで前記第1のコマンド境界は、前記第2のコマンド境界と重複しない、
を更に有する、請求項15に記載のコンピュータシステム。
【請求項17】
前記記憶されたプログラム命令は:
前記第1の電子デバイス上で動作する前記第1のインテリジェント仮想アシスタントのための第1のコマンド規則のセット、及び、前記第2の電子デバイス上で動作する前記第2のインテリジェント仮想アシスタントのための第2のコマンド規則のセットを確立するためのプログラム命令
を更に有する、請求項16に記載のコンピュータシステム。
【請求項18】
前記記憶されたプログラム命令は:
個人情報について前記コマンドを分析するためのプログラム命令;
前記分析に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための個人情報コマンド境界に基づき、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに命令を送信するためのプログラム命令
を更に有する、前述の請求項15から17のいずれか一項に記載のコンピュータシステム。
【請求項19】
個人情報について前記コマンドを分析するための前記プログラム命令、前記記憶されたプログラム命令は:
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類するためのプログラム命令;
前記分類に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための前記個人情報コマンド境界を確立するようユーザにクエリを行うためのプログラム命令、ここで前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに対する音量レベル応答は、前記個人情報コマンド境界に関連付けられている;及び
前記コマンドのための前記個人情報コマンド境界を記憶するためのプログラム命令
を更に有する、請求項18に記載のコンピュータシステム。
【請求項20】
第1の電子デバイス上で動作するインテリジェント仮想アシスタントのためのニアフィールド半径を確立する段階、ここで前記ニアフィールド半径は、ニアフィールド音声及びファーフィールド音声を分離するコマンド境界である;
前記第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、前記ニアフィールド半径内の前記複数のソースから前記音声の部分を識別する段階;及び
前記ニアフィールド半径内の前記複数のソースからの前記音声の前記部分においてコマンドが識別可能であると判定することに応答して、前記インテリジェント仮想アシスタントに前記コマンドを実行するよう命令する段階
を備える、コンピュータ実装方法。
【請求項21】
前記第1の電子デバイスによって実行可能な前記コマンドについて、前記ニアフィールド半径内の前記複数のソースからの前記音声の前記部分を分析する段階
を更に備える、請求項20に記載のコンピュータ実装方法。
【請求項22】
第2の電子デバイスが前記コマンドに関連付けられていると判定することに応答して、前記第2の電子デバイス内に前記コマンドを表示する段階;及び
前記第2の電子デバイスから前記コマンドに対する修正を受信することに応答して;前記インテリジェント仮想アシスタントに、前記修正を伴う前記コマンドを実行するよう命令する段階
を更に備える、請求項20又は21に記載のコンピュータ実装方法。
【請求項23】
第1のインジケータは前記コマンドの第1のサブコマンドに割り当てられており、第2のインジケータは前記コマンドの第2のサブコマンドに割り当てられている、前述の請求項22に記載のコンピュータ実装方法。
【請求項24】
前記第2の電子デバイスから前記コマンドに対する前記修正を受信する段階、ここで前記修正は、前記第1のインジケータを前記コマンドの前記第2のサブコマンドに、及び前記第2のインジケータを前記コマンドの前記第1のサブコマンドに割り当てる、
を更に備える、請求項23に記載のコンピュータ実装方法。
【請求項25】
前記第1のインジケータは、前記第2のインジケータで前記コマンドの前記第1のサブコマンドを実行する前に、前記コマンドの前記第2のサブコマンドを実行するよう前記インテリジェント仮想アシスタントに命令する、請求項24に記載のコンピュータ実装方法。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0102
【補正方法】変更
【補正の内容】
【0102】
図におけるフローチャート及びブロック図は、本発明の様々な実施形態に係る、システム、方法、及びコンピュータプログラム製品の可能な実装形態のアーキテクチャ、機能、及び動作を示す。これに関して、フローチャート又はブロック図における各ブロックは、指定された論理機能を実装するための1又は複数の実行可能命令を含む命令のモジュール、セグメント、又は部分を表し得る。幾つかの代替的な実装形態において、ブロックに記されている機能は、図に記されている順序とは異なる順序で行われ得る。例えば、連続して示されている2つのブロックが、実際には、1つの段階として実現されてよく、同時に、実質的に同時に、部分的に又は全体的に時間が重複する方式で実行されてよく、又は、ブロックは、場合によっては、関与する機能に応じて逆の順序で実行されてよい。ブロック図及び/又はフローチャート図の各ブロック、及び、ブロック図及び/又はフローチャート図のブロックの組み合わせは、指定された機能又は動作を実行する、又は、特定用途向けハードウェア命令及びコンピュータ命令の組み合わせを実行する特定用途向けハードウェアベースのシステムにより実装され得ることにも留意されたい
[項目1]
第1の電子デバイス上で動作する第1のインテリジェント仮想アシスタントのための第1のコマンド境界を確立する段階;
前記第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、前記第1のコマンド境界内の前記複数のソースからの前記音声の部分を識別する段階;及び
前記第1のコマンド境界内の前記複数のソースからの前記音声の前記部分においてコマンドが識別可能であると判定することに応答して、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに前記コマンドを送信する段階
を備える、コンピュータ実装方法。
[項目2]
第2の電子デバイス上で動作する第2のインテリジェント仮想アシスタントのための第2のコマンド境界を確立する段階、ここで前記第1のコマンド境界は、前記第2のコマンド境界と重複しない、
を更に備える、項目1に記載のコンピュータ実装方法。
[項目3]
前記第1の電子デバイス上で動作する前記第1のインテリジェント仮想アシスタントのための第1のコマンド規則のセット、及び、前記第2の電子デバイス上で動作する前記第2のインテリジェント仮想アシスタントのための第2のコマンド規則のセットを確立する段階
を更に備える、項目2に記載のコンピュータ実装方法。
[項目4]
個人情報について前記コマンドを分析する段階;
前記分析する段階に基づき、前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための個人情報コマンド境界に基づき、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに命令を送信する段階
を更に備える、前述の項目1から3のいずれかに記載のコンピュータ実装方法。
[項目5]
個人情報について前記コマンドを分析する段階は:
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類する段階;
前記分類に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための前記個人情報コマンド境界を確立するようユーザにクエリを行う段階、ここで前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに対する音量レベル応答は、前記個人情報コマンド境界に関連付けられている;及び
前記コマンドのための前記個人情報コマンド境界を記憶する段階
を更に有する、項目4に記載のコンピュータ実装方法。
[項目6]
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類する段階は:
前記コマンドを個人情報に関連するものとして、又は、前記コマンドの第1の部分を個人情報に関連するものとして分類する段階;及び
前記コマンドを、個人情報を含むもの、又は、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによる個人情報を伴う聞き取り可能な応答を生じさせるものとして分類する段階
を更に含む、項目5に記載のコンピュータ実装方法。
[項目7]
前記コマンドの前記第1の部分が個人情報を有するものとして分類され、前記コマンドが前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによる個人情報を伴う前記聞き取り可能な応答を生じさせることから、前記コマンドが個人情報に関連していると判定する段階
を更に備える、項目6に記載のコンピュータ実装方法。
[項目8]
1又は複数のコンピュータ可読記憶媒体、及び、前記1又は複数のコンピュータ可読記憶媒体上に集合的に記憶されたプログラム命令
を備え、前記記憶されたプログラム命令は、1又は複数のコンピュータプロセッサによって実行可能であり、前記記憶されたプログラム命令は:
第1の電子デバイス上で動作する第1のインテリジェント仮想アシスタントのための第1のコマンド境界を確立するためのプログラム命令;
前記第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、前記第1のコマンド境界内の前記複数のソースからの前記音声の部分を識別するためのプログラム命令;及び
前記第1のコマンド境界内の前記複数のソースからの前記音声の前記部分においてコマンドが識別可能であると判定することに応答して、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに前記コマンドを送信するためのプログラム命令
を有する、コンピュータプログラム製品。
[項目9]
前記記憶されたプログラム命令は:
第2の電子デバイス上で動作する第2のインテリジェント仮想アシスタントのための第2のコマンド境界を確立するためのプログラム命令、ここで前記第1のコマンド境界は、前記第2のコマンド境界と重複しない、
を更に有する、項目8に記載のコンピュータプログラム製品。
[項目10]
前記記憶されたプログラム命令は:
前記第1の電子デバイス上で動作する前記第1のインテリジェント仮想アシスタントのための第1のコマンド規則のセット、及び、前記第2の電子デバイス上で動作する前記第2のインテリジェント仮想アシスタントのための第2のコマンド規則のセットを確立するためのプログラム命令
を更に有する、項目8に記載のコンピュータプログラム製品。
[項目11]
前記記憶されたプログラム命令は:
個人情報について前記コマンドを分析するためのプログラム命令;
前記分析に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための個人情報コマンド境界に基づき、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに命令を送信するためのプログラム命令
を更に有する、前述の項目8から10のいずれかに記載のコンピュータプログラム製品。
[項目12]
個人情報について前記コマンドを分析するためのプログラム命令は:
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類するためのプログラム命令;
前記分類に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための前記個人情報コマンド境界を確立するようユーザにクエリを行うためのプログラム命令、ここで前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに対する音量レベル応答は、前記個人情報コマンド境界に関連付けられている;及び
前記コマンドのための前記個人情報コマンド境界を記憶するためのプログラム命令
を更に含む、項目11に記載のコンピュータプログラム製品。
[項目13]
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類するためのプログラム命令は:
前記コマンドを個人情報に関連するものとして、又は、前記コマンドの第1の部分を個人情報に関連するものとして分類するためのプログラム命令;及び
前記コマンドを、個人情報を含むもの、又は、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによる個人情報を伴う聞き取り可能な応答を生じさせるものとして分類するためのプログラム命令
を更に含む、項目12に記載のコンピュータプログラム製品。
[項目14]
前記記憶されたプログラム命令は:
前記コマンドの前記第1の部分が個人情報を有するものとして分類され、前記コマンドが前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによる個人情報を伴う前記聞き取り可能な応答を生じさせることから、前記コマンドが個人情報に関連していると判定するためのプログラム命令
を更に有する、項目13に記載のコンピュータプログラム製品。
[項目15]
1又は複数のコンピュータプロセッサ;
1又は複数のコンピュータ可読記憶媒体;及び
前記1又は複数のコンピュータプロセッサの少なくとも1つによって実行されるための、前記1又は複数のコンピュータ可読記憶媒体上に記憶されたプログラム命令
を備え、前記プログラム命令は:
第1の電子デバイス上で動作する第1のインテリジェント仮想アシスタントのための第1のコマンド境界を確立するためのプログラム命令;
前記第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、前記第1のコマンド境界内の前記複数のソースからの前記音声の部分を識別するためのプログラム命令;及び
前記第1のコマンド境界内の前記複数のソースからの前記音声の前記部分においてコマンドが識別可能であると判定することに応答して、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに前記コマンドを送信するためのプログラム命令
を有する、コンピュータシステム。
[項目16]
前記記憶されたプログラム命令は:
第2の電子デバイス上で動作する第2のインテリジェント仮想アシスタントのための第2のコマンド境界を確立するためのプログラム命令、ここで前記第1のコマンド境界は、前記第2のコマンド境界と重複しない、
を更に有する、項目15に記載のコンピュータシステム。
[項目17]
前記記憶されたプログラム命令は:
前記第1の電子デバイス上で動作する前記第1のインテリジェント仮想アシスタントのための第1のコマンド規則のセット、及び、前記第2の電子デバイス上で動作する前記第2のインテリジェント仮想アシスタントのための第2のコマンド規則のセットを確立するためのプログラム命令
を更に有する、項目15に記載のコンピュータシステム。
[項目18]
前記記憶されたプログラム命令は:
個人情報について前記コマンドを分析するためのプログラム命令;
前記分析に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための個人情報コマンド境界に基づき、前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに命令を送信するためのプログラム命令
を更に有する、前述の項目15から17のいずれかに記載のコンピュータシステム。
[項目19]
個人情報について前記コマンドを分析するための前記プログラム命令、前記記憶されたプログラム命令は:
前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントによって実行可能な前記コマンドを分類するためのプログラム命令;
前記分類に基づき前記コマンドが個人情報に関連すると判定することに応答して、前記コマンドのための前記個人情報コマンド境界を確立するようユーザにクエリを行うためのプログラム命令、ここで前記第1の電子デバイス上の前記第1のインテリジェント仮想アシスタントに対する音量レベル応答は、前記個人情報コマンド境界に関連付けられている;及び
前記コマンドのための前記個人情報コマンド境界を記憶するためのプログラム命令
を更に有する、項目18に記載のコンピュータシステム。
[項目20]
第1の電子デバイス上で動作するインテリジェント仮想アシスタントのためのニアフィールド半径を確立する段階、ここで前記ニアフィールド半径は、ニアフィールド音声及びファーフィールド音声を分離するコマンド境界である;
前記第1の電子デバイスの近傍内の複数のソースから音声を受信することに応答して、前記ニアフィールド半径内の前記複数のソースから前記音声の部分を識別する段階;及び
前記ニアフィールド半径内の前記複数のソースからの前記音声の前記部分においてコマンドが識別可能であると判定することに応答して、前記インテリジェント仮想アシスタントに前記コマンドを実行するよう命令する段階
を備える、コンピュータ実装方法。
[項目21]
前記第1の電子デバイスによって実行可能な前記コマンドについて、前記ニアフィールド半径内の前記複数のソースからの前記音声の前記部分を分析する段階
を更に備える、項目20に記載のコンピュータ実装方法。
[項目22]
第2の電子デバイスが前記コマンドに関連付けられていると判定することに応答して、前記第2の電子デバイス内に前記コマンドを表示する段階;及び
前記第2の電子デバイスから前記コマンドに対する修正を受信することに応答して;前記インテリジェント仮想アシスタントに、前記修正を伴う前記コマンドを実行するよう命令する段階
を更に備える、項目20又は21に記載のコンピュータ実装方法。
[項目23]
第1のインジケータは前記コマンドの第1のサブコマンドに割り当てられており、第2のインジケータは前記コマンドの第2のサブコマンドに割り当てられている、前述の項目20から22のいずれかに記載のコンピュータ実装方法。
[項目24]
前記第2の電子デバイスから前記コマンドに対する前記修正を受信する段階、ここで前記修正は、前記第1のインジケータを前記コマンドの前記第2のサブコマンドに、及び前記第2のインジケータを前記コマンドの前記第1のサブコマンドに割り当てる、
を更に備える、項目23に記載のコンピュータ実装方法。
[項目25]
前記第1のインジケータは、前記第2のインジケータで前記コマンドの前記第1のサブコマンドを実行する前に、前記コマンドの前記第2のサブコマンドを実行するよう前記インテリジェント仮想アシスタントに命令する、項目24に記載のコンピュータ実装方法。
【国際調査報告】