# US 11,113,608 B2 · Hybrid bot framework for enterprises

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

- Number: US 11,113,608 B2
- Document ID: US11113608B2
- Status: Granted
- Kind: B2
- Application number: 15/797,954
- Filed: 2017-10-30
- Published: 2019-05-02
- Granted: 2021-09-07
- Earliest claimed: 2017-10-30
- Assignees: Accenture Global Solutions Limited
- Applicants: Accenture Global Solutions Limited
- Inventors: Tariq Mohammad Salameh; Michele Tornielli
- Web page: https://patentgrep.com/patent/US11113608B2

## CPC

- G06N 5/022: Knowledge engineering; Knowledge acquisition
- G06F 9/54: Interprogram communication
- G10L 15/30: Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G10L: SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING

## Abstract

Implementations are directed to receiving communication data from a device, the communication data including data input by a user of the device, determining a context based on an extended finite state machine that defines contexts and transitions between contexts, transmitting a service request to at least one cloud-hosted service, the service request being provided at least partially based on masking sensitive information included in the communication data, receiving a service response from the at least one cloud-hosted service, the service response including one or more of an intent, and an entity, determining at least one action that is to be performed by at least one back-end source system based on the service response, providing a response at least partially based on an action results received from the at least one back-end source system, and transmitting the result data to the device.

## Claims

### Claim 1

A computer-implemented method for managing interactions with an artificial intelligence (AI) assistant on a hybrid framework, the method being executed by one or more processors and comprising:
receiving communication data from a device, the communication data comprising data input by a user of the device;
determining a context based on an extended finite state machine that defines contexts and transitions between contexts, each state of the extended finite state machine comprising a context, transitions in a set of transitions between states comprising tuples of intent, entity, and action, a first transition comprising a first tuple comprising a first populated intent, a first populated entity, and a first populated action, and a second transition comprising a second tuple comprising a second populated intent, an unpopulated entity, and an unpopulated action;
transmitting a service request to at least one cloud-hosted service, the service request being provided at least partially based on masking sensitive information included in the communication data;
receiving a service response from the at least one cloud-hosted service, the service response comprising one or more of an intent, and an entity;
determining at least one action that is to be performed by at least one back-end source system based on the service response;
providing a user response at least partially based on an action results received from the at least one back-end source system; and
transmitting the user response to the device.

### Claim 2 (depends on 1)

The method of claim 1, wherein the at least one action is determined by identifying a transition from the context using the extended finite state machine based on one or more of the intent and the entity, the transition indicating the at least one action.

### Claim 3 (depends on 1)

The method of claim 1, further comprising determining that a data set to be transmitted in the service request comprises the sensitive information, and in response, removing the sensitive information from the data set using an on-premise masking component prior to transmitting the service request to the at least one cloud-hosted service.

### Claim 4 (depends on 1)

The method of claim 1, wherein determining the context comprises querying an on-premise session manager for a current context, the context being returned in response to the query.

### Claim 5 (depends on 1)

The method of claim 1, wherein the communication data is received from the device through a channel connector corresponding to a plurality of channels, through which communication data can be received.

### Claim 6 (depends on 1)

The method of claim 1, further comprising transforming a format of the communication data to a standard format using an on-premise data unification layer.

### Claim 7 (depends on 1)

The method of claim 1, wherein the hybrid framework comprises an on-premise portion that selectively transmits requests to, and receives responses from a plurality of cloud-hosted services.

### Claim 8 (depends on 1)

The method of claim 1, wherein the at least one cloud-hosted service comprises one or more of a natural language processing (NLP) service, a sentiment analysis service, a speech-to-text service, and a translation service.

### Claim 9 (depends on 1)

The method of claim 1, wherein the at least one cloud-hosted service is configured to determine one or more of the intent, and the entity.

### Claim 10 (depends on 1)

The method of claim 1, wherein the extended finite state machine is configurable by a user based on one or more requirements.

### Claim 11

One or more non-transitory computer-readable storage media coupled to one or more processors and having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations for managing interactions with an artificial intelligence (AI) assistant on a hybrid framework, the operations comprising:
receiving communication data from a device, the communication data comprising data input by a user of the device;
determining a context based on an extended finite state machine that defines contexts and transitions between contexts, each state of the extended finite state machine comprising a context, transitions in a set of transitions between states comprising tuples of intent, entity, and action, a first transition comprising a first tuple comprising a first populated intent, a first populated entity, and a first populated action, and a second transition comprising a second tuple comprising a second populated intent, an unpopulated entity, and an unpopulated action;
transmitting a service request to at least one cloud-hosted service, the service request being provided at least partially based on masking sensitive information included in the communication data;
receiving a service response from the at least one cloud-hosted service, the service response comprising one or more of an intent, and an entity;
determining at least one action that is to be performed by at least one back-end source system based on the service response;
providing a user response at least partially based on an action results received from the at least one back-end source system; and
transmitting the user response to the device.

