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

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

▶ グーグル インコーポレイテッドの特許一覧

特開2024-164047レイテンシおよび/またはアシスタント対話の長さを減らすための自動通話の選択的な実行
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024164047
(43)【公開日】2024-11-26
(54)【発明の名称】レイテンシおよび/またはアシスタント対話の長さを減らすための自動通話の選択的な実行
(51)【国際特許分類】
   H04M 3/50 20060101AFI20241119BHJP
【FI】
H04M3/50 A
【審査請求】有
【請求項の数】41
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024129935
(22)【出願日】2024-08-06
(62)【分割の表示】P 2022577181の分割
【原出願日】2020-12-15
(31)【優先権主張番号】62/705,586
(32)【優先日】2020-07-06
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/947,481
(32)【優先日】2020-08-03
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/947,512
(32)【優先日】2020-08-04
(33)【優先権主張国・地域又は機関】US
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
(71)【出願人】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】ユヴァル・バロール
(72)【発明者】
【氏名】マイケル・アンドリュー・グッドマン
(72)【発明者】
【氏名】プラヴェーン・クリシュナクマール
(57)【要約】      (修正有)
【課題】レイテンシおよび/またはアシスタント対話の長さを減らすための自動通話の選択的な実行を実現する方法及びコンピューティングデバイスを提供する。
【解決手段】アシスタントを使用してエンティティとの自動通話を開始することを対象とする方法であって、関心対象の品目を特定し、品目に関連するエンティティのグループを特定し、エンティティとの通話を開始し、所与のエンティティとの所与の通話の間に、アシスタントが、品目に関する状況更新を要求し、要求に応答して受け取られた情報に基づいて、品目に関するさらなる状況更新を要求するために所与のエンティティとの別の通話を開始するまでの時間遅延を決定する。また、ユーザの代わりに行動を実行せよとの要求を受け取り、行動を実行できるエンティティのグループを特定し、所与のエンティティとの所与の通話を開始してもよい。
【選択図】図1
【特許請求の範囲】
【請求項1】
1つまたは複数のプロセッサによって実施される方法であって、
ユーザのコンピューティングデバイスから、前記ユーザの代わりに自動通話の実行を開始せよとの要求を受け取るステップと、
前記要求に基づいて、前記自動通話の間に実行されるべき行動を特定するステップと、
前記自動通話の間に実行されるべき前記行動に基づいて、前記要求を満足させることが各々可能なエンティティのグループを特定するステップと、
自動アシスタントによって、前記エンティティの前記グループのうちの所与のエンティティとの前記自動通話の実行を開始するステップと、
前記所与のエンティティとの前記自動通話の実行の間に、
前記要求に関する合成発話の1つまたは複数の対応するインスタンスのレンダリングを通じて、前記行動を実行するために前記所与のエンティティに関連する担当者との会話に関わるステップと、
前記自動アシスタントによって、前記エンティティの前記グループのうちの追加のエンティティとの追加の自動通話の実行を開始するステップと、
前記担当者との前記会話の結果を含む通知を生成するステップと、
前記通知が前記ユーザの前記コンピューティングデバイスを介してレンダリングされるようにするステップと
を備える、方法。
【請求項2】
前記自動通話の実行の間に前記会話の前記結果に基づいて、前記所与のエンティティが前記要求を満足させると決定するステップと、
前記所与のエンティティが前記要求を満足させると決定したことに応答して、前記追加のエンティティとの前記追加の自動通話の実行を終了するステップとをさらに備える、請求項1に記載の方法。
【請求項3】
前記所与のエンティティとの前記自動通話の実行を開始すると、前記所与のエンティティに関連する前記担当者が前記自動通話を保留にしたと決定するステップと、
前記所与のエンティティに関連する前記担当者が前記自動通話を再開したと決定するステップをさらに備え、
前記追加のエンティティとの前記追加の自動通話の実行を開始することが、前記所与のエンティティに関連する前記担当者が前記自動通話を再開したと決定したことに応答するものである、請求項1または2に記載の方法。
【請求項4】
前記所与のエンティティとの前記対応する自動通話の実行の間に、
前記エンティティに関連する通話履歴データに基づいて、前記追加のエンティティとの前記追加の自動通話の実行を開始するための通話開始時間を決定するステップをさらに備え、
前記追加のエンティティとの前記追加の自動通話の実行を開始することが、現在の時間が前記通話開始時間と一致すると決定したことに応答するものである、請求項1または2に記載の方法。
【請求項5】
前記追加のエンティティに関連する前記通話履歴データが、
前記エンティティが双方向型音声応答システムに関連することの標示および前記双方向型音声応答システムを操作するための時間の長さ、
前記エンティティとの以前の自動通話の時間の長さの標示、または、
前記エンティティとの以前の自動通話の間の最初の待ち時間の長さの標示
のうちの1つまたは複数を含む、請求項4に記載の方法。
【請求項6】
前記自動通話の間に実行されるべき前記行動が、前記グループの前記エンティティに関連する関心対象の品目に関する状況更新を要求することを備える、請求項1から5のいずれか一項に記載の方法。
【請求項7】
前記行動を実行するために前記所与のエンティティに関連する前記担当者との前記会話に関わるステップが、
前記所与のエンティティに関連する前記担当者に前記関心対象の品目に関する前記状況更新を要求するステップと、
前記所与のエンティティに関連する前記担当者から、前記状況更新を要求したことに応答して前記関心対象の品目に関する情報を受け取るステップとを備える、請求項6に記載の方法。
【請求項8】
前記関心対象の品目に関する前記受け取られた情報が、前記所与のエンティティにおける前記関心対象の品目の利用可能性を示し、前記会話の前記結果を含む前記通知が、前記関心対象の品目が前記所与のエンティティにおいて利用可能であることを示す、請求項7に記載の方法。
【請求項9】
前記関心対象の品目に関する前記受け取られた情報が、前記関心対象の品目の利用可能性を示すと決定したことに応答して、
前記ユーザのために前記所与のエンティティにおいて前記関心対象の品目を取り置くように前記所与のエンティティに関連する前記担当者に要求するステップをさらに備え、
前記会話の前記結果を含む前記通知が、前記関心対象の品目が前記ユーザのために前記所与のエンティティにおいて取り置かれたことをさらに示す、請求項8に記載の方法。
【請求項10】
前記関心対象の品目に関する前記受け取られた情報が、前記関心対象の品目の利用可能性を示すと決定したことに応答して、
前記所与のエンティティに関連する前記担当者に、前記ユーザの代わりに前記関心対象の品目を入手するために追加の情報を提出するステップをさらに備える、請求項8に記載の方法。
【請求項11】
前記会話の前記結果を含む前記通知がさらに、前記関心対象の品目を入手するために提出される前記追加の情報を提出することについての、前記ユーザからの承認を要求する、請求項10に記載の方法。
【請求項12】
前記会話の前記結果を含む前記通知がさらに、前記関心対象の品目を入手するために前記追加の情報が提出されたことを示す、請求項10に記載の方法。
【請求項13】
前記通知がさらに、前記自動通話に参加するように前記ユーザに要求する、請求項8に記載の方法。
【請求項14】
前記関心対象の品目が、前記ユーザの代わりに前記自動通話の実行を開始せよとの前記要求において指定される、請求項8に記載の方法。
【請求項15】
前記関心対象の品目が前記所与のエンティティにおいて利用可能であると決定したことに応答して、前記追加のエンティティとの前記追加の自動通話の実行を終了するステップをさらに備える、請求項8に記載の方法。
【請求項16】
前記関心対象の品目に関する前記受け取られた情報が、前記関心対象の品目が前記所与のエンティティにおいて利用可能ではないことを示し、前記会話の前記結果を含む前記通知が、前記関心対象の品目が前記所与のエンティティにおいて利用可能ではないことを示す、請求項7に記載の方法。
【請求項17】
前記関心対象の品目が前記所与のエンティティにおいて利用可能ではないと決定したことに応答して、前記所与のエンティティとの前記自動通話の実行を終了するステップをさらに備える、請求項16に記載の方法。
【請求項18】
前記自動通話の間に実行されるべき前記行動が、所与の期間における前記グループの前記エンティティの利用可能性を要求することを備える、請求項1から17のいずれか一項に記載の方法。
【請求項19】
前記行動を実行するために前記所与のエンティティに関連する前記担当者との前記会話に関わるステップが、
前記所与のエンティティに関連する前記担当者に、前記所与の期間における前記所与のエンティティの前記利用可能性を要求するステップと、
前記所与のエンティティに関連する前記担当者から、前記所与の期間における前記所与のエンティティの前記利用可能性に関する情報を受け取るステップとを備える、請求項18に記載の方法。
【請求項20】
前記受け取られた情報が、前記所与のエンティティが前記所与の期間において利用可能であることを示し、前記会話の前記結果を含む前記通知が、前記所与のエンティティが前記所与の期間において利用可能であることを示す、請求項19に記載の方法。
【請求項21】
前記所与のエンティティが前記所与の期間において利用可能であると決定したことに応答して、
前記ユーザのために前記所与のエンティティを前記所与の期間において利用可能に保つように前記所与のエンティティに関連する前記担当者に要求するステップをさらに備え、
前記会話の前記結果を含む前記通知が、前記所与のエンティティが前記ユーザのために前記所与の期間において利用可能に保たれることをさらに示す、請求項20に記載の方法。
【請求項22】
前記通知がさらに、前記自動通話に参加するように前記ユーザに要求する、請求項20に記載の方法。
【請求項23】
前記所与のエンティティが前記所与の期間において利用可能であると決定したことに応答して、前記追加のエンティティとの前記追加の自動通話の実行を終了するステップをさらに備える、請求項20に記載の方法。
【請求項24】
前記受け取られた情報が、前記所与のエンティティが前記所与の期間において利用可能ではないことを示し、前記会話の前記結果を含む前記通知が、前記所与のエンティティが前記所与の期間において利用可能ではないことを示す、請求項19に記載の方法。
【請求項25】
前記所与のエンティティが前記所与の期間において利用可能ではないと決定したことに応答して、前記所与のエンティティとの前記自動通話の実行を終了するステップをさらに備える、請求項24に記載の方法。
【請求項26】
前記要求を満足させることが各々可能な前記エンティティの前記グループを特定するステップが、
前記ユーザの前記コンピューティングデバイスの位置を特定するステップと、
前記エンティティが前記ユーザの前記コンピューティングデバイスの前記位置から閾値の距離以内にあると決定するステップと、
前記エンティティが前記要求を満足させることが可能であると決定するステップと、
前記エンティティが前記コンピューティングデバイスの前記位置から前記閾値の距離以内にあると決定したことに応答して、および前記エンティティが前記要求を満足させることが可能であると決定したことに応答して、前記エンティティをエンティティの前記グループに含めるステップとを備える、請求項1から25のいずれか一項に記載の方法。
【請求項27】
前記所与のエンティティに関連して、前記所与のエンティティに関連する前記担当者との前記会話の前記結果を記憶するステップをさらに備える、請求項1から26のいずれか一項に記載の方法。
【請求項28】
前記ユーザの代わりに前記自動通話の実行を開始せよとの前記要求を受け取った後、
追加のユーザの追加のコンピューティングデバイスから、前記追加のユーザの代わりに別の自動通話の実行を開始せよとの追加の要求を受け取るステップであって、前記追加のユーザからの前記追加の要求が前記ユーザからの前記要求と同じである、ステップと、
前記所与のエンティティに関連する前記担当者との前記会話の前記結果、または前記追加のエンティティに関連する追加の担当者との追加の会話の追加の結果に基づいて、前記別の自動通話を開始するのを控えるステップと、
前記担当者との前記会話の前記結果または前記追加の担当者との前記追加の会話の追加の結果を含む追加の通知を生成するステップと、
前記追加の通知が前記ユーザの前記追加のコンピューティングデバイスを介してレンダリングされるようにするステップと
をさらに備える、請求項1から27のいずれか一項に記載の方法。
【請求項29】
前記ユーザの代わりに前記自動通話の実行を開始せよとの前記要求を受け取るステップが、
検索インターフェースもしくは自動アシスタントインターフェースを介して前記ユーザの前記コンピューティングデバイスにおいてタッチ入力もしくはタイプされた入力を受け取るステップ、または、
前記ユーザの前記コンピューティングデバイスの1つまたは複数のマイクロフォンを介して話された入力を受け取るステップのうちの1つを備える、請求項1から28のいずれか一項に記載の方法。
【請求項30】
前記所与のエンティティに関連する前記担当者が、人の担当者、または前記所与のエンティティに関連する追加の自動アシスタントのうちの1つである、請求項1から29のいずれか一項に記載の方法。
【請求項31】
1つまたは複数のプロセッサによって実施される方法であって、
関心対象の品目を特定するステップと、
前記関心対象の品目に関連するエンティティのグループを特定するステップと、
自動アシスタントによって、前記グループの前記エンティティの各々との対応する自動通話の実行を開始して、前記関心対象の品目に関する対応する状況更新を要求する合成発話の1つまたは複数の対応するインスタンスをレンダリングするステップと、
前記エンティティの前記グループのうちの所与のエンティティとの前記対応する自動通話の実行の間に、
合成発話の前記対応するインスタンスのうちの1つまたは複数のレンダリングを通じて、前記所与のエンティティに関連する担当者に前記関心対象の品目に関する前記対応する状況更新を要求するステップと、
前記所与のエンティティに関連する前記担当者から、前記対応する状況更新を要求したことに応答して前記関心対象の品目に関する情報を受け取るステップと、
前記関心対象の品目に関する前記受け取られた情報に基づいて、前記関心対象の品目に関するさらなる対応する状況更新を要求するために前記所与のエンティティとの後続の対応する自動通話の実行を開始するまでの時間遅延を決定するステップと、
前記自動アシスタントによって、前記時間遅延の経過に応答して、前記所与のエンティティとの前記後続の対応する自動通話の実行を開始するステップとを備える、方法。
【請求項32】
前記関心対象の品目に関する前記受け取られた情報が、前記所与のエンティティにおける前記関心対象の品目の利用可能性および前記所与のエンティティにおける前記関心対象の品目の利用可能な量を示す、請求項31に記載の方法。
【請求項33】
前記関心対象の品目に関する前記受け取られた情報に基づいて前記時間遅延を決定するステップが、
前記所与のエンティティにおける前記関心対象の品目の前記利用可能な量が量の閾値を満たすかどうかを決定するステップと、
前記所与のエンティティにおける前記関心対象の品目の前記利用可能な量が前記量の閾値を満たすと決定したことに応答して、第1の期間を前記時間遅延として割り当てるステップとを備える、請求項32に記載の方法。
【請求項34】
前記所与のエンティティにおける前記関心対象の品目の前記利用可能な量が前記量の閾値を満たさないと決定したことに応答して、第2の期間を前記時間遅延として割り当てるステップをさらに備え、前記第2の期間が、前記第1の期間より時間長が短く、結果として、前記第1の期間より前に経過する、請求項33に記載の方法。
【請求項35】
第2の期間が、前記自動通話が開始されたのと同じ日の間に経過し、前記第1の期間が、前記自動通話が開始されたのと同じ日に続く次の日の間に経過する、請求項33に記載の方法。
【請求項36】
前記所与のエンティティにおける前記関心対象の品目の前記利用可能性、または前記所与のエンティティにおける前記関心対象の品目の前記利用可能な量のうちの1つまたは複数を示すように、前記所与のエンティティに関連する検索結果を更新するステップをさらに備える、請求項32から35のいずれか一項に記載の方法。
【請求項37】
前記所与のエンティティに関連する前記更新された検索結果および前記所与のエンティティに関連する以前に更新された検索結果を分析するステップと、
前記更新された検索結果および前記以前に更新された検索結果を分析したことに基づいて、
未来の時間における、前記所与のエンティティにおける前記関心対象の品目の未来の利用可能性を予測するステップ、または、
前記未来の時間における、前記所与のエンティティにおける前記関心対象の品目の未来の利用可能な量を予測するステップをさらに備える、請求項36に記載の方法。
【請求項38】
前記所与のエンティティとの前記対応する自動通話の実行の間に、
前記所与のエンティティが前記関心対象の品目と関連付けられるかどうかを検証するステップをさらに備え、
前記時間遅延を決定することが、前記検証に基づいて前記所与のエンティティが前記関心対象の品目と関連付けられると決定したことに応答するものである、請求項31から37のいずれか一項に記載の方法。
【請求項39】
前記検証に基づいて前記所与のエンティティが前記関心対象の品目と関連付けられないと決定したことに応答して、
前記時間遅延を決定するのを控えるステップと、
前記関心対象の品目に関連するエンティティの前記グループから前記所与のエンティティを除去するステップとをさらに備え、前記関心対象の品目に関連するエンティティの前記グループから前記所与のエンティティを除去することが、前記関心対象の品目に関する、前記所与のエンティティとのあらゆる後続の自動通話の開始を防ぐ、請求項38に記載の方法。
【請求項40】
前記所与のエンティティに関連する前記担当者が、人の担当者、または前記所与のエンティティに関連する追加の自動アシスタントのうちの1つである、請求項31から39のいずれか一項に記載の方法。
【請求項41】
前記グループの前記エンティティの各々との前記対応する自動通話の実行を開始して、前記関心対象の品目に関する前記対応する状況更新を要求するステップが、
前記所与のエンティティとの前記対応する自動通話の実行を開始するステップと、
前記エンティティの前記グループのうちの追加のエンティティとの少なくとも追加の対応する自動通話の実行を同時に開始するステップとを備える、請求項31から40のいずれか一項に記載の方法。
【請求項42】
前記追加のエンティティとの前記追加の対応する自動通話の実行の間に、
合成発話の前記対応するインスタンスのうちの前記1つまたは複数のレンダリングを通じて、前記追加のエンティティに関連する追加の担当者に前記関心対象の品目に関する前記対応する状況更新を要求するステップと、
前記追加のエンティティに関連する前記追加の担当者から、前記対応する状況更新を要求したことに応答して前記関心対象の品目に関する追加の情報を受け取るステップと、
前記関心対象の品目に関する前記受け取られた追加の情報に基づいて、前記関心対象の品目に関する前記さらなる対応する状況更新を要求するために前記追加のエンティティとの後続の追加の対応する自動通話の実行を開始するまでの追加の時間遅延を決定するステップであって、
第1の期間が前記時間遅延に割り当てられ、
別個の第2の期間が前記追加の時間遅延に割り当てられる、ステップと、
前記自動アシスタントによって、前記追加の時間遅延の経過に応答して、前記追加のエンティティとの前記後続の追加の対応する自動通話の実行を開始するステップとをさらに備える、請求項41に記載の方法。
【請求項43】
前記関心対象の品目に関連する前記エンティティの前記グループを特定するステップが、
1つまたは複数のデータベースにアクセスして、前記関心対象の品目に関連して記憶される前記エンティティを前記エンティティの前記グループとして特定するステップを備える、請求項31から42のいずれか一項に記載の方法。
【請求項44】
前記特定されたグループの前記エンティティの各々が、特定の地理的領域に位置する、請求項43に記載の方法。
【請求項45】
前記所与のエンティティに関連する前記担当者に前記関心対象の品目に関する前記状況更新を要求するステップが、
前記関心対象の品目に関する前記対応する状況更新を要求する合成発話の前記対応するインスタンスのうちの1つまたは複数を捉える、合成発話オーディオデータを生成するステップを備え、
合成発話の前記対応するインスタンスのうちの1つまたは複数のレンダリングが、前記所与のエンティティに関連する前記担当者の追加のコンピューティングデバイスにおいて前記合成発話がレンダリングされるようにすることを備える、請求項31から44のいずれか一項に記載の方法。
【請求項46】
少なくとも1つのプロセッサと、
実行されると、請求項1から45のいずれか一項に記載の方法を前記少なくとも1つのプロセッサに実行させる命令を記憶した、少なくとも1つのメモリとを備える、少なくとも1つのコンピューティングデバイス。
【発明の詳細な説明】
【技術分野】
【0001】
レイテンシおよび/またはアシスタント対話の長さを減らすための自動通話の選択的な実行に関する。
【背景技術】
【0002】
自動アシスタントは、スマートフォン、タブレットコンピュータ、ウェアラブルデバイス、自動車システム、スタンドアロンパーソナルアシスタントデバイスなどの、様々なコンピューティングデバイスを介して、ユーザと対話することができる。自動アシスタントは、ユーザからの入力(たとえば、話された入力、タッチ入力、および/またはタイプされた入力)を受け取り、応答出力(たとえば、視覚的および/または聴覚的な)で応答する。
【0003】
ユーザは、ユーザの代わりに自動アシスタントに行動を実行させるために、自動アシスタントと対話することができる。一例として、自動アシスタントは、所与の行動を実行するためにユーザの代わりに電話をかけることができ、行動を実行するために追加のユーザとの対話に関わることができる。たとえば、ユーザは、ユーザの代わりに電話で品目またはサービスについて尋ねるように自動アシスタントに要求する、入力を与えることができる。自動アシスタントは、品目またはサービスに関連する特定のエンティティとの自動通話を開始することができ、質問を行うためにその特定のエンティティに関連する追加のユーザに情報を提供することができる。自動アシスタントは次いで、自動通話の結果をユーザに通知することができ、および/または、特定のエンティティに関連する検索結果を、結果に基づいて更新することができる。
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、ユーザの代わりに自動アシスタントによって実行される一部の行動に対して、特定のエンティティは、ユーザの要求を完全に満足させることができないことがあり、行動を実行する際に利用される計算および/またはネットワークリソースが無駄になる。一例として、上で説明されたように、自動アシスタントがユーザの代わりに電話で質問を行っていると仮定し、品目またはサービスが利用可能ではないことを特定のエンティティに関連するユーザが示すとさらに仮定する。一部の自動アシスタントは、品目またはサービスが利用可能ではないと決定し、品目またはサービスが利用可能ではないことを反映する通知をユーザに単に提供することができる。したがって、自動通話を実行する際に利用される計算および/またはネットワークリソースが無駄になる。さらに、ユーザは、要求を満足させようとして、他のエンティティへの他の通話を手動で行い、および/または、自動アシスタントに他のエンティティへの他の自動通話をさせることがあり、計算リソースおよび/またはネットワークリソースのまたさらなる使用を引き起こす。またさらに、他のユーザが、特定のエンティティが満足させることができない同じもしくは類似する要求について、特定のエンティティへの手動および/または自動通話を行うことがあり、計算リソースおよび/またはネットワークリソースのまたさらなる使用をもたらす。
【課題を解決するための手段】
【0005】
実装形態は、自動アシスタントを使用して自動通話を開始し実行することを対象とする。いくつかの実装形態では、自動通話は、自動通話を開始して実行せよとの要求に応答して、開始され実行され得る。自動アシスタントは、要求に関連するエンティティのグループを特定することができ、要求に関連する行動を実行するために、グループのエンティティのうちの1つまたは複数との対応する自動通話を開始することができる。さらに、自動アシスタントは、要求に関係する合成発話のインスタンスをレンダリングすることを通じて、要求に関連する行動を実行することができる。合成発話のインスタンスの少なくともいくつかは、要求に基づいて、および、通話に参加しているエンティティの担当者からの自動通話の間の応答を処理することに基づいて、生成され得る。
【0006】
いくつかの実装形態では、自動通話を開始して実行せよとの要求は、複数のユーザのクエリ活動を分析することに基づき得る。自動アシスタントは、クエリ活動を分析することに基づいて、閾値の数のクエリに(および任意選択で、閾値の長さの時間にわたって)含まれる関心対象の品目またはサービスに対応する用語を特定することができる。関心対象の品目またはサービスに対応する用語が閾値の数のクエリに(および任意選択で、閾値の長さの時間にわたって)含まれると特定したことに応答して、自動アシスタントは、1つまたは複数のデータベースの中の関心対象の品目またはサービスに関連するエンティティのグループを特定することができる。たとえば、トイレットペーパーについてのクエリが急増していると仮定する。この例では、要求は、グループのエンティティの各々におけるトイレットペーパーに関する状況更新に対する要求であってもよく、エンティティの各々は、トイレットペーパーという品目に関連してエンティティが記憶されていることに基づいて特定されてもよい。それらの実装形態のいくつかのバージョンでは、グループに含まれるエンティティは、クエリ活動の分析されたクエリの起源がそこまたはその近く(たとえば、10マイル、50マイル、または他の閾値の距離以内)にある特定の地理的エリアに制約され、および/または、関心対象の品目に関連して記憶されている特定のタイプの1つまたは複数のエンティティ(たとえば、薬局、スーパーマーケット、コンビニエンスストア、食料品店など)に制約され得る。上の例について続けると、クエリの直近の増加は、ケンタッキー州ジェファーソン郡が起源であるとさらに仮定する。この例では、グループに含まれるエンティティは、ケンタッキー州ジェファーソン郡に物理的に位置し(またはそこから閾値の距離以内にあり)、トイレットペーパーという品目に関連して記憶されているエンティティに制約され得る。自動アシスタントはまた、関心対象の品目に関連のある対応する意味のあるタイプのエンティティをインテリジェントに特定することができる。上の例について続けると、自動アシスタントは、スーパーマーケット、コンビニエンスストア、食料品店などのエンティティにおいて主にトイレットペーパーが販売されていることを特定することができ、ケンタッキー州ジェファーソン郡のそれらの関連する店舗がエンティティのグループに含められる。
【0007】
それらの実装形態のいくつかのバージョンでは、自動アシスタントのインスタンスを使用して、グループのエンティティの各々に並行して電話をかけることができる。自動通話の各々の間に、要求に関連する行動を、(たとえば、ステータス更新を要求する)合成発話のインスタンスをレンダリングすることを通じて実行することができ、合成発話に応答したエンティティの対応する1つに関連する担当者から、情報を受け取ることができる。さらに、自動アシスタントは、行動を再び実行するために所与のエンティティとの後続の追加の対応する自動通話を開始するまでの、時間遅延を決定することができる。その上、自動アシスタントは、時間遅延が経過したと決定したことに応答して、行動を再び実行するために所与のエンティティとの後続の追加の対応する自動通話を開始することができる。
【0008】
たとえば、要求が、グループのエンティティの各々においてトイレットペーパーに関する状況更新に対する要求であると仮定し、所与のエンティティに関連する担当者が、3日間売り切れないのに十分なトイレットペーパーが所与のエンティティにあることを示すと仮定する。この例では、自動アシスタントは、担当者から受け取られた情報に基づいて、72時間という期間を時間遅延として割り当てることができる。したがって、自動アシスタントは、72時間という期間が経過するまで、所与のエンティティとの後続の対応する自動通話を開始しない。対照的に、所与のエンティティに関連する担当者が、その日の営業終了まで売り切れないのに十分なトイレットペーパーが所与のエンティティにない可能性があることを示すと仮定する。この例では、自動アシスタントは、担当者から受け取られた情報に基づいて、4時間という期間を時間遅延として割り当てることができる。したがって、自動アシスタントは、同じ日のより後の時間に所与のエンティティとの後続の対応する自動通話を開始する。これらおよび他の方式では、対応する時間遅延は、エンティティとの自動通話の間に受け取られた情報に基づいて、各エンティティに対して動的に決定され得る。そのような方式で時間遅延を動的に決定することは、エンティティからの最新情報を維持することにより達成される技術的な利点と、自動通話を開始して実行する際に利用されるリソースとのバランスをとることができる。言い換えると、時間遅延を動的に決定することは、計算および/またはネットワークリソースの不要な利用につながる、エンティティへの別の自動通話のあまりにも早い実行を防ぎながら、エンティティからの情報が最新であることを確実にすることができる。
【0009】
他の実装形態では、自動通話を開始して実行せよとの要求は、自動アシスタントに関連するコンピューティングデバイスのユーザからのユーザ入力に基づき得る。自動アシスタントは、ユーザ入力を処理したことに基づいて、要求に関連する関心対象の品目またはサービスを特定することができる。ユーザ入力の中の関心対象の品目またはサービスを特定したことに応答して、自動アシスタントは、1つまたは複数のデータベースの中の関心対象の品目またはサービスに関連するエンティティのグループを特定することができる。たとえば、コンピューティングデバイスのユーザが「屋根修理業者を探して」というユーザ入力を提供すると仮定する。この例では、要求は、グループのエンティティの各々から来る屋根修理業者の利用可能性に対する要求であってもよく、エンティティの各々は、屋根修理という項目に関連してエンティティが記憶されていることに基づいて特定されてもよい。それらの実装形態のいくつかのバージョンでは、グループに含まれるエンティティは、ユーザのコンピューティングデバイスの位置から閾値の距離以内にあるエンティティに制約され得る。上の例について続けると、グループに含まれるエンティティは、ユーザのコンピューティングデバイスの位置から10マイル以内にあり、屋根修理サービスに関連して記憶されているエンティティに制約され得る。グループに含まれるエンティティがない場合、1つまたは複数のエンティティがグループに含まれるまで、閾値の距離を延ばすことができる。
【0010】
それらの実装形態のいくつかのバージョンでは、自動アシスタントのインスタンスを使用して、グループのエンティティの各々に交互に電話をかけることができる。自動アシスタントは、グループのエンティティのうちの第1のエンティティとの第1の自動通話を開始することができる。要求に関連する行動を、合成発話(たとえば、状況更新を要求する、サービスの利用可能性を要求する、および/または他の行動)のインスタンスをレンダリングすることを通じて実行することができ、合成発話に応答したグループの第1のエンティティに関連する担当者から、情報を受け取ることができる。さらに、自動アシスタントは、グループの他のエンティティの各々に関連する通話開始時間を決定することができる。本明細書において(たとえば、図1に関連して)より詳しく説明されるように、通話開始時間は、自動通話の各々を開始した後の設定された時間長であってもよく、グループのエンティティの各々に関連する通話履歴データに基づいて決定されてもよく、自動通話の進行に基づいて決定されてもよく、および/または、自動通話に関する他のデータであってもよい。自動アシスタントは、要求が満足されるまで、グループのエンティティとの自動通話を開始し続けることができる。
【0011】
その上、自動アシスタントは、自動通話の1つまたは複数の結果に基づいて通知を生成することができるので、自動アシスタントによって開始され実行される自動通話の各々のための、1つまたは複数の通知をレンダリングすることができる。さらに、自動アシスタントは、ユーザのコンピューティングデバイスに、ユーザのコンピューティングデバイスにおいて通知を聴覚的および/または視覚的にレンダリングさせることができる。それらの実装形態のいくつかのさらなるバージョンでは、通知は、所与のエンティティに関連する担当者へのユーザ情報の提供を承認するようにコンピューティングデバイスのユーザに求めるプロンプトを含み得る。本明細書において説明されるように、様々な実装形態において、交互に自動通話を行う際に利用される通話開始時間は、通知が提供される際のレイテンシを短くしようとすること、および/または、自動アシスタントとのユーザの対話の長さ全体を短くしようとすることを考慮して決定され得る。それらの実装形態の多くにおいて、通話開始時間はさらに、(たとえば、前に電話をかけられたエンティティが行動を満足させることができる状況において)後で電話をかけられる1つまたは複数のエンティティとの不要な通話および/または不要に長い通話時間を減らそうとすることを考慮して決定される。通話開始時間をそのような方式で決定することは、レイテンシを減らすことで達成される技術的な利点、および/または自動通話を実行する際に利用されるリソースとの対話時間のバランスをとることができる。
【0012】
様々な実装形態において、グループのエンティティに関連する結果は、自動通話の間に取得された情報に基づいて更新され得る。たとえば、要求が、検索インターフェースのような情報検索システムが起源であるトイレットペーパーという品目に関する対応する状況更新に対する要求であると仮定する。第1のエンティティに関連する第1の担当者から受け取られた第1の情報が、3日間売り切れないのに十分なトイレットペーパーが第1のエンティティにあることを示し、第2のエンティティに関連する第2の担当者から受け取られた第2の情報が、その日の営業終了まで売り切れないのに十分なトイレットペーパーが第2のエンティティにない可能性があることを示すと、さらに仮定する。この例では、第1のエンティティおよび第2のエンティティに関連する結果は、自動通話の間に受け取られた情報のそれぞれの標示を含むように更新され得る。それらの実装形態のいくつかのバージョンにおいて、更新された結果はさらに、情報がいつ受け取られるかの時間的な標示を含み得る。これらおよび他の方式において、ユーザは、エンティティについての情報の標示、および任意選択で、情報の時間的な標示を与えられ、これは、そのような情報を探すためにユーザがエンティティに手動で電話を掛けること、および/もしくはそのような情報を探すためにエンティティに対する自動通話をユーザが開始させるのを少なくとも選択的に防ぐことができ、ならびに/または、エンティティに関連する位置へ、およびそこからユーザが移動するリスクを減らすことができる。少なくとも、ユーザの集団において、および大量のユーザにわたって、これは、エンティティへの電話の全体の量を減らすことができ、それにより、そうされなければそのような電話において利用されるであろうネットワークリソースおよび/または計算リソースを節約する。
【0013】
上の説明は、本明細書において開示されるいくつかの実装形態のみの概要として提供される。それらの実装形態および他の実装形態が、本明細書における追加の詳細において説明される。
【図面の簡単な説明】
【0014】
図1】本明細書において開示される実装形態が実装され得る、本開示の様々な態様を説明する例示的な環境のブロック図である。
図2】様々な実装形態による、所与のエンティティとの自動通話の間に受け取られる関心対象の品目に関する状況更新に基づいて、所与のエンティティとの後続の自動通話に対する時間遅延を決定する例示的な方法を示すフローチャートである。
図3】様々な実装形態による、所与のエンティティとの自動通話の間に受け取られる情報に基づいて、追加のエンティティとの追加の自動通話を開始するかどうかを決定する例示的な方法を示すフローチャートである。
図4A】様々な実装形態による、自動通話の結果に基づいて様々なエンティティとの後続の自動通話に対する時間遅延を決定して様々なエンティティの各々に関連する結果を更新する、非限定的な例を示す図である。
図4B】様々な実装形態による、自動通話の結果に基づいて様々なエンティティとの後続の自動通話に対する時間遅延を決定して様々なエンティティの各々に関連する結果を更新する、非限定的な例を示す図である。
図4C】様々な実装形態による、自動通話の結果に基づいて様々なエンティティとの後続の自動通話に対する時間遅延を決定して様々なエンティティの各々に関連する結果を更新する、非限定的な例を示す図である。
図4D】様々な実装形態による、自動通話の結果に基づいて様々なエンティティとの後続の自動通話に対する時間遅延を決定して様々なエンティティの各々に関連する結果を更新する、非限定的な例を示す図である。
図5A】様々な実装形態による、ユーザの代わりに様々なエンティティとの自動通話を開始し、様々なエンティティの各々に関連する通知が自動通話の結果に基づいてレンダリングされるようにする、非限定的な例を示す図である。
図5B】様々な実装形態による、ユーザの代わりに様々なエンティティとの自動通話を開始し、様々なエンティティの各々に関連する通知が自動通話の結果に基づいてレンダリングされるようにする、非限定的な例を示す図である。
図5C】様々な実装形態による、ユーザの代わりに様々なエンティティとの自動通話を開始し、様々なエンティティの各々に関連する通知が自動通話の結果に基づいてレンダリングされるようにする、非限定的な例を示す図である。
図5D】様々な実装形態による、ユーザの代わりに様々なエンティティとの自動通話を開始し、様々なエンティティの各々に関連する通知が自動通話の結果に基づいてレンダリングされるようにする、非限定的な例を示す図である。
図6A】様々な実装形態による、ユーザの代わりに様々なエンティティとの自動通話を開始し、様々なエンティティの各々に関連する通知が自動通話の結果に基づいてレンダリングされるようにする、非限定的な例を同様に示す図である。
図6B】様々な実装形態による、ユーザの代わりに様々なエンティティとの自動通話を開始し、様々なエンティティの各々に関連する通知が自動通話の結果に基づいてレンダリングされるようにする、非限定的な例を同様に示す図である。
図6C】様々な実装形態による、ユーザの代わりに様々なエンティティとの自動通話を開始し、様々なエンティティの各々に関連する通知が自動通話の結果に基づいてレンダリングされるようにする、非限定的な例を同様に示す図である。
図7】様々な実装形態による、コンピューティングデバイスの例示的なアーキテクチャを示す図である。
【発明を実施するための形態】
【0015】
図1は、本開示の様々な態様を説明する例示的な環境のブロック図を示す。クライアントデバイス110は、図1に示され、様々な実装形態において、ユーザ入力エンジン111、レンダリングエンジン112、通知エンジン113、発話認識エンジン120A1、自然言語理解(「NLU」)エンジン130A1、および発話合成エンジン140A1を含む。
【0016】
ユーザ入力エンジン111は、クライアントデバイス110においてユーザ入力を検出することができる。クライアントデバイス110において検出されるユーザ入力は、クライアントデバイス110のマイクロフォンを介して検出される話される入力および/もしくは(たとえば、自動通話の間に)追加のユーザの追加のクライアントデバイスからクライアントデバイス110に送信される追加の話された入力、クライアントデバイス110のユーザインターフェースを介して検出されるタッチ入力、ならびに/またはクライアントデバイス110のユーザインターフェースを介して検出されるタイプされた入力を含み得る。追加のユーザは、たとえば、エンティティに関連する人の担当者、エンティティに関連する自動アシスタント、エンティティに関連する双方向音声応答システム(「IVR」システム)、および/またはこれらの組合せであり得る。本明細書において説明される自動通話は、たとえば、Voice over Internet Protocol (VoIP)、公衆交換電話網(PSTN)、および/または他の電話通信プロトコルを含む、様々な音声通信プロトコルを使用して実行され得る。その上、本明細書において説明される自動通話は、クライアントデバイス110においてローカルで実行される自動アシスタント115(たとえば、ローカルアシスタント)、1つまたは複数のサーバにおいてリモートで実行される自動アシスタント115(たとえば、クラウドベースアシスタント)、および/またはそれらの組合せ(たとえば、図1の破線によって示されるような)を使用して、開始され実行され得る。
【0017】
様々な実装形態において、自動アシスタント115は、自動要求システム180を使用して、自動通話を開始して実行することができる。自動アシスタント115がクライアントデバイス110においてローカルに実行される実装形態では、自動要求システム180はクライアントデバイス110上でローカルで実行され得るので、クライアントデバイス110のリソースのみを使用して自動通話が開始され実行される。自動アシスタント115がサーバの1つまたは複数においてリモートで実行される実装形態では、自動要求システム180はサーバの1つまたは複数においてリモートで実行され得るので、サーバの1つまたは複数のリソースのみを使用して自動通話が開始され実行される。自動アシスタント115が図1に示されるような方式で分散して実行される実装形態では、自動要求システム180は、ネットワーク190を介してクライアントデバイス110と通信しているサーバの1つまたは複数においてリモートで実行され得る。ネットワーク190は、たとえば、Wi-Fi、Bluetooth、近接場通信、ローカルエリアネットワーク、ワイドエリアネットワーク、他のネットワーク、および/またはこれらの任意の組合せを含み得る。
【0018】
自動要求システム180は、様々な実装形態において、発話認識エンジン120A2、NLUエンジン130A2、発話合成エンジン140A2、および自動通話エンジン150を含む。さらに、自動通話エンジン150は、様々な実装形態において、クエリ分析エンジン151、要求処理エンジン152、エンティティ特定エンジン153、要求実行エンジン154、更新エンジン155、承認エンジン156、および時間遅延エンジン157を含む。
【0019】
いくつかの実装形態において、自動アシスタント115は、クライアントデバイス110の所与のユーザからユーザ入力エンジン111を介して、自動通話を開始せよとの要求を含むユーザ入力を検出したことに応答して、自動要求システム180を使用して、自動通話を開始して実行することができる。ユーザ入力は、クライアントデバイス110のタッチスクリーンもしくはキーボードを介して検出されるタイプされた入力もしくはタッチ入力、および/または、クライアントデバイス110のマイクロフォンを介して検出される話された入力を含み得る。ユーザ入力エンジン111がタイプされた入力またはタッチ入力を検出する実装形態では、クライアントデバイス110は、検出されたユーザ入力の標示を、ネットワーク190を介して自動通話エンジン150の要求処理エンジン152に送信することができる。たとえば、ユーザ入力エンジン111は、検索インターフェース、自動アシスタントインターフェース、および/またはクライアントデバイス110の他のインターフェースを介して、タイプされた入力またはタッチ入力を検出し、検出されたユーザ入力が自動通話を開始して実行することを対象とすると決定し、検出されたユーザ入力を、検出されたユーザ入力のさらなる処理のために自動通話エンジン150の要求処理エンジン152に送信することができる。
【0020】
ユーザ入力エンジン111がクライアントデバイス110のマイクロフォンを介して所与のユーザの話された入力を検出する実装形態では、クライアントデバイス110の発話認識エンジン120A1は、発話認識モデル120Aを使用して、話された入力を捉えるマイクロフォンによって生成されるオーディオデータを処理して、話された入力に対応する認識されたテキストを生成することができる。さらに、クライアントデバイス110のNLUエンジン130A1は、NLUモデル130Aを使用して、発話認識エンジン120A1によって生成される認識されたテキストを処理して、話された入力に含まれる意図を決定することができる。たとえば、クライアントデバイス110が所与のユーザから「近くでトイレットペーパーを探して」という話された入力を検出する場合、クライアントデバイス110は、発話認識モデル120Aを使用して、話された入力を捉えるオーディオデータを処理して話された入力に対応する認識されたテキストを生成することができ、NLUモデル130Aを使用して、認識されたテキストを処理し、所与のユーザの現在の位置に近いトイレットペーパーを見つけるという意図を少なくとも、自動通話を開始して実行せよとの要求に含まれる行動として決定することができる。それらの実装形態のいくつかのバージョンでは、クライアントデバイス110は、認識されたテキストおよび/または意図のさらなる処理のために、自動通話エンジン150の要求処理エンジン152への話された入力に基づいて決定される、話された入力および/または意図に対応する認識されたテキストを送信することができる。
【0021】
ユーザ入力エンジン111がクライアントデバイス110のマイクロフォンを介して所与のユーザの話された入力を検出する他の実装形態では、自動アシスタント115は、クライアントデバイス110に、話された入力を捉えるオーディオデータを自動要求システム180へ送信させることができる。通話支援システム180の発話認識エンジン120A2および/またはNLUエンジン130A2は、クライアントデバイス110の発話認識エンジン120A1および/またはNLUエンジン130A1に関して上で説明されたのと同様の方式で、話された入力を捉えるオーディオデータを処理することができる。さらに、話された入力および/または意図は、認識されたテキストおよび/または意図のさらなる処理のために、自動通話エンジン150の要求処理エンジン152への話された入力に基づいて決定される。いくつかの追加および/または代替の実装形態では、クライアントデバイス110の発話認識エンジン120A1および/またはNLUエンジン130A1は、自動要求システム180の発話認識エンジン120A2および/またはNLUエンジン130A2と連携して分散方式で使用され得る。その上、発話認識モデル120Aおよび/またはNLUモデル130Aは、クライアントデバイス110上でローカルで、自動要求システム180においてリモートで、ならびに/または、クライアントデバイス110および/もしくは自動要求システム180とネットワーク190を介して通信している他のサーバにおいてリモートで記憶され得る。
【0022】
様々な実装形態において、発話認識モデル120Aはエンドツーエンド発話認識モデルであるので、発話認識エンジン120A1および/または120A2は、モデルを直接使用して、話された入力に対応する認識されたテキストを生成することができる。たとえば、発話認識モデル120Aは、文字ごとに(または他のトークンごとに)認識されたテキストを生成するために使用されるエンドツーエンドモデルであり得る。文字ごとに認識されたテキストを生成するために使用されるそのようなエンドツーエンドモデルの1つの非限定的な例は、再帰ニューラルネットワークトランスデューサ(RNN-T)モデルである。RNN-Tモデルは、アテンション機構を利用しない形式のシーケンスツーシケンスモデルである。予測される出力を生成するために入力シーケンス全体(たとえば、オーディオデータ波形、またはメル周波数ケプストラム係数(MFCC)、または他の表現)を通常は処理する必要のある大半のシーケンスツーシケンスモデルとは異なり、RNN-Tモデルは、入力サンプルを継続的に処理し、出力シンボル(たとえば、アルファベットの文字)を流すために使用され得る。また、たとえば、発話認識モデルがエンドツーエンド発話認識モデルではないとき、発話認識エンジン120A1および/または120A2は、予測される音素(および/または他の表現)を代わりに生成することができる。たとえば、そのようなモデルでは、予測される音素(および/または他の表現)が次いで、予測される音素に適合する認識されたテキストを決定するために、発話認識エンジン120A1および/または120A2によって利用される。そうする際に、発話認識エンジン120A1および/または120A2は、復号グラフ、語彙集、および/または他のリソースを任意選択で利用することができる。
【0023】
いくつかの追加および/または代替の実装形態では、自動アシスタント115は、ユーザインターフェース入力エンジン111を介したユーザ入力を何ら検出することなく、自動要求システム180を使用して、自動通話を開始して実行することができる。いくつかの実装形態では、クエリ分析エンジン151は、クエリ活動データベース151Aに記憶されているクエリ活動を分析することができ、1つまたは複数の条件が満足されていると決定したことに応答して、自動通話を開始して実行せよとの要求を送信することができる。クエリ分析エンジン151によって分析されるクエリ活動は、それぞれのクライアントデバイスを使用して複数のユーザによって検索エンジンに(たとえば、検索インターフェースまたは自動アシスタントインターフェースを介して)出されるクエリを含み得る。それらの実装形態のいくつかのバージョンでは、1つまたは複数の条件は、所与の品目またはサービスに対する閾値の数のクエリが複数のユーザによって出されたかどうかを決定することを含み得る。たとえば、クエリ分析エンジン151が、複数のユーザが「toilet paper」またはその変形(たとえば、「TP」、「bathroom tissue」など)に対する30000回のクエリを出したことを使用する複数のユーザのクエリ活動の分析に基づいて、所与の品目(たとえば、トイレットペーパー)に対するクエリの閾値を超えていると決定する場合、自動アシスタント115は、自動通話を開始して実行せよとの要求を要求処理エンジン152に送信し得る。それらの実装形態のいくつかのバージョンでは、クエリ活動は、特定の地理的領域においてユーザによって出されるクエリに制約され得る。たとえば、クエリ活動は、特定の郵便番号、郡、自治体、町、市、州、国、および/または他の地理的領域においてユーザによって出されるクエリに制約され得る。
【0024】
それらの実装形態のいくつかのさらなるバージョンでは、1つまたは複数の条件は、所与の品目またはサービスに対する閾値の数のクエリが所与の時間内に複数のユーザによって出されたかどうかを決定することを含み得る。上の例について続けると、クエリ分析エンジン151が、「toilet paper」またはその変形に対する30000回のクエリが2週間の間に出されたと決定する場合、自動アシスタントは、要求を要求処理エンジン152に送信しなくてもよい。しかしながら、クエリ分析エンジン151が、「toilet paper」に対する30000回のクエリが2日間の間に出されたと決定する場合、自動アシスタントは、要求を要求処理エンジン152に送信してもよい。このようにして、クエリ分析エンジン151は、特定の期間にわたり所与の品目に対するクエリの増加があるかどうかを検出することができる。その上、様々な実装形態において、クエリ分析エンジン151は、「toilet paper」またはその変形に言及するだけのものではなく関心対象の品目を見つけようとしているまたは入手しようとしているものなどの、クエリ活動データベース151Aの中の出されたクエリのサブセットのみを分析し得る。このようにして、クエリ分析エンジン151は、特定の地理的領域からの出されたクエリの急増を特定することができる。
【0025】
要求処理エンジン152は、受け取られた要求を処理して、要求に関連する行動を決定することができる。要求に関連する行動は、所与のエンティティにおける関心対象の品目に関する状況更新を要求すること、ある期間の間の特定のサービスに関連する所与のエンティティの利用可能性を要求すること、および/または、自動通話の間に自動アシスタント115によって実行され得る他の行動を含み得る。要求がユーザ入力エンジン111を介してクライアントデバイス110において検出されるユーザ入力に基づく実装形態において、要求処理エンジン152は、タイプされた入力および/もしくはタッチ入力の標示、ならびに/または、話された入力からの生成された認識されたテキストおよび/もしくは決定された意図に基づいて、要求に関連する行動を決定することができる。たとえば、ユーザ入力エンジン111を介して検出されたユーザ入力が「明日午後12:00に自宅で作業できる電気工事業者を探して」という話された入力である場合、要求処理エンジン152は、生成された認識されたテキストおよび/または決定された意図に基づいて、明日午後12:00における電気工事業者の利用可能性を要求するために電気工事業者に電話をかけることを、その行動が含むと決定することができる。要求が、ユーザ入力エンジン111を介してクライアントデバイス110においてユーザ入力を何ら検出することなく、クエリ活動を分析することに基づく実装形態では、要求処理エンジンは、クエリに含まれる所与の品目またはサービスに基づいて、要求に関連する行動を決定することができる。たとえば、クエリ分析エンジン151が、「ハンドサニタイザー」という用語を含む5000回のクエリが、1時間の間にケンタッキー州ジェファーソン郡のユーザによって出されたと決定する場合、要求処理エンジン152は、ケンタッキー州ジェファーソン郡のハンドサニタイザーに関連して記憶されているエンティティに電話をかけて、エンティティの各々におけるハンドサニタイザーの利用可能性に関する状況更新を要求することを、その行動が含むと決定することができる。
【0026】
エンティティ特定エンジン153は、自動通話の間に関わるべきエンティティのグループを特定することができる。エンティティは、たとえば、人のエンティティ、業者のエンティティ、位置のエンティティ、および/または他のエンティティであり得る。いくつかの実装形態では、エンティティ特定エンジン153は、グループに含まれるべきエンティティの具体的なタイプを決定することもできる。たとえば、人のエンティティのタイプは、友人のエンティティ、家族のエンティティ、同僚のエンティティ、および/または他の特定のタイプの人のエンティティであり得る。さらに、業者のエンティティのタイプは、サービス提供者のエンティティ、航空会社のエンティティ、ホテルのエンティティ、小売店のエンティティ、および/または他の特定のタイプの業者のエンティティであり得る。その上、位置のエンティティのタイプは、学校のエンティティ、博物館のエンティティ、図書館のエンティティ、および/または他の特定のタイプの位置のエンティティであり得る。いくつかの実装形態では、エンティティ特定エンジン153は、特定されたエンティティのための固有のエンティティも決定することができる。たとえば、人のエンティティのための固有のエンティティは人の名前(たとえば、John Doe、Example Plumber 1など)であってもよく、業者のエンティティのための固有のエンティティは業者の名前(たとえば、Example Super Store、Hypothetical Toy Store、Example Plumbing Companyなど)であってもよく、位置のエンティティのための固有のエンティティは位置の名前(たとえば、Hypothetical Library、Example State Parkなど)であってもよい。本明細書において説明されるエンティティは、様々なレベルの粒度で定義され得るが、簡潔にするために、それらは集合的に「エンティティ」と本明細書では呼ばれる。
【0027】
エンティティ特定エンジン153によって特定されるエンティティの各々は、エンティティデータベース153Aに記憶され得る。さらに、エンティティの各々は、エンティティと関連付けられる品目、エンティティと関連付けられるサービス、エンティティと関連付けられる位置、エンティティと関連付けられるウェブページ、および/またはエンティティの各々に関連する他のデータに関連して、エンティティデータベース153Aに記憶され得る。いくつかの実装形態では、エンティティデータベース153Aは、ウェブクローラーを使用して、エンティティおよび関連するデータで埋められ得る。たとえば、所与のエンティティがHypothetical Toy Storeである場合、ウェブクローラーは、Hypothetical Toy Storeに関連するウェブページをクローリングして、Hypothetical Toy Storeの各位置、Hypothetical Toy Storeにおける特定の品目の利用可能な在庫、およびHypothetical Toy Storeの営業時間を特定し、Hypothetical Toy Storeに関連してこのデータをエンティティデータベース153Aに記憶することができる。別の例として、所与のエンティティがHypothetical Cafeである場合、ウェブクローラーは、Hypothetical Cafeに関連するウェブページをクローリングして、Hypothetical Cafeの各位置、Hypothetical Cafeにおいて利用可能なメニュー品目、およびHypothetical Cafeの営業時間を特定し、Hypothetical Cafeに関連してこのデータをエンティティデータベース153Aに記憶することができる。このようにして、エンティティデータベース153Aは、その中に記憶されているエンティティの各々とエンティティに関連するデータとの間の対応付けを含む。いくつかの追加および/または代替の実装形態では、エンティティまたはエンティティを訪れるユーザは、エンティティに関連する品目の標示を提供することができる。
【0028】
要求がユーザ入力エンジン111を介してクライアントデバイス110において検出される受け取られたユーザ入力に基づく実装形態では、エンティティ特定エンジン153は、ユーザ入力を受け取ったことに応答して、要求を満足させることが各々可能なエンティティのグループを特定することができる。エンティティ特定エンジン153は最初に、要求に含まれる所与の品目またはサービスに関連してエンティティデータベース153Aに記憶されているエンティティの各々を、要求を満足させることが各々可能なエンティティの初期グループとして特定することができる。さらに、エンティティ特定エンジン153は、クライアントデバイス110の1つまたは複数のセンサ(たとえば、GPS)によって生成される位置データに基づいて、クライアントデバイス110の位置を特定することができ、初期グループの中のエンティティのいずれがクライアントデバイス110の位置から閾値の距離以内にあるかを決定することができる。その上、エンティティ特定エンジン153は、クライアントデバイス110の位置から閾値の距離以内にあり、要求を満足させることが可能なエンティティを、エンティティのグループに含めることができる。たとえば、クライアントデバイス110において検出されたユーザ入力が「ペーパータオルを探して」という話された入力である場合、エンティティ特定エンジン153は、クライアントデバイス110の現在の位置を特定し、ペーパータオルに関連してエンティティデータベース153Aに記憶されているエンティティを特定し、特定されたエンティティのうちのいずれがクライアントデバイス110の現在の位置から半径10マイル以内にあるかを決定し、クライアントデバイス110の現在の位置から半径10マイル以内にある、ペーパータオルに関連するエンティティの各々を、エンティティのグループに含めることができる。
【0029】
それらの実装形態のいくつかのバージョンでは、最初に特定されるエンティティは、クライアントデバイス110の位置から閾値の距離以内の位置に関連して記憶されているエンティティに制約され得る。上の例について続けると、クライアントデバイス110から半径10マイル以内にあり、ペーパータオルに関連して記憶されているエンティティのみが、グループに含められることを検討され得る。それらの実装形態のいくつかのバージョンでは、エンティティ特定エンジン153は、閾値の数のエンティティのみをグループに含め得る。たとえば、グループの中のエンティティの数がエンティティの閾値の数を超える場合、1つまたは複数の基準を満たすエンティティのみがグループに含められ得る。1つまたは複数の基準は、たとえば、位置の基準、時間の基準、レーティングの基準、ユーザの好みの基準、および/または他の基準を含み得る。上の例について続けると、クライアントデバイス110の現在の位置から半径10マイル以内にあり、ペーパータオルに関連する10個のエンティティがある場合、5個の最も近いエンティティ、レーティングが高い方の5個のエンティティ、および/または営業時間により示されるように現在営業している5個のエンティティ、またはクライアントデバイス110のユーザが過去に訪れたことのあるもしくは頻繁に訪れる5個のエンティティ。それらの実装形態のいくつかの追加および/または代替のバージョンでは、エンティティ特定エンジン153は、エンティティのグループの中のエンティティのいずれもが要求を満足させることができない場合、エンティティの追加のグループを特定し得る。グループのエンティティのいずれもが要求を満足させることができないと決定したことに応答して、閾値の距離が修正されてもよい。上の例について続けると、グループの中の5個のエンティティのいずれにも利用可能なペーパータオルがない場合、半径10マイル以内にある5個の追加のエンティティを追加のグループに含めることができ、または、半径10マイル以内に5個の追加のエンティティがない場合、半径10マイルを15マイル以上に拡大することができる。このようにして、ユーザ入力に応答して特定されるエンティティは、ユーザ入力を提供したユーザに対して個人化される。
【0030】
要求がクエリ分析エンジン151を介してクエリ活動を分析することに基づく実装形態では、エンティティ特定エンジン153は、要求を受け取ったことに応答して、要求を満足させることが各々可能なエンティティのグループを特定することができる。エンティティ特定エンジン153は、要求に含まれる所与の品目またはサービスに関連してエンティティデータベース153Aに記憶されているエンティティの各々を、要求を満足させることが各々可能なエンティティのグループとして特定することができる。たとえば、クエリ分析エンジン151が、「Hot Christmas Toy 2020」という用語を含む出されたクエリが最近急増していると決定する場合、Hot Christmas Toy 2020に関連して記憶されている各エンティティを、エンティティのグループに含めることができる。それらの実装形態のいくつかのバージョンでは、エンティティ特定エンジン153は、クエリ活動におけるクエリが出された特定の地理的領域を特定することができる。その上、エンティティ特定エンジン153は、特定の地理的領域内にあり、要求を満足させることが可能なエンティティを、エンティティのグループに含めることができる。上の例について続けると、クエリ分析エンジン151が、Hot Christmas Toy 2020のクエリの最近の急増がカリフォルニア州サンフランシスコ郡を起源とすると決定する場合、エンティティ特定エンジン153は、グループの中のエンティティを、カリフォルニア州サンフランシスコ郡内の位置に関連して記憶されているエンティティだけに制約することができる。このようにして、出されたクエリの最近の急増に応答して特定されるエンティティは、クエリの起源である特定の地理的領域に対して個人化される。
【0031】
要求実行エンジン154は、エンティティ特定エンジン153によって特定されたグループのエンティティとの対応する自動通話を開始して実行することができる。より具体的には、本明細書において説明される自動通話の各々は、たとえば、Voice over Internet Protocol (VoIP)、公衆交換電話網(PSTN)、および/または他の電話通信プロトコルを含む、様々な音声通信プロトコルを使用して開始され実行され得る。その上、本明細書において説明される自動通話の各々は、自動アシスタント115と、エンティティのグループのうちの所与のエンティティに関連する担当者との間の通話であり得る。担当者は、たとえば、所与のエンティティに関連する人の担当者、所与のエンティティに関連する追加の自動アシスタント、所与のエンティティに関連するIVRシステム、および/またはこれらの任意の組合せであり得る。
【0032】
より具体的には、要求実行エンジン154は、要求に含まれる行動を実行するための自動通話の間に、自動アシスタント115に、合成発話を使用して、所与のエンティティに関連する担当者と会話させることができる。要求実行エンジン154は、要求の実行に関するテキストおよび/または音素を、クライアントデバイス110の発話合成エンジン140A1および/または通話支援システム180の発話合成エンジン140A2に提供し、合成発話オーディオデータを生成することができる。合成発話オーディオデータは、聴覚的なレンダリングのために、所与のエンティティに関連する担当者の追加のクライアントデバイスに送信され得る。発話合成エンジン140A1および/または140A2は、発話合成モデル140Aを使用して、要求の実行に関するテキストおよび/または音素に対応する合成発話を含む合成発話オーディオデータを生成することができる。たとえば、要求が、「Hot Christmas Toy 2020」に関する状況更新に対する要求であると仮定する。この例では、発話合成エンジン140A1および/または140A2は、「販売用に利用可能なHot Christmas Toy 2020はありますか」という状況更新に対応する音素のシーケンスを決定することができ、発話合成モデル140Aを使用して、音素のシーケンスを処理し、Hot Christmas Toyに関する状況更新に対する要求を捉える合成発話オーディオデータを生成することができる。合成発話オーディオデータは、たとえばオーディオ波形の形式であり得る。要求の実行に関する少なくとも音素に対応する音素のシーケンスを決定する際、発話合成エンジン140A1および/または140A2は、クライアントデバイス110においてローカルで記憶されている、またはネットワーク190を介してサーバにリモートで記憶されている、トークンと音素の対応付けにアクセスすることができる。
【0033】
様々な実装形態において、所与のエンティティとの対応する自動通話の間の要求の実行の前に、自動アシスタント115は、所与のエンティティに関連する担当者から、自動アシスタント115との会話に関わることについて同意を得ることができる。たとえば、自動アシスタント115は、自動アシスタント115として名乗り、自動アシスタントとの会話に関わることについて同意するように所与のエンティティに関連する担当者に求めることによって、自動通話を開始する際に同意を得ることができる。自動アシスタント115が所与のエンティティに関連する担当者から同意を得る場合、自動アシスタント115は、自動要求システム180を使用して、要求に含まれる行動を実行することができる。さらに、自動アシスタントは、同意が得られると、その後のいずれの自動通話においても担当者に同意を求めなくてもよい。しかしながら、自動アシスタント115が担当者から同意を得ない場合、自動アシスタント115は自動通話を終了することができる。
【0034】
要求実行エンジン154は、要求に関する合成発話の対応するインスタンスをレンダリングすることによって、所与のエンティティに関連する担当者との会話に関わることができる。合成発話の対応するインスタンスのレンダリングは、所与のエンティティに関連する担当者の追加のコンピューティングデバイスにおいて合成発話がレンダリングされるようにすることを含む。合成発話の対応するインスタンスは、上で説明されたように発話合成モデル140Aを使用して生成されてもよく、要求に関連するテキストおよび/または音素に基づいて生成されてもよい。その上、要求実行エンジン154は、上で説明されたように、発話認識エンジン120A1および/または1202A2ならびにNLUエンジン130A1および/または130A2を利用して、所与のエンティティの間に所与のエンティティに関連する担当者から受け取られる情報に対応する任意のオーディオデータを処理することができる。要求実行エンジン154は、自動アシスタント115に、担当者との会話の間に受け取られた情報に基づいて会話を進めさせることができる。たとえば、自動アシスタント115は最初に、所与のエンティティが要求を満足させることが可能であることを確かめることができる。要求を満足させることが可能であると所与のエンティティが認める場合、自動アシスタント115は、要求を満足させることについてさらに問い合わせることができる。しかしながら、要求を満足させることができないことを所与のエンティティが示す場合、自動アシスタント115は通話を終了し得る。これは、自動アシスタント115が、自動通話の間に受け取られた情報に基づいてインテリジェントに応答することを可能にする。
【0035】
たとえば、要求が、ラテックス手袋の利用可能性に関する状況更新に対する要求であると仮定する。この例では、「利用可能なラテックス手袋はありますか」という合成発話オーディオデータを、担当者の追加のクライアントデバイスにおいてレンダリングすることができ、担当者は、たとえば「はい」または「いいえ」という情報を提供することがあり、受け取られた情報を捉えるオーディオデータを処理することができる。受け取られたオーディオデータを処理することに基づいて、自動アシスタント115は会話を進めることができる。たとえば、ラテックス手袋が所与のエンティティにおいて利用可能であることを担当者が示す場合、要求実行エンジン154はさらに、ラテックス手袋の利用可能な量、その日の営業終了までラテックス手袋が利用可能であると所与のエンティティが予想するかどうかなどを尋ねてもよい。しかしながら、ラテックス手袋が所与のエンティティにおいて利用可能ではないことを担当者が示す場合、要求実行エンジン154は、自動アシスタント115に会話を終了させることができる。所与のエンティティに関連する担当者との会話に関わることは、(たとえば、図4A図4C図5B図5D、および図6B図6Cに関して)本明細書においてより詳しく説明される。
【0036】
要求が所与の品目に関する対応する状況更新に対する要求である実装形態では、更新エンジン155は、所与のエンティティに関連する担当者との対応する自動通話の間に受け取られた情報に基づいて、所与のエンティティに関連する結果が更新されるようにすることができる。とりわけ、所与のエンティティに関連する結果は、要求がユーザ入力エンジン111を介して検出される受け取られたユーザ入力に基づくか、またはクエリ分析エンジン151を介してクエリ活動を分析することに基づくかにかかわらず、更新され得る。所与のエンティティに関連する更新された結果は、たとえば、所与の品目が所与のエンティティにおいて利用可能であることの標示、所与のエンティティにおいて利用可能な品目の量の標示、および/または、所与のエンティティに関連する担当者との対応する自動通話の間に受け取られた他の情報を含み得る。とりわけ、結果(本明細書では「検索結果」とも呼ばれる)は、様々なインターフェースを通じてユーザに明らかになり得るあらゆる結果を含み得る。たとえば、結果は、情報検索システムインターフェース、自動アシスタントインターフェース、地図もしくはナビゲーションアプリケーションインターフェース、カスタマイズされたインターフェース、および/または情報をユーザに明らかにするために使用される任意の他のインターフェースを介して提示され得る。
【0037】
たとえば、要求が、トイレットペーパーに関する状況更新に対する要求であると仮定する。この例では、自動アシスタント115は、所与のエンティティにおけるトイレットペーパーに関する状況更新を要求するために、所与のエンティティに関連する担当者との会話に関わることができる。会話の間に、所与のエンティティに関連する担当者が、所与のエンティティに利用可能なトイレットペーパーがあることを示す情報を提供し、利用可能なトイレットペーパーの量の標示についての情報も提供する(たとえば、「本日の営業終了までの分は十分にあります」、「トイレットペーパーは100パッケージあります」、「昼前に売り切れる見込みです」など)とさらに仮定する。この受け取られた情報に基づいて、更新エンジンは、所与のエンティティに利用可能なトイレットペーパーがあることの標示と、利用可能なトイレットペーパーの量の標示とを含むように、所与のエンティティに関連する結果が更新されるようにすることができる。上の例とは対照的に、所与のエンティティに関連する担当者からの受け取られた情報が、エンティティがトイレットペーパーを販売していないことを示すと仮定する。この例では、所与のエンティティに関連する結果は、所与のエンティティがトイレットペーパーと関連付けられないことを示すように更新され得る。さらに、更新エンジン155は、所与のエンティティがもはやトイレットペーパーと関連付けられないことの標示を送信することができ、エンティティ特定エンジン153は、エンティティデータベース153Aにおけるトイレットペーパーと所与のエンティティとの間の関連付けを削除することができる。
【0038】
それらの実装形態のいくつかのバージョンでは、所与のエンティティに関連する更新された結果は、所与のエンティティに関連する担当者からいつ情報が受け取られたかの時間インジケータも含み得る。時間インジケータは、たとえば、情報が受け取られた具体的な時間(たとえば、午前9:00、午後2:00)、情報が受け取られた具体的な日付(たとえば、昨日、今日、2020年6月11日)、情報が受け取られた日付の範囲(たとえば、先週、昨日の午前、今日の午後)、および/またはこれらの任意の組合せを含み得る。対応する自動通話の間に受け取られた情報に基づいて複数のエンティティに関連する結果を更新することが、(たとえば、図4A図4Dに関して)本明細書においてより詳しく説明される。所与のエンティティに関連する結果を更新することによって、複数のユーザが、品目に関する状況更新を要求するために所与のエンティティに電話をかける必要がなくなり、それにより、複数のユーザのクライアントデバイスの計算リソースおよび所与のエンティティに関連するクライアントデバイスの計算リソースを節約する。言い換えると、単一の自動通話、およびその単一の自動通話からの情報を複数のユーザに提供することにより、複数のユーザの少なくとも2人以上がそのような情報を求めて所与のエンティティに電話をかけるのを防ぐことができる。その上、所与のエンティティに関連する結果を更新することによって、複数のユーザが品目を探して複数のエンティティに移動する必要がなくなり、それにより、品目を探す複数のユーザによる複数のエンティティへの輸送において消費される天然資源を節約する。
【0039】
それらの実装形態のいくつかのバージョンでは、更新エンジン155はまた、所与のエンティティに関連する更新された結果および所与のエンティティに関連する以前に更新された結果を分析して、未来の時間における、所与のエンティティにおける品目の未来の利用可能性または所与のエンティティにおける品目の未来の利用可能な量を予測することができる。更新されたエンジン155は、未来の時間における、たとえば機械学習予測モデルによって生成される機械学習予測モデルまたはルールを使用して、所与のエンティティにおける品目の未来の利用可能性または所与のエンティティにおける品目の未来の利用可能な量を予測することができる。たとえば、更新エンジン155は、所与のエンティティに関連する更新された結果を分析したことに基づいて、過去3週の木曜日と金曜日には所与のエンティティに利用可能なトイレットペーパーがなかったが、過去3週の土曜日の各々には所与のエンティティに利用可能なトイレットペーパーがあったと決定することができる。この決定に基づいて、更新エンジン155は、今週の木曜日または金曜日には所与のエンティティに利用可能なトイレットペーパーがないが、その後の土曜日には利用可能なトイレットペーパーがあると予測することができる。したがって、週の初めに、更新エンジン155は、木曜日または金曜日には所与のエンティティに利用可能なトイレットペーパーがないが、土曜日には利用可能なトイレットペーパーがあると予想されることの標示も含むように結果が更新されるようにすることができる。
【0040】
要求がユーザ入力エンジン111を介してクライアントデバイス110において検出される受け取られたユーザ入力に基づく実装形態では、要求実行エンジン154は、エンティティのグループのうちのあるエンティティとの自動通話を開始して、要求に含まれる行動を実行することができる。要求実行エンジン154は、グループの追加のエンティティとの追加の自動通話の実行を開始するための通話開始時間を決定することができる。さらに、要求実行エンジン154は、自動通話の前に、またはその間に、各通話開始時間を決定することができる。それらの実装形態のいくつかのバージョンでは、通話開始時間は、不変の閾値の時間の長さ(たとえば、15秒、30秒、45秒、および/または他の時間の長さ)であり得る。たとえば、要求実行エンジン154は、自動アシスタント115に、グループのエンティティの各々について、グループの第1のエンティティとの第1との第1の自動通話を開始させ、第1のエンティティとの第1の自動通話を開始してから30秒後にグループの第2のエンティティとの第2の自動通話を開始させ、第2のエンティティとの第2の自動通話を開始してから30秒後にグループの第3のエンティティとの第3の自動通話を開始させることができ、以下同様である。
【0041】
それらの実装形態の他のバージョンでは、要求実行エンジン154は、グループのエンティティおよび/または要求の複雑さのうちの対応する1つに関連する通話履歴データ(たとえば、通話履歴データベース154Aに記憶されている)に基づいて、各通話開始時間を決定することができる。通話履歴データは、たとえば、対応するエンティティがIVRシステムに関連することの標示およびIVRシステムを操作するための時間の長さ、対応するエンティティとの以前の自動通話の時間の長さの標示、対応するエンティティとの以前の自動通話の間の最初の待ち時間の長さの標示、ならびに/または、グループの各々の対応するエンティティとの以前の自動通話から導かれる他の通話データを含み得る。1つの非限定的な例として、グループの第1のエンティティは、IVRシステムまたは待ち時間に関連しないが、グループの第2のエンティティは、操作するのに20秒かかるIVRシステムに関連することを、通話履歴データが示す場合、要求実行エンジン154は、自動アシスタント115に、グループの第1のエンティティとの第1の自動通話を、グループの第2のエンティティとの第2の自動通話と同時に(たとえば、同時にまたは閾値の長さの時間(たとえば、500ミリ秒、1秒、および/または他の長さの時間)内に)開始させることができる。別の非限定的な例として、グループの第1のエンティティが、操作するのに10秒かかるIVRシステムに関連し、グループの第2のエンティティが、操作するのに30秒かかるIVRシステムに関連することを、通話履歴データが示す場合、要求実行エンジン154は、自動アシスタント115に、グループの第1のエンティティとの第1の自動通話を開始させ、10秒後にグループの第2のエンティティとの第2の自動通話を開始させることができる。さらに別の非限定的な例として、要求の複雑さに基づいて要求を実行するのに45秒かかることが予測される場合、および、グループの第1のエンティティはIVRシステム(またはあらゆる待ち時間)に関連しないが、グループの第2のエンティティは操作するのに20秒かかるIVRシステムに関連することを、通話履歴データが示す場合、要求実行エンジン154は、自動アシスタント115に、第1のエンティティとの第1の自動通話を開始してから25秒後に、グループの第2のエンティティとの第2の自動通話を開始させることができる。この例では、IVRを操作するための20秒と通話開始時間に対する25秒の遅延が要求を実行するための45秒に等しいことに基づいて、第2のエンティティに関連する担当者が第1の自動通話の実行の後に第2の通話に応答するように、自動アシスタントは、要求を実行するのに十分な時間(たとえば、45秒)を第1のエンティティについて与えられ、第2のエンティティとの第2の自動通話を開始し得る。さらに、これはまた、要求を満足させることができることを第1のエンティティが示す場合、第2のエンティティとの第2の自動通話を終了するための機会を自動アシスタントに与える。この例とは対照的に、第1のエンティティは操作するのに20秒かかるIVRシステムに関連し、第2のエンティティはIVRシステムまたは待ち時間に関連しないと仮定する。この例では、第2のエンティティとの第2の自動通話の通話開始時間は、IVRシステムを操作するために20秒を自動アシスタントに与え、第2のエンティティとの第2の自動通話を開始する前に行動を実行するために、65秒であり得る。通話開始時間は、グループのエンティティの各々に対してこの動的な方式で決定され得る。
【0042】
様々な実装形態において、交互に自動通話を行う際に利用される通話開始時間は、通知が提供される際のレイテンシを短くしようとすること(たとえば、通知エンジン113に関して以下で説明されるように)、および/または、自動アシスタントとのユーザの対話の長さ全体を短くしようとすることを考慮して決定され得る。それらの実装形態の多くにおいて、通話開始時間はさらに、(たとえば、前に電話をかけられたエンティティが行動を満足させることができる状況において)後で電話をかけられる1つまたは複数のエンティティとの不要な通話および/または不要に長い通話時間を減らそうとすることを考慮して決定される。通話開始時間をそのような方式で決定することは、レイテンシを減らすことで達成される技術的な利点、および/または自動通話を実行する際に利用されるリソースとの対話時間のバランスをとることができる。たとえば、自動通話を交互に行うことによって、ユーザ入力に含まれる要求が満足されるまで、グループの各エンティティとの自動通話を開始し実行することなく、エンティティに選択的に電話をかけることができる。その上、自動アシスタントが、第2の自動通話を開始して電話を切らずに待ちまたはIVRを操作するために、第1の自動通話が完結するのを待たなくてもよいように、自動アシスタントは、適切な時間にエンティティの各々に関連する担当者に接続され、それにより、自動通話を実行する際の対話時間を減らす。
【0043】
要求がユーザ入力エンジン111を介してクライアントデバイス110において検出される受け取られたユーザ入力に基づく実装形態では、要求実行エンジン154は、要求がグループのエンティティのうちの1つによって満足されるまで、上で説明されたいずれかの方式でグループエンティティとの自動通話の開始を続けることができる。それらの実装形態のいくつかのバージョンでは、要求実行エンジン154は、所与のエンティティに関連する担当者が、所与のエンティティが要求を満足させることができることを示すと、自動アシスタント115に、他のエンティティとの自動通話を先んじて終了させることができる。たとえば、グループの第1のエンティティに関連する担当者が、第1のエンティティが要求を満足させることができることを示す情報を提供し、グループの第2のエンティティとの第2の自動通話が開始されていると仮定する。この例では、第1のエンティティが要求を満足させることができるので、要求実行エンジン154は、自動アシスタントに第2のエンティティとの第2の自動通話を終了させることができる。
【0044】
それらの実装形態の他のバージョンでは、要求実行エンジン154は、自動通話の所与のエンティティの担当者が、所与のエンティティが要求を満足させることができることを示したとしても、追加の自動通話を先んじて終了するのではなく、追加の自動通話の実行の実行を続けることができる。たとえば、追加の自動通話が区切りの段階を過ぎて進行している場合、要求実行エンジン154は、自動アシスタント115に、追加のエンティティとの会話の実行を続けさせることができる。たとえば、要求はハンドサニタイザーに関する状況更新に対する要求であり、自動アシスタント115が第1の自動通話の間に第1のエンティティに関連する担当者との会話に関わっており、グループの第2のエンティティとの第2の自動通話をすでに開始していると、さらに仮定する。この例では、第1のエンティティに関連する担当者が、第1のエンティティに利用可能なハンドサニタイザーがあることを示し、自動アシスタント115が、第2のエンティティとの通話を切らずに待っている、または第2のエンティティに関連するIVRシステムを操作している場合、自動アシスタント115は第2の自動通話を終了させることができる。しかしながら、自動アシスタントが第2のエンティティに関連する担当者との会話にすでに関わっている場合、自動アシスタント115は第2の自動通話の実行を続けてもよい。さらに、更新エンジン155は、上で説明されたように、第2のエンティティに関連する担当者から受け取られた情報に基づいて、第2のエンティティに関連する検索結果が更新されるようにすることができる。
【0045】
とりわけ、ユーザ入力エンジン111を介してクライアントデバイス110において検出されるユーザ入力を受け取ったことに応答して開始され実行される自動通話は、クライアントデバイス110上でローカルで実行される自動アシスタント、またはクラウドベースの自動アシスタントによって、開始され実行され得る。ユーザ入力を要求したことに応答して自動通話の開始と実行を交互に行うことによって、本明細書において説明される技法は、エンティティに関連するクライアントデバイスの計算リソースを節約することができる。たとえば、要求を満足させることができる所与のエンティティを特定するために自動通話を交互に行うことによって、本明細書において説明される技法は、要求を満足させることができるエンティティの所与の1つを特定するためにグループのエンティティの各々に同時に電話をかけるのを避ける。その上、要求を満足させることができることを別のエンティティがすでに示した後に進行中の自動通話の実行を続けることによって、本明細書において説明される技法は、進行中の通話を単に終了させることと比較して、進行中の自動通話により消費される計算リソースを浪費するのを避ける。
【0046】
要求が、ユーザ入力エンジン111を介してクライアントデバイス110において検出される受け取られたユーザ入力に基づき、かつ、所与のエンティティがユーザ入力に含まれる要求を満足させることができることを所与のエンティティに関連する担当者が示すと決定したことに応答したものである実装形態では、要求実行エンジン154は、ユーザデータ(たとえば、ユーザデータデータベースに記憶されている)を含む合成発話が、所与のエンティティに関連する担当者のクライアントデバイスにおいてレンダリングされるようにすることができる。ユーザデータは、クライアントデバイス110のユーザの名前情報、クライアントデバイス110のユーザのアドレス情報、クライアントデバイス110のユーザの連絡先情報(たとえば、電話番号、電子メールアドレス、および/または他の連絡先情報)、クライアントデバイス110のユーザの金銭情報、および/またはクライアントデバイス110のユーザの他の情報を含み得る。それらの実装形態のいくつかのバージョンでは、承認エンジン156は、自動アシスタント115がユーザ情報を担当者に提供することを承認するためのプロンプトが、クライアントデバイス110のディスプレイに(たとえば、レンダリングエンジン112を使用して)レンダリングされるようにすることができる。このプロンプトはまた、選択されると、クライアントデバイス110のユーザが自動通話に参加することを可能にする選択可能要素を含み得る。クライアントデバイス110のユーザが、所与のエンティティの担当者へのユーザデータの提供を承認する場合、自動アシスタントは、ユーザデータを含む合成発話オーディオデータが、所与のエンティティに関連する担当者のクライアントデバイスにおいて聴覚的にレンダリングされるようにすることができる。しかしながら、クライアントデバイス110のユーザが、ユーザデータの提供を承認しない場合、自動アシスタント115は、ユーザデータを含む合成発話オーディオデータが、所与のエンティティに関連する担当者のクライアントデバイスにおいて聴覚的にレンダリングされるようにするのを控える。それらの実装形態の他のバージョンでは、クライアントデバイス110のユーザは、ユーザデータの提供を以前に承認していることがあり、自動アシスタント115は、ユーザに承認を求めることなく、ユーザデータを含む合成発話オーディオデータが、所与のエンティティに関連する担当者のクライアントデバイスにおいて聴覚的にレンダリングされるようにすることができる。
【0047】
ユーザ入力に含まれる要求がある品目に関する状況更新に対する要求であり、品目が利用可能であることを所与のエンティティに関連する担当者が示すような、それらの実装形態のいくつかのバージョンでは、自動アシスタント115は、クライアントデバイス110のユーザのために所与のエンティティにおいてその品目を取り置きするように担当者に求めることができ、または、クライアントデバイスのユーザの代わりにその品目を入手するために金銭情報を担当者に与えることができる。要求実行エンジン154は、ユーザ入力(たとえば、「消毒タオルを見つけて予約して」、「消毒タオルを代わりに見つけて手に入れて」)に基づいて、品目を取り置きするかどうか、もしくは品目を入手するかどうかを決定し、または、クライアントデバイス110のユーザが品目を取り置きすることを望むかどうか、もしくは品目を入手することを望むかどうかについて(たとえば、レンダリングエンジン112を介して)ユーザにプロンプトで尋ねることができる。
【0048】
たとえば、要求が消毒タオルに関する状況更新に対する要求であると仮定し、消毒タオルが所与のエンティティにおいて利用可能であることを所与のエンティティの担当者が示すとさらに仮定する。さらに、品目が所与のエンティティにおいて利用可能であると決定したことに応答して、および、クライアントデバイス110のユーザが品目を入手することを望んでいると決定したことに応答して、自動アシスタント115は、ユーザの名前、連絡先情報、および金銭情報を含む合成発話オーディオデータが、所与のエンティティに関連する担当者のクライアントデバイスにおいてレンダリングされるようにすることができる(承認される場合)。別の例として、要求が所与の時間および日付における配管修理サービスの利用可能性に対する要求であると仮定し、配管修理サービスが所与の時間および日付に利用可能であることを所与のエンティティの担当者が示すとさらに仮定する。さらに、配管修理サービスが所与の時間と日付に利用可能であると決定したことに応答して、および、クライアントデバイス110のユーザが所与の時間と日付に予約することを望んでいると決定したことに応答して、自動アシスタント115は、ユーザの名前、住所、および連絡先情報を含む合成発話オーディオデータが、所与のエンティティに関連する担当者のクライアントデバイスにおいてレンダリングされるようにすることができる(承認される場合)。
【0049】
要求がユーザ入力エンジン111を介してクライアントデバイス110において検出される受け取られたユーザ入力に基づく実装形態では、自動アシスタント115は、通知エンジン113に自動通話の1つまたは複数の結果を含む通知を生成させることができる。通知エンジン113によって生成される通知は(たとえば、レンダリングエンジン112を使用して)、クライアントデバイス110のディスプレイを介して視覚的に、および/または、クライアントデバイス110のスピーカーを介して聴覚的にレンダリングされ得る。会話の結果は、たとえば、所与のエンティティが要求を満足させることが可能かどうかの標示、クライアントデバイス110のユーザのために品目もしくはサービスが取り置かれたもしくは予約されたかどうかの標示、品目がクライアントデバイス110のユーザのために入手されたかどうかの標示、品目を入手するためにクライアントデバイス110のユーザのユーザデータを提出することの承認が必要であることの標示、所与のエンティティとの自動通話に参加することをクライアントデバイス110のユーザに求める標示、ならびに/または会話の他の結果を含み得る。通知エンジン113によって生成される通知は、バナー通知、ポップアップ通知、電子メール通知、テキストメッセージ通知、ボイスメッセージ通知、および/または他のタイプの通知であり得る。会話の結果に基づいて通知を生成することは、(たとえば、図5B図5D図6B、および図6Cに関して)本明細書においてより詳しく説明される。
【0050】
様々な実装形態において、レンダリングエンジン112は、自動アシスタント115と所与のエンティティの担当者との間の会話の書き起こしが、クライアントデバイス110のディスプレイにレンダリングされるようにすることができる。その上、ディスプレイはまた、選択されると、クライアントデバイス110のユーザが会話に参加すること、所与のエンティティとの自動通話を終了すること、および/または他の行動を実行することを可能にする、1つまたは複数の選択可能要素を含み得る。自動アシスタント115が複数のエンティティとの複数の会話に関わっている実装形態では、会話の各々の対応する書き起こしが、クライアントデバイス110のディスプレイにレンダリングされ得る。それらの実装形態のいくつかのバージョンでは、クライアントデバイス110の画面の表示領域は限られていることがあるので、クライアントデバイス110のユーザが複数の会話の書き起こしを切り替えることを可能にする自動アシスタントインターフェースにおけるタブと、各書き起こしが関連付けられ得る。他の実装形態では、書き起こしは表示されなくてもよく、クライアントデバイス110のユーザは単に、上で説明された通知を受信してもよい。
【0051】
要求がクエリ分析エンジン151を介してクエリ活動を分析することに基づく実装形態では、要求実行エンジン154は、自動アシスタント115に、要求に含まれる行動を実行するためにエンティティのグループのうちの所与のエンティティとの対応する自動通話を開始させることができる。いくつかの実装形態では、要求実行エンジン154は、本明細書において説明される自動アシスタント115の複数のインスタンスに、グループのエンティティの対応する1つとの複数の対応する自動通話を同時に開始させ実行させることができる。たとえば、自動アシスタント115の第1のインスタンスは、グループのエンティティの各々に対して、グループの第1のエンティティとの第1の自動通話を開始して実行することができ、自動アシスタント115の第2のインスタンスは、グループの第2のエンティティとの第2の自動通話を同時に開始して実行することができ、以下同様である。言い換えると、自動アシスタント115のインスタンスは、自動通話の各々を並行して開始し実行することができる。他の実装形態では、対応する自動通話は、(たとえば、エンティティのグループのサブセットと)何回かに分けてまとめて、または逐次開始され実行され得る。とりわけ、自動アシスタント115のインスタンスの各々は、自動要求システム180とともにサーバ(たとえば、クラウドベースの自動アシスタント)においてリモートで実行されてもよく、クライアントデバイス110は省略されてもよい。
【0052】
自動アシスタントのインスタンスの各々は、要求に含まれる行動を実行するために、エンティティの対応する1つとの対応する会話に関わることができる。時間遅延エンジン157は、対応する会話の各々の間に受け取られる情報に基づいて、対応するエンティティとの後続の対応する自動通話の実行を開始するまでの時間遅延を決定することができる。さらに、時間遅延エンジン157は、対応する自動通話の間に受け取られた情報、対応するエンティティに関連する営業時間、自動通話が実行され得るかどうか、および/またはいつ実行され得るかを制約する法律、計算および/またはネットワーク帯域幅の考慮事項(たとえば、早朝などの、電話呼には「低速の」時間帯)に基づいて、様々な期間を時間遅延として割り当てることができる。その上、時間遅延エンジン157は、時間遅延データベース157Aに、対応するエンティティに関連して、時間遅延として割り当てられた期間を記憶することができる。要求が品目に関する状況更新に対するものである実装形態では、時間遅延に割り当てられる期間は、品目の利用可能な量の標示に基づき得る。たとえば、品目の利用可能な量が第1の量の範囲内にある場合、第1の期間を時間遅延として割り当てることができ、品目の利用可能な量が第2の量の範囲内にある場合、第2の期間を時間遅延として割り当てることができ、品目の様々な量の範囲に対して以下同様である。別の例として、品目の利用可能な量が閾値の量を満たす場合、第1の期間を時間遅延として割り当てることができ、品目の利用可能な量が閾値の量を満たさない場合、第2の期間を時間遅延として割り当てることができる。
【0053】
たとえば、要求がトイレットペーパーに関する状況更新に対する要求であると仮定し、トイレットペーパーが所与のエンティティにおいて利用可能であることを所与のエンティティに関連する担当者が示すとさらに仮定する。その上、所与のエンティティに関連する担当者が、その日の営業終了まで売り切れないのに十分な量のトイレットペーパーがあることを示すと仮定する。この例では、時間遅延エンジン157は、少なくとも翌日まで自動アシスタント115が所与のエンティティとの後続の対応する自動通話を開始しないように、所与のエンティティに関連する時間遅延に第1の期間を割り当てることができる。対照的に、所与のエンティティに関連する担当者が、その日の営業終了までに売り切れるであろう量のトイレットペーパーしかないことを示すと仮定する。この例では、時間遅延エンジン157は、その日のより後の時間に自動アシスタント115が所与のエンティティとの後続の対応する自動通話を開始するように、所与のエンティティに関連する時間遅延に第2の期間を割り当てることができる。とりわけ、これらの時間遅延は、自動通話の間に受け取られた情報に基づいて、異なる時間において経過する。その上、所与のエンティティに関連する検索結果は、更新エンジン155に関して上で説明されたような自動通話の間に受け取られた情報に基づいて更新され得る。これらおよび他の方式では、対応する時間遅延は、エンティティとの自動通話の間に受け取られた情報に基づいて、各エンティティに対して動的に決定され得る。そのような方式で時間遅延を動的に決定することは、エンティティからの最新情報を維持することにより達成される技術的な利点と、自動通話を実行する際に利用されるリソースとのバランスをとることができる。言い換えると、時間遅延を動的に決定することは、計算および/またはネットワークリソースの不要な利用につながる、エンティティへの別の自動通話のあまりにも早い実行を防ぎながら、エンティティからの情報が最新であることを確実にすることができる。
【0054】
本明細書において説明される技法を使用することによって、様々な技術的な利点を達成することができる。1つの非限定的な例として、自動要求システム180を使用して自動通話をインテリジェントに開始することができるので、自動アシスタント115は、より迅速かつ効率的に要求を満足させるようにうまく自動通話を実行することができる。自動通話をインテリジェントに開始することにより、本明細書において開示される技法を使用することによって会話の長さと会話の数を減らすことができるので、ネットワークリソースと計算リソースの両方を節約することができる。別の非限定的な例として、エンティティに関連する検索結果は、会話の間に受け取られた情報に基づいて更新され得る。エンティティに関連する検索結果を更新することによって、様々な品目に関する状況更新を要求するために、および/または様々なサービスの利用可能性について尋ねるために、複数の他のユーザの各々がエンティティの各々との通話を個別に開始しなくてもよくなるので、エンティティがそれらの他のユーザから受ける電話がより少なくなる。その上、図1は、単一の品目またはサービスに関する状況更新を要求することに関連して本明細書において説明されるが、これは例示のためであり、限定することは意図されないことを理解されたい。たとえば、自動アシスタント115は、グループのエンティティの所与の1つとの対応する自動通話の間に、複数の品目に関する状況更新を要求することができる。
【0055】
図2は、所与のエンティティとの自動通話の間に受け取られる関心対象の品目に関する状況更新に基づいて、所与のエンティティとの後続の自動通話に対する時間遅延を決定する例示的な方法200を示すフローチャートを図示する。便宜上、方法300の動作は、それらの動作を実行するシステムを参照して説明される。方法300のこのシステムは、図1のクライアントデバイス110、図4A図4Dのコンピューティングデバイス410A、410B、図5A図5Dのコンピューティングデバイス510、図6A図6Cのコンピューティングデバイス610、図7のコンピューティングデバイス710、1つまたは複数のリモートサーバ、および/または他のコンピューティングデバイスなどの、コンピューティングデバイスの1つまたは複数のプロセッサおよび/または他のコンポーネントを含む。その上、方法300の動作は特定の順序で示されるが、これは限定されることを意図しない。1つまたは複数の動作は、並べ替えられてもよく、省略されてもよく、または追加されてもよい。
【0056】
ブロック252において、システムが関心対象の品目を特定する。いくつかの実装形態では、関心対象の品目は、(たとえば、図1のクエリ分析エンジン151に関して)上でより詳しく説明されたように、出されたクエリの急増を特定するために複数のユーザのクエリ活動を分析することに基づいて特定され得る。それらの実装形態のいくつかのバージョンでは、出されたクエリの急増は特定の地理的領域が起源であり得る。他の実装形態では、関心対象の品目は、システムに方法200を実行させるユーザからのユーザ入力に基づいて特定され得る。ブロック254において、システムが、関心対象の品目に関連するエンティティのグループを特定する。グループのエンティティは、1つまたは複数のデータベース(たとえば、図1のエンティティ特定エンジン153およびエンティティデータベース153A)に、関心対象の品目に関連して記憶され得る。システムは、データベースの1つまたは複数からエンティティを取り出すことができる。出されたクエリの急増が特定の地理的領域からのものであり得る実装形態では、グループの中のエンティティは、その特定の地理的領域に位置するエンティティに制約され得る。
【0057】
ブロック256において、システムが、グループのエンティティの各々との対応する自動通話の実行を開始して、関心対象の品目に関する対応する状況更新を要求する。システムは、自動で電話をかけて、関心対象の品目に関する対応する状況更新を要求する合成発話の1つまたは複数の対応するインスタンスをレンダリングすることによって、自動通話を開始することができる。いくつかの実装形態では、システムは、自動アシスタントの対応するインスタンス(たとえば、自動アシスタント115)を使用して、グループのエンティティの各々との複数の対応する自動通話の実行を同時に開始することができる。他の実装形態では、グループのエンティティの各々との自動通話の実行が完了するまで、エンティティの各々との自動通話が何回かに分けてまとめて開始されるように、システムは、エンティティのサブセットとの通話の実行を開始するだけでもよい。様々な実装形態において、自動アシスタントのインスタンスは、クラウドベースのアシスタントのインスタンスであり得る。
【0058】
ブロック258において、エンティティのグループのうちの所与のエンティティとの対応する自動通話の実行の間に、システムは、A)所与のエンティティに関連する担当者から関心対象の品目に関する対応する状況更新を要求し、B)担当者から関心対象の品目に関する情報を受け取る。システムは、所与のエンティティに関連する担当者との会話に関わることによって、対応する自動通話を実行することができる。さらに、システムは、自動通話の各々の間に合成発話の対応するインスタンスの1つまたは複数をレンダリングすることによって、対応する状況更新を要求することができる。たとえば、システムは、合成発話(たとえば、「こんにちは、トイレットペーパーは売っていますか?」、「利用可能なトイレットペーパーはありますか?」、「利用可能なトイレットペーパーはいくらありますか?」)が所与のエンティティに関連する担当者のコンピューティングデバイスにおいてレンダリングされるようにすることができる。さらに、システムは、(たとえば、図1の発話認識モデルに関してより詳しく説明されるように)発話認識モデルを使用して対応する自動通話の間に受け取られる情報に対応するオーディオデータを処理することができる。担当者から受け取られた情報は、合成発話のレンダリングに応答したものであり得る。図1に関して上でより詳しく説明されたように、システムは、会話の間に担当者にインテリジェントに応答することができる。
【0059】
ブロック260において、システムが、関心対象の品目に関する情報を含むように所与のエンティティに関連する検索結果を更新する。検索結果は、エンティティの各々から対応する情報を受け取ったことに応答して、グループの中のエンティティの各々のために更新され得る。いくつかの実装形態では、更新された検索結果は、いつ対応する自動通話が実行されて情報が受け取られたかの時間インジケータも含み得る。たとえば、Example Store 1に利用可能なトイレットペーパーがあることを受け取られた情報が示すと仮定する。Example Store 1に関連する検索結果は、情報が受け取られた時間と日付とともに、Example Store 1においてトイレットペーパーが利用可能であることを示すように更新され得る。
【0060】
ブロック262において、システムが、所与のエンティティがまだ関心対象の品目と関連付けられるかどうかを決定する。システムは、ブロック258からの関心対象の品目に関する受け取られた情報を処理したことに基づいて、所与のエンティティが関心対象の品目とまだ関連付けられるかどうかを決定することができる。ブロック262の反復において、システムが、所与のエンティティがまだ関心対象の品目と関連付けられると決定した場合、システムはブロック264に進む。たとえば、システムが、所与のエンティティがまだ関心対象の品目と関連付けられることを確認するために、「トイレットペーパーは売っていますか?」という合成発話が担当者に関連するコンピューティングデバイスにおいてレンダリングされるようにすると仮定する。Example Store 1がトイレットペーパーを売っていることを受け取られた情報が示すとさらに仮定する。この例では、システムは、所与のエンティティがまだ関心対象の品目と関連付けられることを確認している。
【0061】
ブロック264において、システムが、品目に関する受け取られた情報に基づいて、所与のエンティティとの対応する後続の自動通話の実行を開始するまでの時間遅延を決定する。さらに、システムは、1つまたは複数のデータベースにおいて、決定された時間遅延を所与のエンティティに割り当てることができる。決定された時間遅延は、関心対象の品目の利用可能な量に基づいて、所与のエンティティに割り当てられる期間であり得る。たとえば、3営業日分の十分な量のトイレットペーパーがあることを、Example Store 1に関連する担当者が示すと仮定する。この例では、システムは、Example Store 1に3営業日分の十分な量のトイレットペーパーがあることを示す受け取られた情報に基づいて、3日という期間を時間遅延として割り当て得る。対照的に、午前中の営業に十分な量のトイレットペーパーしかないと、Example Store 1に関連する担当者が予想すると仮定する。この例では、システムは、Example Store 1に午前中の営業に十分な量のトイレットペーパーしかないことを示す受け取られた情報に基づいて、5時間という期間を時間遅延として割り当て得る。
【0062】
ブロック266において、システムが、ブロック264において決定された所与のエンティティに割り当てられる時間遅延が経過したかどうかを決定する。ブロック266の反復において、その時間遅延が経過していないとシステムが決定する場合、システムは、ブロック266において、所与のエンティティに割り当てられた時間遅延の経過を監視し続ける。とりわけ、対応する自動通話は最初は並行して実行され得るが、対応する後続の自動通話は、決定された時間遅延の経過に基づいて開始される。しかしながら、ブロック266の反復において、システムがブロック264において決定された時間遅延が経過したと決定する場合、システムはブロック268に進む。
【0063】
ブロック268において、システムが、所与のエンティティとの対応する後続の自動通話の実行を開始して、関心対象の品目に関するさらなる状況更新を要求する。システムは、ブロック258に関して上で説明されたのと同様の方式で、関心対象の品目に関するさらなる状況更新を要求することができる。さらに、システムは、ブロック264に戻り、対応する後続の自動通話の間に受け取られる情報に基づいて、さらなる時間遅延を決定することができる。システムは、1つまたは複数の条件が満たされるまで、対応するさらなる自動通話のための時間遅延の決定を続けることができる。1つまたは複数の条件は、たとえば、関心対象の品目に対する出されたクエリの減少、閾値の時間の長さ(たとえば、1週間、2週間、1ヶ月など)、および/または他の条件が満たされることを含み得る。
【0064】
しかしながら、ブロック262の反復において、システムは、エンティティがもはや関心対象の品目と関連付けられないと決定する場合、システムは、時間遅延を決定するのを控え、ブロック270に進み、関心対象の品目に関連するエンティティのグループから所与のエンティティを除去し得る。結果として、システムは、関心対象の品目に関するさらなる状況更新を要求するために所与のエンティティとの後続の自動通話を開始することはない。しかしながら、システムはそれでも、他の関心対象の品目に関する状況更新を要求するために、続いて所与のエンティティに電話をかけることがある。
【0065】
図2において説明される時間遅延は単一のエンティティに関して説明されるが、これは例示のためであり、限定されることは意図しないことを理解されたい。上で述べられたように、自動アシスタントは、グループのエンティティとの複数の自動通話の実行を同時に開始することができる。自動通話の各々の間に、時間遅延をエンティティの対応する1つに割り当てることができ、エンティティの各々の時間遅延は、エンティティの対応する1つに関連する担当者からの関心対象の品目に関する受け取られた情報に基づいて異なり得る。
【0066】
図3は、所与のエンティティとの自動通話の間に受け取られる情報に基づいて、追加のエンティティとの追加の自動通話を開始するかどうかを決定する例示的な方法300を示すフローチャートを図示する。便宜上、方法300の動作は、それらの動作を実行するシステムを参照して説明される。方法300のこのシステムは、図1のクライアントデバイス110、図4A図4Dのコンピューティングデバイス410A、410B、図5A図5Dのコンピューティングデバイス510、図6A図6Cのコンピューティングデバイス610、図7のコンピューティングデバイス710、1つまたは複数のリモートサーバ、および/または他のコンピューティングデバイスなどの、コンピューティングデバイスの1つまたは複数のプロセッサおよび/または他のコンポーネントを含む。その上、方法300の動作は特定の順序で示されるが、これは限定されることを意図しない。1つまたは複数の動作は、並べ替えられてもよく、省略されてもよく、または追加されてもよい。
【0067】
ブロック352において、システムが、ユーザのコンピューティングデバイスから、ユーザの代わりに自動通話の実行を開始せよとの要求を受け取る。この要求は、ユーザのコンピューティングデバイスにおいて受け取られるユーザ入力に基づき得る。いくつかの実装形態では、ユーザ入力は、ユーザのコンピューティングデバイスに表示される検索インターフェースまたは自動アシスタントインターフェースからの、タッチ入力またはタイプされた入力であり得る。たとえば、ユーザ入力は、選択されると、要求を実行するための自動通話をシステムに開始させる検索インターフェースの選択可能な要素に向けられたタッチ入力であり得る。他の実装形態では、ユーザ入力は、ユーザのコンピューティングデバイスのマイクロフォンを介して検出される話された入力であり得る。話された入力は、発話認識モデルおよび/またはNLUモデルを使用して、(たとえば、図1に関して説明されたように)ユーザ入力が要求を含むと決定するために処理され得る。
【0068】
ブロック354において、システムが、要求に基づいて、自動通話の間に実行されるべき行動を特定する。行動は、ユーザ入力に含まれる1つまたは複数の用語に基づいて特定され得る。行動は、たとえば、所与のエンティティもしくは複数のエンティティからの関心対象の品目に関する状況更新を要求すること、所与のエンティティに関連する位置において関心対象の品目を予約すること、所与のエンティティに関連する位置において関心対象の品目を入手すること、所与のエンティティもしくは複数のエンティティからのサービスの利用可能性を要求すること、および/または、本明細書において説明される自動通話を使用して実行され得る他の行動を含み得る。たとえば、行動は、特定のエンティティにおいてトイレットペーパーを入手するための行動、または、具体的なエンティティを指定することなく一般にトイレットペーパーを入手するための行動を含み得る。別の例として、行動は、所与の期間の間に利用可能な最安の電気工事業者を見つけるための行動を含み得る。実行されるべき行動を特定することは、(たとえば、図1の要求処理エンジン152に関して)上でより詳しく説明されている。
【0069】
ブロック356において、システムが、自動通話の間に実行されるべき行動に基づいて、要求を満足させることが各々可能なエンティティのグループを特定する。グループのエンティティは、1つまたは複数のデータベース(たとえば、図1のエンティティ特定エンジン153およびエンティティデータベース153A)に、要求に含まれる品目またはサービスに関連して記憶され得る。システムは、データベースの1つまたは複数からエンティティを取り出すことができる。その上、グループの中のエンティティは、ユーザのコンピューティングデバイスの現在の位置から閾値の距離以内に位置するエンティティに制約され得る。たとえば、要求に含まれる行動は、品目に関する状況更新に対する要求であり、システムは、品目に関連する半径5マイル以内にあるエンティティのみをエンティティのグループに含め得ると仮定する。
【0070】
ブロック358において、システムが、エンティティのグループのうちの所与のエンティティとの自動通話の実行を開始する。システムは、自動で電話をかけて、関心対象の品目に関する対応する状況更新を要求する合成発話の1つまたは複数の対応するインスタンスをレンダリングすることによって、自動通話を開始することができる。いくつかの実装形態では、システムは、要求を提供したユーザのコンピューティングデバイスでローカルに動作する自動アシスタントを使用して、自動通話の実行を開始することができる。他の実装形態では、システムは、サーバにおいてリモートで動作する自動アシスタント(たとえば、クラウドベースの自動アシスタント)を使用して、自動通話の実行を開始することができる。さらに他の実装形態では、システムは、一部がユーザのコンピューティングデバイス上で、一部がサーバ上で動作する自動アシスタント(たとえば、図1に示される自動アシスタント115)を使用して、自動通話の実行を開始することができる。
【0071】
ブロック360において、所与のエンティティとの自動通話の実行の間に、システムが、所与のエンティティの担当者と会話して、行動を実行する。会話の間に、システムは、行動を実行し、担当者から、行動に関する情報(たとえば、品目もしくはサービスの利用可能性に関する情報および/または本明細書において説明される他の情報)を受け取ることができる。システムは、自動通話の各々の間に合成発話の対応するインスタンスの1つまたは複数をレンダリングすることによって、行動を実行することができる。たとえば、システムは、合成発話(たとえば、「こんにちは、トイレットペーパーは売っていますか?」、「利用可能なトイレットペーパーはありますか?」、「利用可能なトイレットペーパーはいくらありますか?」)が所与のエンティティに関連する担当者の追加のコンピューティングデバイスにおいてレンダリングされるようにすることができる。さらに、システムは、(たとえば、図1の発話認識モデルに関してより詳しく説明されるように)発話認識モデルを使用して対応する自動通話の間に受け取られる情報に対応するオーディオデータを処理することができる。担当者から受け取られた情報は、合成発話のレンダリングに応答したものであり得る。図1に関して上でより詳しく説明されたように、システムは、会話の間に担当者にインテリジェントに応答することができる。
【0072】
ブロック362において、システムが、エンティティのグループのうちの追加のエンティティとの追加の自動通話の実行を開始するかどうかを決定する。システムは、追加のエンティティに関連する通話開始時間に基づいて、追加のエンティティとの追加の自動通話の実行を開始すると決定することができる。通話開始時間は、追加のエンティティに固有であり得る。いくつかの実装形態では、通話開始時間は、エンティティおよび/または追加のエンティティに関連して記憶されている通話履歴データ(たとえば、図1の通話履歴データデータベース154A)に基づいて決定され得る。たとえば、追加のエンティティのための通話開始時間は、エンティティおよび/もしくは追加のエンティティがIVRシステムに関連するかどうか、エンティティおよび/もしくは追加のエンティティとの以前の自動通話の平均の長さ、エンティティおよび/もしくは追加のエンティティに関連する平均の待ち時間、ならびに/または、エンティティおよび/もしくは追加のエンティティとの以前の自動通話から収集され得る任意の他の通話データに基づいて決定され得る。たとえば、決定された通話開始時間が、所与のエンティティとの自動通話の開始から30秒後である場合、それは、所与のエンティティと追加のエンティティの両方が30秒という待ち時間と関連付けられると決定したことに基づき得る。これらの例では、自動アシスタントが、両方のエンティティの担当者と同時に関わるのではなく、エンティティの各々に関連する担当者と30秒離れて関わることができるように、自動通話は交互に行われる。いくつかの追加および/または代替の実装形態では、通話開始時間は、エンティティとの自動通話の結果に基づいて決定され得る。上の例について続けると、システムの待ち時間が予想された30秒ではなく20秒しかない場合、自動通話の同様の交互の実行が達成されるように、通話開始時間は30秒から20秒に変化し得る。ブロック362の反復において、システムが追加の自動通話の実行を開始しないと決定する場合、システムはブロック366に進む。とりわけ、これは、要求が所与のエンティティによって処理され得ることと、通話開始時間の前に要求を処理できることを所与のエンティティが示していることとを、示す。たとえば、これは、要求を満足させることができることを所与のエンティティが迅速に示したことを示す。しかしながら、ブロック362の反復において、システムが追加のエンティティとの追加の自動通話の実行を開始すると決定する場合、システムはブロック364に進み得る。ブロック358に関して上で説明されたように、システムは、ユーザのコンピューティングデバイスにローカルの、サーバにおけるリモートの、および/またはこれらの組合せの自動アシスタントを使用して、追加の自動通話を開始することができる。
【0073】
ブロック364において、システムが、所与のエンティティとの自動通話および/または追加のエンティティとの追加の自動通話を先んじて終了するかどうかを決定する。システムは、自動通話の各々の間に受け取られた情報に基づいて、自動通話および/または追加の自動通話を先んじて終了するかどうかを決定することができる。たとえば、エンティティまたは追加のエンティティのいずれかが、品目またはサービスが利用可能ではないことを示す場合、対応する自動通話は先んじて終了され得る。要求を満足させることができることを所与のエンティティが示し、追加のエンティティに関連する追加の担当者がすでに自動アシスタントとの会話に関わっているような実装形態では、システムは追加の自動通話を先んじて終了しなくてもよい。それらの実装形態のいくつかのバージョンでは、システムはそれでも行動を実行することができ、追加のエンティティに関連する検索結果は行動の実行に基づいて更新され得る。このようにして、元の要求に関する情報を何ら知ることなく追加の自動通話を終了することによって、追加のエンティティに関連する担当者の追加のコンピューティングデバイスの計算リソースが浪費されない。ブロック364の反復において、システムが、所与のエンティティとの自動通話および/または追加のエンティティとの追加の自動通話を先んじて終了すると決定しない場合、システムは、所与のエンティティとの自動通話および/または追加のエンティティとの追加の自動通話を先んじて終了するための1つまたは複数の信号を、ブロック364において監視することができる。しかしながら、ブロック364の反復において、システムが所与のエンティティとの自動通話および/または追加のエンティティとの追加の自動通話を先んじて終了すると決定する場合、システムはブロック366に進む。
【0074】
ブロック366において、システムが、所与のエンティティとの自動通話および/または追加のエンティティとの追加の自動通話の間の会話の結果に基づいて、通知を生成する。通知は、システムによって開始される自動通話の各々に対して生成され得る。さらに、通知は、たとえば、品目もしくはサービスに関する利用可能性の標示、システムがユーザの代わりに品目もしくはサービスを予約したかどうか、システムがユーザの代わりに品目を入手したかどうか、および/または会話の他の結果を含み得る。いくつかの実装形態では、通知はユーザに対するプロンプトを含み得る。プロンプトは、たとえば、自動通話に参加するようにユーザに求めるプロンプト、名前情報、住所情報、連絡先情報、金銭情報、および/またはコンピューティングデバイスのユーザの他のユーザデータをシステムが提供できることを承認するようにユーザに求めるプロンプトを含み得る。ブロック368において、システムは、ユーザのコンピューティングデバイスを介して視覚的および/または聴覚的に通知がレンダリングされるようにする。通知は、ユーザに関連するコンピューティングデバイスもしくは別のコンピューティングデバイスのディスプレイを介して視覚的に、および/または、ユーザに関連するコンピューティングデバイスもしくは別のコンピューティングデバイスのスピーカーを介して聴覚的にレンダリングされ得る。通知を生成してレンダリングすることは、(たとえば、図1、5B~図5D図6B、および図6Cに関して)本明細書においてより詳しく説明される。
【0075】
方法300は、所与のエンティティおよび追加のエンティティに関して本明細書において説明されるが、これは例示のためであり、限定することは意図されないことを理解されたい。グループの他のエンティティの各々に対する通話開始時間を決定することができ、要求が満足されるまでグループの他のエンティティの各々に電話をかけることができることを理解されたい。グループのエンティティのいずれもが要求を満足させることができない場合、(たとえば、図1のエンティティ特定エンジン153に関して)上で説明されたようにエンティティの追加のグループを特定することができる。
【0076】
ここで図4Aから図4Cを参照すると、様々なエンティティとの後続の自動通話のための時間遅延を決定する非限定的な例が図示されている。とりわけ、図4Aから図4Cの自動通話の書き起こしが、コンピューティングデバイス410Aのグラフィカルユーザインターフェース480Aに図示されている。これは本明細書において説明される技法を示すための例を目的としており、限定することは意図されないことを理解されたい。たとえば、本明細書において説明される自動通話は、簡潔にするために自動アシスタントによって(たとえば、図1の自動要求システム180を使用して)開始され実行され得る。自動アシスタントは、サーバおよび/または他のコンピューティングデバイスにおいてリモートで実行されるクラウドベースの自動アシスタントであり得る。
【0077】
いくつかの実装形態では、(たとえば、図1のクエリ分析エンジン151およびクエリ処理エンジン152に関連して)上でより詳しく説明されたように、自動アシスタントは、(たとえば、図1のクエリ活動データベース151Aに記憶されている)複数のユーザのクエリ活動を分析したことに基づいて、関心対象の品目またはサービスに関する状況更新に対する要求を特定することができる。自動通話は、関心対象の品目またはサービスに関する状況更新に対する要求を特定したことに応答して、自動アシスタントによって開始され実行され得る。自動アシスタントは、たとえば、所与の品目またはサービスに対する閾値の数のクエリが複数のユーザによって出されたかどうかを決定したことに基づいて、要求を特定することができる。それらの実装形態のいくつかのバージョンでは、1つまたは複数の条件は、図1に関して上で説明されたように、所与の品目またはサービスに対する閾値の数のクエリが所与の時間枠内に複数のユーザによって出されたかどうかを決定することを含み得る。それらの実装形態のいくつかのバージョンでは、クエリ活動は、特定の地理的領域においてユーザによって出されるクエリに制約され得る。
【0078】
いくつかの実装形態では、自動アシスタントはさらに、(たとえば、図1のエンティティ特定エンジン153に関連して)本明細書においてより詳しく説明されたように、特定された要求に関連するエンティティのグループを特定することができる。エンティティのグループは、エンティティの各々に関する他のデータ(たとえば、物理的な位置、ウェブページ、および/または他のデータ)とともに、(たとえば、エンティティデータベース153Aの中の)要求に含まれる品目またはサービスに関連して記憶され得る。自動アシスタントが、グループのエンティティの各々の個別の1つとの対応する自動通話を開始して実行できるように、グループのエンティティの所与の1つとの、自動通話の対応する1つが、自動アシスタントによって開始され実行され得る。出されたクエリが特定の地理的領域を起源とする実装形態では、グループに含まれるエンティティは、その特定の地理的領域に位置するエンティティにも制約され得る。自動アシスタントは、クエリ活動を分析したことに基づいて品目またはサービスを特定したことに応答して、かつ、要求に含まれる品目またはサービスに関連するエンティティのグループを特定したことに応答して、自動通話を開始して実行することを始めることができる。さらに、自動アシスタントは、エンティティの対応する1つに関連する対応する担当者のコンピューティングデバイスにおいて合成発話のインスタンスをレンダリングすることによって、自動通話の対応する1つを実行することができる。その上、自動アシスタントは、対応する自動通話の間に対応する担当者から受け取られた情報に対応するオーディオデータを処理することができる。このようにして、自動アシスタントは担当者との会話に関わることができ、後続の合成発話は対応する担当者から受け取られた情報に基づき得る。
【0079】
たとえば、図4Aから図4Cに関連して、自動アシスタントは、「トイレットペーパー」という用語を含み、ケンタッキー州ジェファーソン郡のある地理的領域に起源がある、6時間の期間にわたる15000個の出されたクエリを特定すると仮定する。この例では、自動アシスタントは、その6時間の期間にわたる15000個の出されたクエリが、トイレットペーパーの利用可能性に関する対応する状況更新を要求するためにケンタッキー州ジェファーソン郡に位置するエンティティのグループとの複数の対応する自動通話を開始するための、1つまたは複数の条件を満たすことを決定し得る。したがって、自動アシスタントは、1つまたは複数のデータベース(たとえば、図1のエンティティデータベース153A)にアクセスして、トイレットペーパーという品目に関連して記憶されている、ケンタッキー州ジェファーソン郡に位置する複数のエンティティを特定することができ、特定されたエンティティをエンティティのグループに含めることができる。図4Aから図4Cに示されるように、エンティティのグループは、少なくともExample Store 1、Example Store 2、およびExample Store 3を含む。
【0080】
より具体的には、自動アシスタントは、図4Aに示されるようなExample Store 1におけるトイレットペーパーに関する状況更新を要求するためのExample Store 1との第1の自動通話、図4Bに示されるようなExample Store 2におけるトイレットペーパーに関する状況更新を要求するためのExample Store 2との第1の自動通話、および図4Cに示されるようなExample Store 3におけるトイレットペーパーに関する状況更新を要求するためのExample Store 3との第1の自動通話を開始することができる。とりわけ、図4Aから図4Cのエンティティの各々との第1の自動通話の各々が、(たとえば、2020年6月11日の午前9:00に開始されるものとして示されるように)並行して開始され実行され得る。さらに、第1の自動通話の各々は、自動アシスタントの対応するインスタンスを使用して開始され実行され得る。
【0081】
上で述べられたように、自動アシスタントは、合成発話のインスタンスがエンティティの所与の1つに関連する担当者のコンピューティングデバイスにおいてレンダリングされるようにすることによって、対応する自動通話の各々を実行することができる。具体的には、合成発話は、トイレットペーパーに関する状況更新に対する要求、および任意選択で他の情報を含み得る。たとえば、図4Aに示されるように、自動アシスタントは、Example Store 1におけるトイレットペーパーに関する状況更新に対する要求(たとえば、「利用可能なトイレットペーパーがあるかどうか確認したいのですが」)を含み、Example Store 1におけるトイレットペーパーの利用可能な量に対する要求(たとえば、「今日中に売り切れそうかどうか」)も含む合成発話452A1が、Example Store 1の担当者のコンピューティングデバイスにおいてレンダリングされるようにすることができる。さらに、自動アシスタントは、合成発話に応答して受け取られる情報454A1(たとえば、「何個か利用可能ですが、今日の午後には売り切れそうです」)に対応するオーディオデータを処理して、トイレットペーパーがExample Store 1において利用可能であるかどうか、および利用可能な量の標示を決定することができる。別の例として、図4Bに示されるように、自動アシスタントは、Example Store 2におけるトイレットペーパーに関する状況更新に対する要求を含む合成発話452B1(たとえば、「利用可能なトイレットペーパーがあるかどうか確認したいのですが」)がExample Store 2の担当者のコンピューティングデバイスにおいてレンダリングされるようにするが、Examples Store 2の担当者から受け取られた情報454B1(たとえば、「あります」)に対応するオーディオデータを処理したことに基づいて、Example Store 2に利用可能なトイレットペーパーがあることをExample Store 2の担当者が確かめるまで、Example Store 2におけるトイレットペーパーの利用可能な量に対する要求を控えることができる。Example Store 2に利用可能なトイレットペーパーがあることを確認したことに応答して、自動アシスタントは次いで、さらなる合成発話452B2(たとえば、「今日中に売り切れそうですか」)においてExample Store 2におけるトイレットペーパーの利用可能な量に対する状況更新を要求してもよく、さらなる受け取られた情報454B2(たとえば、Example Store 2において今日中にトイレットペーパーが売り切れないであろうことを示す「いいえ」)を処理したことに基づいて、Example Store 2におけるトイレットペーパーの利用可能な量の標示を決定することができる。さらに、自動アシスタントは、合成発話に応答して受け取られる情報454A1(たとえば、「何個か利用可能ですが、今日の午後には売り切れそうです」)に対応するオーディオデータを処理することができる。さらに別の例として、図4Cに示されるように、自動アシスタントは、Example Store 3におけるトイレットペーパーに関する状況更新に対する要求(たとえば、「利用可能なトイレットペーパーがあるかどうか確認したいのですが」)を含み、Example Store 3におけるトイレットペーパーの利用可能な量に対する要求(たとえば、「今日中に売り切れそうかどうか」)も含む合成発話452C1が、Example Store 3の担当者のコンピューティングデバイスにおいてレンダリングされるようにすることができる。さらに、自動アシスタントは、合成発話に応答して受け取られる情報454C1(たとえば、「トイレットペーパーは販売しておりません」)に対応するオーディオデータを処理して、Example Store 3がトイレットペーパーに関連して記憶されるべきではないと決定することができる。この例では、Example Store 3は、受け取られた情報454C1に基づいてエンティティのグループから削除され得る。
【0082】
図4Aから図4Cの対応する自動通話の各々に対して、自動アシスタントは、グループのエンティティの各々に、時間遅延としてある期間を割り当てることができる。時間遅延が経過すると、グループのエンティティの対応する1つに対して、自動アシスタントは、対応するエンティティとの後続の対応する自動通話を開始して実行し、品目に関する対応するさらなる状況更新を要求することができる。時間遅延として割り当てられる期間は、(たとえば、時間遅延エンジン157に関して上でより詳しく説明されたように)所与のエンティティに関連する担当者から受け取られた情報に基づいて決定され得る。いくつかの実装形態では、自動アシスタントは、第1の自動通話の各々の間の対応するエンティティに対する時間遅延に割り当てられる期間の標示を提供することができる。
【0083】
たとえば、図4Aに示されるように、自動アシスタントは、Example Store 1に対する時間遅延として割り当てられる期間を示すさらなる合成発話452A2(たとえば、「次の更新のために午後にかけ直します」)が、Example Store 1の担当者のコンピューティングデバイスにおいてレンダリングされるようにすることができる。この例では、Example Store 1において「今日の午後には[トイレットペーパーが]売り切れそう」であることを情報454A1が示したので、この期間はわずか数時間(たとえば、図4Aに示されるように5時間)であり得る。したがって、時間遅延が経過すると(たとえば、Examples Store 1との第1の自動通話から5時間後に(たとえば、同じ日の午後2:00に))、自動アシスタントは、またさらなる合成発話452A3がExample Store 1の担当者のコンピューティングデバイスにおいてレンダリングされるようにし、またさらなる合成発話452A3に対するExample Store 1の担当者の応答から受け取られたさらなる情報454A2に対応するオーディオデータを処理し、Example Store 1の担当者との第2の自動通話の間に受け取られたさらなる情報452A2に基づいて決定されるさらなる時間遅延の標示を含むまたさらなる合成発話452A4がExample Store 1の担当者のコンピューティングデバイスにおいてレンダリングされるようにすることによって、トイレットペーパーに関する対応するさらなる状況更新を要求するために、第2の自動通話を開始して実行することができる。たとえば、3日後に荷物が到着するまでExample Store 1にはトイレットペーパーがないことを、Example Store 1の担当者がさらなる情報452A2において示す場合、さらなる時間遅延として割り当てられる期間は、トイレットペーパーがないであろうことをExample Store 1がすでに示したので、次の荷物が到着するまで今後3日間はExample Store 1に電話をかけるのを避けるために、72時間であり得る。
【0084】
別の例として、図4Bに示されるように、自動アシスタントは、Example Store 2に対する時間遅延として割り当てられる期間を示すまたさらなる合成発話452B3(たとえば、「明日かけ直します」)が、Example Store 2の担当者のコンピューティングデバイスにおいてレンダリングされるようにすることができる。この例では、Example Store 2においてその日はトイレットペーパーが売り切れないであろうことを情報454B2が示したので、その期間は24時間の期間であり得る。したがって、時間遅延が経過すると(たとえば、Examples Store 2との第1の自動通話から24時間後に(たとえば、次の日の午前9:00に))、自動アシスタントは、またさらなる合成発話452B4がExample Store 2の担当者のコンピューティングデバイスにおいてレンダリングされるようにし、またさらなる合成発話452B4へのExample Store 2の担当者の応答から受け取られたまたさらなる情報454B3に対応するオーディオデータを処理し、Example Store 2の担当者との第2の自動通話の間に受け取られたまたさらなる情報452B3に基づいて決定されるさらなる時間遅延の標示を含むまたまたさらなる合成発話452A5がExample Store 2の担当者のコンピューティングデバイスにおいてレンダリングされるようにすることによって、トイレットペーパーに関する対応するさらなる状況更新を要求するために、第2の自動通話を開始して実行することができる。したがって、図4Aおよび図4Bの時間遅延によって示されるように、自動アシスタントは、自動通話の間に受け取られた情報に基づいて、時間遅延に割り当てるべき動的な期間を決定することができる。
【0085】
とりわけ、図4Cに示されるように、自動アシスタントは、自動アシスタントが今後Example Store 3にトイレットペーパーについて尋ねるのを控えることを示すさらなる合成発話452C2が、Example Store 3の担当者のコンピューティングデバイスにおいてレンダリングされるようにすることができる。この例では、上で説明されたように、受け取られた情報454C1に基づいてExample Store 3が品目に関連するエンティティのグループから削除されたので、自動アシスタントはまた、Example Store 3に時間遅延として割り当てるべき期間を決定するのを控え得る。したがって、Example Store 3との第2の自動通話は開始または実行されない。
【0086】
様々な実装形態において、グループのエンティティに関連する検索結果は、対応する自動通話の間に受け取られた情報を含むように更新され得る。それらの実装形態のいくつかのバージョンにおいて、検索結果はまた、ステータス更新がいつ要求されたかの時間インジケータを含むように更新され得る。たとえば、図4Dは、ユーザのコンピューティングデバイス410Bのグラフィカルユーザインターフェース480B上の、図4A図4Cからの自動通話の結果に基づく様々なエンティティの各々に関連する更新された検索結果を示す。図4Dのグラフィカルユーザインターフェース480Bはさらに、仮想キーボードまたは他のタッチ入力および/もしくはタイプされる入力を介してユーザ入力を生成するためにユーザが選択できるテキスト返答インターフェース要素484と、クライアントデバイス410のマイクロフォンを介してユーザ入力を生成するためにユーザが選択できる音声返答インターフェース要素485とを含む。いくつかの実装形態では、ユーザは、音声返答インターフェース要素485の選択なしでマイクロフォンを介してユーザ入力を生成し得る。たとえば、マイクロフォンを介した聴覚的なユーザ入力の能動的な監視が、音声返答インターフェース要素485をユーザが選択する必要をなくすために行われ得る。それらおよび/または他の実装形態のいくつかにおいて、音声返答インターフェース要素485は省略され得る。その上、いくつかの実装形態では、テキスト返答インターフェース要素484は、追加および/または代替として省略されてもよい(たとえば、ユーザは聴覚的なユーザ入力のみを提供してもよい)。図4Aから図4Dのグラフィカルユーザインターフェース480はまた、コンピューティングデバイス410に1つまたは複数の行動を実行させるためにユーザが対話できるシステムインターフェース要素481、482、483を含む。
【0087】
図4Dに関して、コンピューティングデバイス410Bのユーザもケンタッキー州ジェファーソン郡に位置していると仮定し、コンピューティングデバイス410のユーザが、図4Aから図4Cの第1の自動通話の後に、しかし第2の自動通話の前に、(たとえば、URL411によって示されるような)「トイレットペーパー」という用語を含む検索クエリ(たとえば、自動アシスタントインターフェースまたは検索インターフェースを介して、話されまたはタイプされた)を出したとさらに仮定する。Example Store 1に関連する第1の検索結果420、Example Store 2に関連する第2の検索結果430、およびExample Store 3に関連する第3の検索結果440は各々、検索クエリに応答したものであるとさらに仮定する。この例では、第1の検索結果420は、トイレットペーパーが「今日9:00」にExample Store 1において「利用可能」であったが、Example Store 1において「今日の午後」にトイレットペーパーが売り切れるかもしれないことを示す、Example Store 1との第1の自動通話からの情報421を含めるように更新され得る。さらに、第2の検索結果430は、トイレットペーパーが「今日午前中」にExample Store 1において「利用可能」であったが、Example Store 2において「今日は売り切れない」はずであることを示す、Example Store 2との第1の自動通話からの情報431を含めるように更新され得る。その上、第3の検索結果440は、Example Store 3が「トイレットペーパーを販売していない」ことを示す、Example Store 3との第1の自動通話からの情報441を含めるように更新され得る。検索結果420、430の情報421、431は、第2の自動通話およびその後の任意の他の後続の自動通話の後、同様の方式で更新され得る。このようにして、グループのエンティティの各々に関連する検索結果は、自動通話が自動アシスタントによって実行されるにつれて、対応するエンティティの各々に関連する様々な品目の利用可能性を反映するように更新され得る。
【0088】
図4Aから図4Dは、関心対象の単一の品目に関する状況更新を要求することについて本明細書において説明されるが、これは例示のためであり、限定することは意図されないことを理解されたい。たとえば、自動アシスタントが、状況更新を要求すべき関心対象の複数の品目を特定し、グループの中のエンティティの所与の1つが品目の複数と関連付けられる場合、自動アシスタントは、第1の自動通話においてそれらの複数の品目の各々に関する状況更新を要求して、それらの複数の品目の各々に関する状況更新を要求するために所与のエンティティとの複数の自動通話を開始して実行しなければならないことを避けることができる。その上、複数の品目に関する状況更新を自動アシスタントが要求するとき、複数の品目の各々に対する時間遅延に異なる期間が割り当てられ得ることに留意されたい。たとえば、自動アシスタントが最初に、トイレットペーパーとハンドサニタイザーの両方に関する状況更新を要求し、所与のエンティティに関連する担当者が、トイレットペーパーはその日の営業終了までに十分な量があるがハンドサニタイザーは今後4日間ないことを示す情報を提供する場合、自動アシスタントは、トイレットペーパーに関するさらなる状況更新を要求するために後続の自動通話を開始して実行することに24時間の期間を割り当て、ハンドサニタイザーに関するさらなる状況更新を要求するために後続の自動通話を開始して実行することに96時間の期間を割り当てることができる。
【0089】
その上、図4A図4Dは、関心対象の品目に関する状況更新を要求することに関連して本明細書において説明されるが、これは例示のためであり、限定することは意図されないことを理解されたい。1つの非限定的な例として、自動アシスタントは、サービスの利用可能性に関する状況更新も要求することができる。たとえば、車体修理および/または屋根修理に対する出されたクエリが急増していると自動アシスタントが決定する場合(たとえば、雹が降った後)、同様の方式で自動通話を開始して実行することができ、同様の方式でこれらのサービスを提供するエンティティに関連する検索結果を更新することができる。
【0090】
ここで図5Aから図5Dを参照すると、ユーザの代わりに様々なエンティティとの自動通話を開始し、様々なエンティティの各々に関連する通知が自動通話の結果に基づいてレンダリングされるようにする、様々な非限定的な例が示される。図5Aから図5Dは各々、コンピューティングデバイス510のユーザの代わりに自動通話を開始および/または実行するためのユーザ要求に関係するグラフィカルユーザインターフェース580を有するコンピューティングデバイス510を示す。コンピューティングデバイス510のユーザに関連する自動アシスタント(たとえば、図1の自動アシスタント115)の1つまたは複数の態様は、コンピューティングデバイス510のローカルで実装され、および/または、(たとえば、図1のネットワーク190を介して)分散式でコンピューティングデバイス510とネットワーク通信している他のコンピューティングデバイスで実装され得る。簡潔にするために、図5Aから図5Dの動作は、自動アシスタントによって(たとえば、図1の自動要求システム180を使用して)実行されるものとして本明細書において説明される。図5Aから図5Dのコンピューティングデバイス510は携帯電話として図示されているが、これは限定することは意図されないことを理解されたい。コンピューティングデバイス510は、たとえば、サーバ、スタンドアロンスピーカー、グラフィカルユーザインターフェースに接続されるスピーカー、ラップトップ、デスクトップコンピュータ、および/または、電話をかけて自動アシスタントのインスタンスを動作させることが可能な任意の他のクライアントデバイスであり得る。
【0091】
図5Aから図5Dのグラフィカルユーザインターフェース580はさらに、仮想キーボードまたは他のタッチ入力および/もしくはタイプされた入力を介してユーザ入力を生成するためにユーザが選択できるテキスト返答インターフェース要素584と、コンピューティングデバイス510のマイクロフォンを介してユーザ入力を生成するためにユーザが選択できる音声返答インターフェース要素585とを含む。いくつかの実装形態では、ユーザは、音声返答インターフェース要素585の選択なしでマイクロフォンを介してユーザ入力を生成し得る。たとえば、マイクロフォンを介した聴覚的なユーザ入力の能動的な監視が、音声返答インターフェース要素585をユーザが選択する必要をなくすために行われ得る。それらおよび/または他の実装形態のいくつかにおいて、音声返答インターフェース要素585は省略され得る。その上、いくつかの実装形態では、テキスト返答インターフェース要素584は、追加および/または代替として省略されてもよい(たとえば、ユーザは聴覚的なユーザ入力のみを提供してもよい)。図5Aから図5Dのグラフィカルユーザインターフェース580はまた、コンピューティングデバイス510に1つまたは複数の行動を実行させるためにユーザが対話できるシステムインターフェース要素581、582、583を含む。
【0092】
様々な実装形態において、自動通話は、自動通話を開始して実行するように自動アシスタントに要求するユーザ入力を受け取ったことに応答して、開始され実行され得る。ユーザ入力は、自動通話を開始して実行せよとの指示を含む、話された入力、タッチ入力、および/またはタイプされた入力であり得る。さらに、自動アシスタントは、自動通話の間に、要求に含まれる行動をコンピューティングデバイス510の所与のユーザの代わりに実行することができる。図5Aに示されるように、グラフィカルユーザインターフェース580は、(たとえば、テキスト返答インターフェース要素584において示されるような)「Hot Christmas Toy 2020」というクエリに応答して表示される、Hypothetical Toy Store 1エンティティに関連する第1の検索結果520およびHypothetical Toy Store 2エンティティに関連する第2の検索結果530を含む。さらに、検索結果520、530は、(たとえば、「www.exampleurl0.com/」というURL511によって示されるように)コンピューティングデバイスにおいてアクセス可能なブラウザアプリケーションに表示される。さらに、検索結果520、530はまた、たとえば、関心対象の1つまたは複数の品目(たとえば、Hot Christmas Toy)に関する対応する情報521、531を含み得る。たとえば、第1の検索結果520に関連する第1の情報521は、Hypothetical Toy Store 1では6日前にHot Christmas Toyの在庫が切れたことを示し、第2の検索結果530に関連する第2の情報531は、Hypothetical Toy Store 2についてHot Christmas Toyの状況が不明であり、状況が更新されたことがないことを示す。
【0093】
いくつかの実装形態では、検索結果520、530は、選択されるとコンピューティングデバイス510に対応する行動を実行させる、様々な選択可能なグラフィカル要素と関連付けられ得る。たとえば、検索結果520、530の所与の1つに関連する通話グラフィカル要素522、532が選択されると、ユーザ入力は、通話が開始され実行されるべきであることを示すことができる。別の例として、検索結果520、530の所与の1つに関連する道順グラフィカル要素523、533が選択されると、ユーザ入力は、ナビゲーション行動が開始され実行されるべきであることを示すことができる。他の実装形態では、図示されていないが、一般的な自動通話グラフィカル要素が選択されると、ユーザ入力は、自動通話が開始され実行されるべきであることを明確に示すことができる。
【0094】
いくつかの実装形態では、図5Aに示されるように、いずれかのエンティティとの通話行動を開始して実行せよとのユーザ入力を受け取ったことに応答して(たとえば、通話インターフェース要素522、532または一般的な自動通話グラフィカル要素のうちの1つの選択を受け取ったことに応答して)、通話詳細インターフェース570がコンピューティングデバイス510においてレンダリングされ得る。それらの実装形態のいくつかのバージョンでは、通話詳細インターフェース570は、グラフィカルユーザインターフェース580の一部としてコンピューティングデバイス510においてレンダリングされ得る。それらの実装形態のいくつかのバージョンでは、通話詳細インターフェース570は、ユーザインターフェースに重畳するグラフィカルユーザインターフェース580とは別のインターフェースであってもよく、ユーザが通話詳細インターフェース570を展開して追加の通話詳細を表示する(たとえば、インターフェース要素586を上にスワイプすることによって)、および/または通話詳細インターフェース570を閉じる(たとえば、インターフェース要素586を下にスワイプすることによって)ことを可能にする、インターフェース要素586を含み得る。他の実装形態では、インターフェース要素586を使用して、いつでも通話詳細インターフェース570にアクセスすることができ、それを閉じることができる。通話詳細インターフェース570は、グラフィカルユーザインターフェース580の下にあるものとして示されているが、それは例示のためであり、限定することは意図されないことを理解されたい。たとえば、通話詳細インターフェース570は、グラフィカルユーザインターフェース580の上、グラフィカルユーザインターフェース580の横、またはグラフィカルユーザインターフェース580とは完全に別のインターフェースにレンダリングされ得る。
【0095】
通話詳細インターフェース570は、様々な実装形態において、選択可能なテキスト(またはグラフィカル要素)の複数のセグメントを含み得る。いくつかの実装形態では、セグメントの所与の1つが選択されるとコンピューティングデバイス510が対応する行動を実行できるように、セグメントは選択可能であり得る。図5Aに示されるように、通話詳細インターフェース570は、「自動通話」という選択可能なテキストの第1のセグメント571と、「普通の通話」という選択可能なテキストの第2のセグメント572とを含む。さらに、選択可能なテキストの第1のセグメント571は、選択されると、自動アシスタントを使用して自動通話を開始したいという望みの標示を自動アシスタントに提供することができ、選択可能なテキストの第2のセグメント572は、選択されると、自動アシスタントに普通の通話を開始させることができる。とりわけ、それらの実装形態のいくつかのバージョンでは、選択可能なテキストのセグメントは、選択可能なテキストの他の関連するセグメントを含み得る。たとえば、「自動通話」という選択可能なテキストの第1のセグメント571は、自動通話の間に状況更新を要求するという行動に関連する「Toyについての状況更新」という選択可能なテキストの第1の他のセグメント571Aと、自動通話の間にコンピューティングデバイス510のユーザのためにその玩具を取り置きするという行動に関連する「Toyを予約する」という選択可能なテキストの第2の他のセグメント571Bと、自動通話の間にコンピューティングデバイス510のユーザのためにその玩具を入手するという行動に関連する「Toyを購入する」という選択可能なテキストの第3の他のセグメント571Cとを含み得る。図5Aから図5Dに関して本明細書において説明される自動通話は、ブラウザベースのアプリケーションから開始されるが、これは例示のためであり、限定することは意図されないことを理解されたい。たとえば、自動通話は、コンピューティングデバイス510においてアクセス可能な様々なソフトウェアアプリケーション(たとえば、自動アシスタントアプリケーション、連絡先アプリケーション、電子メールアプリケーション、テキストもしくはSMSメッセージングアプリケーション、および/または他のソフトウェアアプリケーション)から開始されてもよく、自動通話は、コンピューティングデバイス510のホーム画面から、コンピューティングデバイス510のロック画面から、および/またはコンピューティングデバイス510の他の状態から、話される入力を使用して開始される。
【0096】
たとえば、「Hypothetical Toy Store 1」の第1の検索結果520との自動通話を開始して実行せよとのユーザ入力が、コンピューティングデバイス510において検出されると仮定する。ユーザ入力は、たとえば、「Hot Christmas Toy 2020を見つけて」という話された入力、または通話インターフェース要素522(および/または選択されたテキスト571のセグメント、571A~571Cのうちの1つ)に向けられたタッチ入力であり得る。様々な実装形態において、自動アシスタントは、ユーザ入力が「Hot Christmas Toy」を示すことに基づいて、1つまたは複数のデータベース(たとえば、図1のエンティティデータベース153A)に「Hot Christmas Toy」に関連して各々記憶されているエンティティのグループを特定することができる。いくつかの実装形態では、自動アシスタントは、Hot Christmas Toyに関連して記憶されており、コンピューティングデバイス510の位置から閾値の距離以内にある(たとえば、コンピューティングデバイス510のGPSセンサによって生成されるGPSデータに基づいて決定される)エンティティに、グループに含められるエンティティを制約することができる。たとえば、自動アシスタントは最初、Hot Christmas Toyに関連して記憶されており、コンピューティングデバイス510の位置から4マイル以内にあるすべてのエンティティを、エンティティのグループに含めることができる。ない場合、自動アシスタントは、閾値の距離を延ばして、コンピューティングデバイス510の位置から8マイル以内にあるすべてのエンティティを含めることができ、以下同様である。いくつかの追加および/または代替の実装形態では、自動アシスタントは、閾値の数のエンティティがグループに含められるように特定されるまで、グループに含めるべきエンティティの特定を続けることができる。たとえば、自動アシスタントは、5つのエンティティがグループに含められるまで、閾値の距離を延ばしてグループに含めるべきエンティティを特定し続けることができる。閾値の数より多くのエンティティがグループに含まれる場合、1つまたは複数の基準を満たすエンティティがグループに含められ得る(たとえば、エンティティ特定エンジン153に関連して上でより詳しく説明されたように)。とりわけ、ユーザ入力が、特定のエンティティとの自動通話を開始することを対象とし、エンティティを指定しない可能性があっても、Hot Christmas Toyに関連するエンティティのグループが特定され得る。
【0097】
自動アシスタントは、要求が満足されるまで、グループのエンティティの1つまたは複数との自動通話を開始して実行することができる。いくつかの実装形態では、自動アシスタントは、ユーザ入力を受け取ったことに応答してグループの第1のエンティティとの第1の自動通話を開始し、グループの対応する追加のエンティティとの追加の自動通話の実行を開始するための通話開始時間を決定することができる。それらの実装形態のいくつかのバージョンでは、追加の自動通話の各々の通話開始時間は、不変の閾値の時間の長さ(たとえば、15秒、30秒、45秒、および/または他の時間の長さ)であり得る。たとえば、自動アシスタントは、グループのエンティティの各々について、グループの第1のエンティティとの第1との第1の自動通話を開始し、第1のエンティティとの第1の自動通話を開始してから30秒後にグループの第2のエンティティとの第2の自動通話を開始し、第2のエンティティとの第2の自動通話を開始してから30秒後にグループの第3のエンティティとの第3の自動通話を開始することができ、以下同様である。それらの実装形態の他のバージョンでは、自動アシスタントは、グループのエンティティのうちの対応する1つに関連する通話履歴データ(たとえば、通話履歴データベース154Aに記憶されている)に基づいて、各通話開始時間を決定することができる。通話履歴データは、たとえば、対応するエンティティがIVRシステムに関連することの標示およびIVRシステムを操作するための時間の長さ、対応するエンティティとの以前の自動通話の時間の長さの標示、対応するエンティティとの以前の自動通話の間の最初の待ち時間の長さの標示、ならびに/または、グループの各々の対応するエンティティとの以前の自動通話から導かれる他の通話データを含み得る。グループのエンティティの各々に関連する通話解時間を決定することは、(たとえば、図1の要求実行エンジン154に関連して)本明細書においてより詳しく説明される。その上、自動アシスタントは、自動通話の結果、コンピューティングデバイス510のユーザに対するプロンプト、および/または自動通話に関する他の情報を含む対応する通知が、(たとえば、コンピューティングデバイス510のスピーカーを介して聴覚的に、および/またはコンピューティングデバイス510のグラフィカルユーザインターフェース580を介して視覚的に)コンピューティングデバイス510においてレンダリングされるようにすることができる。
【0098】
たとえば、図5Bを特に参照して、Hot Christmas Toyに関する状況更新を要求するために自動通話を開始せよとのユーザ入力(たとえば、図5Aのテキストの第1の他の選択可能なセグメント571Aに向けられたタッチ入力、または「Hot Christmas Toyを見つけて」という話された入力)が、コンピューティングデバイス510において検出されると仮定する。少なくともHypothetical Toy Store 1およびHypothetical Toy Store 2を、Hot Christmas Toyに関連するグループの中のエンティティとして、自動アシスタントが特定するとさらに仮定する。自動アシスタントは、Hypothetical Toy Store 1との自動通話を開始し、ユーザ入力に基づいて実行されるべき行動として、Hot Christmas Toyに関する状況更新を要求することができる。たとえば、自動アシスタントは、Hypothetical Toy Store 1の担当者に関連するコンピューティングデバイスにおいて合成発話552B1(たとえば、「Hot Christmas Toyがあなたのお店において利用可能であるかどうか確認したいのですが」)がレンダリングされるようにすることができ、合成された発話552B1に応答して受け取られる情報554B1(たとえば、「確認しますのでしばらくお待ちください」)に対応するオーディオデータを処理することができる。
【0099】
さらに、自動アシスタントは、Hypothetical Toy Store 1の担当者が自動通話に返答すると(たとえば、「在庫を切らしております」)、さらなる情報554A2に対応するオーディオデータを処理することができ、Hypothetical Toy Store 1の担当者に関連するコンピューティングデバイスにおいてさらなる合成発話552B2(たとえば、「ご確認ありがとうございます」)がレンダリングされるようにすることができる。会話の結果に基づいて、自動アシスタントは、通知579Bが(たとえば、通話詳細インターフェース570を置き換えることができ、通話詳細インターフェース570に類似したインターフェース要素586を使用して展開し、または閉じることができる、通知インターフェース590を介して)グラフィカルユーザインターフェースにおいて視覚的にレンダリングされるようにすることができる。その上、自動アシスタントは、図5Aに示される第1の検索結果520が、Hypothetical Toy Store 1においてHot Christmas Toyの在庫が切れていることを示すように、および任意選択で、Hot Christmas Toyの在庫が切れていることをさらなる情報554B2がいつ示したかの時間インジケータ(たとえば、「2020年12月1日の午前9:00:00」、今日の午前中など)を含むように更新されるようにすることができる。自動通話の間に受け取られた情報に基づいて検索結果を更新することは、(たとえば、図1および図4Dに関連して)上でより詳しく説明されている。
【0100】
Hypothetical Toy Store 1との自動通話の間に、自動アシスタント(またはその別個のインスタンス)はまた、Hypothetical Toy Store 2に関連する決定された通話開始時間に基づいて、Hypothetical Toy Store 2との追加の自動通話を開始することができる。いくつかの実装形態では、自動アシスタントがHypothetical Toy Store 1およびHypothetical Toy Store 2との自動通話を並行して(たとえば、図4Aから図4Cにおいて第1の自動通話を開始して実行することに関連して上で説明されたのと同様の方式で)実行できるように、Hypothetical Toy Store 2に関連する通話開始時間は0であり得る。他の実装形態では、自動アシスタント(および/またはその別個のインスタンス)が一般に所与の時間において1つのエンティティとだけ関わるように、追加の自動通話は交互に行われてもよい。それらの実装形態のいくつかのバージョンでは、追加の自動通話の各々が30秒間隔で開始されるように、Hypothetical Toy Store 2に関連する通話開始時間は、グループの中のエンティティの各々に関連する設定された長さの時間であってもよい。それらの実装形態の他のバージョンでは、Hypothetical Toy Store 2に関連する通話開始時間は、Hypothetical Toy Store 1およびHypothetical Toy Store 2に関連する通話履歴データに基づき得る。
【0101】
それらの実装形態のいくつかの追加および/または代替のバージョンでは、Hypothetical Toy Store 2に関連する通話開始時間は、動的であり、自動アシスタントとHypothetical Toy Store 1の担当者との間の会話の進行に基づき得る。たとえば、上の技法の1つまたは複数に従って決定されるHypothetical Toy Store 2に関連する通話開始時間は30秒であると仮定する。しかしながら、図5Aに関連して上で説明された待ち時間が元の30秒の通話開始時間を超える場合、Hypothetical Toy Store 2に関連する通話開始時間は、Hypothetical Toy Store 1の担当者との会話が再開するとき(たとえば、さらなる情報554B2が受け取られるとき)動的な時間に調整され得る。対照的に、さらなる情報554B2において(または情報554B1において直ちに)、Hot Christmas Toyが利用可能であったことをHypothetical Toy Store 1の担当者が示したと仮定する。この例では、Hypothetical Toy Store 2との追加の自動通話を先んじて終了することができる。しかしながら、Hypothetical Toy Store 2との追加の自動通話がすでに開始されており、自動アシスタントがHypothetical Toy Store 2の担当者との追加の会話に関わっている場合、自動アシスタントは会話を続けてもよいが、Hot Christmas Toyに関する状況更新を要求する行動へと行動を変え、それに従ってHypothetical Toy Store 2に関連する検索結果を更新してもよい。グループのエンティティに関連する通話解時間を決定することは、(たとえば、図1の要求実行エンジン154に関連して)本明細書においてより詳しく説明される。
【0102】
たとえば、特に図5Cを参照して、コンピューティングデバイス510のユーザの代わりにHot Christmas Toyを入手するために自動通話を開始せよとのユーザ入力が、コンピューティングデバイス510において検出されると仮定する。ユーザ入力は、たとえば、図5Aのテキストの第2の他の選択可能なセグメント571Bに向けられたタッチ入力、または「Hot Christmas Toyを見つけて代わりに買って」という話された入力であり得る。Hypothetical Toy Store 1の担当者との自動通話の結果が、図5Bに示される会話に基づいて、Hypothetical Toy Store 1にHot Christmas Toyの在庫がないことを示すとさらに仮定する。Hypothetical Toy Store 2との追加の自動通話が、Hypothetical Toy Store 1との自動通話から30秒後に開始されるとも仮定する。図5Bに関連して上で説明された会話と同様に、自動アシスタントは、Hypothetical Toy Store 2の担当者に関連するコンピューティングデバイスにおいて合成発話552C1(たとえば、「Hot Christmas Toyがあなたのお店において利用可能であるかどうか確認したいのですが」)がレンダリングされるようにすることができ、合成された発話に応答して受け取られる情報554C1(たとえば、「はい、2個利用可能です」)に対応するオーディオデータを処理することができる。
【0103】
さらに、自動アシスタントは、Hypothetical Toy Store 2の担当者に関連するコンピューティングデバイスにおいて、さらなる合成発話552C2(たとえば、「Jane Doeの代理で購入できますか?」、ここでJane Doeはコンピューティングデバイス510のユーザである)がレンダリングされるようにして、Hypothetical Toy Store 2の担当者がさらなる合成発話552C2に応答するときに、さらなる情報554C2に対応するオーディオデータを処理することができる。会話の結果に基づいて、自動アシスタントは、通知579Cが(たとえば、通話詳細インターフェース570を置き換えることができ、通話詳細インターフェース570に類似したインターフェース要素586を使用して展開し、または閉じることができる、通知インターフェース590を介して)グラフィカルユーザインターフェースを介して視覚的にレンダリングされるようにすることができる。
【0104】
とりわけ、通知579Cは、Hypothetical Toy Store 2にHot Christmas Toyがあることを示すことができ、ユーザの代わりにHypothetical Toy Store 2においてHot Christmas Toyを入手するために金銭情報をHypothetical Toy Store 2の担当者に提供することを承認するようにコンピューティングデバイス510のユーザ(たとえば、Jane Doe)に要求するプロンプトも含み得る。その上、通知インターフェース590は、金銭情報の提供を承認するための第1の選択可能なグラフィカル要素579C1、第2の選択可能なグラフィカル要素579C2、およびユーザが追加の自動通話に参加するための第3の選択可能な要素579C3などの、プロンプトに応答する選択可能なグラフィカル要素も含み得る。様々な実装形態において、コンピューティングデバイス510のユーザは、金銭情報の以前に承認された提供を有してもよく、プロンプトが省略されてもよい。自動アシスタントが金銭情報を(たとえば、第1の選択可能なグラフィカル要素579C1の選択を介して)提供すべきであることをユーザが示す場合、ユーザは、コンピューティングデバイス510のユーザの代わりに、Hypothetical Toy Store 2においてHot Christmas Toyが入手されたことを示すさらなる通知を受信し、Hypothetical Toy Store 2への道順を提供し、Hypothetical Toy Store 2においてHot Christmas Toyを受け取るためのリマインダーを作成し、および/または、Hypothetical Toy Store 2との追加の自動通話の間の会話の結果に基づいて他の行動を実行することができる。その上、自動アシスタントがHot Christmas Toyが取得すると、それはグループの他のエンティティとの他の進行中の自動通話を先んじて終了し得る。
【0105】
たとえば、特に図5Dを参照して、(たとえば、図5CのHot Christmas Toyを入手せよとの要求とは対照的に)コンピューティングデバイス510のユーザの代わりにHot Christmas Toyを取り置きするために自動通話を開始せよとのユーザ入力が、コンピューティングデバイス510において検出されると仮定する。ユーザ入力は、たとえば、図5Aのテキストの第3の他の選択可能なセグメント571Cに向けられたタッチ入力、または「Hot Christmas Toyを見つけて代わりに取り置きしておいて」という話された入力であり得る)。Hypothetical Toy Store 1の担当者との自動通話の結果が、図5Bに示される会話に基づいて、Hypothetical Toy Store 1にHot Christmas Toyの在庫がないことを示すとさらに仮定する。Hypothetical Toy Store 2との追加の自動通話が、Hypothetical Toy Store 1との自動通話から30秒後に開始されるとも仮定する。図5Bおよび図5Cに関連して上で説明された会話と同様に、自動アシスタントは、Hypothetical Toy Store 2の担当者に関連するコンピューティングデバイスにおいて合成発話552D1(たとえば、「Hot Christmas Toyがあなたのお店において利用可能であるかどうか確認したいのですが」)がレンダリングされるようにすることができ、合成された発話に応答して受け取られる情報554D1(たとえば、「はい、2個利用可能です」)に対応するオーディオデータを処理することができる。
【0106】
さらに、自動アシスタントは、Hypothetical Toy Store 2の担当者に関連するコンピューティングデバイスにおいて、さらなる合成発話554D2(たとえば、「Jane Doeの代理で予約できますか?」、ここでJane Doeはコンピューティングデバイス510のユーザである)がレンダリングされるようにして、Hypothetical Toy Store 2の担当者がさらなる合成発話552D2に応答するときに、さらなる情報554D2に対応するオーディオデータを処理することができる。会話の結果に基づいて、自動アシスタントは、通知579Dが(たとえば、通話詳細インターフェース570を置き換えることができ、通話詳細インターフェース570に類似したインターフェース要素586を使用して展開し、または閉じることができる、通知インターフェース590を介して)グラフィカルユーザインターフェースを介して視覚的にレンダリングされるようにすることができる。とりわけ、通知579Dは、Hypothetical Toy Store 2にHot Christmas Toyがあることと、Hypothetical Toy Store 2においてコンピューティングデバイス510のユーザの代わりに自動アシスタントがそれを予約したこととを示すことができる。図5Dには示されていないが、自動アシスタントはさらに、コンピューティングデバイス510に、Hypothetical Toy Store 2へのナビゲーション情報、コンピューティングデバイス510のユーザがHot Christmas Toyを受け取るためにHypothetical Toy Store 2に到着するときのための受け取り命令、Hypothetical Toy Store 2に関連するウェブページへのリンク、Hypothetical Toy Store 2においてHot Christmas Toyを受け取るために予定またはリマインダーが作成されたことの標示などを、レンダリングさせることができる。
【0107】
様々な実装形態において、自動アシスタントは、図5Aに示される第1の検索結果520が、Hypothetical Toy Store 1においてHot Christmas Toyの在庫が切れていることを示すように、および任意選択で、Hot Christmas Toyの在庫が切れていることをさらなる情報554B2がいつ示したかの時間インジケータ(たとえば、「2020年12月1日の午前9:00;00」、今日の午前中など)を含むように更新されるようにすることができる。さらに、自動アシスタントは、図5Aに示される第2の検索結果530が、Hypothetical Toy Store 2においてHot Christmas Toyの在庫が少ないことまたは残りが1個しかないことを示すように、および任意選択で、Hot Christmas Toyが利用可能であったことを示した情報554C1、554D1の時間インジケータ(たとえば、「2020年12月1日の午前9:00:30」、今日の午前中など)を含むように更新されるようにすることができる。自動通話の間に受け取られた情報に基づいて検索結果を更新することは、(たとえば、図1および図4Dに関連して)上でより詳しく説明されている。
【0108】
その上、同じ地理的領域に位置する他のユーザに関連する他の自動アシスタントは、自動通話の間に自動アシスタントによって入手される情報を活用してさらなる行動を実行することができる。たとえば、コンピューティングデバイス510のユーザの隣人が、午前10:00にその隣人の代わりにHot Christmas Toyを入手せよとのユーザ入力をそれぞれの自動アシスタントに提供する場合、その隣人のそれぞれの自動アシスタントは、更新された検索結果を分析することができ、Hot Christmas Toyが午前9:00にHypothetical Toy Store 1において利用可能ではなかったのでいずれの特定されたグループからもHypothetical Toy Store 1を削除することができ、まだ利用可能なものがあるかどうかを確認するためにHypothetical Toy Store 2との自動通話を開始してもよい。コンピューティングデバイス510の自動アシスタントによって取得される情報を活用することによって、他の自動アシスタントは、それらのそれぞれのコンピューティングデバイスおよびエンティティに関連するコンピューティングデバイスの計算リソースを節約することができる。
【0109】
図5A図5Dは、コンピューティングデバイス510のユーザの代わりに関心対象の品目に関連して行動を実行するものとして本明細書において説明されるが、これは例示のためであり、限定することは意図されないことを理解されたい。たとえば、ここで図6Aから図6Cを参照すると、ユーザの代わりに様々なエンティティとの自動通話を開始し、様々なエンティティの各々に関連する通知が自動通話の結果に基づいてレンダリングされるようにする、追加の非限定的な例が示される。しかしながら、図5Aから図5Dとは対照的に、図6Aから図6Cは、所与の期間の間のエンティティの利用可能性を要求することに関連して本明細書において説明される。図5Aから図5Dと同様に、図6Aから図6Cは各々、コンピューティングデバイス610のユーザの代わりに自動通話を開始および/または実行するためのユーザ要求に関係するグラフィカルユーザインターフェース680を有するコンピューティングデバイス610を示す。コンピューティングデバイス610のユーザに関連する自動アシスタント(たとえば、図1の自動アシスタント115)の1つまたは複数の態様は、コンピューティングデバイス610のローカルで実装され、および/または、(たとえば、図1のネットワーク190を介して)分散式でコンピューティングデバイス610とネットワーク通信している他のコンピューティングデバイスで実装され得る。簡潔にするために、図6Aから図6Cの動作は、自動アシスタントによって(たとえば、図1の自動要求システム180を使用して)実行されるものとして本明細書において説明される。図6Aから図6Cのコンピューティングデバイス610は携帯電話として図示されているが、これは限定することは意図されないことを理解されたい。コンピューティングデバイス610は、たとえば、サーバ、スタンドアロンスピーカー、グラフィカルユーザインターフェースに接続されるスピーカー、ラップトップ、デスクトップコンピュータ、および/または、電話をかけて自動アシスタントのインスタンスを動作させることが可能な任意の他のクライアントデバイスであり得る。
【0110】
図6Aから図6Cのグラフィカルユーザインターフェース680はさらに、仮想キーボードまたは他のタッチ入力および/もしくはタイプされた入力を介してユーザ入力を生成するためにユーザが選択できるテキスト返答インターフェース要素684と、コンピューティングデバイス610のマイクロフォンを介してユーザ入力を生成するためにユーザが選択できる音声返答インターフェース要素685とを含む。いくつかの実装形態では、ユーザは、音声返答インターフェース要素685の選択なしでマイクロフォンを介してユーザ入力を生成し得る。たとえば、マイクロフォンを介した聴覚的なユーザ入力の能動的な監視が、音声返答インターフェース要素685をユーザが選択する必要をなくすために行われ得る。それらおよび/または他の実装形態のいくつかにおいて、音声返答インターフェース要素685は省略され得る。その上、いくつかの実装形態では、テキスト返答インターフェース要素684は、追加および/または代替として省略されてもよい(たとえば、ユーザは聴覚的なユーザ入力のみを提供してもよい)。図6Aから図6Cのグラフィカルユーザインターフェース680はまた、コンピューティングデバイス610に1つまたは複数の行動を実行させるためにユーザが対話できるシステムインターフェース要素681、682、683を含む。
【0111】
様々な実装形態において、自動通話は、自動通話を開始して実行するように自動アシスタントに要求する、自動アシスタントに向けられるユーザ入力を受け取ったことに応答して、開始され実行され得る。ユーザ入力は、自動通話を開始して実行せよとの指示を含む、話された入力、タッチ入力、および/またはタイプされた入力であり得る。さらに、自動アシスタントは、自動通話の間に、要求に含まれる行動をコンピューティングデバイス610の所与のユーザの代わりに実行することができる。図6Aに示されるように、グラフィカルユーザインターフェース680は、自動アシスタントとコンピューティングデバイス610のユーザ(たとえば、Jane Doe)との間の会話を含む。会話は、要求(たとえば、「今日の午後2:00から4:00の間に...配管業者を見つけてくれる」)を含む最初のユーザ入力656A1(たとえば、タイプされたまたは話された)を含む。自動アシスタントは、自動アシスタントが「何軒か地元の修理業者に電話して利用可能かどうか確認する」ことを示す応答652A1(たとえば、テキスト応答または合成発話)を提供することができる。
【0112】
いくつかの実装形態では、図6Aに示されるように、通話詳細インターフェース670は、ユーザ入力656A1を受け取ったことに応答してコンピューティングデバイス610においてレンダリングされ得る。それらの実装形態のいくつかのバージョンでは、通話詳細インターフェース670は、グラフィカルユーザインターフェース680の一部としてコンピューティングデバイス610においてレンダリングされ得る。それらの実装形態のいくつかのバージョンでは、通話詳細インターフェース670は、ユーザインターフェースに重畳するグラフィカルユーザインターフェース680とは別のインターフェースであってもよく、ユーザが通話詳細インターフェース670を展開して追加の通話詳細を表示する(たとえば、インターフェース要素686を上にスワイプすることによって)、および/または通話詳細インターフェース670を閉じる(たとえば、インターフェース要素686を下にスワイプすることによって)ことを可能にする、インターフェース要素686を含み得る。他の実装形態では、インターフェース要素686を使用して、いつでも通話詳細インターフェース670にアクセスすることができ、それを閉じることができる。通話詳細インターフェース670は、グラフィカルユーザインターフェース680の下にあるものとして示されているが、それは例示のためであり、限定することは意図されないことを理解されたい。たとえば、通話詳細インターフェース670は、グラフィカルユーザインターフェース680の上、グラフィカルユーザインターフェース680の横、またはグラフィカルユーザインターフェース680とは完全に別のインターフェースにレンダリングされ得る。
【0113】
通話詳細インターフェース670は、様々な実装形態において、選択可能なテキスト(またはグラフィカル要素)の複数のセグメントを含み得る。いくつかの実装形態では、セグメントの所与の1つが選択されるとコンピューティングデバイス610が対応する行動を実行できるように、セグメントは選択可能であり得る。図6Aに示されるように、通話詳細インターフェース670は、「自動通話」という選択可能なテキストの第1のセグメント671と、「普通の通話」という選択可能なテキストの第2のセグメント672とを含む。さらに、選択可能なテキストの第1のセグメント671は、選択されると、自動アシスタントを使用して自動通話を開始したいという望みの標示を自動アシスタントに提供することができ、選択可能なテキストの第2のセグメント672は、選択されると、自動アシスタントに普通の通話を開始させることができる。とりわけ、それらの実装形態のいくつかのバージョンでは、選択可能なテキストのセグメントは、自動通話のための関連する情報を含み得る。たとえば、「自動通話」の選択可能なテキストの第1のセグメント671は、ユーザ入力656A1に含まれる配管修理サービスに関連する「サービス:配管業者」という関連する情報の第1の部分671A、自動通話においてユーザ入力656A1に含まれる配管修理サービスが要求されている時間に関連する「時間:午後2:00~午後4:00」という関連する情報の第2の部分671B、および自動通話においてユーザ入力656A1に含まれる配管修理サービスが要求されている日付に関連する「日付:2020年6月11日」という関連する情報の第3の部分671Cを含み得る。自動通話に関連する情報671A、671B、671Cの部分を表示することによって、コンピューティングデバイス510のユーザは、要求されているサービス、要求されているサービスの要求される時間、要求されているサービスの要求される日付、および/またはコンピューティングデバイス610のユーザによって要求されているサービスに関する他の情報を修正するための機会を与えられ得る。図6Aから図6Cに関して本明細書において説明される自動通話は、自動アシスタントに向けられるユーザ入力に基づいて開始されるが、これは例示のためであり、限定することは意図されないことを理解されたい。たとえば、自動通話は、コンピューティングデバイス610においてアクセス可能な様々なソフトウェアアプリケーション(たとえば、ブラウザベースのアプリケーション、連絡先アプリケーション、電子メールアプリケーション、テキストもしくはSMSメッセージングアプリケーション、および/または他のソフトウェアアプリケーション)から開始されてもよく、自動通話は、コンピューティングデバイス610のホーム画面から、コンピューティングデバイス610のロック画面から、および/またはコンピューティングデバイス610の他の状態から、話される入力を使用して開始される。
【0114】
たとえば、(たとえば、情報671A、671B、671Cの部分によって示されるように)所与の時間と日付における配管修理サービスの利用可能性を要求するために自動通話を開始して実行せよとのユーザ入力が、コンピューティングデバイス610において検出されると仮定する。様々な実装形態において、自動アシスタントは、ユーザ入力が「配管修理サービス」を示すことに基づいて、1つまたは複数のデータベース(たとえば、図1のエンティティデータベース153A)に「配管修理サービス」に関連して各々記憶されているエンティティのグループを特定することができる。いくつかの実装形態では、自動アシスタントは、配管修理サービスに関連して記憶されており、コンピューティングデバイス610の位置から閾値の距離以内にある(たとえば、コンピューティングデバイス610のGPSセンサによって生成されるGPSデータに基づいて決定される)エンティティに、グループに含められるエンティティを制約することができる。たとえば、自動アシスタントは最初、配管修理サービスに関連して記憶されており、コンピューティングデバイス610の位置から10マイル以内にあるすべてのエンティティを、エンティティのグループに含めることができる。ない場合、自動アシスタントは、閾値の距離を延ばして、コンピューティングデバイス610の位置から20マイル以内にあるすべてのエンティティを含めることができ、以下同様である。いくつかの追加および/または代替の実装形態では、自動アシスタントは、閾値の数のエンティティがグループに含められるように特定されるまで、グループに含めるべきエンティティの特定を続けることができる。たとえば、自動アシスタントは、5つのエンティティがグループに含められるまで、閾値の距離を延ばしてグループに含めるべきエンティティを特定し続けることができる。閾値の数より多くのエンティティがグループに含まれる場合、1つまたは複数の基準を満たすエンティティがグループに含められ得る(たとえば、エンティティ特定エンジン153に関連して上でより詳しく説明されたように)。とりわけ、ユーザ入力が、特定のエンティティとの自動通話を開始することを対象とするか、またはエンティティを指定しない可能性があっても、配管修理サービスに関連するエンティティのグループを特定することができる。
【0115】
自動アシスタントは、要求が満足されるまで、グループのエンティティの1つまたは複数との自動通話を開始して実行することができる。いくつかの実装形態では、自動アシスタントは、図6Aにおいてユーザ入力656A1を受け取ったことに応答してグループの第1のエンティティとの第1の自動通話を開始し、グループの対応する追加のエンティティとの追加の自動通話の実行を開始するための通話開始時間を決定することができる。(たとえば、図1の要求実行エンジン154および図5Aの通話開始時間に関連して)上でより詳しく説明されたように、追加の自動通話の各々の通話開始時間は、不変の閾値の長さの時間であり、グループのエンティティの対応する1つに関連する通話履歴データ(たとえば、通話履歴データベース154Aに記憶されている)に基づいて決定され、自動通話の進行に基づいて動的に修正され得る。その上、自動アシスタントは、自動通話の結果、コンピューティングデバイス510のユーザに対するプロンプト、および/または自動通話に関する他の情報を含む対応する通知が、(たとえば、コンピューティングデバイス510のスピーカーを介して聴覚的に、および/またはコンピューティングデバイス510のグラフィカルユーザインターフェース580を介して視覚的に)コンピューティングデバイス510においてレンダリングされるようにすることができる。
【0116】
たとえば、図6Bを特に参照して、配管修理サービスの利用可能性を要求するために自動通話を開始せよとのユーザ入力(たとえば、図6Aの第1の選択可能なグラフィカル要素671に向けられたタッチ入力、またはユーザ入力656A1に対応する話された入力)が、コンピューティングデバイス510において検出されると仮定する。少なくともExample Plumber 1およびExample Plumber 2を、配管修理サービスに関連するグループの中のエンティティとして、自動アシスタントが特定するとさらに仮定する。自動アシスタントは、Example Plumber 1との自動通話を開始し、ユーザ入力に基づいて実行されるべき行動として、配管修理サービスの利用可能性に関する状況更新を要求することができる。たとえば、自動アシスタントは、Example Plumber 1の担当者に関連するコンピューティングデバイスにおいて合成発話652B1(たとえば、「今日の午後2:00から午後4:00の間に地下室の配管破裂を修理するよう利用可能ですか」)がレンダリングされるようにすることができ、合成された発話652B1に応答して受け取られる情報654B1(たとえば、「いいえ、でも今日の午後5:00なら利用可能です」)に対応するオーディオデータを処理することができる。
【0117】
さらに、自動アシスタントは、情報654B1を受け取ったことに応答して、Example Plumber 1の担当者に関連するコンピューティングデバイスにおいてさらなる合成発話652B2(たとえば、「午後5:00でも問題ないかどうかJane Doeに確認します」)がレンダリングされるようにすることができる。会話の結果に基づいて、自動アシスタントは、通知679Bが(たとえば、通話詳細インターフェース670を置き換えることができ、通話詳細インターフェース670に類似したインターフェース要素686を使用して展開し、または閉じることができる、通知インターフェース690を介して)グラフィカルユーザインターフェースにおいて視覚的にレンダリングされるようにすることができる。とりわけ、通知679Bは、Example Plumber 1が所与の期間(たとえば、午後2:00から午後4:00の間)に利用可能ではないが、所与の期間の後のある期間に利用可能である(たとえば、午後5:00に利用可能である)ことの表示を含んでもよく、プロンプト(たとえば、「問題ありませんか?」)も含んでもよい。その上、プロンプトは、プロンプトに応答した選択可能なグラフィカル要素が、通知インターフェース590においてレンダリングされるようにし得る。選択可能なグラフィカル要素は、たとえば、午後5:00の時間の予約を承認するための第1の選択可能なグラフィカル要素679B1、午後5:00の時間の予約を断るための第2の選択可能なグラフィカル要素679B2、および追加の自動通話にユーザが参加するための第3の選択可能な要素679B3を含み得る。様々な実装形態において、自動アシスタントはさらに、コンピューティングデバイス610のユーザが第1の選択可能なグラフィカル要素679B1を選択する(または午後5:00の時間を別様に肯定する)場合、名前情報、連絡先情報、および住所情報をExample Plumber 1の担当者に提供し得る。しかしながら、ユーザが閾値の期間(たとえば、30秒、45秒、および/または他の期間)内にプロンプトに応答しない場合、自動アシスタントは、さらなる計算リソースの浪費を避けるために、Example Plumber 1の担当者との自動通話を先んじて終了し得る。より具体的には、自動アシスタントは、プロンプトへのユーザの応答(または応答がないこと)を示すために、またさらなる合成発話がExample Plumber 1の担当者のコンピューティングデバイスにおいてレンダリングされるようにすることができ、自動アシスタントは任意選択で、通知インターフェース590を介してさらなる通知がレンダリングされるようにすることができる。
【0118】
Example Plumber 1との自動通話の間に、自動アシスタント(またはその別個のインスタンス)はまた、Example Plumber 2に関連する決定された通話開始時間に基づいて、Example Plumber 2との追加の自動通話を開始することができる。いくつかの実装形態では、自動アシスタントがExample Plumber 1およびExample Plumber 2との自動通話を並行して(たとえば、図4Aから図4Cにおいて第1の自動通話を開始して実行することに関連して上で説明されたのと同様の方式で)実行できるように、Example Plumber 2に関連する通話開始時間は0であり得る。他の実装形態では、自動アシスタント(および/またはその別個のインスタンス)が一般に所与の時間において1つのエンティティとだけ関わるように、追加の自動通話は交互に行われてもよい。それらの実装形態のいくつかのバージョンでは、追加の自動通話の各々が30秒間隔で開始されるように、Example Plumber 2に関連する通話開始時間は、グループの中のエンティティの各々に関連する設定された長さの時間であってもよい。それらの実装形態の他のバージョンでは、Example Plumber 2に関連する通話開始時間は、Example Plumber 1およびExample Plumber 2に関連する通話履歴データに基づき得る。それらの実装形態のいくつかの追加および/または代替のバージョンでは、(たとえば、図5Bに関連して)上でより詳しく説明されたように、Example Plumber 2に関連する通話開始時間は、動的であり、自動アシスタントとExample Plumber 1の担当者との間の会話の進行に基づき得る。
【0119】
たとえば、特に図6Cを参照して、コンピューティングデバイス610のユーザの代わりに配管修理サービスを予約するために自動通話を開始せよとのユーザ入力が、コンピューティングデバイス610において検出されると仮定する。Example Plumber 1の担当者との自動通話の結果が、図6Bに示される会話に基づいて、Example Plumber 2が所与の期間に利用可能ではないことを示すとさらに仮定する。Example Plumber 2との追加の自動通話が、Example Plumber 1との自動通話から15秒後に開始されるとも仮定する。図6Bに関連して上で説明された会話と同様に、自動アシスタントは、Example Plumber 2の担当者に関連するコンピューティングデバイスにおいて合成発話652C1(たとえば、「今日の午後2:00から午後4:00の間に...利用可能ですか」)がレンダリングされるようにすることができ、合成された発話に応答して受け取られる情報554C1(たとえば、「はい、午後3:00であれば利用可能です。ご住所を教えていただけますか」)に対応するオーディオデータを処理することができる。
【0120】
さらに、自動アシスタントは、Example Plumber 2の担当者に関連するコンピューティングデバイスにおいて、さらなる合成発話652C2(たとえば、「Jane Doeの住所は401 S. 4th Stです」、ここでJane Doeはコンピューティングデバイス610のユーザである)がレンダリングされるようにすることができる。会話の結果に基づいて、自動アシスタントは、通知679Cが(たとえば、通話詳細インターフェース670を置き換えることができ、通話詳細インターフェース670に類似したインターフェース要素686を使用して展開し、または閉じることができる、通知インターフェース690を介して)グラフィカルユーザインターフェースを介して視覚的にレンダリングされるようにすることができる。とりわけ、通知679Cは、Example Plumber 2が所与の期間(たとえば、午後2:00から午後4:00という所望の時間範囲内にある午後3:00)に利用可能であることを示すことができる。その上、自動アシスタントは、図6Bのプロンプトに応答したさらなるユーザ入力を受け取る前に、コンピューティングデバイス610のユーザのために時間を予約し、図6Cの通知679Cをレンダリングし得る。この例では、自動アシスタントは、図6Bの通知とプロンプトを自動的に閉じ得る。このようにして、自動アシスタントは、様々なエンティティから利用可能な期間を要求し、コンピューティングデバイス610のユーザのために利用可能な期間のうちの所与の1つを予約することもできる。
【0121】
様々な実装形態において、図4Aから図4C図5Bから図5C図6B、または図6Cに示されてはいないが、自動アシスタントは、対応する自動通話の各々を開始する際に自動アシスタントとの会話に関わることに同意することを、グループのエンティティに関連する担当者に求め得る。たとえば、図4Aに関連して、自動アシスタントは、合成発話452A1のレンダリングを引き起こす前に、「自動アシスタントとの会話に関わることに同意しますか」という合成発話が、Example Store 1の担当者のコンピューティングデバイスにおいてレンダリングされるようにすることができる。Example Store 1の担当者が会話への関与に同意することを示す、プロンプトに応答する情報を自動アシスタントが受け取った場合、自動アシスタントは、図4Aに関連して上で説明された方式で会話を続けることができる。その上、自動アシスタントは、Example Store 1の担当者がすでに会話に関わることに同意しているので、第2の自動通話において自動アシスタントとの会話に関わることに同意するようにExample Store 1の担当者に求めなくてもよい。しかしながら、Example Store 1の担当者が会話への関与に同意することを示す、プロンプトに応答する情報を自動アシスタントが受け取らない場合、自動アシスタントは、Example Store 1の担当者との第1の自動通話を終了することができる。
【0122】
図7は、本明細書において説明される技法の1つまたは複数の態様を実行するために任意選択で利用され得る、例示的なコンピューティングデバイス710のブロック図である。いくつかの実装形態では、クライアントデバイス、クラウドベースの自動アシスタント構成要素、および/または他の構成要素のうちの1つまたは複数は、例示的なコンピューティングデバイス710の1つまたは複数の構成要素を備え得る。
【0123】
コンピューティングデバイス710は通常、バスサブシステム712を介していくつかの周辺デバイスと通信する、少なくとも1つのプロセッサ714を含む。これらの周辺デバイスは、たとえば、メモリサブシステム725およびファイル記憶サブシステム726を含む記憶サブシステム724と、ユーザインターフェース出力デバイス720と、ユーザインターフェース入力デバイス722と、ネットワークインターフェースサブシステム716とを含み得る。入力デバイスおよび出力デバイスは、コンピューティングデバイス710とのユーザ対話を可能にする。ネットワークインターフェースサブシステム716は、外部ネットワークへのインターフェースを提供し、他のコンピューティングデバイスの中の対応するインターフェースデバイスに結合される。
【0124】
ユーザインターフェース入力デバイス722は、キーボード、およびマウス、トラックボール、タッチパッド、もしくはグラフィックスタブレットなどのポインティングデバイス、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システム、マイクロフォンなどのオーディオ入力デバイス、および/または他のタイプの入力デバイスを含み得る。一般に、「入力デバイス」という用語の使用は、情報をコンピューティングデバイス710にまたは通信ネットワークに入力するすべての可能なタイプのデバイスおよび方法を含むことが意図される。
【0125】
ユーザインターフェース出力デバイス720は、ディスプレイサブシステム、プリンタ、ファックスマシン、またはオーディオ出力デバイスなどの非視覚的ディスプレイを含み得る。ディスプレイサブシステムは、陰極線管(CRT)、液晶ディスプレイ(LCD)などのフラットパネルデバイス、投影デバイス、または可視の画像を作成するための何らかの他の機構を含み得る。ディスプレイサブシステムはまた、オーディオ出力デバイスなどを介して、非視覚的ディスプレイを提供し得る。一般に、「出力デバイス」という用語の使用は、コンピューティングデバイス710からユーザに、または別の機械もしくはコンピューティングデバイスに情報を出力するためのすべての可能なタイプのデバイスおよび方法を含むことが意図される。
【0126】
ストレージサブシステム724は、本明細書において説明されるモジュールの一部またはすべての機能を提供する、プログラミングおよびデータ構造を記憶する。たとえば、ストレージサブシステム724は、本明細書において開示される方法の選択された態様を実行するための、ならびに図1において示される様々な構成要素を実装するための論理を含み得る。
【0127】
これらのソフトウェアモジュールは、一般に、プロセッサ714によって単独で、または他のプロセッサと組み合わせて実行される。ストレージサブシステム724において使用されるメモリ725は、プログラム実行中に命令およびデータを記憶するためのメインランダムアクセスメモリ(RAM)730、および固定命令が記憶される読取り専用メモリ(ROM)732を含めて、いくつかのメモリを含み得る。ファイルストレージサブシステム726は、プログラムおよびデータファイルのための永続記憶装置を提供することができ、ハードディスクドライブ、関連するリムーバブルメディアを伴うフロッピーディスクドライブ、CD-ROMドライブ、光ドライブ、またはリムーバブルメディアカートリッジを含み得る。いくつかの実装形態の機能を実装するモジュールは、ファイルストレージサブシステム726によって、ストレージサブシステム724に、またはプロセッサ714によってアクセス可能な他の機械に、記憶され得る。
【0128】
バスサブシステム712は、コンピューティングデバイス710の様々な構成要素およびサブシステムを、意図されるように互いに通信させるための機構を提供する。バスサブシステム712は、単一のバスとして概略的に示されているが、バスサブシステム712の代替の実装形態は、複数のバスを使用し得る。
【0129】
コンピューティングデバイス710は、ワークステーション、サーバ、コンピューティングクラスタ、ブレードサーバ、サーバファーム、または任意の他のデータ処理システムもしくはコンピューティングデバイスを含む、異なるタイプのものであり得る。コンピュータおよびネットワークの常に変化し続ける性質のために、図7に示されたコンピューティングデバイス710についての説明は、いくつかの実装形態を例示するための具体例であることのみが意図される。図7に示されたコンピューティングデバイスよりも多いかまたは少ない構成要素を有する、コンピューティングデバイス710の多数の他の構成が可能である。
【0130】
本明細書において説明されるシステムがユーザについての個人情報を収集するもしくは別様に監視する、または個人および/または監視される情報を利用し得る状況において、ユーザは、プログラムまたは機能がユーザ情報(たとえば、ユーザのソーシャルネットワーク、社会的な行動もしくは活動、職業、ユーザの選好、またはユーザの現在の地理的位置)を収集するかどうかを制御するための、または、ユーザにより関連があり得るコンテンツサーバからコンテンツを受信するかどうか、および/もしくはどのように受信するかを制御するための、機会を与えられ得る。また、いくつかのデータは、個人を識別できる情報が削除されるように、記憶または使用される前に1つまたは複数の方法で扱われ得る。たとえば、ユーザの識別情報は、ユーザについて個人を特定可能な情報を決定することができないように扱われることがあり、または、ユーザの地理的位置が一般化されることがあり、その場合、地理的位置情報は、ユーザの特定の地理的位置を決定することができないように(市、郵便番号、または州レベルなどまで)取得される。したがって、ユーザは、情報がどのようにユーザについて収集されかつ/または使用されるかを制御することができる。
【0131】
いくつかの実装形態では、1つまたは複数のプロセッサによって実施される方法が提供され、この方法は、関心対象の品目を特定するステップと、関心対象の品目に関連するエンティティのグループを特定するステップと、自動アシスタントによって、グループのエンティティの各々との対応する自動通話の実行を開始して、関心対象の品目に関する対応する状況更新を要求する合成発話の1つまたは複数の対応するインスタンスをレンダリングするステップとを含む。方法はさらに、エンティティのグループのうちの所与のエンティティとの対応する自動通話の実行の間に、合成発話の対応するインスタンスのうちの1つまたは複数のレンダリングを通じて、所与のエンティティに関連する担当者から関心対象の品目に関する対応する状況更新を要求するステップと、所与のエンティティに関連する担当者から、対応する状況更新を要求したことに応答する関心対象の品目に関する情報を受け取るステップとを含む。方法はさらに、関心対象の品目に関する受け取られた情報に基づいて、関心対象の品目に関するさらなる対応する状況更新を要求するために所与のエンティティとの後続の対応する自動通話の実行を開始するまでの時間遅延を決定するステップと、自動アシスタントによって、時間遅延の経過に応答して所与のエンティティとの後続の対応する自動通話の実行を開始するステップとを含む。
【0132】
本明細書において開示される技術のこれらの実装形態および他の実装形態は任意選択で、以下の特徴のうちの1つまたは複数を含み得る。
【0133】
いくつかの実装形態では、関心対象の品目に関する受け取られた情報は、所与のエンティティにおける関心対象の品目の利用可能性および所与のエンティティにおける関心対象の品目の利用可能な量を示す。
【0134】
それらの実装形態のいくつかのバージョンでは、関心対象の品目に関する受け取られた情報に基づいて時間遅延を決定することは、所与のエンティティにおける関心対象の品目の利用可能な量が量の閾値を満たすかどうかを決定することと、所与のエンティティにおける関心対象の品目の利用可能な量が量の閾値を満たすと決定したことに応答して、第1の期間を時間遅延として割り当てることとを含む。それらの実装形態のいくつかのさらなるバージョンでは、方法はさらに、所与のエンティティにおける関心対象の品目の利用可能な量が量の閾値を満たさないと決定したことに応答して、第2の期間を時間遅延として割り当てるステップを含む。第2の期間は、時間長が第1の期間より短く、結果として、第1の期間より前に経過する。それらの実装形態のまたさらなるバージョンでは、第2の期間は、自動通話が開始されたのと同じ日の間に経過し、第1の期間は、自動通話が開始されたのと同じ日に続く次の日の間に経過する。
【0135】
それらの実装形態のいくつかのバージョンでは、方法はさらに、所与のエンティティにおける関心対象の品目の利用可能性、または所与のエンティティにおける関心対象の品目の利用可能な量のうちの1つまたは複数を示すように、所与のエンティティに関連する検索結果を更新するステップを含む。それらの実装形態のいくつかのさらなるバージョンでは、方法はさらに、所与のエンティティに関連する更新された検索結果および所与のエンティティに関連する以前に更新された検索結果を分析するステップと、更新された検索結果および以前に更新された検索結果を分析したことに基づいて、未来の時間における、所与のエンティティにおける関心対象の品目の未来の利用可能性を予測するステップ、または、未来の時間における、所与のエンティティにおける関心対象の品目の未来の利用可能な量を予測するステップを含む。
【0136】
いくつかの実装形態では、方法はさらに、所与のエンティティとの対応する自動通話の実行の間に、所与のエンティティが関心対象の品目と関連付けられるかどうかを検証するステップを含み、時間遅延を決定することは、検証に基づいて所与のエンティティが関心対象の品目と関連付けられると決定したことに応答したものである。それらの実装形態のいくつかのバージョンでは、方法はさらに、検証に基づいて所与のエンティティが関心対象の品目と関連付けられないと決定したことに応答して、時間遅延を決定するのを控えるステップと、関心対象の品目に関連するエンティティのグループから所与のエンティティを除去するステップとを含む。関心対象の品目に関連するエンティティのグループから所与のエンティティを除去することは、関心対象の品目に関する、所与のエンティティとのあらゆる後続の自動通話の開始を防ぐ。
【0137】
いくつかの実装形態では、所与のエンティティに関連する担当者は、人の担当者、または所与のエンティティに関連する追加の自動アシスタントのうちの1つである。
【0138】
いくつかの実装形態では、関心対象の品目に関する対応する状況更新を要求するためにグループのエンティティの各々との対応する自動通話の実行を開始することは、所与のエンティティとの対応する自動通話の実行を開始することと、エンティティのグループのうちの追加のエンティティとの少なくとも追加の対応する自動通話の実行を同時に開始することとを含む。それらの実装形態のいくつかのバージョンでは、方法はさらに、追加のエンティティとの追加の対応する自動通話の実行の間に、合成発話の対応するインスタンスのうちの1つまたは複数のレンダリングを通じて、追加のエンティティに関連する追加の担当者から関心対象の品目に関する対応する状況更新を要求するステップと、追加のエンティティに関連する追加の担当者から、対応する状況更新を要求したことに応答する関心対象の品目に関する追加の情報を受け取るステップとを含む。方法はさらに、関心対象の品目に関する受け取られた追加の情報に基づいて、関心対象の品目に関するさらなる対応する状況更新を要求するために追加のエンティティとの後続の追加の対応する自動通話の実行を開始するまでの追加の時間遅延を決定するステップを含む。第1の期間が時間遅延に割り当てられ、別個の第2の期間が追加の時間遅延に割り当てられる。方法はさらに、自動アシスタントによって、追加の時間遅延の経過に応答して、追加のエンティティとの後続の追加の対応する自動通話の実行を開始するステップを含む。
【0139】
いくつかの実装形態では、関心対象の品目に関連するエンティティのグループを特定することは、1つまたは複数のデータベースにアクセスして、関心対象の品目に関連して記憶されているエンティティをエンティティのグループとして特定することを含む。それらの実装形態のいくつかのバージョンでは、特定されたグループのエンティティの各々は、特定の地理的領域に位置する。
【0140】
いくつかの実装形態では、所与のエンティティに関連する担当者から関心対象の品目に関する状況更新を要求する方法はさらに、関心対象の品目に関する対応する状況更新を要求する合成発話の対応するインスタンスのうちの1つまたは複数を捉える合成発話オーディオデータを生成するステップを含み、合成発話の対応するインスタンスのうちの1つまたは複数のレンダリングは、合成発話が所与のエンティティに関連する担当者の追加のコンピューティングデバイスにおいてレンダリングされるようにすることを含む。
【0141】
いくつかの実装形態では、1つまたは複数のプロセッサによって実施される方法が提供され、この方法は、ユーザのコンピューティングデバイスから、ユーザの代わりに自動通話の実行を開始せよとの要求を受け取るステップと、要求に基づいて、自動通話の間に実行されるべき行動を特定するステップと、自動通話の間に実行されるべき行動に基づいて、要求を満足させることが各々可能なエンティティのグループを特定するステップと、自動アシスタントによって、エンティティのグループのうちの所与のエンティティとの自動通話の実行を開始するステップとを含む。方法はさらに、所与のエンティティとの自動通話の実行の間に、要求に関する合成発話の1つまたは複数の対応するインスタンスのレンダリングを通じて、行動を実行するために所与のエンティティに関連する担当者との会話に関わるステップと、自動アシスタントによって、エンティティのグループのうちの追加のエンティティとの追加の自動通話の実行を開始するステップとを含む。方法はさらに、担当者との会話の結果を含む通知を生成するステップと、ユーザのコンピューティングデバイスを介して通知がレンダリングされるようにするステップとを含む。
【0142】
本明細書において開示される技術のこれらの実装形態および他の実装形態は任意選択で、以下の特徴のうちの1つまたは複数を含み得る。
【0143】
いくつかの実装形態では、方法はさらに、自動通話の実行の間の会話の結果に基づいて、所与のエンティティが要求を満足させると決定するステップと、所与のエンティティが要求を満足させると決定したことに応答して、追加のエンティティとの追加の自動通話の実行を終了するステップとを含む。
【0144】
いくつかの実装形態では、方法はさらに、所与のエンティティとの自動通話の実行を開始すると、所与のエンティティに関連する担当者が自動通話を保留にしたと決定するステップと、所与のエンティティに関連する担当者が自動通話を再開したと決定するステップと、所与のエンティティに関連する担当者が自動通話を再開したと決定したことに応答して、追加のエンティティとの追加の自動通話の実行を開始するステップとを含む。
【0145】
いくつかの実装形態では、方法はさらに、所与のエンティティとの対応する自動通話の実行の間に、エンティティに関連する通話履歴データに基づいて、追加のエンティティとの追加の自動通話の実行を開始するための通話開始時間を決定するステップと、現在の時間が通話開始時間と一致すると決定したことに応答して、追加のエンティティとの追加の自動通話の実行を開始するステップとを含む。それらの実装形態のいくつかのバージョンでは、追加のエンティティに関連する通話履歴データは、エンティティが双方向型音声応答システムに関連することの標示および双方向型音声応答システムを操作するための時間の長さ、エンティティとの以前の自動通話の時間の長さの標示、またはエンティティとの以前の自動通話の間の最初の待ち時間の長さの標示のうちの1つまたは複数を含む。
【0146】
いくつかの実装形態では、自動通話の間に実行されるべき行動は、グループのエンティティに関連する関心対象の品目に関する状況更新を要求することを含む。それらの実装形態のいくつかのバージョンでは、行動を実行するために所与のエンティティに関連する担当者との会話に関わることは、所与のエンティティに関連する担当者から関心対象の品目に関する状況更新を要求することと、所与のエンティティに関連する担当者から、状況更新を要求したことに応答して関心対象の品目に関する情報を受け取ることとを含む。
【0147】
それらの実装形態のいくつかのさらなるバージョンでは、関心対象の品目に関する受け取られた情報は、所与のエンティティにおける関心対象の品目の利用可能性を示し、会話の結果を含む通知は、関心対象の品目が所与のエンティティにおいて利用可能であることを示す。
【0148】
それらの実装形態のまたさらなるバージョンでは、方法はさらに、関心対象の品目に関する受け取られた情報が、関心対象の品目の利用可能性を示すと決定したことに応答して、ユーザのために所与のエンティティにおいて関心対象の品目を取り置きするように所与のエンティティに関連する担当者に要求するステップを含み、会話の結果を含む通知はさらに、ユーザのために所与のエンティティにおいて関心対象の品目が取り置かれたことを示す。それらの実装形態のまたさらなるバージョンでは、方法はさらに、関心対象の品目に関する受け取られた情報が関心対象の品目の利用可能性を示すと決定したことに応答して、所与のエンティティに関連する担当者に、ユーザの代わりに関心対象の品目を入手するための追加の情報を提出するステップとを含む。それらの実装形態のまたまたさらなるバージョンでは、会話の結果を含む通知はさらに、関心対象の品目を入手するために提出される追加の情報を提出することについての、ユーザからの承認を要求する。それらの実装形態のまたまたさらなるバージョンでは、会話の結果を含む通知はさらに、関心対象の品目を入手するために追加の情報が提出されたことを示す。
【0149】
それらの実装形態のまたさらなるバージョンでは、通知はさらに、自動通話に参加するようにユーザに要求する。それらの実装形態のまたさらなるバージョンでは、関心対象の品目は、ユーザの代わりに自動通話の実行を開始せよとの要求において指定される。それらの実装形態のまたさらなるバージョンでは、方法はさらに、関心対象の品目が所与のエンティティにおいて利用可能であると決定したことに応答して、追加のエンティティとの追加の自動通話の実行を終了するステップを含む。
【0150】
それらの実装形態のいくつかのさらなるバージョンでは、関心対象の品目に関する受け取られた情報は、所与のエンティティにおいて関心対象の品目が利用可能ではないことを示し、会話の結果を含む通知は、関心対象の品目が所与のエンティティにおいて利用可能ではないことを示す。それらの実装形態のまたさらなるバージョンでは、方法はさらに、関心対象の品目が所与のエンティティにおいて利用可能ではないと決定したことに応答して、所与のエンティティとの自動通話の実行を終了するステップを含む。
【0151】
いくつかの実装形態では、自動通話の間に実行されるべき行動は、所与の期間におけるグループのエンティティの利用可能性を要求することを含む。それらの実装形態のいくつかのバージョンでは、行動を実行するために所与のエンティティに関連する担当者との会話に関わることは、所与のエンティティに関連する担当者から、所与の期間における所与のエンティティの利用可能性を要求することと、所与のエンティティに関連する担当者から、所与の期間における所与のエンティティの利用可能性に関する情報を受け取ることとを含む。
【0152】
それらの実装形態のいくつかのさらなるバージョンでは、受け取られた情報は、所与のエンティティが所与の期間において利用可能であることを示し、会話の結果を含む通知は、所与のエンティティが所与の期間において利用可能であることを示す。それらの実装形態のまたさらなるバージョンでは、方法はさらに、所与のエンティティが所与の期間において利用可能であると決定したことに応答して、ユーザのために所与のエンティティを所与の期間において利用可能に保つように所与のエンティティに関連する担当者に要求するステップを含み、会話の結果を含む通知はさらに、所与のエンティティがユーザのために所与の期間において利用可能に保たれることを示す。それらの実装形態のまたさらなるバージョンでは、通知はさらに、自動通話に参加するようにユーザに要求する。それらの実装形態のまたさらなるバージョンでは、方法はさらに、所与のエンティティが所与の期間において利用可能であると決定したことに応答して、追加のエンティティとの追加の自動通話の実行を終了するステップを含む。
【0153】
それらの実装形態のいくつかのさらなるバージョンでは、受け取られた情報は、所与のエンティティが所与の期間において利用可能ではないことを示し、会話の結果を含む通知は、所与のエンティティが所与の期間において利用可能ではないことを示す。それらの実装形態のまたさらなるバージョンでは、方法はさらに、所与のエンティティが所与の期間において利用可能ではないと決定したことに応答して、所与のエンティティとの自動通話の実行を終了するステップを含む。
【0154】
いくつかの実装形態では、要求を満足させることが各々可能なエンティティのグループを特定することは、ユーザのコンピューティングデバイスの位置を特定することと、エンティティがユーザのコンピューティングデバイスの位置から閾値の距離以内にあるかどうかを決定することと、エンティティが要求を満足させることが可能であるかどうかを決定することと、エンティティがコンピューティングデバイスの位置から閾値の距離以内にあると決定したことに応答して、およびエンティティが要求を満足させることが可能であると決定したことに応答して、エンティティをエンティティのグループに含めることとを含む。それらの実装形態のいくつかのバージョンでは、方法はさらに、ユーザの代わりに自動通話の実行を開始せよとの要求を受け取った後、追加のユーザの追加のコンピューティングデバイスから、追加のユーザの代わりに別の自動通話の実行を開始せよとの追加の要求を受け取るステップを含む。追加のユーザからの追加の要求は、ユーザからの要求と同じである。方法はさらに、所与のエンティティに関連する担当者との会話の結果または追加のエンティティに関連する追加の担当者との追加の会話の追加の結果に基づいて、別の自動通話を開始するのを控えるステップと、担当者との会話の結果または追加の担当者との追加の会話の追加の結果を含む追加の通知を生成するステップと、追加の通知がユーザの追加のコンピューティングデバイスを介してレンダリングされるようにするステップとを含む。
【0155】
いくつかの実装形態では、ユーザの代わりに自動通話の実行を開始せよとの要求を受け取ることは、検索インターフェースまたは自動アシスタントインターフェースを介してユーザのコンピューティングデバイスにおいてタッチ入力もしくはタイプされた入力を受け取ること、または、ユーザのコンピューティングデバイスの1つまたは複数のマイクロフォンを介して話された入力を受け取ることのうちの1つを含む。
【0156】
いくつかの実装形態では、所与のエンティティに関連する担当者は、人の担当者、または所与のエンティティに関連する追加の自動アシスタントのうちの1つである。
【0157】
加えて、いくつかの実装形態は、1つまたは複数のコンピューティングデバイスの1つまたは複数のプロセッサ(たとえば、中央処理装置(CPU)、グラフィックス処理装置(GPU)、および/またはテンソル処理装置(TPU))を含み、ここで、1つまたは複数のプロセッサは、関連するメモリに記憶された命令を実行するように動作可能であり、ここで、命令は、前述の方法のいずれかの実行を引き起こすように構成される。いくつかの実装形態はまた、前述の方法のいずれかを実行するために、1つまたは複数のプロセッサによって実行可能なコンピュータ命令を記憶する、1つまたは複数の非一時的コンピュータ可読記憶媒体を含む。いくつかの実装形態はまた、前述の方法のいずれかを実行するために1つまたは複数のプロセッサによって実行可能な命令を含むコンピュータプログラム製品も含む。
【0158】
本明細書においてより詳細に説明される上記の概念および追加の概念のすべての組合せが、本明細書において開示される主題の一部であるものとして企図されることを諒解されたい。たとえば、本開示の最後に現れる請求される主題のすべての組合せが、本明細書において開示される主題の一部であるものとして企図される。
【符号の説明】
【0159】
110 クライアントデバイス
111 ユーザ入力エンジン
112 レンダリングエンジン
113 通知エンジン
115 自動アシスタント
120 発話認識エンジン
130A NLUエンジン
140A 発話合成エンジン
150 自動通話エンジン
151 クエリ分析エンジン
152 要求処理エンジン
153 エンティティ特定エンジン
154 要求実行エンジン
155 更新エンジン
156 承認エンジン
157 時間遅延エンジン
158 ユーザデータ
190 ネットワーク
410 コンピューティングデバイス
411 URL
420 第1の検索結果
421 情報
430 第2の検索結果
431 情報
440 第3の検索結果
441 情報
480 グラフィカルユーザインターフェース
481 システムインターフェース要素
482 システムインターフェース要素
483 システムインターフェース要素
484 テキスト返答インターフェース要素
485 音声返答インターフェース要素
510 コンピューティングデバイス
511 URL
520 第1の検索結果
521 情報
522 通話グラフィカル要素
523 道順グラフィカル要素
530 第2の検索結果
531 情報
532 通話グラフィカル要素
533 道順グラフィカル要素
570 通話詳細インターフェース
571 選択可能なテキストの第1のセグメント
572 選択可能なテキストの第2のセグメント
579 通知
580 グラフィカルユーザインターフェース
581 システムインターフェース要素
582 システムインターフェース要素
583 システムインターフェース要素
584 テキスト返答インターフェース要素
585 音声返答インターフェース要素
586 インターフェース要素
590 通知インターフェース
610 コンピューティングデバイス
670 通話詳細インターフェース
671 選択可能なテキストの第1のセグメント
672 選択可能なテキストの第2のセグメント
679 通知
680 グラフィカルユーザインターフェース
681 システムインターフェース要素
682 システムインターフェース要素
683 システムインターフェース要素
684 テキスト返答インターフェース要素
685 音声返答インターフェース要素
686 インターフェース要素
690 通知インターフェース
710 コンピューティングデバイス
712 バスサブシステム
714 プロセッサ
716 ネットワークインターフェース
720 ユーザインターフェース出力デバイス
722 ユーザインターフェース入力デバイス
724 ストレージサブシステム
725 メモリサブシステム
726 ファイルストレージサブシステム
730 RAM
732 ROM
図1
図2
図3
図4A
図4B
図4C
図4D
図5A
図5B
図5C
図5D
図6A
図6B
図6C
図7
【手続補正書】
【提出日】2024-08-22
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
1つまたは複数のプロセッサによって実施される方法であって、
ユーザのコンピューティングデバイスから、前記ユーザの代わりに自動通話の実行を開始せよとの要求を受け取るステップと、
前記要求に基づいて、前記自動通話の間に実行されるべき行動を特定するステップと、
前記自動通話の間に実行されるべき前記行動に基づいて、前記要求を満足させることが各々可能なエンティティのグループを特定するステップであって、前記自動通話の間に実行されるべき前記行動が、所与の期間における前記グループの前記エンティティの利用可能性を要求することを備える、ステップと、
自動アシスタントによって、前記エンティティの前記グループのうちの所与のエンティティとの前記自動通話の実行を開始するステップと、
前記所与のエンティティとの前記自動通話の実行の間に、
前記所与のエンティティに関連する担当者に、前記所与の期間における前記所与のエンティティの前記利用可能性を要求するステップと、
前記所与のエンティティに関連する前記担当者から、前記所与の期間における前記所与のエンティティの前記利用可能性に関する情報を受け取るステップと、
前記自動アシスタントによって、前記エンティティの前記グループのうちの追加のエンティティとの追加の自動通話の実行を開始するステップと、
前記所与の期間における前記所与のエンティティの前記利用可能性を含む通知を生成するステップと、
前記通知が前記ユーザの前記コンピューティングデバイスを介してレンダリングされるようにするステップと
を備える、方法。
【請求項2】
前記所与の期間における前記所与のエンティティの前記利用可能性に基づいて、前記所与のエンティティが前記要求を満足させると決定するステップと、
前記所与のエンティティが前記要求を満足させると決定したことに応答して、前記追加のエンティティとの前記追加の自動通話の実行を終了するステップと
をさらに備える、請求項1に記載の方法。
【請求項3】
前記所与のエンティティとの前記自動通話の実行を開始すると、前記所与のエンティティに関連する前記担当者が前記自動通話を保留にしたと決定するステップと、
前記所与のエンティティに関連する前記担当者が前記自動通話を再開したと決定するステップと
をさらに備え、
前記追加のエンティティとの前記追加の自動通話の実行を開始することが、前記所与のエンティティに関連する前記担当者が前記自動通話を再開したと決定したことに応答する、
請求項1に記載の方法。
【請求項4】
前記所与のエンティティとの対応する自動通話の実行の間に、
前記エンティティに関連する通話履歴データに基づいて、前記追加のエンティティとの前記追加の自動通話の実行を開始するための通話開始時間を決定するステップ
をさらに備え、
前記追加のエンティティとの前記追加の自動通話の実行を開始することが、現在の時間が前記通話開始時間と一致すると決定したことに応答する、
請求項1に記載の方法。
【請求項5】
前記追加のエンティティに関連する前記通話履歴データが、
前記エンティティが双方向型音声応答システムに関連することの標示および前記双方向型音声応答システムを操作するための時間の長さと、
前記エンティティとの以前の自動通話の時間の長さの標示または、
前記エンティティとの以前の自動通話の間の最初の待ち時間の長さの標示と
のうちの1つまたは複数を含む、請求項4に記載の方法。
【請求項6】
前記要求を満足させることが各々可能な前記エンティティの前記グループを特定するステップが、
前記ユーザの前記コンピューティングデバイスの位置を特定するステップと、
前記エンティティが前記ユーザの前記コンピューティングデバイスの前記位置から閾値距離以内にあるかどうかを判定するステップと、
前記エンティティが前記要求を満足させることが可能であるかどうかを判定するステップと、
前記エンティティが前記コンピューティングデバイスの前記位置から前記閾値距離以内にあると決定したことに応答して、かつ前記エンティティが前記要求を満足させることが可能であると決定したことに応答して、前記エンティティをエンティティの前記グループに含めるステップと
を備える、請求項1に記載の方法。
【請求項7】
前記ユーザの代わりに前記自動通話の実行を開始せよとの前記要求を受け取った後、
追加のユーザの追加のコンピューティングデバイスから、前記追加のユーザの代わりに別の自動通話の実行を開始せよとの追加の要求を受け取るステップであって、前記追加のユーザからの前記追加の要求が前記ユーザからの前記要求と同じである、ステップと、
前記所与のエンティティに関連する前記担当者との会話の結果、または前記追加のエンティティに関連する追加の担当者との追加の会話の追加の結果に基づいて、前記別の自動通話を開始するのを控えるステップと、
前記担当者との前記会話の前記結果または前記追加の担当者との前記追加の会話の追加の結果を含む追加の通知を生成するステップと、
前記追加の通知が前記ユーザの前記追加のコンピューティングデバイスを介してレンダリングされるようにするステップと
をさらに備える、請求項1に記載の方法。
【請求項8】
前記所与の期間における前記所与のエンティティの前記利用可能性を要求するステップが、前記所与の期間における前記所与のエンティティの前記利用可能性を要求する合成発話の1つまたは複数の対応するインスタンスをレンダリングするステップを備える、請求項1に記載の方法。
【請求項9】
前記受け取られた情報が、前記所与のエンティティが前記所与の期間において利用可能であることを示し、前記会話の前記結果を含む前記通知が、前記所与のエンティティが前記所与の期間において利用可能であることを示す、請求項1に記載の方法。
【請求項10】
前記所与のエンティティが前記所与の期間において利用可能であると決定したことに応答して、
前記ユーザのために前記所与のエンティティを前記所与の期間において利用可能に保つように前記所与のエンティティに関連する前記担当者に要求するステップをさらに備え、
前記会話の前記結果を含む前記通知が、前記所与のエンティティが前記ユーザのために前記所与の期間において利用可能に保たれることをさらに示す、
請求項9に記載の方法。
【請求項11】
前記通知がさらに、前記自動通話に参加するように前記ユーザに要求する、請求項9に記載の方法。
【請求項12】
前記所与のエンティティが前記所与の期間において利用可能であると決定したことに応答して、前記追加のエンティティとの前記追加の自動通話の実行を終了するステップをさらに備える、請求項9に記載の方法。
【請求項13】
前記受け取られた情報が、前記所与のエンティティが前記所与の期間において利用可能ではないことを示し、前記会話の前記結果を含む前記通知が、前記所与のエンティティが前記所与の期間において利用可能ではないことを示す、請求項1に記載の方法。
【請求項14】
前記所与のエンティティが前記所与の期間において利用可能ではないと決定したことに応答して、前記所与のエンティティとの前記自動通話の実行を終了するステップをさらに備える、請求項13に記載の方法。
【請求項15】
前記ユーザの代わりに前記自動通話の実行を開始せよとの前記要求を受け取るステップが、
検索インターフェースもしくは自動アシスタントインターフェースを介して前記ユーザの前記コンピューティングデバイスにおいてタッチ入力もしくはタイプされた入力を受け取るステップ、または
前記ユーザの前記コンピューティングデバイスの1つまたは複数のマイクロフォンを介して話された入力を受け取るステップ
のうちの1つを備える、請求項1に記載の方法。
【請求項16】
前記所与のエンティティに関連する前記担当者が、人の担当者か、または前記所与のエンティティに関連する追加の自動アシスタントのうちの1つである、請求項1に記載の方法。
【請求項17】
1つまたは複数のプロセッサによって実施される方法であって、
関心対象の品目を特定するステップと、
前記関心対象の品目に関連するエンティティのグループを特定するステップと、
自動アシスタントによって、前記エンティティの前記グループのうちの所与のエンティティとの対応する自動通話の実行を開始するステップと、
前記所与のエンティティとの前記自動通話の実行の間に、
前記所与のエンティティに関連する担当者に、前記所与のエンティティに関連する前記担当者に前記関心対象の品目に関する対応する状況更新を要求するステップと、
前記エンティティに関連する前記担当者から、前記対応する状況更新を要求したことに応答して前記関心対象の品目に関する情報を受け取るステップと、
前記関心対象の品目に関する前記情報に基づいて、前記所与のエンティティに関連する1つまたは複数の検索結果を、前記所与のエンティティにおける関心対象の品目の利用可能性、または前記所与のエンティティにおける前記関心対象の品目の利用可能な量のうちの1つまたは複数を示すように更新させるステップと
を備える、方法。
【請求項18】
前記所与のエンティティに関連する前記1つまたは複数の検索結果を更新させるステップの後に、
ユーザから、前記ユーザのコンピューティングデバイスを介して検索クエリを受け取るステップであって、前記検索クエリが、前記関心対象の品目に関連する1つまたは複数の用語を含む、ステップと、
前記検索クエリに応答して、前記関心対象の品目に関する前記情報に基づいて更新された、前記所与のエンティティに関連する前記検索結果のうちの1つまたは複数を取得するステップと、
前記検索結果のうちの1つまたは複数を、前記コンピューティングデバイスを介して前記ユーザに提示のために提供されるようにするステップと
をさらに備える、請求項17に記載の方法。
【請求項19】
前記検索クエリが、前記ユーザの前記コンピューティングデバイスのアプリケーションインターフェースを介して受け取られ、前記コンピューティングデバイスの前記アプリケーションインターフェースが、ブラウザアプリケーション、ナビゲーションアプリケーション、または自動アシスタントアプリケーションのうちの1つに関連する、請求項18に記載の方法。
【請求項20】
前記所与のエンティティが特定の地理的領域内に位置し、前記ユーザもまた前記特定の地理的領域内に位置する、請求項18に記載の方法。
【請求項21】
前記所与のエンティティに関連する前記担当者に前記関心対象の品目に関する前記対応する状況更新を要求するステップが、
前記関心対象の品目に関する前記対応する状況更新を要求する合成発話の1つまたは複数の対応するインスタンスを、前記エンティティに関連する前記担当者のコンピューティングデバイスにおいて聴覚的にレンダリングさせるステップ
を備える、請求項17に記載の方法。
【請求項22】
前記自動アシスタントによって、前記エンティティの前記グループのうちの所与の追加のエンティティとの追加の対応する自動通話の実行を開始するステップと、
前記所与の追加のエンティティとの前記自動通話の実行の間に、
前記所与の追加のエンティティに関連する追加の担当者に、前記所与の追加のエンティティに関連する前記追加の担当者に前記関心対象の品目に関する対応する追加の状況更新を要求するステップと、
前記所与の追加のエンティティに関連する前記追加の担当者から、前記対応する追加の状況更新を要求したことに応答して前記関心対象の品目に関する追加の情報を受け取るステップと、
前記関心対象の品目に関する前記追加の情報に基づいて、前記所与の追加のエンティティに関連する1つまたは複数の追加の検索結果を、前記所与の追加のエンティティにおける前記関心対象の品目の前記利用可能性、または前記所与の追加のエンティティにおける前記関心対象の品目の前記利用可能な量のうちの1つまたは複数を示すように更新させるステップと
をさらに備える、請求項17に記載の方法。
【請求項23】
前記所与の追加のエンティティに関連する前記検索結果のうちの1つまたは複数を更新させるステップの後、
ユーザから、前記ユーザのコンピューティングデバイスを介して検索クエリを受け取るステップであって、前記検索クエリが、前記関心対象の品目に関連する1つまたは複数の用語を含む、ステップと、
前記検索クエリに応答して、前記所与のエンティティに関連する前記検索結果のうちの1つまたは複数および前記所与の追加のエンティティに関連する前記追加の検索結果のうちの1つまたは複数を取得するステップと、
前記検索結果のうちの1つまたは複数および前記追加の検索結果のうちの1つまたは複数を、前記コンピューティングデバイスを介して前記ユーザに提示のために提供されるようにさせるステップと
をさらに備える、請求項22に記載の方法。
【請求項24】
前記所与のエンティティおよび前記所与の追加のエンティティがともに特定の地理的領域内に位置し、前記ユーザもまた前記特定の地理的領域内に位置する、請求項23に記載の方法。
【請求項25】
前記所与の追加のエンティティとの前記追加の対応する自動通話の実行が、前記所与のエンティティとの前記対応する自動通話の実行と同時に開始される、請求項22に記載の方法。
【請求項26】
前記所与の追加のエンティティとの前記追加の対応する自動通話の実行が、前記所与のエンティティとの前記対応する自動通話の実行の後に開始される、請求項22に記載の方法。
【請求項27】
前記所与の追加のエンティティに関連する前記検索結果のうちの1つまたは複数を更新させるステップの後、
分析するステップであって、
前記関心対象の品目に関する前記情報に基づいて更新された、前記所与のエンティティに関連する前記検索結果のうちの1つまたは複数と、
前記関心対象の品目に関する以前の情報に基づいて更新された、前記エンティティに関連する1つまたは複数の追加の検索結果であって、前記関心対象の品目に関する前記以前の情報が、前記関心対象の品目に関する対応する以前の状況更新に基づく前記所与のエンティティに関連する前記担当者から受け取られる、1つまたは複数の追加の検索結果と
を分析するステップと、
前記分析するステップに基づいて、未来の時間における、前記所与のエンティティにおける前記関心対象の品目の未来の利用可能性、または前記所与のエンティティにおける前記関心対象の品目の未来の利用可能な量を予測するステップと
をさらに備える、請求項17に記載の方法。
【請求項28】
前記所与のエンティティに関連する前記担当者が、人の担当者か、または前記所与のエンティティに関連する追加の自動アシスタントのうちの1つである、請求項17に記載の方法。
【請求項29】
1つまたは複数のプロセッサによって実施される方法であって、
複数のユーザのクエリ活動を分析するステップと、
前記複数のユーザの前記クエリ活動を分析したことに基づいて、品目に関連する閾値の数のクエリが前記複数のユーザによって出されているかどうかを決定するステップと、
品目に関連する閾値の数のクエリが前記複数のユーザによって出されていると決定したことに応答して、
関心対象の品目として前記品目を特定するステップと、
前記関心対象の品目に関連するエンティティのグループを特定するステップと、
自動アシスタントに、前記グループの前記エンティティとの複数の対応する自動通話を実行させるステップと、
前記自動アシスタントが前記グループの前記エンティティとの前記複数の対応する自動通話を実行したことに基づいて、前記関心対象の品目に関して、前記グループの前記エンティティのそれぞれについて、対応する状況更新を決定するステップと、
前記グループの前記エンティティのそれぞれについての前記対応する状況更新に基づいて、前記自動アシスタントに、前記関心対象の品目の対応する利用可能性、または前記関心対象の品目の利用可能な量のうちの1つまたは複数を示すために1つまたは複数のデータベースを更新させるステップと
を備える、方法。
【請求項30】
前記複数のユーザの前記クエリ活動を分析したことに基づいて、前記品目に関連する前記閾値の数のクエリが、閾値の時間の長さにわたって前記複数のユーザによって出されているかどうかを決定するステップをさらに備え、
前記関心対象の品目として前記品目を特定するステップが、前記品目に関連する前記閾値の数のクエリが、前記閾値の時間の長さにわたって前記複数のユーザによって出されていると決定することにさらに応答する、
請求項29に記載の方法。
【請求項31】
前記品目に関連する前記閾値の数のクエリが、前記閾値の時間の長さにわたって前記複数のユーザによって出されていないと決定したことに応答して、
前記関心対象の品目として前記品目を特定することを控えるステップ
をさらに備える、請求項30に記載の方法。
【請求項32】
前記複数のユーザの前記クエリ活動を分析したことに基づいて、前記品目に関連する前記閾値の数のクエリが、特定の地理的領域に位置する前記複数のユーザによって出されているかどうかを決定するステップをさらに備え、
前記関心対象の品目として前記品目を特定するステップが、前記品目に関連する前記閾値の数のクエリが、前記特定の地理的領域に位置する前記複数のユーザによって出されていると決定することにさらに応答する、
請求項29に記載の方法。
【請求項33】
前記品目に関連する前記閾値の数のクエリが、前記特定の地理的領域に位置する前記複数のユーザによって出されていないと決定したことに応答して、

