JP7486680B1 - 副次的なデジタルアシスタントに提供するクエリ内容の選択的マスキング - Google Patents

副次的なデジタルアシスタントに提供するクエリ内容の選択的マスキング Download PDF

Info

Publication number
JP7486680B1
JP7486680B1 JP2023559077A JP2023559077A JP7486680B1 JP 7486680 B1 JP7486680 B1 JP 7486680B1 JP 2023559077 A JP2023559077 A JP 2023559077A JP 2023559077 A JP2023559077 A JP 2023559077A JP 7486680 B1 JP7486680 B1 JP 7486680B1
Authority
JP
Japan
Prior art keywords
automated assistant
query
audio data
response
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2023559077A
Other languages
English (en)
Other versions
JP2024520983A (ja
Inventor
マシュー・シャリフィ
ヴィクター・カルブネ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Application granted granted Critical
Publication of JP7486680B1 publication Critical patent/JP7486680B1/ja
Publication of JP2024520983A publication Critical patent/JP2024520983A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/1815Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • G06N5/043Distributed expert systems; Blackboards
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

副次的な自動アシスタントにクエリを提供する前に、口頭のクエリ内の潜在的に機密情報を難読化および/または除外するためのシステムおよび方法。高位の自動アシスタントが、ユーザによって呼び出され、その後にクエリが続く場合がある。オーディオデータが、副次的な自動アシスタントの各々に関連する信頼測定基準に基づいて、副次的な自動アシスタントに1つまたは複数の処理されたクエリを提供する前に、潜在的に機密情報を除外および/または難読化するために処理され得る。副次的な自動アシスタントの信頼測定基準は、機密情報を提供される際の信頼を示す。それに応じて、自動アシスタントは、応答を生成することができ、それらの応答は、ユーザに応答を提供するためにフィルタリングされ得る。

Description

人は、本明細書において「自動アシスタント(automated assistant)」と呼ばれるインタラクティブなソフトウェアアプリケーション(「デジタルエージェント」、「チャットボット」、「インタラクティブパーソナルアシスタント」、「インテリジェントパーソナルアシスタント」、「アシスタントアプリケーション」、「会話エージェント」などとも呼ばれる)を用いて人間とコンピュータとの対話に従事する場合がある。たとえば、人(自動アシスタントとインタラクションするときは「ユーザ」と呼ばれる場合がある)は、場合によってはテキストに変換され、それから処理されてよい口頭の自然言語入力(つまり、発話)を使用して、および/またはテキストの(たとえば、タイピングされた)自然言語入力を与えることによって自動アシスタントにコマンドおよび/または要求を与える場合がある。自動アシスタントは、可聴のおよび/または視覚的なユーザインターフェース出力を含み得る応答ユーザインターフェース出力を提供することによって要求に応答する。
上述のように、多くの自動アシスタントは、口頭のクエリが後に続く呼び出しインジケーションなどの口頭の発話によってインタラクションされるように構成される。ユーザのプライバシーを守るおよび/またはリソースを節約するために、ユーザは、自動アシスタントが口頭の発話を完全に処理する前に自動アシスタントを明示的に呼び出さなければならないことが多い。自動アシスタントの明示的な呼び出しは、概して、クライアントデバイスにおける特定のユーザインターフェース入力の受け取りに応答して発生する。クライアントデバイスは、自動アシスタントとインターフェースを取るためのインターフェースをクライアントデバイスのユーザに提供し(たとえば、ユーザから口頭のおよび/またはタイピングされた入力を受け取り、可聴のおよび/またはグラフィカルな応答を提供し)、自動アシスタントを実装する1つまたは複数の追加的なコンポーネント(たとえば、ユーザ入力を処理し、適切な応答を生成するリモートサーバデバイス)とインターフェースを取るアシスタントインターフェースを含む。
クライアントデバイスを介して自動アシスタントを呼び出すことができる一部のユーザインターフェース入力は、自動アシスタントを呼び出すためのクライアントデバイスのハードウェアのおよび/または仮想的なボタン(たとえば、ハードウェアのボタンのタップ、クライアントデバイスによって表示されたグラフィカルインターフェース要素の選択)を含む。多くの自動アシスタントは、追加的にまたは代替的に、「ホットワード/フレーズ」または「トリガワード/フレーズ」としても知られる1つまたは複数の口頭の呼び出しフレーズに応答して呼び出され得る。たとえば、「ヘイ、アシスタント」、「オーケー、アシスタント」、および/または「アシスタント」などの口頭の呼び出しフレーズが、自動アシスタントを呼び出すために言われ得る。
多くの場合、アシスタントインターフェースを含むクライアントデバイスは、口頭の呼び出しフレーズの発生を監視するためにクライアントデバイスが利用する1つまたは複数のローカルに記憶されたモデルを含む。そのようなクライアントデバイスは、ローカルに記憶されたモデルを利用して受け取られたオーディオデータをローカルで処理し、口頭の呼び出しフレーズを含まないすべてのオーディオデータを破棄し得る。しかし、受け取られたオーディオデータのローカルの処理が口頭の呼び出しフレーズの発生を示すとき、クライアントデバイスは、そのオーディオデータおよび/または続くオーディオデータが自動アシスタントによってさらに処理されるようにする。たとえば、口頭の呼び出しフレーズが「ヘイ、アシスタント」であり、ユーザが「ヘイ、アシスタント。今何時」と言う場合、「今何時」に対応するオーディオデータが、「ヘイ、アシスタント」の検出に基づいて自動アシスタントによって処理され、現在時間の自動アシスタントの応答を提供するために利用され得る。一方、ユーザが単に(最初に呼び出しフレーズを言うかまたは代替的な呼び出し入力を与えることなしに)「今何時」と言う場合、自動アシスタントからの応答は、「今何時」の前に呼び出しフレーズ(またはその他の呼び出し入力)がないことの結果として提供されない。
本明細書において説明される実装は、副次的な自動アシスタントに関連する信頼レベルに基づいて、口頭の発話を解決する際に副次的な自動アシスタントによって使用されるために、ユーザの口頭の発話に関連するどの内容を副次的な自動アシスタントに提供するかを決定することに関する。それらの実装において、所与の口頭の発話に関して所与の副次的な自動アシスタントに提供される内容は、所与の副次的な自動アシスタントの信頼レベルに応じて変化する。これは、所与の口頭の発話に関して(たとえば、口頭の発話をキャプチャするオーディオデータを含む)第1の内容が第1の副次的な自動アシスタントに提供されるが、所与の口頭の発話の同じインスタンス(または別のインスタンス)に関して(たとえば、オーディオデータの少なくとも一部を難読化し、オーディオデータの難読化されたバージョンを含み、元の内容の少なくとも一部を除外する)異なる第2の内容が第2の副次的な自動アシスタントに提供される結果となり得る。たとえば、第1の内容が、口頭の発話をキャプチャするオーディオデータを含み得る一方、第2の内容は、オーディオデータの少なくとも一部を除外するかまたはオーディオデータの難読化されたバージョンを含み得る。たとえば、第2の内容は、オーディオデータを完全に除外し、オーディオデータに基づく(任意で、特定の用語が削除もしくは難読化された)音声認識結果および/または音声認識結果に基づく自然言語理解データのみを含み得る。別の例として、第1の内容が、口頭の発話の音声認識からのすべての用語を含み得る一方、第2の内容は、用語の一部を除外または難読化し得る。これらのおよびその他の方法で、口頭の発話に関連する内容に直接的または間接的にキャプチャされ得るユーザデータのセキュリティは、副次的な自動アシスタントの信頼レベルに応じて、どの内容がその副次的な自動アシスタントに提供されるかを変更することによって維持され得る。
さらに、様々な実装において、信頼レベルは、副次的な自動アシスタントとのユーザおよび/またはその他のユーザのインタラクションからの暗黙的および/または明示的なフィードバックに依存して時間の経過とともに動的に適合され得る。たとえば、保守的な初期信頼レベルが、自動アシスタントとのユーザの初期インタラクションで、ユーザおよび副次的な自動アシスタントのために利用され得るが、それらの初期インタラクション中のユーザのフィードバックに応じて適合され得る。これらのおよびその他の方法で、ユーザデータのセキュリティは、初期インタラクションのために保証されることが可能であるが、さらなるインタラクションのために、ユーザのフィードバックに応じてやはり維持される。これは、ユーザのフィードバックに応じて、さらなるインタラクションのために提供されるためにより豊かな内容が副次的な自動アシスタントに提供されることを可能にし得る。より豊かな内容は、副次的な自動アシスタントが改善されたおよび/もしくはより堅牢な応答を提供すること、ならびに/またはより効率的に応答を生成することを可能にし得る。これらのおよびその他の方法で、実装は、ユーザデータのセキュリティと副次的な自動アシスタントの性能とのバランスを取ろうとする。
なおもさらに、追加的または代替的な実装において、信頼レベルは、所与の副次的な自動アシスタントに関して、口頭の発話の分類、口頭の発話の用語、および/または口頭の発話のその他の特性に応じて変化し得る。たとえば、所与の副次的な自動アシスタントは、第1の分類に関する第1の信頼レベルと、第2の分類に関するまったく異なる第2の信頼レベルとを有することが可能である。追加的にまたは代替的に、どの内容が副次的な自動アシスタントに提供されるかの選択的な修正は、(たとえば、分類、用語、および/または口頭の発話のその他の特性に応じて)一部の口頭の発話のみに関して行われ、その他の口頭の発話に関しては回避され得る。それらの追加的または代替的な実装において、これは、副次的な自動アシスタントが、上述のように副次的な自動アシスタントの向上された性能をもたらすことができる、より豊かな内容を少なくとも選択的に取得することを可能にし得る。これらのおよびその他の方法で、そのような実装も、ユーザデータのセキュリティと副次的な自動アシスタントの性能とのバランスを取ろうとする。
本明細書において開示される一部の実装は、副次的な自動アシスタントに、副次的なアシスタントに関連する信頼レベルに基づいて潜在的に機密情報を削除および/またはマスクするために処理された処理されたクエリを提供することを対象とする。たとえば、様々な技術が、高位の自動アシスタント(general automated assistant)によって、高位の自動アシスタント(本明細書においては「主たる自動アシスタント」とも呼ばれる)を呼び出させる呼び出しを受け取ることと、その後、呼び出された高位の自動アシスタントを介して、ユーザの口頭の発話をキャプチャし、クライアントデバイスの1つまたは複数のマイクロフォンによって生成されるオーディオデータを受け取ることとを対象とする。信頼測定基準(trust metric)に関連付けられる副次的な自動アシスタントが、クエリを処理するために選択され得る。信頼測定基準は、副次的な自動アシスタントのインスタンスとの1人または複数のユーザ(たとえば、ユーザおよび/または追加のユーザ)の過去のインタラクションに基づき得る。オーディオデータは、処理されたクエリを生成するために信頼レベルに基づいて高位の自動アシスタントによって処理されることが可能であり、これは、副次的な自動アシスタントの現在の信頼測定基準に基づいてその副次的な自動アシスタントがアクセスすることを認可されない可能性がある潜在的に機密情報を除外および/または難読化することを含み得る。処理されたクエリが生成されると、処理されたクエリは、副次的な自動アシスタントに提供され得る。
一部の実装において、ユーザは、自動アシスタント(本明細書においては「最初に呼び出される自動アシスタント」とも呼ばれる)を呼び出すが、最初に呼び出される自動アシスタントが、呼び出しに関連して(たとえば、直後に、直前に)受け取られた口頭のクエリを処理する際に少なくとも選択的にインタラクションし得るその他の自動アシスタントを明示的に呼び出さない、「オーケー、アシスタント」などの呼び出しフレーズを発話する場合がある。したがって、ユーザは、最初に呼び出される自動アシスタントに固有の呼び出し入力を与えることに基づいて、その他の自動アシスタントのうちの1つを個々に呼び出すのではなく最初に呼び出される自動アシスタントを利用することを指定してよい。たとえば、第1の呼び出しフレーズ(たとえば、「オーケー、アシスタントA」)は、検出されるとき、いかなるその他の自動アシスタントも呼び出すことなく、第1の自動アシスタントを排他的に呼び出すことができる。同様に、第2の呼び出しフレーズ(たとえば、「オーケー、アシスタントB」)は、検出されるとき、最初に呼び出される自動アシスタントおよび/またはいかなるその他の自動アシスタントも呼び出すことなく、第2の自動アシスタントを排他的に呼び出すことができる。最初に呼び出されるアシスタントは、呼び出されるとき、呼び出しに関連して提供された入力を処理する際にその他の自動アシスタント(すなわち、「副次的なアシスタント」)と少なくとも選択的にインタラクションすることができる。
ユーザは、主たる自動アシスタントを呼び出すが、主たる自動アシスタントが、呼び出しフレーズに関連して(たとえば、直後に、直前に)受け取られたクエリを処理する際に少なくとも選択的にインタラクションし得るその他の自動アシスタントを明示的に呼び出さない、「オーケー、アシスタント」などの呼び出しフレーズを発話するおよび/またはそうでなければ1つもしくは複数のアクションを実行する場合がある。したがって、ユーザは、主たる自動アシスタントに固有の呼び出し入力を与えることに基づいて、その他の自動アシスタントのうちの1つのみを個々に呼び出すのではなく主たる自動アシスタントを利用することを指定してよい。たとえば、第1の呼び出しフレーズ(たとえば、「オーケー、アシスタントA」)は、検出されるとき、主たる自動アシスタントおよび/またはいかなるその他の自動アシスタントも呼び出すことなく、第1の自動アシスタントを排他的に呼び出すことができる。同様に、第2の呼び出しフレーズ(たとえば、「オーケー、アシスタントB」)は、検出されるとき、主たる自動アシスタントおよび/またはいかなるその他の自動アシスタントも呼び出すことなく、第2の自動アシスタントを排他的に呼び出すことができる。その他の呼び出しフレーズ(たとえば、「オーケー、アシスタント」)は、検出されるとき、主たるアシスタントを呼び出すことができる。主たるアシスタントは、呼び出されるとき、呼び出しに関連して提供された入力を処理する際に第1の自動アシスタントおよび/または第2の自動アシスタント(すなわち、「副次的なアシスタント」)と少なくとも選択的にインタラクションすることができる。一部の実装において、主たるアシスタントは、第1の自動アシスタントおよび第2の自動アシスタントの一方または両方と常にインタラクションすることができ、それ自体は音声認識、自然言語理解、および/または充足(fulfilment)能力などの1つまたは複数の自動アシスタントの能力を欠く「メタアシスタント」または「高位の自動アシスタント」であってよい。
主たる自動アシスタントは、キャプチャされたオーディオデータによって含まれる口頭のクエリを処理するための副次的な自動アシスタントを選択することができる。一部の実装において、高位の自動アシスタントは、口頭のクエリに対する応答を生成することができるおよび/またはそうでなければ生成するように構成される副次的な自動アシスタントを選択することができる。たとえば、副次的な自動アシスタントは、所与の副次的な自動アシスタントが通信することができるアプリケーション、副次的な自動アシスタントが応答することができるクエリの分類、および/または副次的な自動アシスタントがアクセスする権限を有する情報の種類などのその能力を高位の自動アシスタントに提供することができる。また、たとえば、主たる自動アシスタントは、ユーザの好み(たとえば、ユーザが特定の部類のクエリを処理するために特定の自動アシスタントを利用することを明示的に示すこと)、副次的な自動アシスタントのうちの1つもしくは複数とのユーザの履歴的なインタラクション、副次的な自動アシスタントによって提供された過去の応答、ならびに/または複数の副次的な自動アシスタントのうちのどれが所与のクエリに対する応答を生成する可能性が最も高いかおよび/もしくは生成するのに最も適切であるかを示すその他の情報に基づいて、副次的な自動アシスタントを選択することができる。
一部の実装においては、1つまたは複数の副次的な自動アシスタントが、所与の副次的な自動アシスタントと確立された信頼を示す信頼測定基準に関連付けられ得る。たとえば、副次的な自動アシスタントは、信頼できるソースを出所とし、ソースの信頼(またはその欠如)に基づいて信頼測定基準を割り振られる場合がある。また、たとえば、信頼測定基準は、副次的な自動アシスタントによって以前に提供された応答の適切性を判定することに基づき得る。また、たとえば、信頼測定基準は、ユーザが場合によっては所与の自動アシスタントと直接インタラクションし続ける場合に、継続的なインタラクションに基づいてユーザが示した信頼のレベルを反映する信頼測定基準を副次的な自動アシスタントが割り振られてよいように、副次的な自動アシスタントとのユーザの以前のインタラクションに基づき得る。また、たとえば、副次的な自動アシスタントは、潜在的に機密情報を取り扱う、および/または必要とする際の自動アシスタントの信頼性の信頼測定基準および/またはその他のインジケーションを与えられ得る。一部の実装において、副次的な自動アシスタントの信頼測定基準は、特定のユーザに固有であることが可能である。一部の実装において、副次的な自動アシスタントの信頼測定基準は、ユーザのより大きな集団での自動アシスタントへの信頼を示し得る。
選択された自動アシスタントの信頼測定基準に基づいて、オーディオデータにキャプチャされた元の口頭の発話が、関連する信頼測定基準を持つ自動アシスタントに認可された情報のみを含む処理されたクエリを生成するために処理され得る。口頭の発話を処理することは、たとえば、口頭のクエリを発話したユーザの識別情報を削除すること、口頭の発話によって含まれる機密情報を除外すること、オーディオデータおよび/もしくはオーディオデータのテキスト表現に含まれる情報の一部を難読化すること、オーディオデータを提供せずに口頭のクエリの意図を提供すること、ならびに/または自動アシスタントが特定の情報にアクセスすることをマスクする、および/もしくはそれ以外の方法で防止することができるその他のプロセスを含み得る。
一部の実装において、元のオーディオデータを処理することは、口頭のクエリのテキスト表現を生成することを含み得る。たとえば、主たる自動アシスタントは、口頭のクエリを受け取り、オーディオデータに対してSTT処理を実行して、ユーザによって話された情報を含むテキストを生成することができる。一部の実装において、テキスト表現は、さらなる処理のために選択された副次的な自動アシスタントに提供されることが可能であり、および/または副次的な自動アシスタントは、処理されたクエリを生成するためにオーディオデータのテキスト表現を利用することが可能である。一部の実装において、主たる自動アシスタントは、オーディオデータおよび/またはオーディオデータのテキスト表現に基づいて、ユーザによって発話されたクエリの一部が、機密である、および/または自動アシスタントによって必要とされない情報であると判定し得る。たとえば、オーディオデータは、クエリの一部ではない、ユーザによるか、または1人もしくは複数のその他の話者によるかのどちらかの発話の部分を含む場合がある。また、たとえば、オーディオデータは、クレジットカード番号、住所、その他の識別情報(たとえば、ユーザの名前)、および/または副次的な自動アシスタントの信頼測定基準に基づいて、選択された自動アシスタントに提供するのに適切でない可能性がある情報を含む場合がある。主たる自動アシスタントは、処理されたクエリとして副次的な自動アシスタントにテキスト表現を提供する前に、オーディオデータのテキスト表現を生成するときにそれらの部分を削除することができる。
一部の実装において、オーディオデータは、オーディオデータのある部分が難読化される、および/またはそれ以外の方法で副次的な自動アシスタントによって使用不可能にされるようにして、副次的な自動アシスタントに直接提供され得る。たとえば、主たる自動アシスタントは、背景雑音をフィルタリングして取り除き、オーディオデータにキャプチャされるがユーザからのものではない口頭の発話をフィルタリングし、および/または選択された副次的な自動アシスタントが提供されることを認可されていない機密情報を含むオーディオをフィルタリングすることができる。オーディオデータを難読化することは、たとえば、機密情報をマスクする雑音をオーディオデータに挿入すること、処理されたオーディオデータを生成するためにオーディオデータの一部を削除すること、および/または副次的な自動アシスタントがオーディオデータの機密の部分に対して音声分析を実行することを防止するためにオーディオデータをそれ以外の方法で処理することを含み得る。さらに、オーディオデータは、帯域幅フィルタ、1つもしくは複数の訓練された機械学習モデル、ならびに/またはその他のプロセスを利用して、処理されたクエリを生成するために口頭のクエリおよび/またはオーディオデータのその他の部分の韻律的特徴を変更するなど、話者の声をマスクするためにオーディオデータを変更することによって、さらに難読化され得る。
一部の実装において、主たる自動アシスタントは、オーディオデータ(またはオーディオデータのテキスト表現)に対して自然言語理解を実行し、テキスト表現または元のオーディオデータを提供することなく、クエリの意図のみを提供することができる。たとえば、ユーザは、クエリ「オーケー、アシスタント。私の家の近くにディナーの予約のできるレストランはある?」を発話する場合がある。主たる自動アシスタントは、ユーザがディナーの予約をするつもりであると判定し、予約アプリケーションにアクセスするように構成される副次的な自動アシスタントをさらに特定することができる。意図は、副次的な自動アシスタントに提供され得るが、ユーザの特定の場所(たとえば、ユーザの住所)を提供する代わりに、主たる自動アシスタントは、ディナーの予約の要求だけを提供し、および/または特定の住所なしでユーザの一般化された場所(たとえば、ユーザの都市および州、ユーザの地域)を提供してよい。
一部の実装において、主たる自動アシスタントは、複数の副次的な自動アシスタントにクエリを提供することができる。たとえば、主たる自動アシスタントは、それぞれが関連する信頼測定基準を持つ第1の自動アシスタントおよび第2の自動アシスタントにクエリを提供するように構成され得る。副次的な自動アシスタントの各々の信頼測定基準に基づいて、多様な処理されたクエリを生成するために、クエリの異なる処理が実行されてよい。
非限定的な例として、しきい値を超える信頼レベル(本明細書においては、「高」信頼測定基準を持つ自動アシスタントと呼ばれる)に関して、主たる自動アシスタントは、完全な修正されていないオーディオデータを副次的な自動アシスタントに提供する場合があり、副次的な自動アシスタントは、オーディオデータに対してASRおよび/またはNLUを実行することができる。高しきい値と低しきい値との間の信頼測定基準を持つ自動アシスタント(本明細書においては、「中」信頼測定基準の自動アシスタントと呼ばれる)に関して、主たる自動アシスタントは、オーディオデータを依然として副次的な自動アシスタントに提供しながら、オーディオデータの一部の機密の部分を削除、難読化、および/または匿名化するためにオーディオデータを処理することができる。(たとえば、中程度に信頼できる自動アシスタントよりも低い信頼測定基準を持つ)「低」信頼測定基準の自動アシスタントに関して、オーディオデータのテキスト表現は、その全体をか、または一部の情報が除外、難読化、および/もしくは匿名化されるようにしてかのどちらかで、副次的な自動アシスタントに提供され得る。副次的な自動アシスタントの信頼測定基準が「低」しきい値未満である場合、副次的な自動アシスタントは、処理されたクエリをまったく提供されない場合があり、および/または副次的な自動アシスタントは、後続のクエリを受け取ることを阻止され得る。これは、たとえば、副次的な自動アシスタントをアンインストールまたは無効化することを含み得る。信頼レベルを下回る自動アシスタントをブロックすることによって、主たる自動アシスタントは、クエリを処理すること、および/または応答を提供するために結局利用されない副次的な自動アシスタントにクエリを提供することによってコンピューティングリソースを消費せず、したがって、本明細書において説明されるように利用されてよいその他の副次的な自動アシスタントのためにオーディオデータを処理するためのリソースを節約する。
口頭のクエリを含むオーディオデータが処理されると、処理されたクエリが、1つまたは複数の副次的な自動アシスタントに提供され得る。たとえば、主たる自動アシスタントは、処理されたクエリを3つの副次的な自動アシスタント、すなわち、高信頼測定基準を持つ副次的な自動アシスタント、中信頼測定基準を持つ副次的な自動アシスタント、および低信頼測定基準を持つ副次的な自動アシスタントに提供する場合がある。高信頼測定基準を持つ副次的な自動アシスタントに関して、口頭のクエリは、オーディオとして提供され、したがって、副次的な自動アシスタントが追加の処理(たとえば、ASR、NLU)を実行することを可能にし得る。中信頼測定基準を持つ副次的な自動アシスタントに関して、処理されたクエリは、ある部分が除外および/またはそうでなければ難読化されたオーディオデータであることが可能である。低信頼測定基準を持つ副次的な自動アシスタントに関して、主たる自動アシスタントは、オーディオデータに対して自動音声認識を実行し、テキスト表現を、丸々かまたはテキストの一部が削除および/もしくは匿名化されるようにしてかのどちらかで提供することができる。
処理されたオーディオデータの提供に応答して、副次的な自動アシスタントの各々は、処理されたクエリに対する応答を提供することができる。一部の実装において、副次的な自動アシスタントからの応答は、少なくとも部分的に副次的な自動アシスタントを実行しているデバイスによって提供され得る。一部の実装において、副次的な自動アシスタントの応答は、さらなる分析のために主たる自動アシスタントに提供され得る。たとえば、副次的な自動アシスタントは、処理されたクエリに対する応答を生成し、応答を主たる自動アシスタントに提供する場合があり、主たる自動アシスタントは、インターフェースを介するおよび/または合成音声を介するなどして、ユーザに応答を提供することができる。
一部の実装において、主たる自動アシスタントは、発信元の副次的な自動アシスタントに関連付けられる信頼測定基準に基づいて、応答をユーザに提供するべきかどうかを判定することができる。追加的にまたは代替的に、主たる自動アシスタントは、所与の副次的な自動アシスタントが、その信頼測定基準を考慮すると副次的な自動アシスタントが提供および/または要求することを認可されない情報を提供することおよび/または追加の情報を要求することを防止するために、副次的な自動アシスタントの応答をフィルタリングすることができる。例として、副次的な自動アシスタントは、応答として、購入を行う許可などのユーザからの追加の情報を要求する、および/または購入を完了するためのクレジットカード情報を要求する場合がある。しかし、主たる自動アシスタントが、副次的な自動アシスタントの信頼測定基準がしきい値を下回ると判定する場合、主たる自動アシスタントは、副次的な自動アシスタントが購入を行うことおよび/またはクレジットカード情報を提供されることを認可されないと判定してよい。それに応じて、主たる自動アシスタントは、副次的な自動アシスタントの応答がユーザに提供されることを防止することができる。
一部の実装において、主たる自動アシスタントは、副次的な自動アシスタントに関連付けられる信頼測定基準を調整することができる。たとえば、副次的な自動アシスタントは、追加の情報を要求する、クエリに対する応答を生成し得る。応答がユーザに提供されると、ユーザは、応答に肯定的に応答をしないことを選択する(たとえば、応答を無視する、応答を明示的に否定する、追加質問をする)場合がある。それに応じて、主たる自動アシスタントは、追加の情報を要求する応答を提供した副次的な自動アシスタントの信頼測定基準を下げてよい。したがって、その後のインタラクションにおいて、その副次的な自動アシスタントは、ユーザからの追加の情報を要求することを許可される可能性がより低くなる。
一部の実装において、主たる自動アシスタントは、複数の自動アシスタントからの応答を比較し、応答の間の類似度に基づいて、副次的な自動アシスタントのうちの1つまたは複数の信頼測定基準を調整することができる。たとえば、主たる自動アシスタントは、それぞれ副次的な自動アシスタントからの3つの応答を受け取る場合がある。応答の内容に基づいて、主たる自動アシスタントは、第1のおよび第2の自動アシスタントが類似した応答を提供したと判定する場合がある。この場合、第1のおよび第2の副次的な自動アシスタントの信頼測定基準の一方または両方が、調整されてよい。第3の副次的な自動アシスタントに関して、信頼測定基準は、その応答がその他の応答と類似していなかったことを反映するために、下げられるおよび/またはそれ以外の方法で調整される場合がある。
一部の実装において、高信頼測定基準を持つ副次的な自動アシスタントの応答が、より低い信頼測定基準を持つ副次的な自動アシスタントと類似している場合、より信頼のない自動アシスタントの値は、その応答がより信頼のある副次的なアシスタントと類似していることを反映するために増やされる場合がある。一部の実装において、副次的な自動アシスタントからの応答が、より信頼のある自動アシスタントの応答と類似していない場合、より信頼のない副次的な自動アシスタントの信頼測定基準は、その応答がクエリに応えていない可能性があることを反映するために、より低い値に調整される場合がある。たとえば、より信頼のない副次的な自動アシスタントは、悪意のある自動アシスタントである可能性があり、および/またはそうではなくユーザに誤った情報を提供している可能性がある。
一部の実装において、主たる自動アシスタントは、副次的な自動アシスタントが追加の情報を要求している場合に、要求された追加の情報がユーザのクエリに適するかどうかを判定することができる。たとえば、ユーザは、ディナーの予約をするように自動アシスタントに要求する場合がある。それに応じて、副次的な自動アシスタントが、ユーザの社会保障番号を要求する場合がある。主たる自動アシスタントは、社会保障番号がディナーの予約の要求に必要でないと判定し、応答が提供されることを防止してよい。さらに、主たる自動アシスタントは、副次的な自動アシスタントの信頼測定基準を下げる、および/または副次的な自動アシスタントが将来応答を提供することを阻止する場合がある。逆に、副次的な自動アシスタントが応答でユーザの電話番号を要求する場合、主たる自動アシスタントは、電話番号がディナーの予約をするために必要とされる場合がある個人情報であると判定し、応答がユーザに提供されることを可能にしてよい。さらに、主たる自動アシスタントは、副次的な自動アシスタントの応答がユーザの要求に応えていることに基づいて、副次的な自動アシスタントの信頼測定基準を調整する場合がある。
場合によっては、副次的な自動アシスタントは、処理されたクエリに対する応答を提供しない場合がある。場合によっては、これは、副次的なアシスタントが、ユーザによって提供されたクエリの種類に応答するように構成されていないからである場合がある。たとえば、クエリは、ディナーの予約をするためのものである場合がある。予約アプリケーションにアクセスするように構成されていない副次的な自動アシスタントは、応答を提供しない場合があり、および/または否定的な応答(たとえば、「申し訳ありません。それはできません」)を提供する場合がある。一部の実装において、副次的な自動アシスタントの信頼測定基準は、応答が期待されるときのその非応答性を反映するために下げられる場合がある。しかし、特定の自動アシスタントが応答を提供することを求められなくてよい場合、それらの自動アシスタントの信頼測定基準は調整されなくてよい。これは、副次的な自動アシスタントに単一の信頼測定基準を割り振る代わりに、それぞれがクエリの異なる分類を反映する複数の信頼測定基準を割り振ることによって主たる自動アシスタントにより促進され得る。したがって、予約アプリケーションにアクセスするように構成されている副次的な自動アシスタントが応答しない場合、予約クエリに関するその信頼レベルが下げられる場合があり、一方、予約アプリケーションにアクセスするように構成されていない副次的な自動アシスタントは、予約クエリに関して影響を受けない場合がある。
一部の実装において、副次的な自動アシスタントは、別の副次的な自動アシスタントの挙動および/または応答を模倣する応答を主たる自動アシスタントに提供する場合がある。たとえば、合成音声の形態の応答に関して、副次的な自動アシスタントは、異なる自動アシスタントと類似しているかまたは同じ声を利用する場合がある。これは、不注意でまたは悪意を持って行われ得るが、どちらの場合も、ユーザは、意図された副次的な自動アシスタントとは異なる副次的な自動アシスタントに情報を提供する可能性がある。それらの場合、主たる自動アシスタントは、応答する自動アシスタントと別の自動アシスタントとの類似度を検出し、より信頼のない副次的な自動アシスタントの応答がユーザに提供されることを防止してよい。また、たとえば、主たる自動アシスタントは、追加の要求の発信元をよりしっかりとユーザに知らせるために、より信頼のない副次的なアシスタントに対してさらなる処理を実行する場合がある。たとえば、主たる自動アシスタントは、要求の発信元の識別子を含める、音声合成を異なる声に変更する、および/または発信元の副次的な自動アシスタントを示すために、応答する要求とともにその他の情報を含める場合がある。
一部の実装において、自動アシスタントの信頼測定基準は、数値および/または信頼レベル(たとえば、高、中、低)として記憶されることが可能であり、ユーザは、応答する副次的な自動アシスタントの信頼測定基準のインジケーションを提供されることが可能である。たとえば、主たる自動アシスタントは、応答の発信元への信頼を反映する数値をインターフェースを介して表示させることができる。したがって、ユーザは、応答が提供されたクエリに適切かどうかを示すことができる。さらに、ユーザが引き続いて応答を与えないか、または応答する自動アシスタントとさらにインタラクションしない場合、主たる自動アシスタントは、ユーザがその自動アシスタントからの将来の応答に関心がない可能性があることを反映するために、応答する自動アシスタントの信頼測定基準を調整することができる。
一部の実装において、副次的な自動アシスタントの応答および信頼測定基準は、副次的な自動アシスタントの複数のインスタンスにわたって集約され得る。たとえば、第1のユーザが、副次的な自動アシスタントと否定的にインタラクションする(たとえば、応答しない、否定的に応答する)ことが可能であり、第2のユーザのための副次的な自動アシスタントのインスタンスの信頼測定基準も、第1のユーザの否定的な応答を反映するために調整される場合がある。また、たとえば、第1の主たる自動アシスタントが、副次的な自動アシスタントの応答に基づいてその副次的な自動アシスタントが潜在的に悪意があると判定する場合があり、その悪意のある副次的な自動アシスタントが後続のクエリを受け取らない、ユーザに応答を提供することを許可されない、および/または悪意のある副次的な自動アシスタントのすべてのユーザのためにアンインストールされるように提案されるように、その悪意のある副次的な自動アシスタントのすべてのインスタンスの信頼測定基準が、下げられる場合がある。
上の説明は、本開示の一部の実装の概要として与えられている。それらの実装およびその他の実装のさらなる説明が、下により詳細に示される。
本明細書において開示される実装が実装され得る例示的な環境の図である。 本明細書において開示される様々な方法が実装され得る例示的な環境のブロック図である。 本明細書において開示される様々な方法が実装され得る別の例示的な環境のブロック図である。 本明細書において開示される様々な方法が実装され得る別の例示的な環境のブロック図である。 本明細書において開示される様々な実装によって、処理されたクエリを生成することを示す流れ図である。 本明細書において開示される様々な実装による、口頭のクエリを含むオーディオデータと、処理されたクエリを生成するためにオーディオデータを処理することとを示す流れ図である。 本明細書において開示される様々な実装による例示的な方法を示す流れ図である。 コンピューティングデバイスの例示的なアーキテクチャを示す図である。
図1を参照すると、ユーザ101によって呼び出されてよい複数の自動アシスタントを含む例示的な環境が提供される。環境は、マイクロフォン(図示せず)を持つ第1のスタンドアロン型インタラクションスピーカ105と、マイクロフォン(やはり図示せず)を持つ第2のスタンドアロン型インタラクションスピーカ110とを含む。第1のスピーカは、呼び出しフレーズで呼び出されてよい第1の自動アシスタントを少なくとも部分的に実行している場合がある。第2のスピーカ110は、第1の自動アシスタントの呼び出しフレーズと同じ呼び出しフレーズか、または発話されたフレーズに基づいてユーザがどちらの自動アシスタントを呼び出すかを選択することを可能にするための異なるフレーズかのどちらかの呼び出しフレーズで呼び出されてよい第2の自動アシスタントを実行している場合がある。例示的な環境において、ユーザ101は、第1のスピーカ105および第2のスピーカ110の近くで「オーケー、アシスタント、アラームをセットして」という口頭の発話115を言っている。第1のおよび/または第2の自動アシスタントのうちの一方が、フレーズ「オーケー、アシスタント」によって呼び出されるように構成される場合、呼び出されたアシスタントは、呼び出しフレーズに続くクエリ(すなわち、「アラームをセットして」)を処理してよい。
一部の実装において、呼び出しは、特定の自動アシスタントを呼び出すことに対するユーザによる関心を示す、ユーザからの1つまたは複数の非言語的なアクションを含み得る。たとえば、ユーザは、デバイスのボタンを押す、自動アシスタントを実行しているデバイスのカメラの前でジェスチャをする、および/または自動アシスタントを少なくとも部分的に実行しているクライアントデバイスの1つもしくは複数のセンサーによって特定され得るその他のアクションをする場合がある。一部の実装においては、異なるジェスチャおよび/またはアクションが、それぞれ異なる自動アシスタントの呼び出しであることが可能である。たとえば、ユーザは、第1の自動アシスタントを呼び出すことに対する関心を示すために、自動アシスタントを実行しているデバイスの方向に手を振ることができ、ユーザは、第2の自動アシスタントを呼び出すことに対する関心を示すために、デバイスのボタンを押すことができる。
一部の実装においては、第1のスピーカ105などのデバイスが、複数の自動アシスタントを実行している場合がある。図2を参照すると、複数の自動アシスタントを実行する複数のクライアントデバイスを含む例示的な環境が示される。システムは、第1の自動アシスタント215および第2の自動アシスタント220を実行している第1のクライアントデバイス205を含む。第1のおよび第2の自動アシスタントの各々は、オーディオがクライアントデバイス205のマイクロフォン225によってキャプチャされてよいようにクライアントデバイス205にすぐ近くで呼び出しフレーズ(各アシスタントに一意、または両方のアシスタントを呼び出すための同じフレーズ)を発話することによって呼び出される場合がある。たとえば、ユーザ101は、クライアントデバイス205の近くで「オーケー、アシスタント1」と発話することによって第1の自動アシスタント215を呼び出し、さらに、クライアントデバイス205の近くでフレーズ「オーケー、アシスタント2」と発話することによって第2の自動アシスタント220を呼び出す場合がある。どちらの呼び出しフレーズが発話されるかに基づいて、ユーザは、第1のクライアントデバイス205上で実行されている複数のアシスタントのうちのどれに関して、ユーザが口頭のクエリを処理することに関心を持っているかを示すことができる。例示的な環境は、第3の自動アシスタント245を実行している第2のクライアントデバイス210をさらに含む。第3の自動アシスタント245は、「オーケー、アシスタント3」などの第3の呼び出しフレーズがマイクロフォン230によってキャプチャされてよいように、第3の呼び出しフレーズを使用して呼び出されるように構成される場合がある。一部の実装において、図2の自動アシスタントのうちの1つまたは複数は、ない場合がある。さらに、例示的な環境は、図2には存在しない追加の自動アシスタントを含む場合がある。たとえば、システムが、追加の自動アシスタントを実行する第3のデバイスを含む場合があり、ならびに/またはクライアントデバイス210および/もしくはクライアントデバイス205が、追加の自動アシスタントおよび/もしくは図示されたよりも少ない自動アシスタントを実行している場合がある。
自動アシスタント215、220、および245の各々は、本明細書において説明される自動アシスタントの1つまたは複数のコンポーネントを含み得る。たとえば、自動アシスタント215は、到着するクエリを処理するための独自のオーディオキャプチャコンポーネント、到着する視覚データを処理するためのビジュアルキャプチャコンポーネント、ホットワード検出エンジン、および/またはその他のコンポーネントを含んでよい。一部の実装において、自動アシスタント215および220などの、同じデバイス上で実行されている自動アシスタントは、自動アシスタントの両方によって利用されてよい1つまたは複数のコンポーネントを共有することができる。たとえば、自動アシスタント215および自動アシスタント220は、オンデバイス音声認識器、オンデバイスNLUエンジン、および/またはその他のコンポーネントのうちの1つもしくは複数を共有する場合がある。
一部の実装において、自動アシスタントのうちの1つまたは複数は、その他の自動アシスタントのいずれかを別々に個々に呼び出さない「オーケー、アシスタント」などの全般的な呼び出しフレーズおよび/またはアクションによって呼び出される場合がある。ユーザが全般的な呼び出しフレーズを発話するとき、自動アシスタントのうちの1つまたは複数は、主たる自動アシスタントとして機能し、その他の自動アシスタントの間の応答を調整する場合がある。図3Aを参照すると、主たる自動アシスタント305が、副次的な自動アシスタント310、315、および320とともに示される。主たる自動アシスタントは、フレーズ「オーケー、アシスタント」または別の全般的な呼び出しフレーズで呼び出されてよく、そのフレーズは、ユーザが複数の自動アシスタントにクエリを与えることに関心があることを示す場合がある。同様に、副次的な自動アシスタント310および315は、ユーザによって発話されるときに対応する自動アシスタントを呼び出す1つまたは複数の代替的な呼び出しフレーズをそれぞれ有する場合がある。たとえば、副次的な自動アシスタント310は、呼び出しフレーズ「オーケー、アシスタントA」で呼び出される場合があり、副次的な自動アシスタント315は、その呼び出しフレーズ「オーケー、アシスタントB」で呼び出される場合がある。一部の実装において、主たる自動アシスタント305ならびに副次的な自動アシスタント310および315のうちの1つまたは複数は、第1の自動アシスタント215および第2の自動アシスタント220に関して図2に示されたように、同じクライアントデバイス上で実行されている場合がある。一部の実装において、1つまたは複数の副次的な自動アシスタントは、第3の自動アシスタント245に関して図2に示されたように、別々のデバイス上で実行されていることが可能である。
一部の実装において、主たる自動アシスタント305は、副次的な自動アシスタント310および315の一方または両方と常にインタラクションすることができ、それ自体は音声認識、自然言語理解、および/または充足能力などの1つまたは複数の自動アシスタントの能力を欠き得る「メタアシスタント」であることが可能である。その他の場合、主たる自動アシスタントは、クエリに対する応答を決定するために独自のクエリの処理も実行しながら、副次的なアシスタントとのインタラクションもすることができる。たとえば、本明細書においてさらに説明されるように、主たる自動アシスタント305は、クエリ処理エンジンを含み得るか、または主たる自動アシスタント305は、クエリを処理し、ユーザに応答を提供するように構成されない場合がある。
自動アシスタント305、310、および315のその他のコンポーネントは、任意であり、たとえば、(キャプチャされたオーディオをテキストに変換する)ローカルスピーチトゥテキスト(「STT」)エンジン、(テキストをスピーチに変換する)ローカルテキストトゥスピーチ(「TTS」)エンジン、(オーディオおよび/もしくはオーディオから変換されたテキストの意味論的意味(semantic meaning)を決定する)ローカル自然言語プロセッサ、ならびに/またはその他のローカルコンポーネントを含み得る。自動アシスタントを実行するクライアントデバイスはコンピューティングリソース(たとえば、プロセッササイクル、メモリ、バッテリなど)の点で比較的制約される場合があるので、ローカルコンポーネントは、自動アシスタントに関連して遠隔で実行されている任意のクラウドに基づく自動アシスタントコンポーネントに含まれる任意の対応する機能に比べて制限された機能を有する場合がある。
再び図2を参照すると、一部の実装において、自動アシスタント215、220、および/または245のうちの1つまたは複数は、ユーザが主たる自動アシスタントとインタラクションすることに関心があることを示す1つまたは複数のジェスチャによって呼び出される場合がある。たとえば、ユーザは、ボタンまたはタッチスクリーンを押すなど、デバイスとインタラクションすることによって自動アシスタントを呼び出す意図を示し、カメラなどの画像キャプチャデバイスによってキャプチャされる場合がある可視の動きを実行してよく、ならびに/または画像キャプチャデバイスがユーザの動きおよび/もしくは位置を認識することができるようにデバイスを見てよい。ユーザがジェスチャまたはアクションを実行するとき、自動アシスタントは呼び出され、上述のように、ジェスチャまたはアクションに続くオーディオデータのキャプチャを開始してよい。
一部の実装においては、1つの自動アシスタントが、主たるアシスタントとして選択されてよく、1つまたは複数のその他の自動アシスタントが、副次的なアシスタントとして指定されてよい。たとえば、ユーザは、ユーザのすぐ近くにある複数の自動アシスタントに共通する呼び出しフレーズを発話することができる。1つまたは複数のコンポーネントが、自動アシスタントを実行している複数のデバイスのうちのどれがユーザに最も近いかを決定することができ、その最も近い自動アシスタントが、主たる自動アシスタントとして指定されてよく、その他の自動アシスタントは、副次的なアシスタントとして指定される。また、たとえば、ユーザが自動アシスタントを呼び出すとき、1つまたは複数のコンポーネントが、どの自動アシスタントがユーザによって最も頻繁に利用されたかを決定し、その自動アシスタントを主たる自動アシスタントとして指定する場合がある。
一部の実装において、ユーザは、特定の自動アシスタントをその自動アシスタントに一意の呼び出しで呼び出すことができ、その自動アシスタントが、主たる自動アシスタントとして指定される場合がある。たとえば、ユーザは、呼び出しフレーズ「オーケー、アシスタント1」を発話して第1のアシスタント215を呼び出す場合があり、そのとき、第1のアシスタント215は、主たる自動アシスタントとして指定される。それから、第2の自動アシスタント220および第3の自動アシスタント245などのその他の自動アシスタントが、本明細書において説明されるように、主たる自動アシスタントによって呼び出され、主たる自動アシスタントによってクエリを提供されることが可能であり、および/またはその他の自動アシスタントから応答を受け取ることが可能である。
一部の実装において、第1の自動アシスタント215および第2の自動アシスタント220などの1つまたは複数の自動アシスタントは、自然言語プロセッサなどの1つもしくは複数のモジュールならびに/または自然言語、TTS、および/もしくはSTTプロセッサの結果を共有する場合がある。たとえば、再び図2を参照すると、第1の自動アシスタント215と第2の自動アシスタント220との両方が、クライアントデバイス205がオーディオデータを受け取るときにオーディオデータが一旦処理されてテキストにされ、それから、そのテキストが両方の自動アシスタント215と220とに提供されてよいように、自然言語処理を共有する場合がある。また、たとえば、クライアントデバイス205の1つまたは複数のコンポーネントが、本明細書においてさらに説明されるように、オーディオデータを処理してテキストにし、オーディオデータのテキスト表現を第3の自動アシスタント245に提供する場合がある。一部の実装において、オーディオデータは、処理されてテキストにされない場合があり、その代わりに、生オーディオデータとして自動アシスタントのうちの1つまたは複数に提供される場合がある。
図3Bを参照すると、主たる自動アシスタント305のコンポーネントが示される。前述のように、主たる自動アシスタント305は、図3Bに図示されるコンポーネント以外の追加のコンポーネントを含み得る。追加的にまたは代替的に、1つまたは複数のコンポーネントが、主たる自動アシスタント305にない場合がある。たとえば、主たる自動アシスタント305は、クエリ処理エンジンを含み、主たる自動アシスタントと、副次的な自動アシスタントとの両方として作動する場合がある。
呼び出しエンジン335は、1つまたは複数の口頭の呼び出しフレーズを検出し、口頭の呼び出しフレーズのうちの1つの検出に応答して主たる自動アシスタント305を呼び出すように動作可能である。たとえば、呼び出しエンジン335は、「ヘイ、アシスタント」、「オーケー、アシスタント」、および/または「アシスタント」などの口頭の呼び出しフレーズの検出に応答して主たる自動アシスタント305を呼び出すことができる。呼び出しエンジン335は、口頭の呼び出しフレーズの発生を監視するために、主たる自動アシスタント305を実行するクライアントデバイスの1つまたは複数のマイクロフォンからの出力に基づくオーディオデータフレームのストリームを(たとえば、「非アクティブ」モードでない場合に)継続的に処理することができる。口頭の呼び出しフレーズの発生を監視している間に、呼び出しエンジン335は、口頭の呼び出しフレーズを含まないすべてのオーディオデータフレームを(たとえば、バッファに一時的に記憶した後)破棄する。しかし、呼び出しエンジン335が処理されるオーディオデータフレーム内で口頭の呼び出しフレーズの発生を検出するとき、呼び出しエンジン335は、主たる自動アシスタント305を呼び出すことができる。
主たる自動アシスタント305が呼び出されると、クエリを含むユーザによる口頭の発話が、主たる自動アシスタント305によって受け取られ得る。クエリは、主たる自動アシスタント305の呼び出しに先立つ、続く、および/または呼び出しと同時に提供される場合がある。一部の実装において、口頭の発話は、STTコンポーネントを利用して処理されてテキスト表現にされ得る。追加的にまたは代替的に、口頭の発話は、口頭の発話に含まれるクエリの自然言語理解を生成する(たとえば、意図、クエリの分類、1つまたは複数のパラメータを決定する)ために処理され得る。
一部の実装において、主たる自動アシスタント305は、テキスト表現および/または自然言語理解出力に基づいてクエリを分類することができる。たとえば、「大統領の身長はどのくらいか」というクエリに関して、主たる自動アシスタント305は、ユーザが質問に対する答えに関心があると判定し、クエリを「答え」クエリとして分類することができる。また、たとえば、「午後7時にディナーの予約をして」という提出されたクエリに関して、主たる自動アシスタント305は、ユーザがディナーの予約をすることに関心があると判定し、クエリを「予約」として分類することができる。主たる自動アシスタントによる分類は、たとえば、クエリの文脈(context)、クエリの1つもしくは複数の用語、および/またはユーザの意図のその他のインジケーションに基づいて実行され得る。
一部の実装において、主たる自動アシスタント305は、ユーザから受け取られるクエリを処理することができる1つまたは複数の副次的な自動アシスタントを特定することができる。一部の実装において、1つまたは複数の副次的な自動アシスタントは、主たる自動アシスタント305に、その副次的な自動アシスタントが処理し得るクエリの種類および/またはその副次的な自動アシスタントがインタラクションし得るアプリケーションのインジケーションを提供することができる。たとえば、再び図3Aを参照すると、副次的な自動アシスタント310は、予約アプリケーションとインタラクションするように構成される場合があり、主たる自動アシスタント305に、その副次的な自動アシスタント310が「予約」クエリを処理し得るというインジケーションを提供することができる。また、たとえば、副次的な自動アシスタントは、全般的な情報クエリを処理し、主たる自動アシスタント305に、その副次的な自動アシスタントが「答え」クエリを処理し得るというインジケーションを提供することができるクエリ処理エンジンを用いて構成されてよい。したがって、主たる自動アシスタント305は、ユーザから受け取られるクエリの分類を処理するように構成される副次的な自動アシスタントにのみクエリを提供することができる。
主たる自動アシスタント305は、本明細書においてさらに説明されるように、処理されたクエリを副次的なアシスタント310、315、および/または320に提供することができ、それから、副次的な自動アシスタント310、315、および/または320は、クエリに対する応答を決定するためにクエリを処理することができる。一部の実装において、主たる自動アシスタントは、アプリケーションプログラミングインターフェース(API)355を介して副次的な自動アシスタントにオーディオデータとしてクエリを提供する場合がある。一部の実装においては、主たる自動アシスタント305が、まず、オーディオデータを処理してテキストを生成する場合があり、それから、そのテキストが、API 355を介して副次的な自動アシスタント310に提供される場合がある。一部の実装において、主たる自動アシスタント305は、クエリのオーディオデータおよび/またはテキストの文字起こし(transcription)をスピーカを介して提供する場合がある。たとえば、主たる自動アシスタント305は、副次的な自動アシスタントを実行するデバイスのマイクロフォンによってキャプチャされる場合がある、人間には聞こえない超音波信号を生成してよい。この信号は、たとえば、クエリを含むオーディオデータの処理されたバージョン(たとえば、より高い周波数へと処理された生オーディオデータ、および/またはスピーカを介して送信されるが人間には聞こえないオーディオデータのテキスト表現)であってよい。一部の実装において、クエリのオーディオデータおよび/またはテキスト表現は、特定の副次的な自動アシスタントのみが送信に含まれる情報を復号することができるように送信前に符号化され、したがって、主たる自動アシスタント305が意図された副次的な自動アシスタントのみに情報を選択的に提供することを可能にし得る。
それぞれの副次的な自動アシスタントは、その副次的な自動アシスタントに関して決定された信頼レベルを示す1つまたは複数の信頼測定基準に関連付けられ得る。一部の実装において、副次的な自動アシスタントは、その副次的な自動アシスタントの全般的な信頼レベルを示す単一の信頼測定基準に関連付けられる場合がある。一部の実装において、副次的な自動アシスタントは、複数の信頼測定基準に関連付けられてよく、それらの信頼測定基準の各々は、特定の種類のクエリを受け取る際の副次的な自動アシスタントの信頼レベルを示す。たとえば、副次的な自動アシスタントは、「答え」の処理に関する信頼レベルを示す信頼測定基準と、「予約」クエリの処理に関する信頼レベルを示す第2の信頼測定基準とを有する場合がある。
一部の実装において、副次的な自動アシスタントの信頼測定基準は、副次的な自動アシスタントとの1人のユーザ(または複数のユーザ)の過去のインタラクションに基づき得る。たとえば、図3Aを参照すると、ユーザは、副次的な自動アシスタント315よりも頻繁に副次的な自動アシスタント310とインタラクションする場合がある。それに応じて、信頼測定基準エンジン340は、副次的な自動アシスタント315に割り振られる信頼測定基準値よりも信頼を示す信頼測定基準値を副次的な自動アシスタント310に割り振ってよい。また、たとえば、ユーザは、ディナーを予約するために副次的な自動アシスタント310および320よりも頻繁に副次的な自動アシスタント315を利用する場合がある。それに応じて、その他の副次的なアシスタントに割り振られる「予約」クエリに関する信頼測定基準値よりも、「予約」クエリに関する副次的な自動アシスタント315への信頼をより示す、副次的な自動アシスタント315の「予約」クエリに関する信頼測定基準値が割り振られてよい。
別の例として、ユーザは、副次的な自動アシスタント320とほとんど、またはまったくインタラクションしない場合がある。これは、副次的な自動アシスタント320からの過去の応答の品質、および/または副次的な自動アシスタント320がデバイスにインストールされたことをユーザが忘れてしまったことが原因である可能性がある。それに応じて、信頼測定基準エンジン340は、ユーザがより頻繁にインタラクションするその他の副次的な自動アシスタントよりも信頼を示さない信頼測定基準値を割り振られてよい。しかし、場合によっては、副次的な自動アシスタントは、特定の種類のクエリだけを処理するように特化していてよい。副次的な自動アシスタントが低い信頼測定基準値が原因で主たる自動アシスタント305によって削除および/または無視されることを防止するために、副次的な自動アシスタント320によって処理され得る種類のクエリに関する信頼測定基準値は、副次的な自動アシスタント320とのユーザのインタラクションの欠如によって影響されない場合がある。
一部の実装において、副次的な自動アシスタントの信頼測定基準は、副次的な自動アシスタントのインスタンスとのユーザの過去のインタラクションに基づき得る。たとえば、副次的な自動アシスタントの第1のインスタンスが、複数のユーザによって利用される場合がある。信頼測定基準値は、副次的な自動アシスタントとのすべてのユーザのインタラクションに基づいて副次的な自動アシスタントに割り振られてよい。また、たとえば、副次的な自動アシスタントの第2のインスタンスが別のユーザ(またはユーザのグループ)によって利用される場合があり、副次的な自動アシスタントにグローバルに割り振られる信頼測定基準値は、副次的な自動アシスタントの複数のインスタンスに基づいて割り振られてよい。したがって、副次的な自動アシスタントの第1のインスタンスとのユーザのインタラクションが、第2の副次的な自動アシスタントに割り振られる信頼測定基準値に影響を与え得る。
主たる自動アシスタント305は、オーディオデータが潜在的に機密である場合がある情報を含むかどうかを判定するクエリ機密性エンジン345を含む。クエリ機密性エンジン345は、ユーザによって与えられたクエリ内容に基づいて、個人を特定可能な情報および/またはユーザが1つもしくは複数の副次的な自動アシスタントが提供されることを防止することに関心がある場合があるその他の機密情報をオーディオデータが含むかどうかを判定することができる。たとえば、口頭のクエリは、生年月日、社会保障番号、住所、クレジットカード情報、カレンダーの予定、および/またはユーザがすべての副次的な自動アシスタントに提供したくない場合があるその他の情報を含むことがある。しかし、場合によっては、ユーザは、一部の副次的な自動アシスタントに提供される何らかの潜在的に機密情報に関心がある場合があり、または特定の情報は、一部の種類のクエリには必要だが、その他の種類のクエリには必要でない場合がある。したがって、クエリ機密性エンジン345は、潜在的に機密であるとみなされる情報をその他の副次的な自動アシスタントに与えながら、ある副次的な自動アシスタントが同じ情報を提供されるのを防止するために、どの情報が機密であるかを決定することができる。
再び図3Aを参照すると、副次的な自動アシスタント310、315、および320の各々の信頼測定基準に基づいて、主たる自動アシスタント305は、副次的な自動アシスタントの各々にどの情報を提供すべきかを決定することができる。たとえば、副次的な自動アシスタント310は、高い信頼を示す信頼測定基準(たとえば、しきい値を超える信頼測定基準値)を有する場合があり、クエリからの情報を、中程度の信頼測定基準値(たとえば、「高」しきい値未満であり、「低」しきい値を超える)を有する場合がある副次的な自動アシスタント315よりも多く提供されてよい。その場合、副次的な自動アシスタント315は、副次的な自動アシスタント310よりも少ない情報を提供されてよい。さらに、同じ例を続けると、副次的な自動アシスタント320は、低い信頼測定基準値(たとえば、「中」しきい値未満)を有し、信頼値が「低」しきい値を下回る場合(たとえば、「信頼できない」副次的な自動アシスタント)、さらに少ない情報を提供される、および/またはクエリをまったく提供されない場合がある。
クエリ機密性エンジン345によって特定される機密情報は、副次的な自動アシスタントの信頼測定基準に基づいて、どの副次的な自動アシスタントが特定の機密情報を提供され得るかを示す値を割り振られてよい。たとえば、オーディオデータおよび/または口頭のクエリは、ユーザの社会保障番号を含むことができ、その情報は、「高い」信頼のある副次的な自動アシスタントのみがユーザの社会保障番号を受け取ることを示す機密性値で分類されてよい。さらに、高い信頼のある副次的な自動アシスタントに関してさえ、ユーザは、特定の種類のクエリ(たとえば、医者のアポイントメントを取る)のために社会保障番号を提供することにのみ関心があり、その他のクエリ(たとえば、ディナーの予約を取る)ために社会保障番号を提供することには関心がない場合がある。また、たとえば、口頭のクエリは、ユーザの住所を含む場合があり、住所は、少なくとも中程度の信頼値(たとえば、「中」しきい値を超える値)を持つ副次的な自動アシスタントが住所を提供されるが、「中」信頼値を満たさないまたは超えない信頼測定基準を持つ副次的な自動アシスタントはユーザの住所を受け取ることを防止されてよいことを示す機密性値を割り振られる場合がある。
主たる自動アシスタント305は、処理されたクエリを1つまたは複数の副次的な自動アシスタントに提供する前に、オーディオデータを処理して処理されたクエリにすることができるクエリ処理エンジン360をさらに含む。一部の実装において、クエリ処理エンジン360は、ASR、STT、および/またはNLUを実行して、オーディオデータに含まれる口頭のクエリのテキスト表現を生成し、および/またはクエリの意図を決定してよい。一部の実装において、クエリ処理は、口頭のクエリに含まれる情報の機密性を決定する前に行われる場合がある。たとえば、クエリ処理エンジン360が、口頭のクエリのテキスト表現を生成してよく、クエリ機密性エンジン345が、テキスト表現を利用して、クエリが機密情報を含むかどうかを判定してよい。また、たとえば、クエリ処理エンジン360は、所与の処理されたクエリの分類を決定するために利用されてよいNLU出力を生成する場合がある。
図4を参照すると、本明細書において説明される方法を示す流れ図が提供される。前述のように、呼び出しエンジン335が、主たる自動アシスタント305を呼び出すユーザの口頭の発話405のオーディオデータを受け取る。一部の実装において、口頭の発話は、呼び出し406とクエリ407との両方を含む。その他の実装において、オーディオデータ405は、発話されたクエリ407および追加のオーディオ(たとえば、背景雑音、その他のユーザのしゃべり)を含み、呼び出し406が非言語的な呼び出しであるときなどには呼び出しを含まないことが可能である。オーディオデータ405は、クエリ機密性エンジン345に提供され、クエリ機密性エンジン345は、前述のように、口頭のクエリ407が機密情報を含むかどうかを判定し、さらに、特定された機密情報の機密性のレベルを決定する。それから、クエリおよび機密性情報は、クエリを処理して1つまたは複数の副次的な自動アシスタントに提供するための処理されたクエリにするためにクエリ処理エンジン360に提供され得る。
クエリに含まれるどの情報がそれぞれの副次的な自動アシスタントに提供され得るかが決定されると、クエリ処理エンジン360は、情報の一部が副次的な自動アシスタントのうちの1つまたは複数に提供されることを防止するために、クエリをさらに処理することができる。前述のように、副次的な自動アシスタントは、異なる信頼測定基準を有する場合があり、それによって、所与の口頭のクエリに関して、それぞれが何らかの情報にアクセスすることを許可される場合がある一方、その他の副次的な自動アシスタントは同じ情報にアクセスすることを許可されない場合がある。たとえば、再び図4を参照すると、クエリ処理エンジン360は、副次的な自動アシスタント310に提供するための第1の処理されたクエリ410と、副次的な自動アシスタント315に提供するための第2の処理されたクエリと、副次的な自動アシスタント320に提供するための第3の処理されたクエリ420とを生成してよい。処理されたクエリの各々は、口頭のクエリ407に含まれる情報の一部を含み得るが、クエリのその他の部分は除外されるおよび/またはそうでなければ難読化される。
場合によっては、オーディオデータは、クエリ処理エンジン360によってまったく処理されない場合があり、オーディオデータおよび/または口頭のクエリは、その全体が提供される(たとえば、しきい値を超える信頼測定基準値を持つ副次的な自動アシスタントに提供される)場合がある。たとえば、図5を参照すると、処理されたクエリの例が提供される。クエリ407は、クエリ処理エンジン360に提供され、クエリ処理エンジン360は、処理されたクエリとして副次的な自動アシスタント310、315、および320の各々に何を提供するかを決定することができる。クエリ407に関して、提供された処理されたクエリ410、415、および420の各々は、異なる情報を含む。この例のために、副次的な自動アシスタント310は、第1の信頼測定基準を有し、副次的な自動化された315は、副次的な自動アシスタント310よりも信頼を示さない第2の信頼測定基準を有し、副次的な自動アシスタント320は、副次的な自動アシスタント315よりも信頼を示さない信頼測定基準を有する(たとえば、「高」、「中」、および「低」信頼測定基準)。副次的な自動アシスタント310に関して既に説明されたように、クエリ407は、情報のいずれも除外および/または難読化されることなく、処理されたクエリ410として提供される。この場合、処理は、背景雑音の除外、口頭のクエリの一部でない発話の除外、オーディオのその他の部分に対する口頭のクエリの顕著さ(prominence)の調整、口頭のクエリの話者の匿名化、および/またはクエリ407を含む口頭の発話の部分に影響を与えないその他の処理を含んでよい。
一部の実装において、オーディオデータを処理することは、処理されたクエリを生成するためにオーディオデータの一部を除外することを含み得る。たとえば、クエリ処理エンジン360は、オーディオデータの一部が削除され、残りの部分がオーディオデータに含まれるように、口頭のクエリ407を含むオーディオデータを処理することができる。そのとき、副次的な自動アシスタント315は、ASR、STT、および/またはNLUなどの、処理されたオーディオデータの追加の処理を実行し、オーディオデータの残りの部分に基づいて応答を生成することができる。たとえば、クエリ407の場合、「私の医者の」を含む部分が、オーディオデータから除外されることが可能であり、「私のアポイントメントの後にディナーの予約をして。私の番号は555-5555。」という処理されたクエリが生成されることが可能である。別の例として、ユーザは、クエリの種類に不要な情報を含める場合がある。その場合、不要な情報は、その他の点では副次的な自動アシスタントが情報を所有することを認可する信頼測定基準値があっても、その情報が除外されるように、クエリから除外される場合がある(たとえば、「レストランのディナーの予約をして。私の住所は123 E. Main Street」およびユーザの住所を含む部分の除外)。
一部の実装において、処理されたクエリを生成するためにオーディオデータを処理することは、オーディオデータの少なくとも一部をマスクするためにオーディオデータに追加のオーディオを導入することを含み得る。たとえば、処理されたクエリ415は、ユーザの電話番号を含むオーディオデータの部分をマスクする不可聴部分を含む。これは、電話番号がクエリを実行するために不要であるため、および/または副次的な自動アシスタントが、その信頼測定基準値に基づいて、ユーザの電話番号にアクセスすることを許可されないためである場合がある。不可聴部分は、無音、白色雑音、代替オーディオデータ、および/または機密情報を含む部分以外のその他の可聴オーディオであってよい。したがって、副次的な自動アシスタント315は、処理されたクエリに対してASR、STT、および/またはNLUを実行するとき、機密情報を含めない。
一部の実装において、クエリを処理することは、オーディオデータのテキスト表現を生成することを含み得る。たとえば、処理されたクエリ420は、クエリを含む実際のオーディオデータを含むことなく、クエリの文字起こしを含む。一部の実装において、クエリを処理することは、クエリのテキスト表現の少なくとも一部を除外することをさらに含み得る。そのとき、副次的な自動アシスタント320は、応答を生成するために、クエリのテキスト表現に対してNLUおよび/またはその他の処理を実行することができる。
一部の実装において、オーディオデータを処理することは、クエリに含まれる情報の少なくとも一部を匿名化および/または一般化することを含み得る。たとえば、処理されたクエリ415を再び参照すると、クエリ処理エンジン360は、ユーザが医師のアポイントメントを取ってあるという情報を含まない処理されたクエリを生成した。その代わりに、処理されたクエリは、「5時以降に」を適切な位置に含む。したがって、その信頼測定基準に基づいて、副次的な自動アシスタント315は、所望のディナーの予約時間の目的を提供されず、その代わりに、ディナーの予約をするのに十分な情報(すなわち、クエリの必要な部分)を提供されるが、機密情報(すなわち、ディナーの予約をするのに不要な情報)は提供されない。
主たる自動アシスタント305が1つまたは複数の処理されたクエリを生成すると、処理されたクエリは、副次的な自動アシスタントのうちの1つまたは複数に提供され得る。図5に示されるように、異なる処理されたクエリが、自動アシスタントの信頼測定基準に基づいてそれぞれの自動アシスタントに提供されてよい。処理されたクエリは、前述のように、API、超音波オーディオ、および/またはその他の通信プロトコルを介して提供され得る。
処理されたクエリの提供に応答して、副次的な自動アシスタントの各々は、受け取られたクエリを処理し、クエリに対する応答を生成することができる。提供されたクエリを処理することは、たとえば、副次的な自動アシスタントがクエリに対してASR、STT、および/またはNLUを実行すること、ならびにクエリに対する応答を生成するように構成されるクエリ処理エンジンを利用することを含み得る。また、たとえば、副次的な自動アシスタントは、応答を生成するために、クエリの少なくとも一部を1つまたは複数のサードパーティアプリケーションに提供する場合がある(たとえば、ディナーの予約をするために、ディナー予約アプリケーションに情報を提供する)。応答は、TTSにより自動アシスタントによって生成されたオーディオ応答であることが可能であり、および/または応答は、テキストであることが可能である。一部の実装において、処理されたクエリを提供される副次的な自動アシスタントのうちの1つまたは複数は、応答を提供しない場合がある。たとえば、副次的な自動アシスタントは、そのアクションを実行することを認可されていない、および/またはディナー予約アプリケーションとインタラクションするように構成されていない場合、ディナー予約クエリに応答しない場合がある。また、たとえば、副次的な自動アシスタントは、情報を受け取るだけで、クエリには応答しないように構成される場合がある。
一部の実装において、処理されたクエリを提供された副次的な自動アシスタントのうちの1つまたは複数は、クエリに対する生成された応答を主たる自動アシスタントに提供することができる。たとえば、再び図4を参照すると、応答分析エンジン350が、副次的な自動アシスタント310、315、および320から応答510、515、および520を受け取ることができる。場合によっては、副次的な自動アシスタントからの応答は、答えおよび/またはアクションが実行されたことの確認を含み得る。たとえば、再び図5を参照すると、応答510は、予約が正常に取られたことを示す。
一部の実装において、副次的な自動アシスタントは、処理されたクエリに対する応答を提供しない場合がある。たとえば、副次的な自動アシスタントは、主たる自動アシスタントによって提供されたクエリの分類に応答するように構成されていない場合があり、ならびに/または副次的な自動アシスタントは、好適な答えを決定しなかった可能性があり、および/もしくは要求されたアクションを実行することができなかった。それらの場合、副次的な自動アシスタントは、応答をまったく提供しない場合があり、またはその副次的な自動アシスタントが応答を正常に生成することができなかったことを示す応答(たとえば、「申し訳ありません、そのアクションを実行できません」)を提供する場合がある。
一部の実装において、副次的な自動アシスタントから受け取られる応答は、追加の情報の要求を含む場合がある。たとえば、再び図5を参照すると、副次的な自動アシスタント315は、提供されたクエリがユーザの電話番号を含まなかったので、「あなたの電話番号を教えてください」という応答を提供した。一部の実装において、副次的な自動アシスタントの追加クエリ(follow-up query)は、要求されたアクションを実行するために必要とされ、副次的な自動アシスタントがアクセスする権限を有する追加の情報のためのものである場合がある。一部の実装において、副次的な自動アシスタントは、提供されたクエリと無関係であり、および/または要求を充足するために不要な情報を要求する場合がある(たとえば、ディナーの予約をする要求のための社会保障番号の要求)。
再び図3Bを参照すると、主たる自動アシスタント305は、副次的な自動アシスタントから受け取られた応答を分析することができる応答分析エンジン350を含む。一部の実装において、主たる自動アシスタント305は、副次的な自動アシスタントからのどの応答がユーザによって与えられたクエリを最もよく充足するかを決定することができる。たとえば、再び図5を参照すると、主たる自動アシスタント305は、応答510、515、および520を提供される場合がある。示されているように、応答510がクエリの正常な充足を示す一方、応答515と520との両方は、追加の情報の要求である。この場合、応答分析エンジン350は、最良の応答が応答510であると決定し、その応答をユーザに提供してよい。一部の実装において、応答は、発信元の副次的な自動アシスタントが提供されることを認可されていない、および/または要求を充足するために不要な追加の情報のためのものである場合がある(たとえば、ディナーの予約をするための社会保障番号の要求)。その場合、応答分析エンジン350は、その応答をユーザに提供しないと決定してよい。
一部の実装において、主たる自動アシスタント305は、応答を提供した副次的な自動アシスタントに関連する信頼測定基準に基づいて、クエリに対する応答が認可されるかどうかを判定することができる。たとえば、副次的な自動アシスタントは、追加の情報の要求を含む応答を提供する場合がある。主たる自動アシスタント305は、副次的な自動アシスタントの信頼測定基準に基づいて、副次的な自動アシスタントが、要求される情報を受け取ることを認可されるかどうかを判定することができる。図5を参照すると、副次的な自動アシスタント315は、ユーザの電話番号の要求を含む応答515を提供した。副次的な自動アシスタント315の信頼測定基準が、副次的な自動アシスタント315がユーザの電話番号を提供することを許可されるしきい値未満である場合、応答分析エンジン350は、ユーザにどの応答を提供するかを決定する際のさらなる検討からその応答を外してよい。示されるように、ユーザは、ユーザの電話番号を含む応答525で応答した。したがって、場合によっては、副次的な自動アシスタントは、副次的な自動アシスタントが要求を充足するためにユーザが明示的に情報を提供したときには、そうでなければ副次的な自動アシスタントがアクセスすることができないその情報を提供される場合がある。
一部の実装において、信頼測定基準エンジン340は、応答分析エンジン350の分析に基づいて、副次的な自動アシスタントに関連する信頼測定基準のうちの1つまたは複数を調整することができる。一部の実装において、1人のユーザ(または複数のユーザ)が副次的な自動アシスタントとインタラクションするとき、ユーザの1つまたは複数のアクションが、副次的な自動アシスタントを利用する際のユーザの信頼を示す場合がある。たとえば、ユーザは、副次的な自動アシスタントと頻繁にインタラクションしない場合があり、および/または副次的な自動アシスタントとまったくインタラクションしない場合がある。それらの場合、副次的な自動アシスタントの信頼測定基準は、自動アシスタントがより信頼できないことを示すように調整され、それによって、潜在的に機密情報への副次的な自動アシスタントによるアクセスを制限してよい。別の例として、ユーザは、副次的な自動アシスタントの応答に応答しない(または否定的に応答する)場合があり、副次的な自動アシスタントの信頼測定基準は、副次的な自動アシスタントへの信頼をより示さない値に調整され、それによって、特に副次的な自動アシスタントがアクセスすることを許可されない追加の情報の要求を応答が含む場合に、その副次的な自動アシスタントからの応答がユーザに提供される可能性をより低くしてよい。再び図5を参照すると、副次的な自動アシスタント320は、「あなたの自宅の住所を教えてください」という応答を提供し、それに対して、ユーザは、「だめです。」と応答した(530)。それに応じて、信頼測定基準エンジン340は、副次的な自動アシスタント320の要求に対するユーザによる否定的な応答に基づいて、信頼をより示さないように副次的な自動アシスタント320の信頼測定基準を調整してよい。
一部の実装においては、副次的な自動アシスタントの1つまたは複数のアクションが、副次的な自動アシスタントに適切な信頼(またはその欠如)を示す場合がある。たとえば、副次的な自動アシスタントは、副次的な自動アシスタントがアクセスすることを認可されていない、および/または主たる自動アシスタントから受け取られてクエリには不要な追加の情報の(たとえば、ディナーの予約をするために社会保障番号を求める)要求を生成する場合がある。副次的な自動アシスタントの信頼測定基準は、ユーザの情報への副次的な自動アシスタントによるアクセスをさらに制限するために、信頼をより示さないレベルに調整されてよい。また、たとえば、副次的なアシスタントは、副次的なアシスタントが潜在的に機密情報を含むクエリを処理することができないことを示す1つまたは複数の応答(たとえば、「それについてはお手伝いすることができません」)を生成する場合があり、信頼測定基準は、自動アシスタントが潜在的に機密情報を提供されたが、意図されたアクションを実行するおよび/または意図された応答を提供するために機密情報を利用していないことの特定に基づいて調整され得る(たとえば、繰り返される失敗した応答に基づいて信頼測定基準を下げる)。
一部の実装において、信頼測定基準エンジン340は、ユーザからの応答の1つまたは複数のその他の特性に基づいて、副次的な自動アシスタントの信頼測定基準を調整し得る。たとえば、信頼測定基準エンジン340は、ユーザが自動アシスタントに応答する際のレイテンシに基づいて、副次的な自動アシスタントの信頼測定基準を調整し得る(たとえば、より長い応答時間は、追加の情報の要求に応答する際のユーザの信頼を示す場合がある)。また、たとえば、信頼測定基準エンジン340は、応答を処理するため、および/または自動アシスタントによって生成される追加の情報の要求を処理するために必要とされる計算リソースに基づいて、信頼測定基準を調整し得る。
一部の実装において、信頼測定基準エンジン340は、1つまたは複数のその他の応答との1つの応答の類似度に基づいて、副次的な自動アシスタントの信頼測定基準を調整し得る。たとえば、応答分析エンジン350は、第1の信頼測定基準を有する第1の副次的な自動アシスタントからの応答が、第2の副次的な自動アシスタントからの応答としきい値の類似度以内にあると判定する(たとえば、埋め込み空間において各応答のベクトルを生成し、ベクトルを比較する)場合があり、第2の信頼測定基準は、第1の信頼測定基準よりも低い。信頼測定基準エンジン340は、その応答がより信頼できる副次的な自動アシスタントからの応答と類似しているという判定に基づいて、信頼をより示すように第2の信頼測定基準を調整してよい。
一部の実装において、応答測定基準エンジン340は、副次的な自動アシスタントが、悪意を持ってかまたは不注意でかのどちらかで、異なる副次的な自動アシスタントを真似てその応答を生成しよう試みているという判定に基づいて、副次的な自動アシスタントの信頼測定基準を調整し得る。たとえば、副次的な自動アシスタントは、同じ声を使用する、応答を提供している副次的な自動アシスタント以外の副次的な自動アシスタントのインジケーションを含む、および/または応答の発信元に関してユーザによる混同を引き起こす可能性があるその他の模倣する挙動など、異なる自動アシスタントからのオーディオ応答を模倣するオーディオ応答を生成する場合がある。
一部の実装において、副次的な自動アシスタントの信頼測定基準がしきい値を下回るとき、ユーザは、副次的な自動アシスタントが信頼できない可能性があることを警告されてよい。追加的にまたは代替的に、副次的な自動アシスタントは、潜在的に機密情報へのアクセスをさらに制限するために非アクティブ化および/またはアンインストールされる場合がある。たとえば、副次的な自動アシスタントは、常に、副次的な自動アシスタントが提供することを認可されていない追加の情報を要求している、および/または提供されたクエリに応答するために不要な情報を要求している場合がある。副次的な自動アシスタントの信頼測定基準が下げられるとき、信頼測定基準がしきい値の信頼レベルを下回る場合があり、ユーザが警告される場合があり、副次的な自動アシスタントが非アクティブ化される場合があり、および/または副次的な自動アシスタントがユーザデバイスからアンインストールされる場合がある。
図6は、ユーザのクエリ内の機密情報を検出する例示的な方法600を示す流れ図を示す。便宜上、方法600の動作は、動作を実行するシステムに関連して説明される。方法600のこのシステムは、クライアントデバイスの1つまたは複数のプロセッサおよび/またはその他のコンポーネントを含む。さらに、方法600の動作は特定の順序で示されるが、これは、限定的であるように意図されていない。1つまたは複数の動作が、順序を変えられるか、除外されるか、または追加されてよい。
ステップ605において、呼び出しが、高位の自動アシスタントによって受け取られる。高位の自動アシスタントは、本明細書において説明されるように、主たる自動アシスタントであってよい。たとえば、高位の自動アシスタントは、特定のフレーズ、ユーザによるジェスチャ、および/またはその他のアクションなどの呼び出しによって呼び出されるように構成される主たる自動アシスタントであってよい。高位の自動アシスタントは、クエリに対する応答を生成するように構成されないが、その代わりに、さらなる処理のためにその他の副次的な自動アシスタントにクエリを提供するように構成される自動アシスタントであることが可能である。一部の実装において、高位の自動アシスタントは、主たる自動アシスタント305と1つまたは複数の特徴を共有する場合がある。
ステップ610において、高位の自動アシスタントは、ユーザの口頭のクエリをキャプチャするオーディオデータを受け取る。口頭のクエリは、自動アシスタントが1つまたは複数のアクションを実行する要求であることが可能である。たとえば、口頭のクエリは、クエリに対する答えの要求、副次的な自動アシスタントが1つもしくは複数のその他のアプリケーションとインタラクションする要求、および/または要求されたアクションを実行するように構成される副次的な自動アシスタントによって実行され得る1つもしくは複数のその他のアクションを含むことが可能である。
ステップ615において、副次的な自動アシスタントの信頼測定基準が特定される。副次的な自動アシスタントの信頼測定基準は、副次的な自動アシスタントのインスタンスとの1人または複数のユーザの過去のインタラクションに基づき得る。たとえば、副次的な自動アシスタントの信頼測定基準は、1人のユーザまたは複数のユーザが副次的な自動アシスタントの単一のインスタンスとインタラクションすることに基づき得る。また、たとえば、副次的な自動アシスタントの信頼測定基準は、複数のユーザがそれぞれが異なるクライアントデバイスにインストールされた副次的な自動アシスタントの複数のインスタンスとインタラクションすることに基づき得る。
ステップ620において、オーディオデータが、処理されたクエリを生成するために、信頼レベルに基づいて処理される。クエリを処理することは、たとえば、口頭のクエリを含むオーディオデータの一部を除外すること、口頭のクエリの一部をマスクすること、クエリのテキスト表現を生成すること、クエリ内の1つもしくは複数の用語を一般化すること、ならびに/またはクエリに含まれる情報の少なくとも一部を難読化、マスク、および/もしくは除外することができるその他のアクションを含み得る。
ステップ625において、処理されたクエリが、副次的な自動アシスタントに提供される。処理されたクエリは、オーディオデータとして、口頭のクエリのテキスト表現として、および/またはNLU出力として提供され得る。一部の実装において、高位の自動アシスタントは、1もしくは複数のAPIを介して、高位の自動アシスタントを実行しているデバイスのスピーカを介してブロードキャストされる可聴信号を介して、および/またはその他の通信プロトコルを介してクエリを提供することができる。一部の実装において、処理されたクエリは、処理のために複数の副次的な自動アシスタントに提供される。複数の自動アシスタントが、受け取る副次的な自動アシスタントの信頼測定基準に基づいてそれぞれが異なるように処理された口頭のクエリの異なるバージョンをそれぞれ提供されてよい。
図7は、本明細書において説明される技術の1つまたは複数の態様を実行するために任意で利用されてよい、例示的なコンピューティングデバイス710のブロック図である。概して、コンピューティングデバイス710は、バスサブシステム712を介していくつかの周辺デバイスと通信する少なくとも1つのプロセッサ714を含む。これらの周辺デバイスは、たとえば、メモリサブシステム725およびファイルストレージサブシステム726を含むストレージサブシステム724、ユーザインターフェース出力デバイス720、ユーザインターフェース入力デバイス722、ならびにネットワークインターフェースサブシステム716を含んでよい。入力および出力デバイスは、コンピューティングデバイス710とのユーザのインタラクションを可能にする。ネットワークインターフェースサブシステム716は、外部ネットワークへのインターフェースを提供し、その他のコンピューティングデバイスの対応するインターフェースデバイスに結合される。
ユーザインターフェース入力デバイス722は、キーボード、マウス、トラックボール、タッチパッド、もしくはグラフィックスタブレットなどのポインティングデバイス、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システムなどのオーディオ入力デバイス、マイクロフォン、および/またはその他の種類の入力デバイスを含んでよい。概して、用語「入力デバイス」の使用は、コンピューティングデバイス710または通信ネットワークに情報を入力するためのすべての可能な種類のデバイスおよび方法を含むように意図される。
ユーザインターフェース出力デバイス720は、ディスプレイサブシステム、プリンタ、ファックスマシン、またはオーディオ出力デバイスなどの非視覚的表示を含んでよい。ディスプレイサブシステムは、ブラウン管(CRT)、液晶ディスプレイ(LCD)などのフラットパネルデバイス、プロジェクションデバイス、または可視画像を生成するための何らかのその他のメカニズムを含んでよい。ディスプレイサブシステムは、オーディオ出力デバイスを介するなどして非視覚的表示を提供する場合もある。概して、用語「出力デバイス」の使用は、コンピューティングデバイス710からユーザまたは別のマシンもしくはコンピューティングデバイスに情報を出力するすべての可能な種類のデバイスおよび方法を含むように意図される。
ストレージサブシステム724は、本明細書において説明されるモジュールの一部またはすべての機能を提供するプログラミングおよびデータ構造を記憶する。たとえば、ストレージサブシステム724は、図5および図6の方法の選択された態様を実行するため、ならびに/または図2および図3に示された様々なコンポーネントを実装するための論理を含んでよい。
これらのソフトウェアモジュールは、概して、プロセッサ714によって単独で、またはその他のプロセッサとの組合せで実行される。ストレージサブシステム724において使用されるメモリ725は、プログラムの実行中の命令およびデータの記憶のための主ランダムアクセスメモリ(RAM)730と、決まった命令が記憶される読み出し専用メモリ(ROM)732とを含むいくつかのメモリを含み得る。ファイルストレージサブシステム726は、プログラムおよびデータファイルのための永続的ストレージを提供することができ、ハードディスクドライブ、関連する取り外し可能な媒体をともなうフロッピーディスクドライブ、CD-ROMドライブ、光学式ドライブ、または取り外し可能なメディアカートリッジを含んでよい。特定の実装の機能を実装するモジュールは、ストレージサブシステム724内のファイルストレージサブシステム726によって、またはプロセッサ714によりアクセスされ得るその他のマシンに記憶される場合がある。
バスサブシステム712は、コンピューティングデバイス710の様々なコンポーネントおよびサブシステムに意図されたように互いに通信させるためのメカニズムを提供する。バスサブシステム712は単一のバスとして概略的に示されているが、バスサブシステムの代替的な実装は、複数のバスを使用する場合がある。
コンピューティングデバイス710は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、または任意のその他のデータ処理システムもしくはコンピューティングデバイスを含む様々な種類であることが可能である。コンピュータおよびネットワークの変わり続ける性質が原因で、図7に示されたコンピューティングデバイス710の説明は、いくつかの実装を示すことを目的とする特定の例としてのみ意図される。図7に示されたコンピューティングデバイスよりも多くのまたは図7に示されたコンピューティングデバイスよりも少ないコンポーネントを有するコンピューティングデバイス710の多くのその他の構成が、可能である。
一部の実装においては、1つまたは複数のプロセッサによって実施される方法が提供され、高位の自動アシスタントによって呼び出しを受け取るステップであって、呼び出しの受け取りが、高位の自動アシスタントを呼び出させる、ステップと、高位の自動アシスタントを介して、呼び出しに応答して、口頭のクエリをキャプチャし、クライアントデバイスの1つまたは複数のマイクロフォンによって生成されるオーディオデータを受け取るステップと、副次的な自動アシスタントの信頼測定基準を特定するステップであって、信頼測定基準が、副次的な自動アシスタントのインスタンスとの1人または複数のユーザの過去のインタラクションに基づく、ステップと、高位の自動アシスタントによって、処理されたクエリを生成するために信頼測定基準に基づいてオーディオデータを処理するステップと、処理されたクエリを副次的な自動アシスタントに提供するステップとを含む。
本明細書において開示されるテクノロジーのこれらのおよびその他の実装は、以下の特徴のうちの1つまたは複数を含み得る。
一部の実装において、方法は、追加の副次的な自動アシスタントの追加の信頼測定基準を特定するステップであって、追加の信頼測定基準が、追加の副次的な自動アシスタントのインスタンスとの1人または複数のユーザの過去のインタラクションに基づく、ステップと、高位の自動アシスタントによって、追加の処理されたクエリを生成するために追加の信頼測定基準に基づいてオーディオデータを処理するステップであって、追加の処理されたクエリが、処理されたクエリと異なる、ステップと、追加の処理されたクエリを追加の副次的な自動アシスタントに提供するステップとをさらに含む。それらの実装の一部において、処理されたクエリは、オーディオデータの少なくとも一部を含み、追加の処理されたクエリは、オーディオデータのいずれかを欠くが、オーディオデータに基づいて生成された少なくともいくつかの音声認識結果、および/または少なくともいくつかの音声認識結果に基づいて生成された自然言語理解データを含む。それらの実装のその他において、処理されたクエリは、オーディオデータの所与の部分を含み、追加の処理されたクエリは、オーディオデータの所与の部分を欠くか、またはオーディオデータの所与の部分の難読化されたバージョンを含む。
一部の実装において、追加の処理されたクエリを生成するために追加の信頼測定基準に基づいて口頭のクエリを処理することは、追加の信頼測定基準に基づいて、処理されたクエリから特定の特徴を除外すると決定することと、所与の部分が特定の特徴を含むと判定することと、所与の部分が特定の特徴を含むという判定に応答して、追加の処理されたクエリからオーディオデータの所与の部分を削除するか、または追加の処理されたクエリからのオーディオデータの所与の部分を難読化することとを含む。それらの実装の一部において、所与の部分が特定の特徴を含むと判定することは、所与の部分が機密情報を含むと判定することを含む。
一部の実装において、処理されたクエリは、オーディオデータの特定の部分に関する音声認識結果を含み、追加の処理されたクエリは、オーディオデータの特定の部分に関する音声認識結果を欠いている。
一部の実装において、信頼レベルに基づいてオーディオデータを処理することは、口頭のクエリに含まれる機密情報を特定することを含み、しきい値を満たし得ない信頼レベルに応答して、方法は、処理されたクエリから機密情報を除外するステップをさらに含む。それらの実装の一部において、オーディオデータを処理するステップは、口頭のクエリに含まれる機密情報の種類を決定することであって、しきい値が、機密情報の種類に基づく、決定することを含む。それらの実装のその他において、処理されたクエリは、オーディオデータの第1のサブセットを含むが、オーディオデータの第2のサブセットを除外し、オーディオデータの第2のサブセットは、機密情報を含み、処理されたクエリから機密情報を除外するステップは、オーディオデータの第2のサブセットを除外することを含む。それらの実装のさらにその他において、処理されたクエリは、オーディオデータの第1のサブセットおよびオーディオデータの第2のサブセットを含み、オーディオデータの第2のサブセットは、機密情報を含み、処理されたクエリから機密情報を除外するステップは、オーディオデータの第2のサブセットを難読化することを含む。それらの実装の一部において、オーディオデータの第2のサブセットを難読化することは、オーディオデータの第2のサブセットの少なくとも一部の一般化を決定することを含み、オーディオデータの第2のサブセットを難読化することは、オーディオデータの第2のサブセットを一般化で置き換えることを含む。
一部の実装において、オーディオデータを処理するステップは、自動音声認識を使用して、口頭のクエリを示すテキストを生成することを含む。
一部の実装において、方法は、副次的な自動アシスタントから応答を受け取るステップと、応答が口頭のクエリを発話したユーザの意図を充足しないと判定するステップと、応答がユーザの意図を充足しないという判定に応答して、応答が口頭のクエリを発話したユーザに提供されることを防止するステップとをさらに含む。
一部の実装において、方法は、副次的な自動アシスタントから応答を受け取るステップであって、応答が、口頭のクエリを発話したユーザが追加の情報を提供する要求を含む、ステップと、信頼レベルに基づいて、副次的な自動アシスタントが要求された追加の情報を受け取ることを認可されないと判定するステップと、副次的な自動アシスタントが要求された追加の情報を受け取ることを認可されないという判定に応答して、応答が口頭のクエリを発話したユーザに提供されることを防止するステップとをさらに含む。
一部の実装において、方法は、副次的な自動アシスタントへの口頭のクエリの提供に応答して、追加の情報の要求を受け取るステップと、口頭のクエリを発話したユーザに要求を提供するステップと、要求の提供に応答して、口頭のクエリを発話したユーザからの要求に対する後続の応答を特定するステップと、後続の応答に基づいて信頼レベルを調整するステップとをさらに含む。
一部の実装においては、1つまたは複数のプロセッサによって実施される別の方法が提供され、クライアントデバイスにおけるアシスタント呼び出しイベントの発生の検出に応答して、高位の自動アシスタントによって、ユーザの口頭のクエリをキャプチャし、クライアントデバイスの1つまたは複数のマイクロフォンによって生成されるオーディオデータを処理するステップと、副次的な自動アシスタントの以前に生成された信頼測定基準を特定するステップと、副次的な自動アシスタントの信頼測定基準がしきい値を満たすかどうかを判定するステップとを含む。信頼測定基準がしきい値を満たすという判定に応答して、方法は、オーディオデータに基づく第1の内容を副次的な自動アシスタントに提供するステップをさらに含む。信頼測定基準がしきい値を満たし得ないという判定に応答して、方法は、オーディオデータに基づく第2の内容を提供するステップであって、第2の内容が、第1の内容と異なる、ステップをさらに含む。
本明細書において開示されるテクノロジーのこれらのおよびその他の実装は、以下の特徴のうちの1つまたは複数を含み得る。
一部の実装において、第1の内容は、オーディオデータの少なくとも一部を含み、第2の内容は、オーディオデータの少なくとも一部を除外または難読化する。
一部の実装においては、1つまたは複数のプロセッサによって実施される別の方法が提供され、高位の自動アシスタントによって呼び出しを受け取るステップであって、前記呼び出しの受け取りが、高位の自動アシスタントを呼び出させる、ステップと、呼び出された高位の自動アシスタントを介して、口頭のクエリをキャプチャし、クライアントデバイスの1つまたは複数のマイクロフォンによって生成されるオーディオデータを受け取るステップと、口頭のクエリの分類を決定するステップと、副次的な自動アシスタントおよび分類に関する信頼測定基準を特定するステップであって、信頼測定基準が、副次的な自動アシスタントおよび分類に固有であり、分類に関する、副次的な自動アシスタントのインスタンスとの1人または複数のユーザの過去のインタラクションに基づく、ステップと、高位の自動アシスタントによって、処理されたクエリを生成するために信頼測定基準に基づいて口頭のクエリを処理するステップと、処理されたクエリを副次的な自動アシスタントに提供するステップとを含む。
本明細書において検討された特定の実装がユーザについての個人情報(たとえば、その他の電子的な通信から抽出されたユーザデータ、ユーザのソーシャルネットワークについての情報、ユーザの位置、ユーザの時間、ユーザのバイオメトリック情報、ならびにユーザの活動およびデモグラフィックス(demographic)情報、ユーザの間の関係など)を収集するかまたは使用する場合がある状況において、ユーザは、情報が収集されるかどうか、個人情報が記憶されるかどうか、個人情報が使用されるかどうか、および情報がユーザについてどのようにして収集され、記憶され、使用されるかを制御する1つまたは複数の機会を与えられる。つまり、本明細書において検討されたシステムおよび方法は、そのようにする関連するユーザからの明示的な認可を受け取るときにのみユーザの個人情報を収集、記憶、および/または使用する。
たとえば、ユーザは、プログラムまたは特徴がプログラムまたは特徴に関連するその特定のユーザまたはその他のユーザについてのユーザ情報を収集するかどうかを制御することを可能にされる。個人情報が収集されるべきである各ユーザは、情報が収集されるかどうかおよび情報のどの部分が収集されるべきであるかに関するパーミッションまたは認可を与えるための、そのユーザに関連する情報収集の制御を可能にする1つまたは複数の選択肢を提示される。たとえば、ユーザは、通信ネットワークを介して1つまたは複数のそのような制御の選択肢を与えられ得る。さらに、特定のデータが、個人を特定できる情報が削除されるように、記憶されるかまたは使用される前に1つまたは複数の方法で処理される場合がある。一例として、ユーザのアイデンティティ(identity)が、個人を特定できる情報が決定され得ないように処理される場合がある。別の例として、ユーザの地理的位置が、ユーザの特定の位置が決定され得ないようにより大きな地域に一般化される場合がある。
いくつかの実装が本明細書において説明され、図示されたが、本明細書において説明された機能を実行する、ならびに/あるいは結果および/または1つもしくは複数の利点を得るための様々なその他の手段および/または構造が利用されてよく、そのような変更および/または修正の各々は本明細書において説明された実装の範囲内にあるとみなされる。より広く、本明細書において説明されたすべてのパラメータ、寸法、材料、および構成は、例示的であるように意図されており、実際のパラメータ、寸法、材料、および/または構成は、教示が使用される特定の1つの応用または複数の応用に依存する。当業者は、本明細書において説明された特定の実装の多くの均等物を通常の実験だけを使用して認識するか、または突き止めることができる。したがって、上述の実装は単に例として提示されており、添付の特許請求の範囲およびその均等物の範囲内で、実装が、特に説明され、主張されたのとは異なる方法で実施される場合があることを理解されたい。本開示の実装は、本明細書において説明されたそれぞれの個々の特徴、システム、物品、材料、キット、および/または方法を対象とする。さらに、2つ以上のそのような特徴、システム、物品、材料、キット、および/または方法の任意の組合せは、そのような特徴、システム、物品、材料、キット、および/または方法が相互に矛盾しない場合は本開示の範囲に含まれる。
101 ユーザ
105 第1のスタンドアロン型インタラクティブスピーカ
110 第2のスタンドアロン型インタラクションスピーカ
115 口頭の発話
205 第1のクライアントデバイス
210 第2のクライアントデバイス
215 第1の自動アシスタント
220 第2の自動アシスタント
225 マイクロフォン
230 マイクロフォン
245 第3の自動アシスタント
305 主たる自動アシスタント
310、315、320 副次的な自動アシスタント
335 呼び出しエンジン
340 信頼測定基準エンジン
345 クエリ機密性エンジン
350 応答分析エンジン
355 API
360 クエリ処理エンジン
405 口頭の発話
406 呼び出し
407 クエリ
410 処理されたクエリ
415 処理されたクエリ
420 処理されたクエリ
510 応答
515 応答
520 応答
525 応答
600 方法
710 コンピューティングデバイス
712 バスサブシステム
714 プロセッサ
716 ネットワークインターフェースサブシステム
720 ユーザインターフェース出力デバイス
722 ユーザインターフェース入力デバイス
724 ストレージサブシステム
725 メモリサブシステム
726 ファイルストレージサブシステム
730 RAM
732 ROM

Claims (19)

  1. クライアントデバイスの1つまたは複数のプロセッサによって実施される方法であって、
    呼び出しを高位の自動アシスタントによって受け取るステップであって、前記呼び出しの受け取りが、前記高位の自動アシスタントを呼び出させる、ステップと、
    前記高位の自動アシスタントを介して、呼び出しに応答して、口頭のクエリをキャプチャし、前記クライアントデバイスの1つまたは複数のマイクロフォンによって生成されるオーディオデータを受け取るステップと、
    副次的な自動アシスタントの信頼測定基準を特定するステップであって、前記信頼測定基準が、前記副次的な自動アシスタントのインスタンスとの1人または複数のユーザの過去のインタラクションに基づく、ステップと、
    前記高位の自動アシスタントによって、処理されたクエリを生成するために前記信頼測定基準に基づいて前記オーディオデータを処理するステップと、
    前記処理されたクエリを前記副次的な自動アシスタントに提供するステップと
    を含む、方法。
  2. 追加の副次的な自動アシスタントの追加の信頼測定基準を特定するステップであって、前記追加の信頼測定基準が、前記追加の副次的な自動アシスタントのインスタンスとの1人または複数のユーザの過去のインタラクションに基づく、ステップと、
    前記高位の自動アシスタントによって、追加の処理されたクエリを生成するために前記追加の信頼測定基準に基づいて前記オーディオデータを処理するステップであって、前記追加の処理されたクエリが、前記処理されたクエリと異なる、ステップと、
    前記追加の処理されたクエリを前記追加の副次的な自動アシスタントに提供するステップと
    をさらに含む請求項1に記載の方法。
  3. 前記処理されたクエリが、前記オーディオデータの少なくとも一部を含み、
    前記追加の処理されたクエリが、前記オーディオデータのいずれかを欠くが、前記オーディオデータに基づいて生成された少なくともいくつかの音声認識結果、および/または前記少なくともいくつかの音声認識結果に基づいて生成された自然言語理解データを含む請求項2に記載の方法。
  4. 前記処理されたクエリが、前記オーディオデータの所与の部分を含み、
    前記追加の処理されたクエリが、前記オーディオデータの前記所与の部分を欠くか、または前記オーディオデータの前記所与の部分の難読化されたバージョンを含む請求項2に記載の方法。
  5. 前記追加の処理されたクエリを生成するために前記追加の信頼測定基準に基づいて前記口頭のクエリを処理するステップが、
    前記追加の信頼測定基準に基づいて、前記処理されたクエリから特定の特徴を除外すると決定することと、
    前記所与の部分が前記特定の特徴を含むと判定することと、
    前記所与の部分が前記特定の特徴を含むという判定に応答して、
    前記追加の処理されたクエリから前記オーディオデータの前記所与の部分を削除することか、または前記追加の処理されたクエリからの前記オーディオデータの前記所与の部分を難読化することと
    を含む請求項4に記載の方法。
  6. 前記所与の部分が前記特定の特徴を含むと判定することが、前記所与の部分が機密情報を含むと判定することを含む請求項5に記載の方法。
  7. 前記処理されたクエリが、前記オーディオデータの特定の部分に関する音声認識結果を含み、
    前記追加の処理されたクエリが、前記オーディオデータの前記特定の部分に関する前記音声認識結果を欠いている請求項2に記載の方法。
  8. 前記信頼測定基準に基づいて前記オーディオデータを処理するステップが、
    前記口頭のクエリに含まれる機密情報を特定することと、
    前記信頼測定基準がしきい値を満たし得ないことに応答して、
    前記処理されたクエリから前記機密情報を除外することと
    を含む請求項1から7のいずれか一項に記載の方法。
  9. 前記オーディオデータを処理するステップが、
    前記口頭のクエリに含まれる機密情報の種類を決定することであって、前記しきい値が、機密情報の前記種類に基づく、決定することを含む請求項8に記載の方法。
  10. 前記処理されたクエリが、前記オーディオデータの第1のサブセットを含むが、前記オーディオデータの第2のサブセットを除外し、
    前記オーディオデータの前記第2のサブセットが、前記機密情報を含み、
    前記処理されたクエリから前記機密情報を除外することが、オーディオデータの前記第2のサブセットを除外することを含む請求項8または請求項9に記載の方法。
  11. 前記処理されたクエリが、前記オーディオデータの第1のサブセットおよび前記オーディオデータの第2のサブセットを含み、
    前記オーディオデータの前記第2のサブセットが、前記機密情報を含み、
    前記処理されたクエリから前記機密情報を除外することが、前記オーディオデータの前記第2のサブセットを難読化することを含む請求項8または請求項9に記載の方法。
  12. オーディオデータの前記第2のサブセットを難読化することが、
    オーディオデータの前記第2のサブセットの少なくとも一部の一般化を決定することを含み、
    前記オーディオデータの前記第2のサブセットを難読化することが、オーディオデータの前記第2のサブセットを前記一般化で置き換えることを含む請求項11に記載の方法。
  13. 前記オーディオデータを処理するステップが、
    自動音声認識を使用して、前記口頭のクエリを示すテキストを生成することを含む請求項1から12のいずれか一項に記載の方法。
  14. 前記副次的な自動アシスタントから応答を受け取るステップと、
    前記応答が、前記口頭のクエリを発話したユーザが追加の情報を提供する要求を含むことに基づいて、前記応答が前記口頭のクエリを発話した前記ユーザの意図を充足しないと判定するステップと、
    前記応答が前記ユーザの前記意図を充足しないという判定に応答して、
    前記応答が前記口頭のクエリを発話した前記ユーザに提供されることを防止するステップと
    をさらに含む請求項1から13のいずれか一項に記載の方法。
  15. 前記副次的な自動アシスタントから応答を受け取るステップであって、前記応答が、前記口頭のクエリを発話したユーザが追加の情報を提供する要求を含む、ステップと、
    前記信頼測定基準に基づいて、前記副次的な自動アシスタントが要求された前記追加の情報を受け取ることを認可されないと判定するステップと、
    前記副次的な自動アシスタントが要求された前記追加の情報を受け取ることを認可されないという判定に応答して、
    前記応答が前記口頭のクエリを発話した前記ユーザに提供されることを防止するステップと
    をさらに含む請求項1から13のいずれか一項に記載の方法。
  16. 前記副次的な自動アシスタントへの前記口頭のクエリの提供に応答して、追加の情報の要求を受け取るステップと、
    前記口頭のクエリを発話したユーザに前記要求を提供するステップと、
    前記要求の提供に応答して、前記口頭のクエリを発話した前記ユーザからの前記要求に対する後続の応答を特定するステップと、
    前記後続の応答に基づいて前記信頼測定基準を調整するステップと
    をさらに含む請求項1から13のいずれか一項に記載の方法。
  17. クライアントデバイスの1つまたは複数のプロセッサによって実施される方法であって、
    呼び出しを高位の自動アシスタントによって受け取るステップであって、前記呼び出しの受け取りが、前記高位の自動アシスタントを呼び出させる、ステップと、
    呼び出された前記高位の自動アシスタントを介して、口頭のクエリをキャプチャし、前記クライアントデバイスの1つまたは複数のマイクロフォンによって生成されるオーディオデータを受け取るステップと、
    前記口頭のクエリの分類を決定するステップと、
    副次的な自動アシスタントおよび前記分類に関する信頼測定基準を特定するステップであって、前記信頼測定基準が、前記副次的な自動アシスタントおよび前記分類に固有であり、前記分類に関する、前記副次的な自動アシスタントのインスタンスとの1人または複数のユーザの過去のインタラクションに基づく、ステップと、
    前記高位の自動アシスタントによって、処理されたクエリを生成するために前記信頼測定基準に基づいて前記口頭のクエリを処理するステップと、
    前記処理されたクエリを前記副次的な自動アシスタントに提供するステップと
    を含む、方法。
  18. 前記1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに請求項1から17のいずれか一項に記載の方法を実行させる命令を含むコンピュータプログラム。
  19. 請求項1から17のいずれか一項に記載の方法を実行するように構成された前記1つまたは複数のプロセッサ
JP2023559077A 2021-11-30 2021-12-15 副次的なデジタルアシスタントに提供するクエリ内容の選択的マスキング Active JP7486680B1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/538,766 US20230169963A1 (en) 2021-11-30 2021-11-30 Selectively masking query content to provide to a secondary digital assistant
US17/538,766 2021-11-30
PCT/US2021/063636 WO2023101698A1 (en) 2021-11-30 2021-12-15 Selectively masking query content to provide to a secondary digital assistant

Publications (2)

Publication Number Publication Date
JP7486680B1 true JP7486680B1 (ja) 2024-05-17
JP2024520983A JP2024520983A (ja) 2024-05-28

Family

ID=79425314

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023559077A Active JP7486680B1 (ja) 2021-11-30 2021-12-15 副次的なデジタルアシスタントに提供するクエリ内容の選択的マスキング

Country Status (6)

Country Link
US (1) US20230169963A1 (ja)
EP (1) EP4211679A1 (ja)
JP (1) JP7486680B1 (ja)
KR (1) KR20230164736A (ja)
CN (1) CN117121101A (ja)
WO (1) WO2023101698A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020514794A (ja) 2016-12-30 2020-05-21 グーグル エルエルシー 適切なサードパーティーエージェントへの呼び出し要求を生成および伝送すること
JP2020144275A (ja) 2019-03-07 2020-09-10 本田技研工業株式会社 エージェント装置、エージェント装置の制御方法、およびプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018067403A1 (en) * 2016-10-03 2018-04-12 Google Inc. Multi computational agent performance of tasks
US11188808B2 (en) * 2017-04-11 2021-11-30 Lenovo (Singapore) Pte. Ltd. Indicating a responding virtual assistant from a plurality of virtual assistants
US11195532B2 (en) * 2019-04-26 2021-12-07 Oracle International Corporation Handling multiple intents in utterances
US11657797B2 (en) * 2019-04-26 2023-05-23 Oracle International Corporation Routing for chatbots

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020514794A (ja) 2016-12-30 2020-05-21 グーグル エルエルシー 適切なサードパーティーエージェントへの呼び出し要求を生成および伝送すること
JP2020144275A (ja) 2019-03-07 2020-09-10 本田技研工業株式会社 エージェント装置、エージェント装置の制御方法、およびプログラム

Also Published As

Publication number Publication date
WO2023101698A1 (en) 2023-06-08
JP2024520983A (ja) 2024-05-28
US20230169963A1 (en) 2023-06-01
EP4211679A1 (en) 2023-07-19
KR20230164736A (ko) 2023-12-04
CN117121101A (zh) 2023-11-24

Similar Documents

Publication Publication Date Title
US11798541B2 (en) Automatically determining language for speech recognition of spoken utterance received via an automated assistant interface
JP2023530048A (ja) ホットワード/キーワード検出のためのユーザ仲介
US20230298583A1 (en) Suggesting an alternative interface when environmental interference is expected to inhibit certain automated assistant interactions
JP7486680B1 (ja) 副次的なデジタルアシスタントに提供するクエリ内容の選択的マスキング
WO2022173508A1 (en) Utilization of sandboxed feature detection process to ensure security of captured audio and/or other sensor data
KR20230147157A (ko) 어시스턴트 명령(들)의 컨텍스트적 억제
US20240087564A1 (en) Restricting third party application access to audio data content
US11972764B2 (en) Providing related queries to a secondary automated assistant based on past interactions
US20230178083A1 (en) Automatically adapting audio data based assistant processing
US20230186909A1 (en) Selecting between multiple automated assistants based on invocation properties
US20240127808A1 (en) Automated assistant that utilizes radar data to determine user presence and virtually segment an environment
US20240046925A1 (en) Dynamically determining whether to perform candidate automated assistant action determined from spoken utterance
US20220261475A1 (en) Utilization of sandboxed feature detection process to ensure security of captured audio and/or other sensor data
US20230025709A1 (en) Transferring dialog data from an initially invoked automated assistant to a subsequently invoked automated assistant
WO2023113877A1 (en) Selecting between multiple automated assistants based on invocation properties
WO2023086229A1 (en) Providing related queries to a secondary automated assistant based on past interactions
KR20240094013A (ko) 호출 속성에 기초한 다수의 자동 어시스턴트 사이에서의 선택
WO2024035424A1 (en) Dynamically determining whether to perform candidate automated assistant action determined from spoken utterance

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231108

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231108

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20231108

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240408

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240507

R150 Certificate of patent or registration of utility model

Ref document number: 7486680

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150