Command Processing System Using Preliminary Speechlet Queries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing speech processing systems face challenges in selecting the appropriate speechlet to respond to user inputs, often leading to inefficiencies due to latency and resource conservation issues, as they select a speechlet before obtaining potential responses, which may result in inappropriate or unable-to-execute selections.

Innovation Solution

The system improves by sending NLU results to multiple speechlets and obtaining partial output content before selecting, using post-result scores to ensure the most appropriate speechlet is chosen, allowing for potential results without affirmative execution, thus mitigating latency and resource waste.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If the system selects a speechlet before obtaining potential responses, then the selection process is faster, but the selected speechlet may be inappropriate or unable to execute the command

Engineering Contradiction:
Improveselection timeVSAvoidspeechlet selection accuracy
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The system performs preliminary actions by sending NLU results to multiple speechlets simultaneously and obtaining potential responses before making the final selection. This allows the system to evaluate which speechlet can actually execute the command based on their responses, rather than guessing beforehand. The preliminary retrieval of potential results from multiple speechlets resolves the contradiction by enabling informed selection without significant time penalty.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the system queries multiple speechlets for potential results, then the correct speechlet can be identified, but additional processing time and resources are consumed

Engineering Contradiction:
Improvespeechlet selection accuracyVSAvoidprocessing efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system applies partial action by querying multiple speechlets for potential results but not necessarily executing all of them. Instead, it uses the potential results information to select the most appropriate speechlet for actual execution. This partial querying approach provides enough information to make an accurate selection without the full overhead of engaging all speechlets, thus resolving the contradiction between reliability and productivity.

Inventive Principle:
Principle #16Partial or excessive action

3Use of energy by moving object

If the system selects a speechlet without obtaining potential responses, then resource consumption is lower, but latency increases due to re-selection

Engineering Contradiction:
Improvecomputational resource usageVSAvoidre-selection latency
Core Design Contradiction:
Use of energy by moving objectVSLoss of time

Solution Approach 1:

The system performs a lightweight preliminary action by sending NLU results to multiple speechlets and obtaining potential responses before selection. This preliminary step consumes minimal additional resources compared to the cost of re-selection latency, as it only requires sending queries and receiving responses without full execution. The small initial resource investment prevents time loss from re-selection, resolving the contradiction between resource usage and latency.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10957313B1System command processing
Publication Date: 2021.03.23 AMAZON TECH INC
  • US10957313B1 patent drawing
  • US10957313B1 patent drawing
  • US10957313B1 patent drawing

AI summary

Techniques for performing command processing are described. A system receives, from a device, input data corresponding to a command. The input data may originate as audio data, as text data, or as other data. The system determines NLU processing results corresponding to the input data. The NLU processing results may be associated with multiple speechlets. The system also determines NLU confidences for the NLU processing results for each speechlet. The system sends NLU processing results and an indication to provide potential results to a portion of the multiple speechlets, and receives potential results from the portion of the speechlets. The system also receives indications whether the speechlets need to be re-called if the speechlets are selected to execute with respect to the command. The system ranks the portion of the speechlets based at least in part on the NLU processing results as well as the potential results provided by the portion of the speechlets. The system may also rank the portion of the applications using other data. The system causes content provided by the highest ranked speechlet to be output to a user.