IP Library Granted Patent US 10,810,377
Granted Patent B2
US 10,810,377 · App. 15/690,193 · Granted Oct 20, 2020

Method and system for information retreival

Inventors: Ravikiran Krishnan (San Mateo, CA); Ayush Parashar (Foster City, CA); Deepak Chandrasekar (San Mateo, CA); Christopher Pedrotti (San Mateo, CA)
Assignee: Boomi, Inc.
G06F40/30G06F16/3334G06F16/36G06F16/93G06F16/34G06F16/951
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 10,810,377
App. No.
15/690,193
Granted
Oct 20, 2020
Kind
B2
Abstract

A method and system for retrieving information from a plurality of data stores associated with the enterprise data universe are provided. The method includes causing display of a user interface (UI) on an electronic device associated with a user. A natural language query provided by the user using the UI is received and parsed to generate a plurality of query elements. A grammar-based analysis of the plurality of query elements is performed and an expression is generated based on the grammar-based analysis of the plurality of query elements. At least one answer to the query is retrieved from a knowledge base using the expression. The retrieved answer is provisioned to the user on the UI.

Claims (59)

1. A computer-implemented method, comprising:

causing display of a user interface (UI) on an electronic device associated with a user, the UI configured to receive user inputs;

receiving a query in a natural language form provided by the user using the UI;

parsing the query to generate a plurality of query elements;

performing a grammar-based analysis of the plurality of query elements by classifying the plurality of query elements as: action, intent, and noun;

generating an expression based on the grammar-based analysis of the plurality of query elements, wherein the action, the intent, and the noun are converted into the expression;

retrieving at least one answer to the query from a knowledge base using the expression, the knowledge base comprising data stored in a plurality of data stores related with an enterprise; and

provisioning the at least one answer to the user on the UI.

2. The method as claimed in claim 1 , further comprising:

receiving user input related to source of each data store from among the plurality of data stores related with the enterprise;

establishing connection with each data store using the user input related to the respective source; and

importing data from each data store subsequent to establishing respective connection to configure the knowledge base.

3. The method as claimed in claim 2 , further comprising:

generating one or more datasets from the data imported from each data store from among the plurality of data stores related with the enterprise.

4. The method as claimed in claim 3 , further comprising:

generating a knowledge graph for each dataset from among the one or more datasets, the knowledge graph comprising a plurality of nodes, wherein at least one node from among the plurality of nodes is connected to one or more remaining nodes using respective edges, and wherein each node in the knowledge graph corresponds to an attribute in the dataset and each edge is configured to lead to a characteristic related to the respective attribute.

5. The method as claimed in claim 4 , further comprising:

selecting a node from among the plurality of nodes in the knowledge graph based on the expression; and

traversing the knowledge graph along at least one edge associated with the selected node based on the expression to select a subsequent node in the knowledge graph, wherein the selected subsequent node in the knowledge graph corresponds to an answer to the query of the user.

6. The method as claimed in claim 3 , further comprising:

pre-processing the query prior to parsing the query, wherein pre-processing the query comprises identifying presence of one or more dataset terms in the query and, wherein the parsing of the query is performed based on the presence of the one or more dataset terms in the query.

7. The method as claimed in claim 1 , wherein the parsing of the query and the grammar based analysis of the plurality of query elements is performed using a grammar parser.

8. The method as claimed in claim 7 , wherein the grammar parser is a combinatory categorical grammar-based parser.

9. The method as claimed in claim 1 , wherein the data stored in the plurality of data stores comprises structured data and unstructured data, and wherein the plurality of data stores comprises one or more relational databases, one or more file systems, one or more on-premise data storage systems and one or more cloud-based data storage systems.

10. An information retrieval system, comprising:

a knowledge base configured to comprise data imported from a plurality of data stores related with an enterprise;

at least one processing engine communicably coupled with the knowledge base; and

a memory having stored therein machine executable instructions, that when executed by the at least one processing engine, cause the information retrieval system to:

cause display of a user interface (UI) on an electronic device associated with a user, the UI configured to receive user inputs;

receive a query in a natural language form provided by the user using the UI;

parse the query to generate a plurality of query elements;

perform a grammar-based analysis of the plurality of query elements, by classifying the plurality of query elements as: action, intent, and noun;

generate an expression based on the grammar-based analysis of the plurality of query elements, wherein the action, the intent, and the noun are converted into the expression;

retrieve at least one answer to the query from the knowledge base using the expression; and

provision the at least one answer to the user on the UI.

11. The information retrieval system as claimed in claim 10 , wherein the information retrieval system is further caused to:

receive user input related to source of each data store from among the plurality of data stores related with the enterprise; and

