# US 12,001,786 B2 · Applied artificial intelligence technology for natural language generation using a graph data structure with follow-up capabilities

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

- Number: US 12,001,786 B2
- Document ID: US12001786B2
- Status: Granted
- Kind: B2
- Application number: 17/749,561
- Filed: 2022-05-20
- Published: 2024-05-02
- Granted: 2024-06-04
- Earliest claimed: 2021-05-24
- Assignees: Salesforce, Inc.
- Applicants: Salesforce, Inc.
- Inventors: Mauro Eduardo Ignacio Mujica-Parodi, III; Nathan Drew Nichols; Nathan William Krapf; Brendan Robert Gimby
- Web page: https://patentgrep.com/patent/US12001786B2

## CPC

- G06F 16/243: {Natural language query formulation}
- G06F 16/2428: {Query predicate definition using graphical user interfaces, including menus and forms (G06F16/2423 takes precedence)}
- G06F 16/9024: {Graphs; Linked lists (G06F16/9027 takes precedence)}
- G06F 40/20: Natural language analysis (semantic analysis of natural language G06F40/30)
- G06F 40/35: Discourse or dialogue representation
- G06F 40/40: Processing or translation of natural language (natural language analysis G06F40/20; semantic analysis G06F40/30)
- G06F 40/56: Natural language generation
- G06N 5/02: Knowledge representation; Symbolic representation
- G06N 5/022: Knowledge engineering; Knowledge acquisition
- G06N 5/025: Extracting rules from data
- G06F 16/242: Query formulation
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS

## Abstract

Natural language generation technology is disclosed that applies artificial intelligence to structured data to determine content for expression in natural language narratives that describe the structured data. A graph data structure is employed, where the graph data structure comprises a plurality of nodes. Each of a plurality of the nodes (1) represents a corresponding intent so that a plurality of different nodes represent different corresponding intents and (2) is associated with one or more links to one or more of the nodes to define relationships among the intents. A processor (1) traverses the graph data structure to determine which of the nodes to use for content to be expressed in the natural language narratives and (2) determines which of the nodes to use for providing follow-up information about the natural language narratives based on the links of the graph data structure so that the follow-up information is derived from nodes that are linked to the nodes used for the content to be expressed in the natural language narrative.

## Claims

### Claim 1

A natural language generation (NLG) system that applies artificial intelligence to structured data to determine content to be expressed in natural language narratives that describe the structured data, the system comprising:
a processor; and
a memory;
wherein the memory is configured to store a graph data structure, wherein the graph data structure comprises a plurality of nodes, wherein each of a plurality of the nodes (1) represents a corresponding intent so that a plurality of different nodes represent different corresponding intents and (2) is associated with one or more links to one or more of the nodes to define relationships among the intents; and
wherein the processor is configured to (1) traverse the graph data structure to determine which of the nodes to use for content to be expressed in the natural language narratives and (2) determine which of the nodes to use for providing follow-up information about the natural language narratives based on the links of the graph data structure so that the follow-up information is derived from nodes that are linked to the nodes used for the content to be expressed in the natural language narrative.

### Claim 2 (depends on 1)

The system of claim 1 wherein the processor is further configured to provide a user with access to at least one of the items of follow-up information via a user interface.

### Claim 3 (depends on 2)

The system of claim 2 wherein the access comprises a user-selectable link that is presented along with the natural language narratives.

### Claim 4 (depends on 3)

The system of claim 3 wherein the user-selectable link is positioned on the user interface adjacent to its corresponding natural language narrative.

### Claim 5 (depends on 3)

The system of claim 3 wherein the user-selectable link describes the corresponding intent of the node from which the at least one item of follow-up information was generated.

### Claim 6 (depends on 2)

The system of claim 2 wherein the access comprises a user interaction with a text portion of a natural language narrative presented in a user interface.

### Claim 7 (depends on 6)

The system of claim 6 wherein the at lease one item of follow-up information is generated from a node linked to a node from which content expressed by the text portion was generated.

### Claim 8 (depends on 2)

The system of claim 2 wherein the user interface comprises a conversational interface.

### Claim 9 (depends on 8)

The system of claim 8 wherein the processor is further configured to map a natural language input received via the conversational interface to at least one of the items of follow-up information.

### Claim 10 (depends on 9)

The system of claim 9 wherein the user interface comprises a scroll button that triggers a presentation of the at least one item of follow-up information.

### Claim 11 (depends on 1)

The system of claim 1 wherein the graph data structure is adjustable to add one or more additional nodes to the graph data structure.

### Claim 12 (depends on 1)

The system of claim 1 wherein the graph data structure is adjustable modify one or more of the nodes.

### Claim 13 (depends on 1)

The system of claim 1 wherein the graph data structure is parameterized based on the structured data.

### Claim 14 (depends on 1)

The system of claim 1 wherein the graph data structure comprises an authoring graph.

### Claim 15 (depends on 14)

The system of claim 14 wherein the authoring graph is parameterized based on the structured data to define a knowledge graph, wherein the processor operates on the knowledge graph to determine content for expression in the natural language narratives.

### Claim 16 (depends on 1)

The system of claim 1 wherein the processor is configured to generate a plurality of the natural language narratives based on the graph data structure in an interactive mode based on conversational inputs from users.

### Claim 17 (depends on 1)

The system of claim 1 wherein the processor comprises a plurality of processors.

### Claim 18

A natural language generation (NLG) method that applies artificial intelligence to structured data to determine content to be expressed in natural language narratives that describe the structured data, the method comprising:
a processor accessing a graph data structure in memory, wherein the graph data structure comprises a plurality of nodes, wherein each of a plurality of the nodes (1) represents a corresponding intent so that a plurality of different nodes represent different corresponding intents and (2) is associated with one or more links to one or more of the nodes to define relationships among the intents;
the processor traversing the graph data structure to determine which of the nodes to use for content to be expressed in the natural language narratives; and
the processor determining which of the nodes to use for providing follow-up information about the natural language narratives based on the links of the graph data structure so that the follow-up information is derived from nodes that are linked to the nodes used for the content to be expressed in the natural language narrative.

### Claim 19

An article of manufacture for natural language generation (NLG) that applies artificial intelligence to structured data to determine content to be expressed in natural language narratives that describe the structured data, the article of manufacture comprising:
machine-readable code that is resident on a non-transitory computer-readable storage medium, wherein the code is executable by a processor to cause the processor to:
access a graph data structure in memory, wherein the graph data structure comprises a plurality of nodes, wherein each of a plurality of the nodes (1) represents a corresponding intent so that a plurality of different nodes represent different corresponding intents and (2) is associated with one or more links to one or more of the nodes to define relationships among the intents;
traverse the graph data structure to determine which of the nodes to use for content to be expressed in the natural language narratives; and
determine which of the nodes to use for providing follow-up information about the natural language narratives based on the links of the graph data structure so that the follow-up information is derived from nodes that are linked to the nodes used for the content to be expressed in the natural language narrative.

### Claim 20 (depends on 19)

The article of manufacture of claim 19 wherein the machine-readable code further comprises code that is executable by the processor to cause the processor to provide a user with access to at least one of the items of follow-up information via a user interface.
