US 12,249,314 B2
Routing for chatbots
Vishal Vishnoi, Redwood City, CA (US); Xin Xu, San Jose, CA (US); Srinivasa Phani Kumar Gadde, Belmont, CA (US); Fen Wang, Redwood City, CA (US); Muruganantham Chinnananchi, Cupertino, CA (US); Manish Parekh, San Jose, CA (US); Stephen Andrew McRitchie, Palo Alto, CA (US); Jae Min John, Redwood City, CA (US); Crystal C. Pan, Palo Alto, CA (US); Gautam Singaraju, Dublin, CA (US); and Saba Amsalu Teserra, Sunnyvale, CA (US)
Assigned to Oracle International Corporation, Redwood Shores, CA (US)
Filed by Oracle International Corporation, Redwood Shores, CA (US)
Filed on Apr. 19, 2023, as Appl. No. 18/136,745.
Application 18/136,745 is a continuation of application No. 16/857,047, filed on Apr. 23, 2020, granted, now 11,657,797.
Claims priority of provisional application 62/839,580, filed on Apr. 26, 2019.
Prior Publication US 2023/0252975 A1, Aug. 10, 2023
Int. Cl. G06F 17/00 (2019.01); G06N 5/04 (2023.01); G06N 20/00 (2019.01); G10L 13/08 (2013.01)
CPC G10L 13/08 (2013.01) [G06N 5/04 (2013.01); G06N 20/00 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
determining, by a computer-implemented chatbot system comprising a master bot and a plurality of chatbots, whether an utterance received from a user while the user is interacting with the chatbot system includes an invocation name of a particular chatbot of the plurality of chatbots or does not include the invocation name of the particular chatbot, wherein the master bot is associated with a set of system intents and each chatbot of the plurality of chatbots is associated with a set of chatbot intents;
in response to determining that the utterance includes the invocation name, routing the utterance to the particular chatbot; and
in response to determining that the utterance does not include the invocation name, routing the utterance to the master bot or a chatbot intent of the set of chatbots intents of a respective chatbot of the plurality of chatbots, wherein the utterance is routed based at least in-part on:
calculating, using a first model, a plurality of system intent confidence scores for the set of system intents,
calculating, using a second model, a plurality of chatbot confidence scores for the plurality of chatbots by calculating a chatbot confidence score for each chatbot of the plurality of chatbots, each respective chatbot confidence score of the plurality of chatbot confidence scores indicating a likelihood of the utterance being representative of a task that a respective chatbot of the plurality of chatbots is configured to perform, and
calculating, using the plurality of chatbots, a plurality of chatbot intent confidence scores for the set of chatbot intents for each respective chatbot of the plurality of chatbots.