Searching, fast and slow, through product catalogs
Abstract: String matching algorithms in the presence of abbreviations, such as in Stock Keeping Unit (SKU) product catalogs, remains a relatively unexplored topic. In this paper, we present a unified architecture for SKU search that provides both a real-time suggestion system (based on a Trie data structure) as well as a lower latency search system (making use of character level TF-IDF in combination with LLM vector embeddings) where users initiate the search process explicitly. We carry out ablation studies that justify designing a complex search system composed of multiple components to address the delicate trade-off between speed and accuracy. Using SKU search in the Dynamics CRM as an example, we show how our system vastly outperforms, in all aspects, the results provided by the default search engine. Finally, we show how SKU descriptions may be enhanced via generative text models (using gpt-3.5-turbo) so that the consumers of the search results may get more context and a generally better experience when presented with the results of their SKU search.
- “CONTAINS (Transact-SQL).” https://learn.microsoft.com/en-us/sql/t-sql/queries/contains-transact-sql?view=sql-server-ver16.
- “Camel Case notation.” https://en.wikipedia.org/wiki/Camel_case.
- C.-J. Kuo, M. H. Ling, K.-T. Lin, and C.-N. Hsu, “Bioadi: a machine learning approach to identifying abbreviations and definitions in biological literature,” in Eighth International Conference on Bioinformatics 2009.
- Y. Xu, Z. Wang, Y. Zhao, and Y. Xue, “A new alignment algorithm to identify definitions corresponding to abbreviations in biomedical text,” in WKDD 2008.
- “Trie data structure.” https://en.wikipedia.org/wiki/Trie.
- R. de la Briandais, “File searching using variable length keys,” in Western J. Computer Conf., 1959.
- D. Knuth, The Art of Computer Programming Volume 3: Sorting and Searching. 1997.
- J. Bergman, Efficient fuzzy type-ahead search on big data using a ranked trie data structure. PhD thesis, Umeå University, 2018.
- T. Wenbo, Approximate string joins with abbreviations. PhD thesis, MIT, 2018.
- “multi-qa-MiniLM-L6-cos-v1.” https://huggingface.co/sentence-transformers/multi-qa-MiniLM-L6-cos-v1.
- “Pyspellchecker.” https://pypi.org/project/pyspellchecker/.
- “How to Write a Spelling Corrector.” https://norvig.com/spell-correct.html.
- “TF-IDF.” https://en.wikipedia.org/wiki/Tf%E2%80%93idf.
- T. Nguyen, M. Rosenberg, X. Song, J. Gao, S. Tiwary, R. Majumder, and L. Deng, “Ms marco: A human generated machine reading comprehension dataset,” in NIPS 2016.
- “GloVe: Global Vectors for Word Representation.” https://nlp.stanford.edu/projects/glove/.
- “PyTorch GloVe.” https://torchtext.readthedocs.io/en/latest/vocab.html#glove.
- “Word2vec embeddings.” https://radimrehurek.com/gensim/models/word2vec.html.
- “Learn how to generate embeddings with Azure OpenAI.” https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/embeddings?tabs=console.
Paper Prompts
Sign up for free to create and run prompts on this paper using GPT-5.
Top Community Prompts
Collections
Sign up for free to add this paper to one or more collections.