US 12,112,760 B2
Managing dialog data providers
David Kliger Elson, Brooklyn, NY (US); David P. Whipp, San Jose, CA (US); and Shir Judith Yehoshua, San Francisco, CA (US)
Assigned to GOOGLE LLC, Mountain View, CA (US)
Filed by GOOGLE LLC, Mountain View, CA (US)
Filed on Jul. 14, 2023, as Appl. No. 18/222,325.
Application 18/222,325 is a continuation of application No. 17/473,750, filed on Sep. 13, 2021, granted, now 11,727,941.
Application 17/473,750 is a continuation of application No. 16/378,546, filed on Apr. 8, 2019, granted, now 11,120,806, issued on Sep. 14, 2021.
Application 16/378,546 is a continuation of application No. 14/815,794, filed on Jul. 31, 2015, granted, now 10,255,921, issued on Apr. 9, 2019.
Prior Publication US 2023/0360654 A1, Nov. 9, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. G10L 15/08 (2006.01); G06F 16/332 (2019.01); G10L 15/22 (2006.01); G10L 17/22 (2013.01)
CPC G10L 17/22 (2013.01) [G06F 16/3329 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A method implemented by one or more processors, the method comprising:
receiving, from a user device, a request comprising a first voice input;
submitting the request to each of a plurality of distinct data providers, wherein each data provider is associated with a distinct data model, and wherein the plurality of distinct data providers includes (i) a task provider that directs a dialog toward information used to complete a task and (ii) a search provider;
in response to the first voice input, receiving at least one suggested response to the first voice input from at least one of the plurality of distinct data providers;
determining, from the at least one suggested response to the first voice input, a first dialog including one or more responses to the first voice input to provide to the user device to complete the first dialog;
receiving, from the user device, a second voice input in response to providing the one or more responses to the first voice input to the user device, and submitting the second voice input to each of the plurality of distinct data providers;
in response to the second voice input, receiving suggested responses to the second voice input from two or more of the plurality of distinct data providers, the suggested responses to the second voice input including a suggested response to the second voice input from the search provider and a suggested response to the second voice input from the task provider, the suggested response to the second voice input from the task provider being based on the suggested response to the second voice input from the search provider;
for each suggested response to the second voice input, determining a respective score associated with the suggested response;
selecting, from the suggested responses to the second voice input, a response to the second voice input based on the respective scores associated with the suggested responses to the second voice input; and
providing the response to the second voice input to the user device.