IP Library Granted Patent US 12,475,151
Granted Patent B1
US 12,475,151 · App. 18/921,852 · Granted Nov 18, 2025

Fault tolerant multi-agent generative AI applications

Inventors: Vijay Madisetti (Alpharetta, GA); Arshdeep Bahga (Chandigarh, IN)
Assignee: Vijay Madisetti
G06F16/3329G06F40/284
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 12,475,151
App. No.
18/921,852
Filed
Oct 21, 2024
Granted
Nov 18, 2025
Kind
B1
Art Unit
3629
USPC
705/304
Abstract

A method for agent failure detection including listening for an agent heartbeat signal from an agent, updating a most recent heartbeat timestamp for the agent upon receiving the agent heartbeat signal from the agent or, upon not receiving the agent heartbeat signal, probing the agent for a response. Upon receiving the response from the agent, the suspect agent designation is removed from the agent and the most recent heartbeat timestamp is updated. Upon not receiving the response, the method further includes designating the agent as a failed agent, sending a message to a service mesh and/or a message pool regarding the agent being designated a failed agent, activating a shadow agent associated with the agent, and resuming operation with the shadow agent replacing the agent.

Claims (77)

1 . A method executable by a server for large language model (LLM) agent failure detection of an LLM system comprising one or more LLMs and one or more agents interacting with the one or more LLMs comprising:

listening for an agent heartbeat signal from an agent of the one or more agents;

upon receiving the agent heartbeat signal from the agent, updating a most recent heartbeat timestamp for the agent;

upon a heartbeat threshold length of time elapsing without hearing receiving the agent heartbeat signal from the agent, designating the agent as a suspect agent;

probing the agent for a response;

upon receiving the response from the agent:

removing the suspect agent designation from the agent; and

updating the most recent heartbeat timestamp;

upon a response threshold length of time elapsing without receiving the response from the agent:

designating the agent as a failed agent;

sending a message to at least one of a service mesh or a message pool associated with the one or more agents regarding the agent being designated a failed agent;

receiving a requirement comprising at least one of an application to be executed by the agent or receiving a task to be performed by the agent;

analyzing the requirement to determine whether the requirement requires a replacement with a lesser degree of similarity or requires a replacement with a greater degree of similarity;

activating a shadow agent associated with the agent responsive to analyzing the requirement, comprising upon determining the requirement requires a replacement with a greater degree of similarity:

removing the agent from the at least one of the service mesh or messaging pool between the one or more agents; and

launching a shadow agent configured to have a greater degree of similarity to the agent relative to a replacement with a lesser degree of similarity;

integrating the shadow agent into the at least one of the service mesh or messaging pool between the one or more agents; and

restoring a known good state of the agent to the shadow agent, comprising:

retrieving the known good state of the agent from a checkpoint storage;

applying the known good state to the shadow agent;

receiving an alert that the agent has failed from a watchdog process associated with the agent; and

resuming operation of the LLM system with the shadow agent replacing the agent.

2 . The method of claim 1 , wherein the one or more agents is a plurality of agents.

3 . The method of claim 1 further comprising, upon determining the requirement requires a replacement with a lesser degree of similarity relative to a replacement with a greater degree of similarity, launching a shadow agent operable to perform a similar function to the agent.

4 . The method of claim 1 further comprising, upon the heartbeat threshold length of time elapsing without receiving the response from the agent, performing one or more of:

reassigning one or more tasks assigned to the agent to another agent of the one or more agents;

allocating additional resources to one or more other agents of the one or more agents; and

spawning one or more new agents to supplement the one or more agents.

5 . The method of claim 1 further comprising operating one or more auxiliary services operable to support the operation of at least one agent of the one or more agents.

6 . The method of claim 5 wherein the one or more auxiliary services comprises at least one of:

a logging service configured to track at least one of interactions, decisions, and internals states of the agent;

a guardrails service operable to enforce at least one of ethical constraints and safety measures on actions performed by the agent;

a memory management service operable to manage at least one of short-term memory storage and retrieval and long-term memory storage and retrieval for the agent;

an explanation generator service operable to generate human-readable explanations for decisions produced by the agent; and

a resource monitor service operable to at least one of track resource usage and optimize resource usage of the agent.

7 . The method of claim 6 , wherein the auxiliary services are carried out by a sidecar service within a service mesh.

8 . A large language model (LLM) system having agent fault-tolerance comprising:

a non-transitory computer-readable medium having stored thereon software comprising code executed by a processor implementing a method for a large language model (LLM) agent failure detection of the LLM system comprising:

one or more LLMs;

a plurality of agents operable to interact with the one or more LLMs a communication module network operable to establish at least one of a message pool or a service mesh configured to facilitate communication between the agents comprised by the plurality of agents;

a failure detection algorithm comprising:

listen for an agent heartbeat signal from an agent of the plurality of agents;

upon receiving the agent heartbeat signal from the agent, update a most recent heartbeat timestamp for the agent;