establish connection with each data store using user input related to the respective source; and

import data from each data store subsequent to establishing respective connection to configure the knowledge base.

12. The information retrieval system as claimed in claim 11 , wherein the information retrieval system is further caused to:

generate one or more datasets from the data imported from each data store from among the plurality of data stores related with the enterprise.

13. The information retrieval system as claimed in claim 12 , wherein the information retrieval system is further caused to:

generate a knowledge graph for each dataset from among the one or more datasets, the knowledge graph comprising a plurality of nodes and, wherein at least one node from among the plurality of nodes is connected to one or more remaining nodes using respective edges, and wherein each node in the knowledge graph corresponds to an attribute in the dataset and each edge is configured to lead to a characteristic related to the respective attribute.

14. The information retrieval system as claimed in claim 13 , wherein the information retrieval system is further caused to:

select a node from among the plurality of nodes in the knowledge graph based on the expression; and

traverse the knowledge graph along at least one edge associated with the selected node based on the expression to select a subsequent node in the knowledge graph, wherein the selected subsequent node in the knowledge graph corresponds to an answer to the query of the user.

15. The information retrieval system as claimed in claim 12 , wherein the information retrieval system is further caused to:

pre-process the query prior to parsing the query, wherein pre-processing the query comprises identifying presence of one or more dataset terms in the query and, wherein the parsing of the query is performed based on the presence of one or more dataset terms in the query.

16. The information retrieval system as claimed in claim 10 , wherein the at least one processing engine includes a grammar parser for parsing of the query for performing the grammar-based analysis of the plurality of query elements.

17. An information retrieval system, comprising:

a knowledge base configured to comprise data imported from a plurality of data stores related with an enterprise;

a parsing module configured to parse a natural language query of a user to generate a plurality of query elements, the natural language query provided by the user using a user interface (UI) displayed on an electronic device associated with the user to retrieve information from the knowledge base, the parsing module capable of performing a grammar-based analysis of the plurality of query elements by classifying the plurality of query elements as: action, intent, and noun;

an expression building module communicably coupled with the parsing module, the expression building module configured to generate an expression based on the grammar-based analysis of the plurality of query elements, wherein the action, the intent, and the noun are converted into the expression; and

a discovery module communicably coupled with the expression building module and the knowledge base, the discovery module configured to retrieve at least one answer to the query from the knowledge base using the expression, wherein the at least one answer is provisioned to the user on the UI.

18. The information retrieval system as claimed in claim 17 , wherein the parsing module is configured to generate one or more datasets from the data imported from each data store from among the plurality of data stores related with the enterprise.

19. The information retrieval system as claimed in claim 18 , wherein a knowledge graph is generated for each dataset from among the one or more datasets, the knowledge graph comprising a plurality of nodes and, wherein at least one node from among the plurality of nodes is connected to one or more remaining nodes using respective edges, and wherein each node in the knowledge graph corresponds to an attribute in the dataset and each edge is configured to lead to a characteristic related to the respective attribute.

20. The information retrieval system as claimed in claim 19 , wherein the discovery module is configured to:

select a node from among the plurality of nodes in the knowledge graph based on the expression; and

traverse the knowledge graph along at least one edge associated with the selected node based on the expression to select a subsequent node in the knowledge graph, wherein the selected subsequent node in the knowledge graph corresponds to an answer to the query of the user.

Assignments (6)
SECURITY INTEREST Recorded Nov 12, 2024
From: SIXTH STREET SPECIALTY LENDING, INC.
To: BLUE OWL CAPITAL CORPORATION
Reel/Frame 069342/0406 →
SECURITY INTEREST Recorded Oct 1, 2021
From: BOOMI, LLC
To: SIXTH STREET SPECIALTY LENDING, INC., AS COLLATERAL AGENT
Reel/Frame 057679/0908 →
MERGER Recorded Aug 10, 2020
From: UNIFI SOFTWARE, INC.
To: BOOMI, INC.
Reel/Frame 053444/0292 →
RELEASE OF SECURITY INTEREST Recorded Dec 20, 2019
From: PACIFIC WESTERN BANK
To: UNIFI SOFTWARE, INC.
Reel/Frame 051347/0977 →
SECURITY INTEREST Recorded Oct 24, 2019
From: UNIFI SOFTWARE, INC.
To: PACIFIC WESTERN BANK
Reel/Frame 050812/0420 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 29, 2017
From: KRISHNAN, RAVIKIRAN; PARASHAR, AYUSH; CHANDRASEKAR, DEEPAK; PEDROTTI, CHRISTOPHER
To: UNIFI SOFTWARE, INC.
Reel/Frame 043714/0946 →