Offline Spellcheck Cache for Faster, More Accurate Runtime Corrections

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

State-of-the-art spellcheck systems, while becoming more accurate, suffer from increased latency that makes them unsuitable for real-time search queries, and caching top queries with a less accurate but faster model leads to incorrect corrections.

Innovation Solution

Create a cache of corrections using both a slower but more accurate and a faster but less accurate spellcheck model, adding queries to the cache when their outputs differ, to improve accuracy and reduce latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If state-of-the-art spellcheck systems are used to improve accuracy, then spellcheck precision is improved, but latency increases making them unsuitable for real-time search

Engineering Contradiction:
Improvespellcheck accuracyVSAvoidlatency
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system pre-computes and stores spellcheck corrections for frequently occurring queries in an offline fashion before runtime. This preliminary action allows the runtime system to retrieve pre-computed corrections instantly, achieving both high accuracy (from the sophisticated offline model) and low latency (from fast runtime lookup).

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The spellcheck system is divided into two distinct components: an offline spellcheck system that performs comprehensive, accurate but slow spellchecking on historical queries, and a runtime spellcheck system that performs fast but less accurate spellchecking on incoming queries. This segmentation allows each component to be optimized for its specific purpose while working together to resolve the accuracy-latency tradeoff.

Inventive Principle:
Principle #1Segmentation

2Speed

If caching top queries with a faster but less accurate model is used to reduce latency, then response speed is improved, but correction accuracy deteriorates leading to incorrect corrections

Engineering Contradiction:
Improveresponse speedVSAvoidcorrection accuracy
Core Design Contradiction:
SpeedVSMeasurement precision

Solution Approach 1:

The system introduces a cache as an intermediary layer between the runtime spellcheck model and the final correction output. The cache stores pre-computed corrections from the offline system for frequently occurring queries, allowing the runtime system to return accurate corrections instantly without relying solely on the faster but less accurate runtime model.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The offline spellcheck system performs preliminary spellchecking and correction computation for top frequently occurring queries, storing these corrections in a cache. This preliminary action ensures that when these queries appear at runtime, the accurate corrections are already available, eliminating the need to rely on the less accurate fast model for these common cases.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12450429B2Offline spellcheck candidates complementing runtime spellcheck
Publication Date: 2025.10.21 WALMART APOLLO LLC
  • US12450429B2 patent drawing
  • US12450429B2 patent drawing
  • US12450429B2 patent drawing

AI summary

A method including extracting queries from historical search query data. The method also can include spellchecking each of the queries (i) using a first spellcheck model and (ii) using a second spellcheck model. A latency of the first spellcheck model is lower than a latency of the second spellcheck model, and an overall accuracy of the second spellcheck model is higher than an overall accuracy of the first spellcheck model. The method additionally can include determining first queries of the queries in which, for each of the first queries, a first respective spellcheck output from the first spellcheck model is different from a second respective spellcheck output from the second spellcheck model. The method further can include adding at least a portion of the first queries to a spellcheck cache for runtime spellchecking. Other embodiments are described.