# US 12,008,047 B2 · Providing an object-based response to a natural language query

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,008,047 B2
- Document ID: US12008047B2
- Status: Granted
- Kind: B2
- Application number: 17/550,921
- Filed: 2021-12-14
- Published: 2022-04-07
- Granted: 2024-06-11
- Earliest claimed: 2018-12-10
- Assignees: Palantir Technologies Inc.
- Applicants: Palantir Technologies Inc.
- Inventors: David Lisuk; Eric Porter; Aditya Shashi; Ilai Soloducho; John Wiseheart; Guodong Xu; Maciej Foks
- Web page: https://patentgrep.com/patent/US12008047B2

## CPC

- G06F 16/90344: {by using string matching techniques}
- G06F 16/243: {Natural language query formulation}
- G06F 16/24578: {using ranking}
- G06F 16/90332: {Natural language query formulation or dialogue systems}
- G06F 16/9038: Presentation of query results
- G06F 40/205: Parsing
- G06F 40/237: Lexical tools
- G06F 40/279: Recognition of textual entities
- G06F 40/40: Processing or translation of natural language (natural language analysis G06F40/20; semantic analysis G06F40/30)
- G06N 3/0464: Convolutional networks [CNN, ConvNet]
- G06N 3/09: Supervised learning
- G06N 5/022: Knowledge engineering; Knowledge acquisition
- G06N 20/00: Machine learning
- G06N 3/045: Combinations of networks
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

A data analysis system presents a user interface to allow a user to provide a natural language query pertaining to a dataset, wherein the dataset is associated with a data object model comprising a plurality of objects and receives, via the user interface, user input specifying the natural language query. The data analysis system further modifies, in the user interface, the user input to visually indicate one or more portions of the natural language query that each represent one of the plurality of objects and presents, in the user interface, a response to the natural language query, the response being based on data from the dataset, the data corresponding to the one of the plurality of objects.

## Claims

### Claim 1

A method comprising:
presenting a user interface to allow a user to provide a natural language query pertaining to a dataset, wherein the dataset is associated with a data object model comprising a plurality of objects;
receiving, via the user interface, first user input specifying the natural language query;
modifying, in the user interface, the first user input to visually indicate one or more portions of the natural language query that each represent one of the plurality of objects;
modifying, in the user interface, a visual indication of one portion of the one or more portions of the natural language query specified by the first user input to a selectable interface element including a plurality of selectable options associated with the one portion of the one or more portions, wherein the selectable interface element is part of a visual indication of the natural language query;
presenting, in the user interface, a response to the natural language query, the response being based on data from the dataset, the data corresponding to the one of the plurality of objects; and
receiving, via the user interface, second user input indicating a first command corresponding to the response, the first command causing the response to the query to be recreated until a second command is received.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
receiving, via the user interface, a selection of the selectable interface element; and
displaying the data from the dataset corresponding to the one of the plurality objects associated with the selectable interface element.

### Claim 3 (depends on 1)

The method of claim 1, further comprising:
determining that a selection of the selectable interface element was not received via the user interface.

### Claim 4 (depends on 3)

The method of claim 3, further comprising:
presenting, in the user interface, one or more alternative queries based on the natural language query;
receiving, via the user interface, a selection of a first query of the one or more alternative queries; and
presenting, in the user interface, a response to the first query.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
receiving, via the user interface, user feedback evaluating the presented response.

### Claim 6

A system comprising:
a memory; and
a one or more processors coupled to the memory, the one or more processors to perform operations comprising:
presenting a user interface to allow a user to provide a natural language query pertaining to a dataset, wherein the dataset is associated with a data object model comprising a plurality of objects;
receiving, via the user interface, first user input specifying the natural language query;
modifying, in the user interface, the first user input to visually indicate one or more portions of the natural language query that each represent one of the plurality of objects;
modifying, in the user interface, a visual indication of one portion of the one or more portions of the natural language query specified by the first user input to a selectable interface element including a plurality of selectable options associated with the one portion of the one or more portions, wherein the selectable interface element is part of a visual indication of the natural language query; and
presenting, in the user interface, a response to the natural language query, the response being based on data from the dataset, the data corresponding to the one of the plurality of objects; and
receiving, via the user interface, second user input indicating a first command corresponding to the response, the first command causing the response to the query to be recreated until a second command is received.

### Claim 7 (depends on 6)

The system of claim 6, wherein the one or more processors are to perform operations further comprising:
receiving, via the user interface, a selection of the selectable interface element; and
displaying the data from the dataset corresponding to the one of the plurality objects associated with the selectable interface element.

### Claim 8 (depends on 6)

The system of claim 6, wherein the one or more processors are to perform operations further comprising:
determining that a selection of the selectable interface element was not received via the user interface.

### Claim 9 (depends on 8)

The system of claim 8, wherein the one or more processors are to perform operations further comprising:
presenting, in the user interface, one or more alternative queries based on the natural language query;
receiving, via the user interface, a selection of a first query of the one or more alternative queries; and
presenting, in the user interface, a response to the first query.

### Claim 10 (depends on 6)

The system of claim 6, wherein the one or more processors are to perform operations further comprising:
receiving, via the user interface, user feedback evaluating the presented response.

### Claim 11

A non-transitory computer readable storage medium storing instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:
presenting a user interface to allow a user to provide a natural language query pertaining to a dataset, wherein the dataset is associated with a data object model comprising a plurality of objects;
receiving, via the user interface, first user input specifying the natural language query;
modifying, in the user interface, the first user input to visually indicate one or more portions of the natural language query that each represent one of the plurality of objects;
modifying, in the user interface, a visual indication of one portion of the one or more portions of the natural language query specified by the first user input to a selectable interface element including a plurality of selectable options associated with the one portion of the one or more portions, wherein the selectable interface element is part of a visual indication of the natural language query;
presenting, in the user interface, a response to the natural language query, the response being based on data from the dataset, the data corresponding to the one of the plurality of objects; and
receiving, via the user interface, second user input indicating a first command corresponding to the response, the first command causing the response to the query to be recreated until a second command is received.

### Claim 12 (depends on 11)

The non-transitory computer readable storage medium of claim 11, wherein the instructions cause the one or more processors to perform operations further comprising:
receiving, via the user interface, a selection of the selectable interface element; and
displaying the data from the dataset corresponding to the one of the plurality objects associated with the selectable interface element.

### Claim 13 (depends on 11)

The non-transitory computer readable storage medium of claim 11, wherein the instructions cause the one or more processors to perform operations further comprising:
presenting, in the user interface, one or more alternative queries based on the natural language query;
receiving, via the user interface, a selection of a first query of the one or more alternative queries; and
presenting, in the user interface, a response to the first query.

### Claim 14 (depends on 11)

The non-transitory computer readable storage medium of claim 11, wherein the instructions cause the one or more processors to perform operations further comprising:
receiving, via the user interface, user feedback evaluating the presented response.