upon a heartbeat threshold length of time elapsing without hearing receiving the agent heartbeat signal from the agent, designate the agent as a suspect agent;

probe the agent for a response;

upon receiving the response from the agent:

remove the suspect agent designation from the agent; and

update the most recent heartbeat timestamp;

upon a response threshold length of time elapsing without receiving the response from the agent:

designate the agent as a failed agent;

send a message to the at least one of a message pool or a service mesh regarding the agent being designated a failed agent;

receive a requirement comprising at least one of an application to be executed by the agent or receiving a task to be performed by the agent;

analyze the requirement to determine whether the requirement requires a replacement with a lesser degree of similarity or requires a replacement with a greater degree of similarity:

activate a shadow agent associated with the agent responsive to analyzing the requirement, comprising upon determining the requirement requires a replacement with a greater degree of similarity:

 removing the agent from the at least one of the service mesh or messaging pool between the one or more agents; and

 launching a shadow agent configured to have a greater degree of similarity to the agent relative to a replacement with a lesser degree of similarity:

 integrating the shadow agent into the at least one of the service mesh or messaging pool between the one or more agents; and

 restoring a known good state of the agent to the shadow agent, comprising:

 retrieving the known good state of the agent from a checkpoint storage;

 applying the known good state to the shadow agent;

 receiving an alert that the agent has failed from a watchdog process associated with the agent; and

resume operation of the LLM system with the shadow agent replacing the agent; and

a communication device positioned in electronic communication with the processor and operable to send and receive electronic communication.

9 . The system of claim 8 wherein the failure detection algorithm is further configured to, upon determining the requirement requires a replacement with a lesser degree of similarity relative to a replacement with a greater degree of similarity, launch a shadow agent operable to perform a similar function to the agent.

10 . The system of claim 8 wherein the failure detection algorithm is further configured to, upon the heartbeat threshold length of time elapsing without receiving the response from the agent, perform one or more of:

reassign one or more tasks assigned to the agent to another agent of the plurality of agents;

allocate additional resources to one or more other agents of the plurality of agents; and

spawn one or more new agents to supplement the plurality of agents.

11 . The system of claim 8 wherein the plurality of agents is configured to send an agent state to a checkpoint storage via the at least one of the message pool or the service mesh.

12 . The system of claim 8 wherein the communication network is operable to maintain a backup of messages received by the at least one of the message pool or the service mesh.

13 . The system of claim 8 wherein the communication network comprises an integrity checking network operable to maintain the integrity of messages received by the at least one of the message pool or the service mesh.

14 . The system of claim 8 wherein the software further comprises code that is executable for at least one of:

a logging service operable to track at least one of interactions, decisions, and internals states of the agent;

a guardrails service operable to enforce at least one of ethical constraints and safety measures on actions performed by the agent;

a memory management service operable to manage at least one of short-term memory storage and retrieval and long-term memory storage and retrieval for the agent;

an explanation generator service operable to generate human-readable explanations for decisions produced by the agent; and

