IP Library Granted Patent US 11,263,404
Granted Patent B2
US 11,263,404 · App. 16/581,929 · Granted Mar 1, 2022

Conversational AI platform using declarative graph model

Inventor: Lampros Dounis (Patras, GR)
Assignee: CITRIX SYSTEMS, INC.
G06F40/30G06F40/295G06N20/00
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,263,404
App. No.
16/581,929
Granted
Mar 1, 2022
Kind
B2
Abstract

A system, method and program product that provides a conversational AI platform using a declarative graph model. A system is included having a natural language (NL) interface the receives NL user inputs from a message queue; an intent analyzer that determines an intent of a received NL user input and loads a graph associated with the intent; and a graph traversal manager having traversal logic to first traverse the graph first along a start path from an intent node to a dialog node, then traverse an ask path to a question node to obtain missing entity data, then traverse a contacts path to a service node to execute an external service and return a fulfillment response based on submitted entity data, then traverse a replies with path to a response node to create a formatted fulfillment response that is forwarded to the message queue.

Claims (49)

1. A system, comprising:

a natural language (NL) interface that receives NL user inputs from a message queue;

an intent analyzer that determines an intent of a received NL user input and loads a graph associated with the intent from a set of graphs, wherein each of the graphs is created using a common declarative model that includes predefined types of nodes having configurable properties for implementing different types of requests, wherein each graph includes:

an intent node configurable to specify entity data required to fulfill a request, at least one question node configurable to collect entity data from a user, a service node configurable to fulfill the request with a specified external service, and a response node configurable to specify a response format; and

a graph traversal manager having traversal logic to traverse the graph from the intent node along an ask path to the at least one question node to obtain missing entity data, then traverse a contacts path to the service node to execute the specified external service and return a fulfillment response based on submitted entity data, then traverse a replies with path to the response node to create a formatted response that is forwarded to the message queue.

2. The system of claim 1 , wherein the graph traversal manager further traverses a contains path from the response node to a response type node to obtain a specific format for the formatted response.

3. The system of claim 2 , wherein the specific format includes at least one of a text message, an attachment, and a voice message.

4. The system of claim 1 , wherein the graph traversal manager further traverses a suggests path to another intent node.

5. The system of claim 1 , wherein a set of required entity data is specified by the intent node.

6. The system of claim 1 , wherein the graph is stored in graph database along with a set of graphs that each associate with a unique intent.

7. The system of claim 1 , wherein a machine learning system automatically modifies or creates graphs.

8. A method for implementing a conversational artificial intelligence (AI) system that utilizes a graph-based declarative programming model, comprising:

receiving a natural language (NL) input from a message queue;

determining an intent of a received NL input and retrieving a graph associated with the intent from a set of graphs, wherein each of the graphs is created using a common declarative model that includes predefined types of nodes having configurable properties for implementing different types of requests, wherein each graph includes:

an intent node configurable to specify entity data required to fulfill a request, at least one question node configurable to collect entity data from a user, a service node configurable to fulfill the request with a specified external service, and a response node configurable to specify a response format;

traversing the graph first along a start path from an intent node to a dialog node;

traversing the graph from the dialog node along any specified ask paths to question nodes to obtain missing entity data;

traversing a contacts path to the service node to execute the specified external service and return a fulfillment response based on submitted entity data;

traversing a replies with path to the response node to create a formatted response; and

forwarding the formatted response to the message queue.

9. The method of claim 8 , further including traversing a contains path from the response node to a response type node to obtain a specific format for the formatted response.

10. The method of claim 9 , wherein the specific format includes at least one of a text message, an attachment, and a voice message.

11. The method of claim 8 , further comprising traversing a suggests path to another intent node.

12. The method of claim 8 , wherein a set of required entity data is specified by the intent node.

13. The method of claim 8 , wherein the graph is stored in graph database along with a set of graphs that each associate with a unique intent.

14. The method of claim 8 , wherein a machine learning system automatically modifies or creates graphs.

15. A computer program product stored on a computer readable storage medium, which when executed by a computing system, implements a conversational artificial intelligence (AI) system that utilizes a graph-based declarative programming model, wherein the computer program product comprises:

program code for receiving a natural language (NL) input from a message queue;

program code for determining an intent of a received NL input and for retrieving a graph associated with the intent from a set of graphs, wherein each of the graphs is created using a common declarative model that includes predefined types of nodes having configurable properties for implementing different types of requests, wherein each graph includes:

an intent node configurable to specify entity data required to fulfill a request, at least one question node configurable to collect entity data from a user, a service node configurable to fulfill the request with a specified external service, and a response node configurable to specify a response format;

program code for traversing the graph to at least one question node to obtain missing entity data;

program code for traversing a contacts path to the service node to execute the external service and return a fulfillment response based on submitted entity data;

program code for traversing a replies with path to the response node to create a formatted response; and

program code for forwarding the fulfillment response to the message queue.

16. The program product of claim 15 , further including program code for traversing a contains path from the response node to a response type node to obtain a specific format for the formatted response.

17. The program product of claim 16 , wherein the specific format includes at least one of a text message, an attachment, and a voice message.

18. The program product of claim 15 , further comprising program code that traverses a suggests path to another intent node.

19. The program product of claim 15 , wherein a set of required entity data is specified by the intent node.

20. The program product of claim 15 , wherein the graph is stored in graph database along with a set of graphs that each associate with a unique intent.

21. A computing system comprising:

a memory; and

at least one processor in communication with the memory, the at least one processor configured to:

receive a natural language (NL) input from a message queue,

determine an intent of a received NL input,

retrieve a graph associated with a determined intent, the graph being one of a plurality of graphs created with a declarative programming model defined by one or more paths and one or more nodes wherein each of the nodes has configurable properties for implementing different types of requests, and

based on traversing the one or more paths and one or more nodes of the graph and entity data associated with the received NL input, generate and return a response to the received NL input.

22. The computing system of claim 21 , wherein the declarative programming model includes at least one question node to obtain missing entity data.

23. The computing system of claim 21 , wherein the declarative programming model includes at least one service node to execute an external service and return a fulfillment response based on submitted entity data.

24. The computing system of claim 21 , wherein the declarative programming model includes at least one response node to create a fulfillment response.

Assignments (9)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2019
From: DOUNIS, LAMPROS
To: CITRIX SYSTEMS, INC.
Reel/Frame 050487/0031 →
Continuity (2)
Continuation PCTGR2019000062 · Sep 9, 2019
Related Publication 20210073338A1 · Mar 11, 2021