# US 12,118,307 B2 · Enhanced chatbot intelligence

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

- Number: US 12,118,307 B2
- Document ID: US12118307B2
- Status: Granted
- Kind: B2
- Application number: 17/746,349
- Filed: 2022-05-17
- Published: 2023-11-23
- Granted: 2024-10-15
- Earliest claimed: 2022-05-17
- Assignees: Sap SE
- Applicants: Sap SE
- Inventors: Dilip Mamidela; Janaki Raam Vaidhyanathan
- Web page: https://patentgrep.com/patent/US12118307B2

## CPC

- G06F 40/279: Recognition of textual entities
- G06F 40/35: Discourse or dialogue representation
- H04L 51/02: using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Various embodiments for a chatbot improvement system are described herein. An embodiment operates by receiving input from a user via a chatbot interface. A first vertical corresponding to the user is identified. The input from the user is interpreted based on a first set of keywords corresponding to the first vertical. A first confidence score is calculated for the first vertical based on the interpretation of the input using the first set of keywords. It is determined whether the first confidence score exceeds a threshold. If the threshold is exceeded, a response to the input is generated based on the first set of keywords. If the threshold is not exceeded, the response to the input based on the second set of keywords. The generated response is provided for display via the chatbot interface.

## Claims

### Claim 1

A method comprising:
receiving input from a user via a chatbot interface;
identifying a first vertical corresponding to the user based on a history of the user, wherein the first vertical is associated with a first set of keywords configured to be used to interpret the input, wherein a second vertical is associated with a second set of keywords configured to be used to interpret the input, wherein a plurality of previous sessions of the history include both a selection of the first vertical and a selection of the second vertical, and wherein the first vertical was selected more often than the second vertical across the plurality of previous sessions;
interpreting the input from the user based on the first set of keywords;
calculating a first confidence score for the first vertical based on the interpreting the input from the user based on the first set of keywords;
determining whether the first confidence score exceeds a threshold,
wherein if the first confidence score exceeds the threshold, the method further comprises generating a response to the input based on the first set of keywords, and
wherein if the first confidence score does not exceed the threshold, the method further comprises generating the response to the input based on the second set of keywords; and
providing the generated response for display via the chatbot interface.

### Claim 2 (depends on 1)

The method of claim 1, wherein the identifying is based on a history of the user, wherein a previous session in the history includes a selection of the first vertical for the previous session.

### Claim 3 (depends on 1)

The method of claim 1, wherein if the first confidence score does not exceed the threshold, the generating the response to the input based on the second set of keywords comprises:
interpreting the input from the user based on the second set of keywords;
calculating a second confidence score for the second vertical based on the interpreting the input from the user based on the second set of keywords; and
determining that the second confidence score exceeds the threshold.

### Claim 4 (depends on 1)

The method of claim 1, wherein if the first confidence score does not exceed the threshold, the generating the response to the input based on the second set of keywords comprises:
interpreting the input from the user based on a third set of keywords corresponding to a third vertical;
calculating a third confidence score for the third vertical based on the interpreting the input from the user based on the third set of keywords;
determining that the third confidence score does not exceed the threshold;
interpreting the input from the user based on the second set of keywords;
calculating a second confidence score for the second vertical based on the interpreting the input from the user based on the second set of keywords; and
determining that the second confidence score exceeds the threshold.

### Claim 5 (depends on 1)

The method of claim 1, wherein the determining whether the first confidence score exceeds the threshold comprises:
calculating a second confidence score for an interpretation of the input based on the second set of keywords;
determining that both the first confidence score and the second confidence score exceed the threshold;
identifying a higher confidence score between the first confidence score and the second confidence score;
selecting one of the first set of keywords or the second set of keyword based on which to generate the response based the identified higher confidence score.

### Claim 6 (depends on 1)

The method of claim 1, wherein the first vertical is identified as corresponding to the user based on a role of the user within an organization.

### Claim 7

A system comprising at least one processor configured to perform operations comprising:
receiving input from a user via a chatbot interface;
identifying a first vertical corresponding to the user, wherein the first vertical is associated with a first set of keywords configured to be used to interpret the input, and wherein a second vertical is associated with a second set of keywords configured to be used to interpret the input;
interpreting the input from the user based on the first set of keywords;
calculating a first confidence score for the first vertical based on the interpreting the input from the user based on the first set of keywords;
determining whether the first confidence score exceeds a threshold,
wherein if the first confidence score exceeds the threshold, the operations further comprise generating a response to the input based on the first set of keywords, and
wherein if the first confidence score does not exceed the threshold, the operations further comprise generating the response to the input based on the second set of keywords, and wherein the generating the response to the input based on the second set of keywords comprises:
interpreting the input from the user based on the second set of keywords;
calculating a second confidence score for the second vertical based on the interpreting the input from the user based on the second set of keywords; and
determining that the second confidence score exceeds the threshold; and
providing the generated response for display via the chatbot interface.

