Capturing and leveraging signals reflecting BOT-to-BOT delegation
AssigneeMicrosoft Technology Licensing, LLC
InventorsAnantha Deepthi Uppala, Chetan Bansal
Life of this patent
Estimating the term…
Abstract
A technique is described herein for capturing signals that indicate when any calling BOT delegates control to a called BOT, or when a calling BOT is preconfigured to contact a called BOT (e.g., as conveyed by a manifest file associated with the calling BOT). The technique can leverage these signals to facilitate the selection of BOTs. For example, the technique can use the signals to improve searches performed by a search engine and/or recommendation engine. The technique can also use the signals to generate metadata items that describe the properties of the available BOTs.
Claims21
A system comprising:
- hardware logic circuitry implemented by one or more hardware processors that execute machine-readable instructions stored in a memory, and/or by one or more other hardware logic components that perform operations using a task-specific collection of logic gates, the hardware logic circuitry being configured to implement a BOT-selecting component, and
- a signal data store storing BOT delegation signals that have been intercepted from communications among a collection of conversational BOTs that execute on one or more computing devices that are remote from the system, wherein each BOT delegation signal includes at least:
- a first data item that identifies a specific calling conversational BOT from the collection of conversational BOTs;
- a second data item that identifies a specific called conversational BOT from the collection of conversational BOTs;
- and
- a third data item that identifies a specific intent that the specific called conversational BOT is called on to fulfill by the specific calling conversational BOT during a course of a specific previous natural language conversation involving the specific calling conversational BOT, the specific called conversational BOT, and a specific human user, wherein the specific previous natural language conversation does not involve the BOT-selecting component,
- wherein:
- the BOT-selecting component is configured to receive an input query from a particular user, the input query specifying a particular intent of the particular user;
- the BOT-selecting component is configured to choose a selected conversational BOT that matches the input query from the collection of conversational BOTs based at least on a BOT delegation feature, derived from the BOT delegation signals in the signal data store, reflecting that another conversational BOT has previously delegated control directly to the selected conversational BOT to fulfill the particular intent specified by the input query during a course of a particular previous natural language conversation;
- and
- the BOT-selecting component is configured to provide an output result, via an output signal, that conveys the selected conversational BOT.
A method comprising:
- by a BOT-selecting component executing on a particular computing device, accessing a signal data store having BOT delegation signals that have been intercepted from communications among a collection of conversational BOTs that execute on one or more other computing devices that are remote from the particular computing device, wherein each BOT delegation signal includes at least:
- a first data item that identifies a specific calling conversational BOT from the collection of conversational BOTs;
- a second data item that identifies a specific called conversational BOT from the collection of conversational BOTs;
- and
- a third data item that identifies a specific intent that the specific called conversational BOT is called on to fulfill by the specific calling conversational BOT during a course of a specific previous natural language conversation involving the specific calling conversational BOT, the specific called conversational BOT, and a specific human user, wherein the specific previous natural language conversation does not involve the BOT-selecting component,
- by the BOT-selecting component executing on the particular computing device, receiving an input query having a particular intent;
- by the BOT-selecting component executing on the particular computing by the BOT-selecting component executing on the particular computing device, choosing a selected conversational BOT that matches the input query based at least on a particular BOT delegation feature, derived from the signal data store, reflecting that another conversational BOT directly invoked the selected conversational BOT to fulfill the particular intent of the input query during a particular previous natural language conversation involving the selected conversational BOT, the another conversational BOT, and at least one of the human users;
- by the BOT-selecting component executing on the particular computing device, providing an output result via an output signal that conveys the selected conversational BOT that has been chosen;
- and
- invoking the selected conversational BOT identified in the output result in response to an activation event.
A computer-readable storage device storing computer-readable instructions, the computer-readable instructions, when executed by one or more hardware processors of a first computing device, causing the one or more hardware processors to perform acts comprising:
- by a BOT-selecting component executing on the first computing device, accessing a signal data store of BOT delegation signals that have been intercepted from communications among a collection of conversational BOTs that execute on one or more other computing devices that are remote from the first computing device, wherein each BOT delegation signal includes at least:
- a first data item that identifies a specific calling conversational BOT from the collection of conversational BOTs;
- a second data item that identifies a specific called conversational BOT from the collection of conversational BOTs;
- and
- a third data item that identifies a specific intent that the specific called conversational BOT is called on to fulfill by the specific calling conversational BOT during a course of a specific previous natural language conversation involving the specific calling conversational BOT, the specific called conversational BOT, and a specific human user, wherein the specific previous natural language conversation does not involve the BOT-selecting component,
- by the BOT-selecting component executing on the first computing device, deriving, from the BOT delegation signals stored in the signal data store, BOT delegation features;
- by the BOT-selecting component executing on the first computing device, receiving an input query from a particular human user;
- by the BOT-selecting component executing on the first computing device and based at least on the BOT delegation features, identifying a selected conversational BOT that matches the input query and that executes on the one or more other computing devices, the selected conversational BOT having a corresponding BOT delegation feature reflecting that another conversational BOT that executes on the one or more other computing devices has previously delegated control directly to the selected conversational BOT to fulfill a particular intent related to the input query during a course of a particular previous natural language conversation;
- and
- outputting an identifier of the selected conversational BOT to the particular human user via a user interface.
Dependencies are inferred from the claim text.