Virtual Assistant Dynamic Function Module Selection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current virtual assistants rely on static command chains that are inflexible and cannot dynamically adapt to user requests, limiting their ability to select the most suitable ASR and NLU models, leading to suboptimal performance in processing requests that require different languages or specific skills.
Innovation Solution
A method for dynamically generating a chain of functional modules in virtual assistants, using a selection algorithm to determine the most suitable modules based on user requests, allowing for flexible adaptation during runtime without requiring user profile changes, enabling communication in multiple languages and dynamic adjustment of voice parameters.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a static command chain is assigned to a user profile, then the system structure is simple and easy to manage, but the system cannot adapt flexibly to different user requests requiring different languages or skills
Solution Approach 1:
The patent implements dynamic generation of command chains by selecting functional modules at runtime based on the actual user request rather than using static pre-assigned chains. The selection algorithm dynamically determines which ASR, NLU, and skill modules to instantiate based on request characteristics like language and intent, allowing the system to adapt flexibly without complex static configurations for every possible scenario
Solution Approach 2:
The patent creates a universal pool of functional modules that can serve multiple purposes across different user requests and profiles. Instead of having separate static command chains for each user profile, the system maintains a shared library of reusable functional modules that can be dynamically assembled into appropriate command chains based on the specific request requirements
2Adaptability or versatility
If multiple user profiles with different command chains are created to support different languages and skills, then the system can handle diverse requests, but the complexity of profile management and switching increases
Solution Approach 1:
The patent extracts the language and skill specifications from the user profile context and places them directly into the user request itself. The selection algorithm then reads these specifications from the request and uses them to select the appropriate functional modules, eliminating the need for complex profile management and switching while maintaining support for multiple languages and skills
Solution Approach 2:
The patent introduces a selection algorithm as an intermediary between the user request and the functional modules. This algorithm analyzes the request characteristics (language, intent, required skills) and automatically selects the appropriate modules from the functional pool, replacing the manual profile switching mechanism with an automated selection process that simplifies user interaction
3Reliability
If a static command chain is used, then the system has fast and predictable processing time, but it cannot load the most suitable ASR or NLU models for particular queries
Solution Approach 1:
The patent performs preliminary organization of functional modules into a reusable pool during system initialization, with modules pre-categorized by their capabilities (language support, skill types, etc.). The selection algorithm then efficiently queries this pre-organized pool based on request characteristics, avoiding the need to search or evaluate all possible modules at runtime, thus minimizing selection time while ensuring accurate module matching
Data Source
Figure 1~2
Figure 3
Figure 4
AI summary
The present invention relates to techniques for the dynamic generation of a chain of function modules of a virtual assistant, wherein the virtual assistant is implemented as software on a computing unit, wherein the virtual assistant is provided with a library of various function modules for answering user requests, and wherein the method comprises the following steps: • transmitting a user request to the virtual assistant; • analyzing the request using a selection algorithm to determine which function module from the library is most likely (PMax) to process the user's request; • selecting the function module (PF,Max) with the highest probability from the library of various function modules using the selection algorithm; • processing the user's request by the virtual assistant using the selected function module (PF,Max).