### Claim 12 (depends on 11)

The computer-readable storage media of claim 11, wherein the at least one action is determined by identifying a transition from the context using the extended finite state machine based on one or more of the intent and the entity, the transition indicating the at least one action.

### Claim 13 (depends on 11)

The computer-readable storage media of claim 11, wherein operations further comprise determining that a data set to be transmitted in the service request comprises the sensitive information, and in response, removing the sensitive information from the data set using an on-premise masking component prior to transmitting the service request to the at least one cloud-hosted service.

### Claim 14 (depends on 11)

The computer-readable storage media of claim 11, wherein determining the context comprises querying an on-premise session manager for a current context, the context being returned in response to the query.

### Claim 15 (depends on 11)

The computer-readable storage media of claim 11, wherein the communication data is received from the device through a channel connector corresponding to a plurality of channels, through which communication data can be received.

### Claim 16 (depends on 11)

The computer-readable storage media of claim 11, wherein operations further comprise transforming a format of the communication data to a standard format using an on-premise data unification layer.

### Claim 17 (depends on 11)

The computer-readable storage media of claim 11, wherein the hybrid framework comprises an on-premise portion that selectively transmits requests to, and receives responses from a plurality of cloud-hosted services.

### Claim 18 (depends on 11)

The computer-readable storage media of claim 11, wherein the at least one cloud-hosted service comprises one or more of a natural language processing (NLP) service, a sentiment analysis service, a speech-to-text service, and a translation service.

### Claim 19 (depends on 11)

The computer-readable storage media of claim 11, wherein the at least one cloud-hosted service is configured to determine one or more of the intent, and the entity.

### Claim 20 (depends on 11)

The computer-readable storage media of claim 11, wherein the extended finite state machine is configurable by a user based on one or more requirements.

### Claim 21

A system, comprising:
one or more processors; and
a computer-readable storage device coupled to the one or more processors and having instructions stored thereon which, when executed by the one or more processors, cause the one or more processors to perform operations for managing interactions with an artificial intelligence (AI) assistant on a hybrid framework, the operations comprising:
receiving communication data from a device, the communication data comprising data input by a user of the device;
determining a context based on an extended finite state machine that defines contexts and transitions between contexts, each state of the extended finite state machine comprising a context, transitions in a set of transitions between states comprising tuples of intent, entity, and action, a first transition comprising a first tuple comprising a first populated intent, a first populated entity, and a first populated action, and a second transition comprising a second tuple comprising a second populated intent, an unpopulated entity, and an unpopulated action;
transmitting a service request to at least one cloud-hosted service, the service request being provided at least partially based on masking sensitive information included in the communication data;
receiving a service response from the at least one cloud-hosted service, the service response comprising one or more of an intent, and an entity;
determining at least one action that is to be performed by at least one back-end source system based on the service response;
providing a user response at least partially based on an action results received from the at least one back-end source system; and
transmitting the user response to the device.

### Claim 22 (depends on 21)

The system of claim 21, wherein the at least one action is determined by identifying a transition from the context using the extended finite state machine based on one or more of the intent and the entity, the transition indicating the at least one action.

### Claim 23 (depends on 21)

The system of claim 21, wherein operations further comprise determining that a data set to be transmitted in the service request comprises the sensitive information, and in response, removing the sensitive information from the data set using an on-premise masking component prior to transmitting the service request to the at least one cloud-hosted service.

### Claim 24 (depends on 21)

The system of claim 21, wherein determining the context comprises querying an on-premise session manager for a current context, the context being returned in response to the query.

### Claim 25 (depends on 21)

The system of claim 21, wherein the communication data is received from the device through a channel connector corresponding to a plurality of channels, through which communication data can be received.

### Claim 26 (depends on 21)

The system of claim 21, wherein operations further comprise transforming a format of the communication data to a standard format using an on-premise data unification layer.

### Claim 27 (depends on 21)

The system of claim 21, wherein the hybrid framework comprises an on-premise portion that selectively transmits requests to, and receives responses from a plurality of cloud-hosted services.

### Claim 28 (depends on 21)

The system of claim 21, wherein the at least one cloud-hosted service comprises one or more of a natural language processing (NLP) service, a sentiment analysis service, a speech-to-text service, and a translation service.

### Claim 29 (depends on 21)

The system of claim 21, wherein the at least one cloud-hosted service is configured to determine one or more of the intent, and the entity.

### Claim 30 (depends on 21)

The system of claim 21, wherein the extended finite state machine is configurable by a user based on one or more requirements.
