Systems and method for third party natural language understanding service integration
Abstract
A virtual agent that utilizes an in-house natural language understanding (NLU) service and integrates a third party NLU service. The third-party NLU service is integrated with the virtual agent via a transformation script that establishes a transformation boundary through which communications are directed for adjustment and conditioning. The third party NLU service communicates with the virtual agent via an application programming interface (API). The virtual agent receives an utterance from a user via a chat session and provides the utterance to the third party NLU service. The third party NLU service may return intents, entities, and confidence, generate and return a response, and/or take actions within the cloud-based platform via the API, dependent upon the degree of integration. The virtual agent then provides a response to the user via the chat session.
Claims
exact text as granted — not AI-modifiedThe invention claimed is:
1. An integrated natural language understanding (NLU) system, comprising:
a processor; and
a memory, the memory storing instructions that, when executed by the processor, cause the processor to operate a virtual agent to perform operations comprising:
receiving an utterance provided via a chat session;
conditioning, via a transformation boundary, the utterance to form a conditioned utterance;
providing, via an application programming interface (API), the conditioned utterance to a third party natural language understanding (NLU) service;
receiving, via the API, a set of one or more intents, one or more entities, and one or more confidence scores generated by the third party NLU service based on the conditioned utterance;
generating a response to the utterance based on the set; and
transmitting the response for display within the chat session.
2. The system of claim 1 , wherein the transformation boundary is configured to condition the utterance by abstracting or cleansing the utterance.
3. The system of claim 1 , wherein the transformation boundary is configured to condition the utterance by parsing the utterance into segments consumable by the third party NLU service.
4. The system of claim 1 , wherein the operations comprise conditioning, via the transformation boundary, the set of one or more intents, one or more entities, and one or more confidence scores before generating the response based on the set.
5. The system of claim 4 , wherein the transformation boundary is configured to condition the set of one or more intents, one or more entities, and one or more confidence scores by deabstracting the set.
6. The system of claim 1 , wherein the response is generated based on a virtual agent flow associated with the virtual agent, and wherein the virtual agent is native to a cloud-based platform that hosts the chat session and that does not host the third party NLU service.
7. The system of claim 1 , wherein the operations comprise: running a transformation script, wherein the transformation script configures the third party NLU service for use with the virtual agent by establishing the transformation boundary.
8. The system of claim 7 , wherein the transformation script defines how the one or more intents and the one or more entities of the set are mapped to a NLU model.
9. The system of claim 1 , wherein the operations comprise:
identifying a type of conversation associated with a subsequent utterance;
determining that the type of conversation is to be addressed with an in-house NLU service;
providing the subsequent utterance to the in-house NLU service;
receiving a subsequent set of one or more intents, one or more entities, and one or more confidence scores generated by the in-house NLU service based on the subsequent utterance;
generating a subsequent response to the subsequent utterance based on the subsequent set; and
transmitting the subsequent response for display within the chat session.
10. The system of claim 1 , wherein the operations comprise generating a graphical user interface (GUI) configured to receive a selection of the third party NLU service from a plurality of third party NLU services.
11. A non-transitory, computer-readable medium storing instructions executable by at least one processor of a cloud-based platform, the instructions comprising instructions to operate a virtual agent to perform operations comprising:
receiving a user utterance from a client device;
conditioning the user utterance via a transformation boundary established by a transformation script;
providing the conditioned user utterance to a third party natural language understanding (NLU) service, wherein the third party NLU service is distinct from the cloud-based platform that hosts the virtual agent;
receiving, from the third party NLU service, an analysis of the conditioned user utterance, wherein the analysis comprises:
a scored set of intents and entities derived from the conditioned user utterance; or
a response generated based on the scored set of intents and entities; and
responding to the user utterance by:
generating and providing the response when the scored set of intents and entities is received from the third party NLU service; and
forwarding the response generated by the third party NLU service when the response is generated by the third party NLU service.
12. The non-transitory, computer-readable medium of claim 11 , wherein the transformation boundary is configured to implement a universal conditioning process followed by a third party-specific conditioning process on the user utterance.
13. The non-transitory, computer-readable medium of claim 11 , wherein the operations comprise conditioning the analysis from the third party NLU service via the transformation boundary before providing or forwarding the response.
14. The non-transitory, computer-readable medium of claim 13 , wherein the transformation boundary is configured to implement a third party-specific conditioning process followed by a universal conditioning process on the analysis.
15. The non-transitory, computer-readable medium of claim 11 , wherein the operations comprise providing a graphical user interface (GUI) configured to receive user selection of a type of the analysis that the third party NLU service provides to the virtual agent.
16. The non-transitory, computer-readable medium of claim 11 , wherein, when the analysis comprises the response, the operations comprise enabling the third party NLU service to call an application programming interface (API) of the cloud-based platform to perform an action in the cloud-based platform.
17. A method of operating a virtual agent integrated with a third party natural language understanding (NLU) service, comprising:
receiving an utterance through a chat session with a client device;
performing at least one input conditioning process on the utterance;
providing the conditioned utterance to a third party NLU service via an application programming interface (API);
receiving, from the NLU service, a scored set of intents and entities derived from the conditioned utterance;
performing at least one output conditioning process on the scored set;
generating a response to the utterance based on the conditioned scored set; and
transmitting the response for display within the chat session.
18. The method of claim 17 , comprising executing a transformation script to establish the at least one input conditioning process and the at least one output conditioning process as a transformation boundary for communications between the virtual agent and the third party NLU service.
19. The method of claim 17 , wherein performing the at least one input conditioning process comprises cleansing, vocabulary adjustment, or abstraction of the utterance.
20. The method of claim 17 , wherein generating the response comprises:
identifying an intent within the scored set of intents and entities that is associated with at least a threshold confidence score;
identifying a virtual agent flow associated with the intent; and
utilizing the virtual agent flow to generate the response.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.