US 12,265,796 B2
Lookup source framework for a natural language understanding (NLU) framework
Maxim Naboka, Santa Clara, CA (US); Edwin Sapugay, Foster City, CA (US); Sagar Davasam Suryanarayan, Santa Clara, CA (US); Anil Kumar Madamala, Sunnyvale, CA (US); Rammohan Narendula, San Jose, CA (US); Omer Anil Turkkan, Santa Clara, CA (US); Aniruddha Madhusudan Thakur, Saratoga, CA (US); and Sriram Palapudi, Santa Clara, CA (US)
Assigned to ServiceNow, Inc., Santa Clara, CA (US)
Filed by ServiceNow, Inc., Santa Clara, CA (US)
Filed on Jan. 19, 2022, as Appl. No. 17/579,028.
Claims priority of provisional application 63/139,922, filed on Jan. 21, 2021.
Prior Publication US 2022/0229998 A1, Jul. 21, 2022
Int. Cl. G06F 40/40 (2020.01); G06F 21/62 (2013.01); G06F 40/284 (2020.01)
CPC G06F 40/40 (2020.01) [G06F 21/6254 (2013.01); G06F 40/284 (2020.01)] 20 Claims
OG exemplary drawing
 
1. An agent automation system comprising a reasoning agent/behavior (RA/BE) engine and a lookup source framework, the lookup source framework comprising:
at least one computer-readable storage media configured to store a preprocessing subsystem, a producer subsystem, and a source data representation of a lookup source;
at least one processor configured to execute first stored instructions to cause the lookup source framework to compile the source data representation of the lookup source by performing actions comprising:
preprocessing, via the preprocessing subsystem, source data of a client database to identify a set of state values, each representing a token of the source data;
applying, via the producer subsystem, one or more compile-time transducers to the set of state values to generate a set of produced state values;
generating the source data representation having a plurality of states, wherein the plurality of states comprises original states having corresponding state values from the set of state values and produced states having corresponding state values from the set of produced state values;
creating a value store in the at least one computer-readable storage media that is configured to store the plurality of states of the source data representation;
creating a metadata store separate from the value store in the at least one computer-readable storage media that is configured to store corresponding metadata entries for the plurality of states of the source data representation, wherein each of the corresponding metadata entries are referred to by a respective state of the plurality of states, and wherein corresponding metadata entries for produced states include a producer score adjustment associated with a compile-time transducer of the one or more compile-time transducers applied to generate the corresponding state values of the produced state; and
performing lookup source inference of a received user utterance using the source data representation to generate one or more segments of the received user utterance, each of the one or more segments including respective matched states of the plurality of states stored in the value store and a respective producer score adjustment stored in the metadata store if the matched states include a produced state; and
the RA/BE engine comprising at least one processor configured to execute second stored instructions to cause the RA/BE engine to:
determine, based on the one or more segments, an agent response to the user utterance; and
provide the agent response to the user utterance.