Chatbots
US-9369410-B2 · Jun 14, 2016 · US
US9794199B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9794199-B2 |
| Application number | US-201615166479-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 27, 2016 |
| Priority date | Jan 8, 2009 |
| Publication date | Oct 17, 2017 |
| Grant date | Oct 17, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
In one aspect, the invention concerns a method of operating a chatbot to engage in a conversation with a correspondent the method comprises building a profile having plural profile variables for the correspondent; and during the conversation with the correspondent; selecting a node in the conversation data structure for processing based on the one or more profile variables, and processing the node to follow a conversation path based on the node's coded instructions and/or relationship with other nodes. In another aspect, the method comprises the steps of attempting to match the received input message with a node in the conversation data structure of the chatbot; if a matched node is found, selecting the matched node for processing; but if a matched node is not found, selecting a node for processing using a fuzzy search, or using a default procedure.
Opening claim text (preview).
Claims defining the invention are as follows: 1. A computer-implemented method of operating a chatbot to engage in an automated conversation with a correspondent, the method comprising: providing a chatbot having a conversation data structure comprising a plurality of conversation paths, each conversation path in the plurality of conversation paths comprising a plurality of nodes, each node having coded instructions that are processed to instruct an interpretation engine to perform an operation as part of the conversation path; receiving an input message from the correspondent; based on the received input message, building a profile having plural profile variables for the correspondent representing characteristics of the correspondent; and during the conversation, or a future conversation with the correspondent, selecting a node of a conversation path in the plurality of conversation paths in the conversation data structure for processing based on the one or more profile variables of the profile for the correspondent, and processing, by the interpretation engine, the selected node to follow a conversation path corresponding to the selected node based on the node's coded instructions. 2. The method according to claim 1 , wherein building the profile includes updating a value of a profile variable corresponding to the correspondent in response to the selected node being processed in response to receiving the input message, the selected node being coded with instructions to update the profile variable based on a profile update rule. 3. The method according to claim 1 , wherein a profile variable in the one or more profile variables of the profile for the correspondent characterizes one or more of: content of the automated conversation between the chatbot and the correspondent; the correspondent's interest, personality and demographic information; identification of one or more nodes of one or more conversation paths in the plurality of conversation paths processed in the conversation with the correspondent; received input messages from the correspondent, a process started or completed by the correspondent, or an activity external to the conversation. 4. The method according to claim 1 , further comprising: analyzing a set of plural profile variables in the correspondent's profile; and generating a report on the characteristics of the correspondent based on the analysis. 5. The method according to claim 1 , wherein the received input message is an explicit statement or unstructured content or activity, either in textual or non-textual form. 6. The method according to claim 1 , further comprising: customizing delivery of information to the correspondent based on the correspondent's profile, wherein one or more of the following is customized: content, layout, presentation, format, robot action, or source of the information. 7. The method according to claim 6 , wherein customizing delivery of information is also based on data extracted from a customer management system. 8. The method according to claim 1 , further comprising performing an assessment on the correspondent's profile, and reporting a result of the assessment. 9. The method of claim 1 , wherein selecting a node of a conversation path in the plurality of conversation paths in the conversation data structure comprises: attempting to match a received input message with a node in a conversation path of the plurality of conversation paths of the conversation data structure; in response to a matched node being found, selecting the matched node as the node for processing; in response to a matched node not being found, selecting a node for processing by performing a fuzzy search of the nodes of the plurality of conversation paths, or performing a pre-defined default procedure for selecting a node; and processing the selected node to follow a conversation path corresponding to the selected node based on the selected node's coded instructions and/or relationship with other nodes. 10. The method according to claim 9 , wherein the fuzzy search comprises: determining one or more nodes in the conversation data structure that are approximate matches to the received input message; displaying one or more output messages that are each associated with a node, to the correspondent; and in response to the correspondent choosing one of the displayed messages, selecting a corresponding node associated with the chosen displayed message as the selected node for processing. 11. The method according to claim 10 , further comprising recording the received input message as a variation input message that is a variation to a known input message that matches the node chosen by the correspondent. 12. The method according to claim 9 , wherein the default procedure comprises selecting a default node in the conversation data structure for processing, and is only performed if no nodes are selected using the fuzzy search. 13. The method according to claim 9 , wherein attempting to match the received input message with a node in the conversation data structure comprises comparing the received input message with variation input messages associated with the node until a matched variation input message is found. 14. The method according to claim 9 , wherein the variation input messages are default variation input messages or variation input messages generated based on past conversations with the correspondent or other correspondents. 15. A computer program product comprising a non-transitory computer readable medium having a computer readable program stored thereon, wherein the computer readable program, when executed by a computing device, causes the computing device to: provide a chatbot having a conversation data structure comprising a plurality of conversation paths, each conversation path in the plurality of conversation paths comprising a plurality of nodes, each node having coded instructions that are processed to instruct an interpretation engine to perform an operation as part of the conversation path; receive an input message from the correspondent; build, based on the received input message, a profile having plural profile variables for the correspondent representing characteristics of the correspondent; and select, during the conversation or a future conversation with the correspondent, a node of a conversation path in the plurality of conversation paths in the conversation data structure for processing based on the one or more profile variables of the profile for the correspondent, and process, by the interpretation engine, the selected node to follow a conversation path corresponding to the selected node based on the node's coded instructions. 16. A data processing system, comprising: a processor; and a memory coupled to the processor and storing instructions which are executed by the processor to cause the processor to be configured to: provide a chatbot having a conversation data structure comprising a plurality of conversation paths, each conversation path in the plurality of conversation paths comprising a plurality of nodes, each node having coded instructions that are processed to instruct an interpretation engine to perform an operation as part of the conversation path; receive an input message from the correspondent; build, based on the received input message, a profile having plural profile variables for the correspondent representing characteristics of the correspondent; and select, during the conversation or a future conversation with the correspondent, a node of a conversation path in the plurality of conversation paths in the conver
Help systems · CPC title
Knowledge representation; Symbolic representation · CPC title
Artificial life, i.e. computing arrangements simulating life · CPC title
Machine learning · CPC title
using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.