US 11,715,465 B2
System and method for conversational middleware platform
MohammadHosein Ahmadidaneshashtiani, Toronto (CA); Ian Robert Middleton, Toronto (CA); Shawn Harold Munro, Toronto (CA); Darren Michael MacNamara, Toronto (CA); Bo Sang, Toronto (CA); Devina Jaiswal, Toronto (CA); Hanke Liu, Toronto (CA); and Kylie To, Toronto (CA)
Assigned to ROYAL BANK OF CANADA, Toronto (CA)
Filed by ROYAL BANK OF CANADA, Toronto (CA)
Filed on Feb. 8, 2021, as Appl. No. 17/170,682.
Claims priority of provisional application 63/071,553, filed on Aug. 28, 2020.
Claims priority of provisional application 62/971,617, filed on Feb. 7, 2020.
Prior Publication US 2021/0249002 A1, Aug. 12, 2021
Int. Cl. G10L 15/19 (2013.01); G06F 40/284 (2020.01)
CPC G10L 15/19 (2013.01) [G06F 40/284 (2020.01)] 20 Claims
OG exemplary drawing
 
1. An automated conversation orchestration system for interconnecting a plurality of natural language processing agents each having a different domain specialization or operating characteristics to generate an output response data structure responding to a new utterance string from a user, the system comprising:
one or more processors operating in conjunction with computer memory and one or more non-transitory computer readable storage mediums, the one or more processors configured to:
receive and tokenize the new utterance string from the user;
route the tokenized new utterance string to the plurality of natural language processing agents to receive one or more response confidence score values each corresponding to a corresponding natural language processing agent;
query a profile data structure associated with the user to obtain one or more probability values, each associated with a corresponding domain specialization or operating characteristic of each of the plurality of natural language processing agents;
based at least on a combination of the one or more response confidence score values and the one or more probability values, assign a primary natural language processing agent; and
generate the output response data structure using at least the assigned primary natural language processing agent;
wherein the profile data structure is a graph data structure having interconnected nodes representing bifurcated interaction decision nodes having associated weight values that have been adjusted over a set of prior recorded interactions by the user or one or more similar users; and wherein the graph data structure is traversed to obtain the one or more probability values;
wherein if two or more probability values are greater than a threshold value, an additional verification is conducted to present a bifurcated decision interaction between the two or more natural language processing agents corresponding to the two or more probability values greater than the threshold value to identify the primary natural language processing agent, and the graph data structure is updated based on the selection obtained from the additional verification such that the graph data structure is biased towards the selection in future traversals.