Mitigation of client device latency in rendering of remotely generated automated assistant content
AssigneeGoogle Inc.
InventorYuzhao Ni
Life of this patent
Estimating the term…
Abstract
Implementations relate to mitigating client device latency in rendering of remotely generated automated assistant content. Some of those implementations mitigate client device latency between rendering of multiple instances of output that are each based on content that is responsive to a corresponding automated assistant action of a multiple action request. For example, those implementations can reduce latency between rendering of first output that is based on first content responsive to a first automated assistant action of a multiple action request, and second output that is based on second content responsive to a second automated assistant action of the multiple action request.
Claims20
A method, comprising:
- by one or more processors of one or more automated assistant server devices remote from a client device:
- receiving, via a network interface, a multiple action request transmitted by the client device;
- determining, based on the multiple action request:
- a first automated assistant action that is indicated by the multiple action request, and
- a second automated assistant action that is indicated by the multiple action request, the second automated assistant action being disparate from the first automated assistant action;
- generating first action content that is based on the first automated assistant action indicated by the multiple action request;
- transmitting, to the client device in response to receiving the multiple action request, the first action content that is based on the first automated assistant action;
- wherein, in response to receiving the transmitted first action content, the client device renders a first output that is based on the first action content;
- prior to completion of the rendering of the first output by the client device:
- generating at least part of second action content that is based on the second automated assistant action;
- transmitting, to the client device in response to receiving the multiple action request, the at least part of the second action content that is based on the second automated assistant action;
- wherein the client device receives the at least part of the second action content prior to completion of the rendering of the first output by the client device,
- wherein, in response to receiving the transmitted at least part of the second action content, the client device buffers the at least part of the second action content in local memory of the client device, and
- wherein, in response to completion of rendering of the first output, the client device accesses the at least part of the second action content buffered in the local memory to render second output that is based on the at least part of the second action content.
A method, comprising:
- transmitting, by a client device, a multiple action request to a system of one or more automated assistant server devices;
- receiving, by the system, the multiple action request transmitted by the client device;
- determining, by the system and based on the multiple action request, a first automated assistant action that is indicated by the multiple action request, and a disparate second automated assistant action that is indicated by the multiple action request;
- generating, by the system, first action content that is based on the first automated assistant action;
- transmitting, by the system, the first action content that is based on the first action;
- receiving, by the client device, the first action content;
- rendering, by the client device in response to receiving the first action content, first output that is based on the first action content;
- prior to completion of the rendering of the first output by the client device:
- generating, by the system, second action content that is based on the second automated assistant action;
- transmitting, by the system, the second action content that is based on the second automated assistant action;
- and
- receiving, by the client device, the second action content;
- buffering, by the client device in local memory of the client device, the second action content;
- by the client device in response to completion of the rendering of the first output:
- rendering second output that is based on the second action content buffered in the local memory.
A method implemented by one or more processors, the method comprising:
- generating a routine that includes multiple different actions, wherein the multiple different actions include an action that an automated assistant is configured to perform in response to receiving a natural language input at an automated assistant interface of a client device;
- receiving, from the client device, a request to perform the routine, wherein the multiple different actions include providing, via the automated assistant interface, first content responsive to a first action, of the multiple actions, where the first content is accessible via a first agent application and second content responsive to a second action, of the multiple actions, where the second content is accessible via a second agent application;
- initializing retrieval of the first content from the first agent application and the second content via the second agent application;
- receiving a portion of the first content from the first agent application prior to receiving a portion of the second content from the second agent application;
- causing the automated assistant to provide an output stream via the automated assistant interface, wherein the output stream includes the portion of the first content;
- and
- when the portion of the second content is received concurrently with the automated assistant providing the output stream that includes the portion of the first content:
- causing the automated assistant to:
- incorporate the portion of the second content responsive to the second action into the output stream prior to the automated assistant completely provisioning the first content responsive to the first action.
Dependencies are inferred from the claim text.