Graph-Based Natural Language Generation for Conversational Systems

US2022360545A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2022360545-A1
Application numberUS-202117446750-A
CountryUS
Kind codeA1
Filing dateSep 2, 2021
Priority dateMay 10, 2021
Publication dateNov 10, 2022
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A computing device may represent dialog for output by a chatbot as a response graph. The graph may consist of nodes and edges, both of which may have attributes. The graph may be linked with another graph. There may be one or more traversal paths through the graph. The computing device may represent each traversal path as a row in a database table. Each column in the table row may correspond to: one or more nodes in the traversal path, a condition value, weight, and/or other filtering condition. A computing device may display a graphical user interface that allows a user to add, edit, and/or delete nodes and/or edges of the graph. The user interface may also allow the user to compare two or more graphs. The user interface may generate visualizations of traversal paths of a response graph.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method comprising: causing, by a computing device and via a graphical user interface (GUI), display of a graph, wherein the graph comprises interconnected nodes that indicate a plurality of responses to an inquiry via traversal paths formed by the interconnected nodes; modifying, based on user input received via the GUI, the graph to change at least one of the plurality of responses; generating, based on the graph and for an application, each of the plurality of responses; storing each of the plurality of responses in a table; receiving, via the application, an inquiry; determining, using natural language processing, a context of the inquiry; querying, based on the context, the table to determine, from the plurality of responses, a response to the inquiry; and causing output of the response. 2 . The method of claim 1 , wherein modifying the graph is performed by adding, based on the user input, a word node to the graph; wherein generating each of the plurality of the responses is based on the word node. 3 . The method of claim 1 , wherein modifying the graph is performed by adding, based on the user input, a connection between a first node of the graph and a second node of the graph; wherein generating each of the plurality of responses is based on the connection. 4 . The method of claim 1 , wherein modifying the graph is performed by assigning, based on the user input, a weight to a connection between a first node of the graph and a second node of the graph; wherein generating each of the plurality of responses is based on the weight. 5 . The method of claim 1 , wherein modifying the graph is performed by adding, based on the user input, a conditional node to the graph, wherein the conditional node indicates a condition that is to be completed before traversing to another node; wherein generating each of the plurality of responses is based on the conditional node. 6 . The method of claim 1 , wherein modifying the graph is performed by adding, based on the user input, a variable node to the graph, wherein the variable node indicates data that is to be dynamically determined at runtime; wherein generating each of the plurality of responses is based on the variable node. 7 . The method of claim 1 , wherein modifying the graph is performed by assigning, based on the user input, a loop node to the graph, wherein the loop node indicates a portion of the graph that is to be cyclically traversed until a loop condition is satisfied; wherein generating each of the plurality of responses is based on the loop node. 8 . The method of claim 1 , wherein modifying the graph is performed by assigning, based on the user input, a graph node to the graph, wherein the graph node indicates an associated graph that is to be traversed before continuing to another node of the graph; wherein generating each of the plurality of responses is performed based on the graph node. 9 . The method of claim 1 , wherein modifying the graph is performed by moving, based on the user input, a node to an updated location within the graph; wherein generating each of the plurality of responses is based on the updated location. 10 . The method of claim 1 , wherein generating each of the plurality of responses is performed by traversing each of the traversal paths, and wherein each of the plurality of responses corresponds to a traversal path. 11 . A computing device comprising: one or more processors; and memory storing executable instructions that, when executed by the one or more processors, cause the computing device to: cause display of interconnected nodes via a graphical user interface (GUI), wherein the interconnected nodes indicate a plurality of responses to an inquiry via traversal paths formed by the interconnected nodes; modify, based on user input received via the GUI, the interconnected nodes, resulting in user-modified interconnected nodes that change at least one of the plurality of responses; generate, based on the user-modified interconnected nodes and for an application, each of the plurality of responses; store each of the plurality of responses in a table; receive, via the application, an inquiry; determine, using natural language processing, a context of the inquiry; query, based on the context, the table to determine, from the plurality of responses, a response to the inquiry; and cause output of the response. 12 . The computing device of claim 11 , wherein the executable instructions, when executed by the one or more processors, cause the computing device to modify the interconnected nodes by adding or modifying, based on the user input, a word node. 13 . The computing device of claim 11 , wherein the executable instructions, when executed by the one or more processors, cause the computing device to modify the interconnected nodes by adding or modifying, based on the user input, a connection between a first node and a second node. 14 . The computing device of claim 11 , wherein the executable instructions, when executed by the one or more processors, cause the computing device to modify the interconnected nodes by assigning, based on the user input, a weight to a connection between a first node and a second node. 15 . The computing device of claim 11 , wherein the executable instructions, when executed by the one or more processors, cause the computing device to modify the interconnected nodes by adding or modifying, based on the user input, a conditional node, wherein the conditional node indicates a condition that is to be completed before traversing to another node. 16 . The computing device of claim 11 , wherein the executable instructions, when executed by the one or more processors, cause the computing device to modify the interconnected nodes by moving, based on the user input, a node to an updated location within the interconnected nodes. 17 . A non-transitory computer readable medium comprising executable instructions that, when executed, cause a computing device to: cause a graph to be displayed via a graphical user interface (GUI), wherein the graph includes interconnected nodes that indicate a plurality of responses to one or more inquiries via traversal paths formed by the interconnected nodes; modify, based on first user input received via the GUI, the graph by adding or modifying a first node of the interconnected nodes and by adding or modifying a first connection between two nodes of the interconnected nodes, resulting in a user-modified graph that changes at least one of the plurality of responses; generate, based on the user-modified graph and for an application, each of the plurality of responses; store each of the plurality of responses in a table; receive, via the application, an inquiry; determine, using natural language processing, a context of the inquiry; query, based on the context, the table to determine, from the plurality of responses, a response to the inquiry; and cause output of the response. 18 . The non-transitory computer readable medium of claim 17 , wherein the executable instructions, when executed, cause the computing device to further modify, based on second user input received via the GUI, the graph by adding or modifying a variable node, wherein the variable node indicates data that is to be dynamically determined at runtime. 19 . The non-transitory computer readable medium of claim 17 , wherein the executable instructions, when executed, cause the computing device to further modify, based on second u

Assignees

Inventors

Classifications

  • Drawing of charts or graphs · CPC title

  • Natural language query formulation · CPC title

  • Discourse or dialogue representation · CPC title

  • using statistical methods · CPC title

  • Editing, e.g. inserting or deleting · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2022360545A1 cover?
A computing device may represent dialog for output by a chatbot as a response graph. The graph may consist of nodes and edges, both of which may have attributes. The graph may be linked with another graph. There may be one or more traversal paths through the graph. The computing device may represent each traversal path as a row in a database table. Each column in the table row may correspond to…
Who is the assignee on this patent?
Capital One Services Llc
What technology area does this patent fall under?
Primary CPC classification G06F16/3329. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Nov 10 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).