Automated Assistant Consent Routing for Secure Cloud-Local Fulfillment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Automated assistants face challenges in dynamically switching between cloud-based and local execution to balance data security and optimal content provision, leading to potential data security risks and sub-optimal responses.
Innovation Solution
Implementing a secure automated assistant that prompts users for consent before transmitting data to servers or third-party applications based on the category of the assistant command, using machine learning models to determine the category and rules to manage data transmission, ensuring secure and efficient data handling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If automated assistants transmit data to cloud servers for processing, then response quality and content accuracy are improved, but data security and user privacy are compromised
Solution Approach 1:
The system dynamically changes the execution location parameter between cloud and device based on data sensitivity classification. By categorizing data into different sensitivity levels, the system adjusts whether processing occurs in the cloud or locally, optimizing both response quality and security for each data type.
Solution Approach 2:
The automated assistant system is segmented into cloud-based and device-based components. Sensitive data processing is separated from non-sensitive data processing, allowing the system to leverage cloud resources for general tasks while keeping sensitive operations local to maintain security.
2Object-affected harmful factors
If automated assistants execute exclusively locally on client devices, then data security is preserved, but response quality and content availability become sub-optimal
Solution Approach 1:
The system dynamically changes the execution location parameter between cloud and device based on data sensitivity classification. By categorizing data into different sensitivity levels, the system adjusts whether processing occurs in the cloud or locally, optimizing both response quality and security for each data type.
Solution Approach 2:
The system transitions from a static execution model (either exclusively cloud or exclusively device) to a dynamic model that adapts execution location based on real-time data sensitivity assessment. This allows the system to optimize security and response quality on a per-task basis.
3Device complexity
If automated assistants cannot dynamically switch between cloud and local execution, then system complexity is reduced, but adaptability to different security and performance requirements is limited
Solution Approach 1:
The system dynamically changes the execution location parameter between cloud and device based on data sensitivity classification. By categorizing data into different sensitivity levels, the system adjusts whether processing occurs in the cloud or locally, optimizing both response quality and security for each data type.
Solution Approach 2:
The system transitions from a static execution model (either exclusively cloud or exclusively device) to a dynamic model that adapts execution location based on real-time data sensitivity assessment. This allows the system to optimize security and response quality on a per-task basis.
4Measurement precision
If automated assistants transmit user data to servers, then optimal content can be provided, but user consent and control over data transmission are reduced
Solution Approach 1:
The system implements automatic data sensitivity classification and execution location selection, eliminating the need for users to manually navigate settings or make complex decisions about data transmission. The automated classification system handles security decisions in the background while maintaining optimal performance.
Data Source
Figure 1
Figure 2
Figure 3A
AI summary
Implementations described herein relate to receiving user input directed to an automated assistant, processing the user input to determine whether data from a server and/or third-party application is needed to perform certain fulfillment of an assistant command included in the user input, and generating a prompt that requests a user consent to transmitting of a request to the server and/or the third-party application to obtain the data needed to perform the certain fulfillment. In implementations where the user consents, the data can be obtained and utilized to perform the certain fulfillment. In implementations where the user does not consent, client data can be generated locally at a client device and utilized to perform alternate fulfillment of the assistant command. In various implementations, the request transmitted to the server and/or third-party application can be modified based on ambient noise captured when the user input is received.