IP Library Granted Patent US 11,663,255
Granted Patent B2
US 11,663,255 · App. 16/420,324 · Granted May 30, 2023

Automatic collaboration between distinct responsive devices

Inventors: Masao Joko (Tokyo, JP); Atsushi Yamada (Yokohama, JP)
Assignee: International Business Machines Corporation
G06F16/3344G06F16/953G06F40/263
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,663,255
App. No.
16/420,324
Granted
May 30, 2023
Kind
B2
Abstract

A primary chatbot may receive a query from a user. The primary chatbot, using natural language processing techniques, may analyze the query. The primary chatbot may identify, from the analyzing, one or more key features of the query. The primary chatbot may push the one or more key features to one or more secondary chatbots. The primary chatbot may identify which one of the primary chatbot and the one or more secondary chatbots is to respond to the query. The primary chatbot may transmit the response to the user.

Claims (79)

1. A computer-implemented method comprising:

receiving, by a primary chatbot, a query from a user;

analyzing, using natural language processing techniques, the query;

identifying, from the analyzing, one or more key features of the query, wherein the one or more key features are individual semantic parts of speech from the query;

pushing, by the primary chatbot, the one or more key features to one or more secondary chatbots;

identifying which one of the primary chatbot and the one or more secondary chatbots is to respond to the query, wherein identifying which one of the primary chatbot and the one or more secondary chatbots is to respond to the query comprises:

voting by each of the primary chatbot and the one or more secondary chatbots, wherein the voting indicates each of the primary chatbot's and the one or more secondary chatbots' confidences in the other chatbots responding to the query; and

transmitting a response to the query to the user.

2. The method of claim 1 , further comprising:

pushing, in response to identifying that a first secondary chatbot is to respond to the query, the query to the first secondary chatbot; and

receiving the response from the first secondary chatbot.

3. The method of claim 2 , further comprising:

generating, automatically, a second query, wherein the second query includes a prompt for user feedback;

receiving the user feedback; and

updating, in response to receiving the user feedback, a respondent classifier, wherein the respondent classifier indicates to the primary chatbot that the first secondary chatbot is predicted to respond to succeeding queries.

4. The method of claim 1 , wherein identifying which one of the primary chatbot and the one or more secondary chatbots is to respond to the query further comprises:

ranking, based on the polled confidence, the primary chatbot and the one or more secondary chatbots; and

selecting a chatbot with the highest confidence of the primary chatbot and the one or more secondary chatbots.

5. The method of claim 1 , wherein voting by each of the primary chatbot and the one or more secondary chatbots to find the primary chatbot's and the one or more secondary chatbots' confidences in the other chatbots responding to the query comprises:

comparing, by the primary chatbot and the one or more secondary chatbots, the one or more key features to metadata associated with each of the primary chatbot and the one or more secondary chatbots;

identifying how much of the metadata matches the one or more key features; and

allocating a numerical tag to each of the primary chatbot and the one or more secondary chatbots, wherein the numerical tags indicate the amount of metadata that matched the one or more key features.

6. The method of claim 1 , wherein pushing the one or more key features to the one or more secondary chatbots is in response to determining that the primary chatbot is incapable of answering the query.

7. The method of claim 6 , further comprising:

replacing the primary chatbot with one of the one or more secondary chatbots; and

transferring the user to the one of the one or more secondary chatbots for the response to the query.

8. A system comprising:

a memory; and

a processor in communication with the memory, the processor being configured to perform operations comprising:

receiving, by a primary chatbot, a query from a user;

analyzing, using natural language processing techniques, the query;

identifying, from the analyzing, one or more key features of the query, wherein the one or more key features are individual semantic parts of speech from the query;

pushing, by the primary chatbot, the one or more key features to one or more secondary chatbots;

identifying which one of the primary chatbot and the one or more secondary chatbots is to respond to the query, wherein identifying which one of the primary chatbot and the one or more secondary chatbots is to respond to the query comprises:

voting by each of the primary chatbot and the one or more secondary chatbots, wherein the voting indicates each of the primary chatbot's and the one or more secondary chatbots' confidences in the other chatbots responding to the query; and

transmitting a response to the query to the user.

9. The system of claim 8 , wherein the operations further comprise:

pushing, in response to identifying that a first secondary chatbot is to respond to the query, the query to the first secondary chatbot; and