### Claim 8 (depends on 7)

The system of claim 7, wherein the identifying is based on a history of the user, wherein a previous session in the history includes a selection of the first vertical for the previous session.

### Claim 9 (depends on 7)

The system of claim 7, wherein if the first confidence score does not exceed the threshold, the generating the response to the input based on the second set of keywords comprises:
interpreting the input from the user based on a third set of keywords corresponding to a third vertical;
calculating a third confidence score for the third vertical based on the interpreting the input from the user based on the third set of keywords;
determining that the third confidence score does not exceed the threshold;
interpreting the input from the user based on the second set of keywords;
calculating a second confidence score for the second vertical based on the interpreting the input from the user based on the second set of keywords; and
determining that the second confidence score exceeds the threshold.

### Claim 10 (depends on 7)

The system of claim 7, wherein the determining whether the first confidence score exceeds the threshold comprises:
calculating a second confidence score for an interpretation of the input based on the second set of keywords;
determining that both the first confidence score and the second confidence score exceed the threshold;
identifying a higher confidence score between the first confidence score and the second confidence score;
selecting one of the first set of keywords or the second set of keyword based on which to generate the response based the identified higher confidence score.

### Claim 11 (depends on 7)

The system of claim 7,
wherein the identifying is based on a history of the user, wherein a plurality of previous sessions of the history include both a selection of the first vertical and a selection of the second vertical; and
determining that the first vertical was selected more often than the second vertical across the plurality of previous sessions.

### Claim 12 (depends on 7)

The system of claim 7, wherein the first vertical is identified as corresponding to the user based on a role of the user within an organization.

### Claim 13

A non-transitory computer-readable medium having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations comprising:
receiving input from a user via a chatbot interface;
identifying a first vertical corresponding to the user, wherein the first vertical is associated with a first set of keywords configured to be used to interpret the input, wherein a second vertical is associated with a second set of keywords configured to be used to interpret the input, wherein a plurality of previous sessions of the history include both a selection of the first vertical and a selection of the second vertical, and wherein the first vertical was selected more often than the second vertical across the plurality of previous sessions;
interpreting the input from the user based on the first set of keywords;
calculating a first confidence score for the first vertical based on the interpreting the input from the user based on the first set of keywords;
determining whether the first confidence score exceeds a threshold,
wherein if the first confidence score exceeds the threshold, the operations further comprise generating a response to the input based on the first set of keywords, and
wherein if the first confidence score does not exceed the threshold, the operations further comprise generating the response to the input based on the second set of keywords; and
providing the generated response for display via the chatbot interface.

### Claim 14 (depends on 13)

The non-transitory computer-readable medium of claim 13, wherein the identifying is based on a history of the user, wherein a previous session in the history includes a selection of the first vertical for the previous session.

### Claim 15 (depends on 13)

The non-transitory computer-readable medium of claim 13, wherein if the first confidence score does not exceed the threshold, the generating the response to the input based on the second set of keywords comprises:
interpreting the input from the user based on the second set of keywords;
calculating a second confidence score for the second vertical based on the interpreting the input from the user based on the second set of keywords; and
determining that the second confidence score exceeds the threshold.

### Claim 16 (depends on 13)

The non-transitory computer-readable medium of claim 13, wherein if the first confidence score does not exceed the threshold, the generating the response to the input based on the second set of keywords comprises:
interpreting the input from the user based on a third set of keywords corresponding to a third vertical;
calculating a third confidence score for the third vertical based on the interpreting the input from the user based on the third set of keywords;
determining that the third confidence score does not exceed the threshold;
interpreting the input from the user based on the second set of keywords;
calculating a second confidence score for the second vertical based on the interpreting the input from the user based on the second set of keywords; and
determining that the second confidence score exceeds the threshold.

### Claim 17 (depends on 13)

The non-transitory computer-readable medium of claim 13, wherein the determining whether the first confidence score exceeds the threshold comprises:
calculating a second confidence score for an interpretation of the input based on the second set of keywords;
determining that both the first confidence score and the second confidence score exceed the threshold;
identifying a higher confidence score between the first confidence score and the second confidence score;
selecting one of the first set of keywords or the second set of keyword based on which to generate the response based the identified higher confidence score.