前記関心対象の品目として前記品目を特定することを控えるステップ
をさらに備える、請求項32に記載の方法。
【請求項34】
前記関心対象の品目に関連する前記エンティティの前記グループを特定するステップが、
前記関心対象の品目に関連している前記エンティティに基づき、かつ前記特定の地理的領域内に位置する前記エンティティに基づく前記エンティティのグループに含まれる前記エンティティを特定するステップ
を備える、請求項32に記載の方法。
【請求項35】
前記自動アシスタントに、前記グループの前記エンティティの所与のエンティティとの前記複数の対応する自動通話のうちの所与の対応する自動通話を実行させるステップが、
前記所与のエンティティに関連する所与の対応する電話番号に基づいて、前記自動アシスタントに、前記所与の対応する自動通話を開始させるステップと、
前記所与の対応する自動通話の実行の間に、
前記自動アシスタントに、前記所与のエンティティに関連する所与の対応する担当者に、前記関心対象の品目についての前記対応する状況更新を要求させるステップと、
前記所与のエンティティに関連する前記所与の対応する担当者から、前記関心対象の品目についての前記対応する状況更新を受け取るステップと
を備える、請求項29に記載の方法。
【請求項36】
前記所与のエンティティに関連する前記担当者が、所与の対応する人の担当者か、または前記所与のエンティティに関連する所与の対応する追加の自動アシスタントのうちの1つである、請求項35に記載の方法。
【請求項37】
前記1つまたは複数のデータベースが、複数のクライアントデバイスからアクセス可能である、請求項29に記載の方法。
【請求項38】
前記1つまたは複数のデータベースを更新させるステップの後に、
前記複数のユーザに加えたユーザから、前記ユーザのクライアントデバイスを介して検索クエリを受け取るステップであって、前記検索クエリが、前記関心対象の品目に関連する1つまたは複数の用語を含む、ステップと、
前記検索クエリに応答して前記1つまたは複数のデータベースから、前記複数のエンティティのうちの1つまたは複数に関連する前記1つまたは複数の検索結果を取得するステップと、
前記検索結果のうちの1つまたは複数を、前記クライアントデバイスを介して前記ユーザに提示のために提供されるようにさせる、ステップと
をさらに備える、請求項29に記載の方法。
【請求項39】
前記自動アシスタントが、前記グループの前記エンティティとの前記複数の対応する自動通話のうちの複数を並列方式で実行する、請求項29に記載の方法。
【請求項40】
少なくとも1つのプロセッサと、
実行されると、請求項1から39のいずれか一項に記載の方法を前記少なくとも1つのプロセッサに実行させる命令を記憶した、少なくとも1つのメモリと
を備える、システム。
【請求項41】
実行されると、請求項1から39のいずれか一項に記載の方法の動作を少なくとも1つのプロセッサに実行するように動作可能にさせるように命令を記憶した、コンピュータ可読記憶媒体。
【外国語明細書】