IP Library Granted Patent US 11,031,001
Granted Patent B1
US 11,031,001 · App. 17/181,013 · Granted Jun 8, 2021

Action agent architecture in a scalable multi-service virtual assistant platform

Inventors: Fang Cheng (Mountain View, CA); Dennis Wu (Palo Alto, CA); Jian Da Chen (Newark, CA)
Assignee: Linc Global, Inc.
G10L15/1822G06F16/90332G06F40/205G06N5/04G06N20/00G10L15/18G10L15/22H04L51/02
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,031,001
App. No.
17/181,013
Granted
Jun 8, 2021
Kind
B1
Abstract

The present invention is an action agent architecture in a scalable multi-service virtual assistant platform that can construct a fluid and dynamic dialogue by assembling responses to end user utterances from two kinds of agents, information agents and action agents. A plurality of information agents obtain at least one information value from a parsed user input and/or contextual data. A plurality of action agents perform one or more actions in response to the parsed user input, the contextual data, and/or an information value obtained from at least one of the information agents. The plurality of action agents are created through a declarative language by specifying one or more triggering conditions, one or more action invocation parameters, one or more information agents as pre-requisites, and one or more responses. A natural language generation (NLG) module renders a response back to the user after the one or more actions are performed.

Claims (35)

1. A system for a virtual assistant platform, comprising:

at least one memory device that stores computer-executable instructions; and

at least one processor configured to access the memory device, wherein the processor is configured to execute the computer-executable instructions to implement:

a natural language understanding (NLU) module to generate a parsed user input from one or more utterances received from a user;

a plurality of information agents to obtain at least one information value from the parsed user input and/or contextual data;

a plurality of action agents to perform one or more actions in response to the parsed user input, the contextual data, and/or the at least one information value, wherein the plurality of action agents are created through a declarative language by specifying one or more triggering conditions, one or more action invocation parameters, one or more information agents as pre-requisites, and one or more responses; and

a natural language generation (NLG) module to render a response back to the user after the one or more actions are performed.

2. The system of claim 1 , wherein at least one set-value connection interrelates a given action agent and a given information agent via at least one set-value action, wherein the set-value action for the given action agent is used to set an information value for the given information agent which is later used by the given information agent.

3. The system of claim 1 , wherein at least one inference connection interrelates two information agents, wherein the inference connection interrelates the two information agents amongst themselves which determine when a given information agent activates one or more related information agents in order to fulfill one or more information values of the given information agent which are later used by the given information agent.

4. The system of claim 1 , wherein at least one prerequisite connection interrelates at least one information agent and at least one action agent, and wherein the prerequisite connection activates one or more prerequisite information agents to fulfill one or more prerequisite conditions for a given action agent.

5. The system of claim 1 , wherein at least one of the plurality of information agents is adapted to understand the parsed user input from the user to extract the information value directly from the parsed user input.

6. The system of claim 1 , wherein at least one of the plurality of information agents is adapted to infer the information value from the parsed user input, wherein the inferring is activated in response to determining that a given information agent cannot obtain the information value by understanding the parsed user input directly.

7. The system of claim 6 , wherein at least one of the plurality of information agents is adapted to infer the information value by accessing one or more contextual data sources for the contextual data and is adapted to infer the information value from the parsed user input and the contextual data.

8. The system of claim 7 , wherein at least one of the plurality of information agents is adapted to query the user for the information value by generating a natural language query using the natural language generation (NLG) module, wherein the querying is activated in response to determining that the information agent cannot obtain the information value by understanding the parsed user input or inferring the information value.

9. The system of claim 8 , wherein at least one of the plurality of information agents is adapted to obtain the information value by activating one or more other information agents, wherein the one or more other information agents are activated in response to determining that the at least one information agent cannot obtain the information value by understanding the parsed user input or inferring the information value.

10. The system of claim 1 , wherein at least one of the plurality of action agents performs the one or more actions by triggering two or more internal services to perform one or more services.

11. The system of claim 10 , wherein at least one of the plurality of action agents performs the one or more actions by accessing one or more Application Programming Interface (API) gateways to external services to perform the two or more services.

12. The system of claim 1 , wherein the system activates one or more of the information agents in order to meet one or more prerequisite connections for a given action agent, wherein the given action agent utilizes the one or more activated information agents to obtain one or more information values needed to perform the one or more actions.

13. The system of claim 1 , wherein at least one of the plurality of action agents is adapted to generate a natural language reply to the user using the natural language generation (NLG) module.

14. The system of claim 1 , wherein at least one of the plurality of action agents is adapted to change a system state.

15. The system of claim 1 , further comprising computer-executable instructions to implement:

a masterbot to arbitrate an activation of the plurality of information agents and the plurality of action agents.

