IP Library Granted Patent US 12,130,847
Granted Patent B2
US 12,130,847 · App. 17/877,510 · Granted Oct 29, 2024

Methods and systems for ambiguity resolution in conversations managed by a virtual assistant server

Inventors: Rajkumar Koneru (Windermere, FL); Prasanna Kumar Arikala Gunalan (Hyderabad, IN); Sri Vishnu Sankar Srinivasan (Chennai, IN); Girish Ahankari (Hyderabad, IN)
Assignee: Kore.ai, Inc.
G06F16/3329G06F9/453G06F16/322G06F16/3344G06F16/338
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,130,847
App. No.
17/877,510
Granted
Oct 29, 2024
Kind
B2
Abstract

A virtual assistant server extracts concept(s) from a received user query and correlates the extracted concept(s) to a plurality of nodes in a knowledge graph to identify qualifying path(s) in the knowledge graph. Further, when the two or more qualifying paths are identified, the virtual assistant server addresses one or more ambiguities in the knowledge graph by: prompting the user device to resolve a current one of the one or more ambiguities progressing from contextual nodes towards leaf nodes in the knowledge graph; receiving a response to the prompt from the user device; and repeating the prompting and the receiving until each of the one or more ambiguities is resolved and a matching path to the received query is identified. Finally, the virtual assistant server outputs content associated with a leaf node of the matched path to the user device.

Claims (44)

1. A method comprising:

receiving, by a virtual assistant server, a query provided via a channel of a virtual assistant rendered in a user device, wherein the virtual assistant comprises a plurality of knowledge graphs and a plurality of data maps corresponding to the plurality of knowledge graphs, and wherein each of the plurality of data maps comprises one or more mandatory terms tagged for detection in the query;

extracting, by the virtual assistant server, one or more concepts from the query;

identifying, by the virtual assistant server, one of the plurality of data maps as a matching data map when at least one of the one or more mandatory terms of the matching data map is detected in the query;

correlating, by the virtual assistant server, the one or more extracted concepts to a plurality of nodes of a plurality of paths of the matching data map;

determining, by the virtual assistant server, a traversal ambiguity between two or more qualifying paths of the plurality of paths based on the correlating;

resolving, by the virtual assistant server, the traversal ambiguity by iteratively prompting the user device with one or more of the plurality of nodes from the two or more qualifying paths and receiving one or more inputs from the user device in response to the prompting until the traversal ambiguity is resolved and a matching path to the query is identified; and

outputting, by the virtual assistant server, to the user device, a response to the query determined based on the matching path.

2. The method of claim 1 , wherein the query from the user device is a text-based query or a voice-based query.

3. The method of claim 1 , wherein the matching data map comprises the plurality of nodes with parent-child relationships.

4. The method of claim 1 , wherein each leaf node in the matching data map is associated with one or more question-content pairs.

5. The method of claim 1 , wherein when a leaf node of the matching path is associated with a plurality of question-content pairs, the plurality of question-content pairs are scored against the received query and the response received from the user device after each prompt, to identify the response to the query.

6. The method of claim 1 , wherein the plurality of data maps comprises mapping of the plurality of nodes, the plurality of paths, and one or more question-content pairs associated with each leaf node of the plurality of paths.

7. The method of claim 1 , wherein the plurality of data maps are structured representations of the plurality of knowledge graphs comprising: node data, path data, and one or more question-content pairs associated with each path of the plurality of knowledge graphs.

8. The method of claim 1 , wherein the iterative prompting prioritizes prompting two or more contextual nodes from the two or more qualifying paths over other nodes from the two or more qualifying paths when the traversal ambiguity is caused by the one or more contextual nodes and the other nodes.

9. A virtual assistant server comprising:

one or more processors; and

a memory coupled to the one or more processors which are configured to execute programmed instructions stored in the memory to:

receive a query provided via a channel of a virtual assistant rendered in a user device, wherein the virtual assistant comprises a plurality of knowledge graphs and a plurality of data maps corresponding to the plurality of knowledge graphs, and wherein each of the plurality of data maps comprises at least one mandatory term tagged for detection in the query;

extract one or more concepts from the query;

identify one of the plurality of data maps as a matching data map when at least one of the one or more mandatory terms of the matching data map is detected in the query;

correlate the one or more extracted concepts to a plurality of nodes of a plurality of paths of the matching data map;

determine a traversal ambiguity between two or more qualifying paths of the plurality of paths based on the correlating;

resolve the traversal ambiguity by iteratively prompting the user device with one or more the plurality of nodes from the two or more qualifying paths and receiving one or more inputs from the user device in response to the prompting until the traversal ambiguity is resolved and a matching path to the query is identified; and

output to the user device a response to the query determined based on the matching path.