a resource monitor service operable to at least one of track resource usage and optimize resource usage of the agent.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2025
From: BAHGA, ARSHDEEP
To: MADISETTI, VIJAY
Reel/Frame 070028/0542 →
Continuity (12)
Continuation In Part 18812707 · Aug 22, 2024
Continuation In Part 18470487 · Sep 20, 2023
Continuation 18348692 · Jul 7, 2023
Provisional Application 63693351 · Sep 11, 2024
Provisional Application 63647092 · May 14, 2024
Provisional Application 63607647 · Dec 8, 2023
Provisional Application 63607112 · Dec 7, 2023
Provisional Application 63535118 · Aug 29, 2023
Provisional Application 63534974 · Aug 28, 2023
Provisional Application 63529177 · Jul 27, 2023
Provisional Application 63469571 · May 30, 2023
Provisional Application 63463913 · May 4, 2023
References Cited (60)
US 5410475A · Lu et al. · 1995 [cited by applicant]
US 8346791B1 · Shukla et al. · 2013 [cited by applicant]
US 8775436B1 · Zhou et al. · 2014 [cited by applicant]
US 11194868B1 · Paka et al. · 2021 [cited by applicant]
US 11765207B1 · McCarthy · 2023 [cited by applicant]
US 11928569B1 · Douthit · 2024 [cited by applicant]
US 11995411B1 · Qadrud-Din et al. · 2024 [cited by applicant]
US 12020140B1 · Mondlock · 2024 [cited by applicant]
US 12039263B1 · Mondlock et al. · 2024 [cited by applicant]
US 12242503B1 · Kelsey et al. · 2025 [cited by applicant]
US 20070244937A1 · Flynn, Jr. · 2007 [cited by examiner]
US 20080015808A1 · Wilson et al. · 2008 [cited by applicant]
US 20080077569A1 · Lee et al. · 2008 [cited by applicant]
US 20080140616A1 · Encina et al. · 2008 [cited by applicant]
US 20090182741A1 · Chen et al. · 2009 [cited by applicant]
US 20090254512A1 · Broder et al. · 2009 [cited by applicant]
US 20090271700A1 · Chen · 2009 [cited by applicant]
US 20100138531A1 · Kashyap · 2010 [cited by examiner]
US 20110179075A1 · Kikuchi · 2011 [cited by applicant]
US 20120023073A1 · Dean et al. · 2012 [cited by applicant]
US 20120290521A1 · Frank et al. · 2012 [cited by applicant]
US 20140297845A1 · Tamura · 2014 [cited by examiner]
US 20160226710A1 · Cha et al. · 2016 [cited by applicant]
US 20180095845A1 · Sanakkayala · 2018 [cited by examiner]
US 20180314703A1 · Bull et al. · 2018 [cited by applicant]
US 20190081959A1 · Yadav · 2019 [cited by examiner]
US 20190130006A1 · Raviv et al. · 2019 [cited by applicant]
US 20190130902A1 · Itoh et al. · 2019 [cited by applicant]
US 20190354630A1 · Guo et al. · 2019 [cited by applicant]
US 20210240818A1 · Seksenov et al. · 2021 [cited by applicant]
US 20210303558A1 · Setlur et al. · 2021 [cited by applicant]
US 20210406735A1 · Nahamoo et al. · 2021 [cited by applicant]
US 20220124013A1 · Chitalia · 2022 [cited by examiner]
US 20220156262A1 · Chen et al. · 2022 [cited by applicant]
US 20240289560A1 · Kelly et al. · 2024 [cited by applicant]
US 20240354130A1 · Cadoni et al. · 2024 [cited by applicant]
US 20240354490A1 · Chauvin et al. · 2024 [cited by applicant]
US 20240386038A1 · Amershi et al. · 2024 [cited by applicant]
US 20240403567A1 · Dressler, II · 2024 [cited by applicant]
US 20240403634A1 · Hawes et al. · 2024 [cited by applicant]
US 20240404687A1 · Bell et al. · 2024 [cited by applicant]
US 20240412029A1 · Yang et al. · 2024 [cited by applicant]
US 20240412040A1 · Radmilac et al. · 2024 [cited by applicant]
US 20250005523A1 · Katta et al. · 2025 [cited by applicant]
US 20250036866A1 · Tunstall-Pedoe et al. · 2025 [cited by applicant]
US 20250036878A1 · Marwah et al. · 2025 [cited by applicant]
US 20250045256A1 · Gottlob et al. · 2025 [cited by applicant]
US 20250068665A1 · Chandel et al. · 2025 [cited by applicant]
A. Lavinia, C. Dobre, F. Pop and V. Cristea, “A Failure Detection System for Large Scale Distributed Systems,” 2010 International Conference on Complex, Intelligent and Software Intensive Systems, Krakow, Poland, 2010, … [cited by examiner]
M. N. Yanhaona, M. A. T. Prodhan and A. S. Grimshaw, “An agent-based distributed monitoring framework (Extended abstract),” 2015 International Conference on Networking Systems and Security (NSysS), Dhaka, Bangladesh, 20… [cited by examiner]
K. M. Sim, “Agent-Based Approaches for Intelligent Intercloud Resource Allocation,” in IEEE Transactions on Cloud Computing, vol. 7, No. 2, pp. 442-455, Apr. 1-Jun. 2019, doi: 10.1109/TCC.2016.2628375. (Year: 2019). [cited by examiner]
G. Koppensteiner, M. Merdan, W. Lepuschitz and I. Hegny, “Hybrid based approach for fault tolrance in a multi-agent system,” 2009 IEEE/ASME International Conference on Advanced Intelligent Mechatronics, Singapore, 2009,… [cited by examiner]
Non Final Office Action received in related U.S. Appl. No. 19/056,496 issued Apr. 17, 2025; 11 pages. [cited by applicant]
Non Final Office Action received in related U.S. Appl. No. 18/812,707 issued on Feb. 19, 2025; 14 pages. [cited by applicant]
Non Final Office Action received in related U.S. Appl. No. 19/040,471 issued on Apr. 9, 2025; 11 pages. [cited by applicant]
Non Final Office Action received in related U.S. Appl. No. 19/051,820 issued Apr. 14, 2025; 16 pages. [cited by applicant]
Notice of Allowance received in related U.S. Appl. No. 19/051,820 issued May 7, 2025; 23 pages. [cited by applicant]
Notice of Allowance received in related U.S. Appl. No. 18/812,707 issued on May 20, 2025; 26 pages. [cited by applicant]
G.A.S. Torrellas and L.B. Sheremetov, “An authentication protocol for agent platform security manager,” EFTA 2003. 2003 IEEE Conference on Emerging Technologies and Factory Automation. Proceedings (Cat. No. 03TH8696), L… [cited by applicant]
Notice of Allowance received in related U.S. Appl. No. 19/249,448 issued on Sep. 11, 2025; 25 pages. [cited by applicant]