16. The system of claim 15 , wherein the masterbot evaluates a performance of the plurality of information agents and the plurality of action agents using machine learning to adjust the activation of the information agents and the action agents.

17. The system of claim 15 , wherein the masterbot generates the response to the user using the natural language generation (NLG) module from information supplied by the information agents and/or the action agents.

18. A non-transitory, computer-readable medium storing program code for a multi-service virtual assistant platform which, when executed by a processor, cause the processor to perform computer-executable operations to implement:

a natural language understanding (NLU) module to generate a parsed user input from one or more utterances received from a user;

a plurality of information agents to obtain at least one information value from the parsed user input and/or contextual data;

a plurality of action agents to perform one or more actions in response to the parsed user input, the contextual data, and/or the at least one information value, wherein the plurality of action agents are created through a declarative language by specifying one or more triggering conditions, one or more action invocation parameters, one or more information agents as pre-requisites, and one or more responses; and

a natural language generation (NLG) module to render a response back to the user after the one or more actions are performed.

19. A computer-implemented method for a multi-service virtual assistant platform which, when executed by a processor, causes the processor to perform steps comprising:

generating a parsed user input from one or more utterances received from a user;

obtaining at least one information value from the parsed user input and/or contextual data utilizing a plurality of information agents;

performing one or more actions in response to the parsed user input, the contextual data, and/or the at least one information value utilizing a plurality of action agents, wherein the plurality of action agents are created through a declarative language by specifying one or more triggering conditions, one or more action invocation parameters, one or more information agents as pre-requisites, and one or more responses; and

rendering a response back to the user after the one or more actions are performed.

20. The method of claim 19 , wherein at least one set-value connection interrelates a given action agent and a given information agent via at least one set-value action, wherein the set-value action for the given action agent is used to set an information value for the given information agent which is later used by the given information agent.

Assignments (11)
RELEASE OF SECURITY INTEREST Recorded Feb 23, 2026
From: CHICAGO ATLANTIC ADMIN, LLC, AS ADMINISTRATIVE AGENT
To: AI SOFTWARE, LLC; ENVISION TELEPHONY, INC.; EQUALS 3, INC.
Reel/Frame 073860/0079 →
SECURITY INTEREST Recorded Feb 20, 2026
From: AI SOFTWARE, LLC; EQUALS 3, INC.; TEXTEL CX INC.; CREOVAI, INC.
To: MGG INVESTMENT GROUP LP, AS THE COLLATERAL AGENT
Reel/Frame 073851/0014 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 71413 FRAME: 361. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 21, 2025
From: AI SOFTWARE, LLC; ENVISION TELEPHONY, INC.; EQUALS 3, INC.
To: CHICAGO ATLANTIC ADMIN, LLC, AS ADMINISTRATIVE AGENT
Reel/Frame 073150/0484 →
RELEASE OF SECURITY INTEREST Recorded Jul 1, 2025
From: ORIX GROWTH CAPITAL, LLC
To: AI SOFTWARE LLC; TEXTEL CX, INC.; DENIM SOCIAL, LLC; SMARTACTION HOLDINGS, INC.; SMARTACTION LLC
Reel/Frame 071584/0601 →
SECURITY INTEREST Recorded Jun 13, 2025
From: AI SOFTWARE, LLC; ENVISION TELEPHONY, INC.; EQUALS 3, INC.
To: CHICAGO ATLANTIC LOAN ADMIN, LLC, AS ADMINISTRATIVE AGENT
Reel/Frame 071413/0361 →
SECURITY INTEREST Recorded Feb 25, 2025
From: AI SOFTWARE, LLC; TEXTEL CX, INC.; DENIM SOCIAL LLC; SMARTACTION HOLDINGS, INC.; SMARTACTION LLC
To: ORIX GROWTH CAPITAL, LLC
Reel/Frame 070324/0410 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2024
From: RS1NEEDLE, INC.
To: AI SOFTWARE, LLC
Reel/Frame 068816/0936 →
RELEASE OF SECURITY INTEREST Recorded Oct 2, 2024
From: HUMBOLDT LLC
To: RS1NEEDLE, INC.
Reel/Frame 068774/0111 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2024
From: LINC GLOBAL, INC.
To: RS1NEEDLE, INC.
Reel/Frame 068374/0255 →
ASSIGNMENT OF SECURITY INTEREST Recorded Oct 30, 2023
From: MTVL, LLC
To: HUMBOLDT LLC
Reel/Frame 065395/0309 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2021
From: CHENG, FANG; WU, DENNIS; CHEN, JIAN DA
To: LINC GLOBAL, INC.
Reel/Frame 055361/0825 →
Continuity (3)
Continuation 16853527 · Apr 20, 2020
Continuation 16528926 · Aug 1, 2019
Provisional Application 62862128 · Jun 16, 2019
Cited By (3)
US 12,229,784 US 12,488,785 US 12,694,066