10. The virtual assistant server of claim 9 , wherein the query from the user device is a text-based query or a voice-based query.

11. The virtual assistant server of claim 9 , wherein the matching data map comprises the plurality of nodes with parent-child relationships.

12. The virtual assistant server of claim 9 , wherein each leaf node in the matching data map is associated with one or more question-content pairs.

13. The virtual assistant server of claim 9 , wherein when a leaf node of the matching path is associated with a plurality of question-content pairs, the plurality of question-content pairs are scored against the received query and the response received from the user device after each prompt, to identify the response to the query.

14. The virtual assistant server of claim 9 , wherein the plurality of data maps are structured representations of the plurality of knowledge graphs comprising: node data, path data, and one or more question-content pairs associated with each path of the plurality of knowledge graphs.

15. The virtual assistant server of claim 9 , wherein the iterative prompting prioritizes prompting two or more contextual nodes from the two or more qualifying paths over other nodes from the two or more qualifying paths when the traversal ambiguity is caused by the one or more contextual nodes and the other nodes.

16. A non-transitory computer-readable medium storing instructions which when executed by a processor, causes the processor to:

receive a query provided via a channel of a virtual assistant rendered in a user device, wherein the virtual assistant comprises a plurality of knowledge graphs and a plurality of data maps corresponding to the plurality of knowledge graphs, and wherein each of the plurality of data maps comprises at least one mandatory term tagged for detection in the query;

extract one or more concepts from the query; identify one of the plurality of data maps as a matching data map when at least one of the one or more mandatory terms of the matching data map is detected in the query;

correlate the one or more extracted concepts to a plurality of nodes of a plurality of paths of the matching data map;

determine a traversal ambiguity between two or more qualifying paths of the plurality of paths based on the correlating;

resolve the traversal ambiguity by iteratively prompting the user device with one or more of the plurality of nodes from the two or more qualifying paths and receiving one or more inputs from the user device in response to the prompting until the traversal ambiguity is resolved and a matching path to the query is identified; and

output to the user device a response to the query determined based on the matching path.

17. The non-transitory computer-readable medium of claim 16 , wherein the query from the user device is a text-based query or a voice-based query.

18. The non-transitory computer-readable medium of claim 16 , wherein the matching data map comprises the plurality of nodes with parent-child relationships.

19. The non-transitory computer-readable medium of claim 16 , wherein each leaf node in the matching data map is associated with one or more question-content pairs.

20. The non-transitory computer-readable medium of claim 16 , wherein when a leaf node of the matching path is associated with a plurality of question-content pairs, the plurality of question-content pairs are scored against the received query and the response received from the user device after each prompt, to identify the response to the query.

21. The non-transitory computer-readable medium of claim 16 , wherein the plurality of data maps are structured representations of the plurality of knowledge graphs comprising: node data, path data, and one or more question-content pairs associated with each path of the plurality of knowledge graphs.

22. The non-transitory computer-readable medium of claim 16 , wherein the iterative prompting prioritizes prompting two or more contextual nodes from the two or more qualifying paths over other nodes from the two or more qualifying paths when the traversal ambiguity is caused by the one or more contextual nodes and the other nodes.

Assignments (8)
SECURITY INTEREST Recorded Oct 21, 2024
From: KORE.AI, INC.
To: STIFEL BANK
Reel/Frame 068958/0891 →
RELEASE OF SECURITY INTEREST Recorded Oct 21, 2024
From: WESTERN ALLIANCE BANK
To: KORE.AI, INC.
Reel/Frame 068954/0195 →
RELEASE OF SECURITY INTEREST Recorded Oct 2, 2024
From: HERCULES CAPITAL, INC.
To: KORE.AI, INC.
Reel/Frame 068767/0081 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 5, 2023
From: SRINIVASAN, SRI VISHNU SANKAR
To: KORE.AI, INC.
Reel/Frame 064796/0705 →
SECURITY INTEREST Recorded Apr 6, 2023
From: KORE.AI, INC.
To: WESTERN ALLIANCE BANK
Reel/Frame 063248/0711 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Mar 31, 2023
From: KORE.AI, INC.
To: HERCULES CAPITAL, INC., AS ADMINISTRATIVE AND COLLATERAL AGENT
Reel/Frame 063213/0700 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 2, 2023
From: AHANKARI, GIRISH
To: KORE.AI
Reel/Frame 062572/0613 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2022
From: KONERU, RAJKUMAR; ARIKALA GUNALAN, PRASANNA KUMAR; SANKAR, SRI VISHNU
To: KORE.AI, INC.
Reel/Frame 061335/0132 →
Continuity (1)
Related Publication 20240037128A1 · Feb 1, 2024
Cited By (3)
US 12,230,266 US 12,468,746 US 12,591,602