Client-Side Cache for Network Speech Recognition Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current network-based speech recognition methods suffer from network latency and downtime, causing delays or interruptions in the roundtrip time for receiving results from voice queries on mobile computing devices.
Innovation Solution
Implementing a client-side cache for utterance processing, where a query is sent to a network server while also processing the utterance to determine a speech profile, and performing a cache lookup to check if results data is stored, allowing cached results to be displayed if available, thereby canceling further processing on the network server.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If network-based speech recognition is used, then speech recognition functionality is provided, but network latency and downtime cause delays in receiving results
Solution Approach 1:
The system performs preliminary actions by sending the query to both the network server and the client-side cache simultaneously. The cache is pre-populated with speech profiles and results data, allowing it to independently process queries without waiting for network response. This preliminary preparation enables the cache to provide immediate results when available, eliminating the need to wait for network roundtrip time.
Solution Approach 2:
The client-side cache acts as an intermediary between the user query and the network server. Instead of directly querying the network server for every speech recognition request, the system introduces a local cache that can intercept and respond to queries using stored results data. This intermediary layer reduces network dependency and eliminates latency caused by network round trips.
2Productivity
If network-based speech recognition is used, then comprehensive processing capability is provided, but network downtime interrupts service
Solution Approach 1:
The system segments the speech recognition functionality into two independent parts: network-based processing and client-side cache processing. The cache contains a subset of speech profiles and results data that can be processed locally without network connectivity. This segmentation allows the system to maintain query processing capability even when the network is down, as the cache can independently handle queries using its stored data.
Solution Approach 2:
The system changes the operational parameters by implementing a dual-path query mechanism. Queries are simultaneously sent to the network server and the client-side cache with different timeout and priority parameters. The cache path is configured to return results immediately if available, while the network path operates with standard timeout settings. This parameter change enables the system to maintain productivity during network downtime by switching to the cache path.
3Loss of time
If a cache lookup is performed, then response time is reduced, but additional processing steps are added
Solution Approach 1:
The system applies partial action by implementing cache lookup only for specific query types that are likely to be cached. Rather than performing exhaustive cache lookups for all possible queries, the system selectively queries the cache based on the nature of the incoming utterance. This selective approach reduces the overhead of cache processing while still capturing the time-saving benefits for applicable queries.
Solution Approach 2:
The system merges the cache lookup operation with the existing query processing workflow. Instead of adding a completely separate cache checking step, the cache lookup is integrated into the utterance processing pipeline, sharing common components such as speech profile extraction and query formatting. This merging reduces the additional complexity that would result from a fully separate cache system.
Data Source
AI summary
Embodiments are provided for utilizing a client-side cache for utterance processing to facilitate network based speech recognition. An utterance comprising a query is received in a client computing device. The query is sent from the client to a network server for results processing. The utterance is processed to determine a speech profile. A cache lookup is performed based on the speech profile to determine whether results data for the query is stored in the cache. If the results data is stored in the cache, then a query is sent to cancel the results processing on the network server and the cached results data is displayed on the client computing device.