receiving the response from the first secondary chatbot.

10. The system of claim 9 , wherein the operations further comprise:

generating, automatically, a second query, wherein the second query includes a prompt for user feedback;

receiving the user feedback; and

updating, in response to receiving the user feedback, a respondent classifier, wherein the respondent classifier indicates to the primary chatbot that the first secondary chatbot is predicted to respond to succeeding queries.

11. The system of claim 8 , wherein identifying which one of the primary chatbot and the one or more secondary chatbots is to respond to the query further comprises:

ranking, based on the polled confidence, the primary chatbot and the one or more secondary chatbots; and

selecting a chatbot with the highest confidence of the primary chatbot and the one or more secondary chatbots.

12. The system of claim 8 , wherein voting by each of the primary chatbot and the one or more secondary chatbots to find the primary chatbot's and the one or more secondary chatbots' confidences in the other chatbots responding to the query comprises:

comparing, by the primary chatbot and the one or more secondary chatbots, the one or more key features to metadata associated with each of the primary chatbot and the one or more secondary chatbots;

identifying how much of the metadata matches the one or more key features; and

allocating a numerical tag to each of the primary chatbot and the one or more secondary chatbots, wherein the numerical tags indicate the amount of metadata that matched the one or more key features.

13. The system of claim 8 , wherein pushing the one or more key features to the one or more secondary chatbots is in response to determining that the primary chatbot is incapable of answering the query.

14. The system of claim 13 , wherein the operations further comprise:

replacing the primary chatbot with one of the one or more secondary chatbots; and

transferring the user to the one of the one or more secondary chatbots for the response to the query.

15. A computer program product comprising a non-transitory computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to cause the processor to perform a method, the method comprising:

receiving, by a primary chatbot, a query from a user;

analyzing, using natural language processing techniques, the query, wherein the one or more key features are individual semantic parts of speech from the query;

identifying, from the analyzing, one or more key features of the query;

pushing, by the primary chatbot, the one or more key features to one or more secondary chatbots;

identifying which one of the primary chatbot and the one or more secondary chatbots is to respond to the query, wherein identifying which one of the primary chatbot and the one or more secondary chatbots is to respond to the query comprises:

voting by each of the primary chatbot and the one or more secondary chatbots, wherein the voting indicates each of the primary chatbot's and the one or more secondary chatbots' confidences in the other chatbots responding to the query; and

transmitting a response to the query to the user.

16. The computer program product of claim 15 , further comprising:

pushing, in response to identifying that a first secondary chatbot is to respond to the query, the query to the first secondary chatbot; and

receiving the response from the first secondary chatbot.

17. The computer program product of claim 16 , further comprising:

generating, automatically, a second query, wherein the second query includes a prompt for user feedback;

receiving the user feedback; and

updating, in response to receiving the user feedback, a respondent classifier, wherein the respondent classifier indicates to the primary chatbot that the first secondary chatbot is predicted to respond to succeeding queries.

18. The computer program product of claim 15 , wherein identifying which one of the primary chatbot and the one or more secondary chatbots is to respond to the query further comprises:

ranking, based on the polled confidence, the primary chatbot and the one or more secondary chatbots; and

selecting a chatbot with the highest confidence of the primary chatbot and the one or more secondary chatbots.

19. The computer program product of claim 15 , wherein voting by each of the primary chatbot and the one or more secondary chatbots to find the primary chatbot's and the one or more secondary chatbots' confidences in the other chatbots responding to the query comprises:

comparing, by the primary chatbot and the one or more secondary chatbots, the one or more key features to metadata associated with each of the primary chatbot and the one or more secondary chatbots;

identifying how much of the metadata matches the one or more key features; and

allocating a numerical tag to each of the primary chatbot and the one or more secondary chatbots, wherein the numerical tags indicate the amount of metadata that matched the one or more key features.

20. The computer program product of claim 15 , wherein pushing the one or more key features to the one or more secondary chatbots is in response to determining that the primary chatbot is incapable of answering the query, and wherein the method further comprises:

replacing the primary chatbot with one of the one or more secondary chatbots; and

transferring the user to the one of the one or more secondary chatbots for the response to the query.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2019
From: JOKO, MASAO; YAMADA, ATSUSHI
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 049264/0271 →
Continuity (1)
Related Publication 20200372055A1 · Nov 26, 2020
Cited By (1)
US 12,450,292