Multi-agent cooperation method and computing device

By introducing an environment module and a review module into multi-agent collaboration to conduct real-time review of agent outputs, the problem of failure to correct errors in a timely manner during task execution in existing technologies is solved, thereby improving task efficiency.

WO2026103525A1PCT designated stage Publication Date: 2026-05-21ALIPAY (HANGZHOU) INFORMATION TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
ALIPAY (HANGZHOU) INFORMATION TECH CO LTD
Filing Date
2025-10-30
Publication Date
2026-05-21

Smart Images

  • Figure CN2025131205_21052026_PF_FP_ABST
    Figure CN2025131205_21052026_PF_FP_ABST
Patent Text Reader

Abstract

A multi-agent cooperation method and apparatus, and a computing device. The method comprises: inputting, into a first agent, process text corresponding to a target task; on the basis of the process text, the first agent outputting first text to be input into a second agent; on the basis of the process text, reviewing the first text, so as to obtain a first review result; and if the first text does not pass the review, on the basis of the process text, the first text and the first review result, the first agent generating second text to be input into the second agent.
Need to check novelty before this filing date? Find Prior Art

Description

A multi-agent cooperation method and computing device

[0001] This application claims priority to Chinese Patent Application No. 202411630809.2, filed on November 14, 2024, entitled "A Multi-Agent Collaboration Method and Computing Device", the entire contents of which are incorporated herein by reference. Technical Field

[0002] The embodiments in this specification belong to the field of computer technology, and in particular relate to a multi-agent cooperation method and computing device. Background Technology

[0003] An intelligent agent is a concept in artificial intelligence and computer science, generally referring to an autonomous system or entity capable of perceiving its environment, making decisions, and taking actions to achieve a certain goal. Intelligent agents can be software programs, robots, or other intelligent systems. They accomplish specific tasks or goals by perceiving and interacting with their environment. Intelligent agents can acquire environmental information through sensors, cameras, data interfaces, etc., to understand the current situation; make decisions through algorithms or rule systems, determining what actions to take in a specific environment to achieve the goal; and execute corresponding operations through actuators or output interfaces.

[0004] A multi-agent cooperation framework is a system architecture for coordinating multiple agents to collaborate on complex tasks. Within this framework, agents can share information, allocate tasks, and achieve common goals through collaborative decision-making and actions. Agents can be implemented using, for example, a large language model (LLM). Agents can interact based on modules corresponding to their environment (hereinafter referred to as environment modules). For instance, one agent can transmit information to another agent through the environment module.

[0005] In a multi-agent collaborative framework, multiple agents can be dynamically generated and adjusted according to task requirements, enabling automatic role allocation across different tasks and evaluation of the difference between actual and expected results upon task completion. However, this design results in feedback and optimization only occurring after the task is finished, potentially leading to a failure to correct errors or optimize strategies in a timely manner during task execution, thus reducing task efficiency. Summary of the Invention

[0006] The purpose of this invention is to provide a multi-agent collaboration scheme so that multiple agents can complete tasks in a more efficient manner.

[0007] This specification provides a multi-agent collaboration method, comprising: inputting a process text corresponding to a target task to a first agent, the process text including steps to be performed by each of a plurality of agents and information indicating the execution order of each step, the plurality of agents including the first agent and a second agent; the first agent outputting a first text for input to the second agent based on the process text; reviewing the first text based on the process text to obtain a first review result; and if the review fails, the first agent generating a second text for input to the second agent based on the process text, the first text, and the first review result.

[0008] In one implementation, the step of reviewing the first text based on the process text includes: inputting the process text to a third intelligent agent, having the third intelligent agent review the first text based on the process text, and outputting the first review result.

[0009] In one implementation, the step of the first agent outputting first text for input to the second agent based on the process text includes: the first agent generating the first text based on the process text and the output text of the fourth agent, wherein the fourth agent is the agent that ranks before the second agent in the process corresponding to the process text.

[0010] In one implementation, the first review result includes problems found in the first text or suggestions for modification of the first text.

[0011] In one implementation, inputting the process text corresponding to the target task to the first agent includes: inputting the process text corresponding to the target task to the first agent, and instructing the first agent to output a first text for inputting to the second agent.

[0012] In one implementation, the method further includes: if the review is passed, inputting the first text into the second intelligent agent.

[0013] In one embodiment, the method further includes: the second agent outputting a first output text based on the first text; inputting the first output text into the third agent; the third agent reviewing the first output text based on the process text and outputting a second review result; and inputting the first text, the first output text, and the second review result into the second agent if the second review result indicates that the review has failed.

[0014] In one embodiment, the method further includes updating or replacing the second intelligent agent if the second review result indicates that the review has failed.

[0015] In one implementation, the third agent reviews the first output text based on the process text, which includes: the third agent reviews the first output text based on the process text and the first text.

[0016] In one embodiment, the method further includes: the first agent outputting third text for input to a fifth agent based on the process text; reviewing the third text based on the process text, wherein the fifth agent is used to operate in parallel with the second agent.

[0017] In one embodiment, the method further includes: determining a second output text based on the target task text corresponding to the target task, the second output text including description information of the first agent, description information of the second agent, the association relationship between the first agent and the second agent, and the process text; inputting the second output text into the third agent; having the third agent review the second output text based on the target task text and output a third review result; and, if the third review result indicates that the review is passed, creating and setting the first agent and the second agent based on the description information and the association relationship.

[0018] In one implementation, inputting the second output text into the third agent includes:

[0019] The second output text is input into the third agent, instructing the third agent to determine whether the first agent and the second agent can complete the target task by executing the process corresponding to the process text, based on the second output text.

[0020] In one implementation, the target task is used to locate cross-domain message anomalies. The step of the first agent outputting a first text for input to the second agent based on the process text includes: the first agent outputting the first text based on the process text and message error information. The first text is used to instruct the second agent to perform reasoning based on the message error information to determine whether a specific type of anomaly exists.

[0021] In one implementation, the target task is used to generate an application, and the step of the first agent outputting first text for inputting a second agent according to the process text includes: the first agent outputting the first text according to the process text, wherein the first text is used to instruct the second agent to generate code corresponding to the target function.

[0022] A second aspect of this specification provides a multi-agent cooperative device, comprising:

[0023] An input unit is used to input process text corresponding to a target task into a first agent. The process text includes the steps to be performed by each agent among a plurality of agents and information indicating the execution order of each step. The plurality of agents include the first agent and a second agent.

[0024] An output unit is used to output first text for input to a second agent based on the process text by the first agent;

[0025] The review unit is used to review the first text based on the process text and obtain a first review result;

[0026] A generation unit is configured to, in the event that the review fails, generate a second text for input to the second agent by the first agent based on the process text, the first text, and the first review result.

[0027] A third aspect of this specification provides a computer-readable storage medium having a computer program stored thereon, which, when executed in a computer, causes the computer to perform the method described in the first aspect.

[0028] A fourth aspect of this specification provides a computing device including a memory and a processor, wherein the memory stores executable code, and the processor executes the executable code to implement the method described in the first aspect.

[0029] This specification provides a computer program product in a fifth aspect, including a computer program / instructions that, when executed by a processor, implement the steps of the method described in the first aspect.

[0030] This specification provides a multi-agent collaboration scheme in which the output of each agent in a collaborative task is reviewed, and the process is advanced based on the review results. This allows for the rapid discovery and optimization of problems that arise in the process, enabling multi-agent collaboration to better complete the task. Attached Figure Description

[0031] To more clearly illustrate the technical solutions of the embodiments in this specification, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments recorded in this specification. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0032] Figure 1 is a schematic diagram of the system architecture in an embodiment of this specification;

[0033] Figure 2 is a flowchart of the method for creating an intelligent agent for a target task in an embodiment of this specification;

[0034] Figure 3 is a schematic diagram of the content included in the text corresponding to the anomaly location task in the embodiments of this specification;

[0035] Figure 4 is a schematic diagram of the content included in the text corresponding to the application generation task in the embodiments of this specification;

[0036] Figure 5 is a flowchart of a multi-agent collaboration method in an embodiment of this specification;

[0037] Figure 6 is a flowchart of another multi-agent cooperation method in the embodiments of this specification;

[0038] Figure 7 is an architectural diagram of a multi-agent cooperative device in an embodiment of this specification. Detailed Implementation

[0039] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this specification, and not all embodiments. Based on the embodiments in this specification, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of this specification.

[0040] To address the problems existing in the aforementioned related technologies, this specification provides a multi-agent collaboration scheme, wherein the environment module, in conjunction with the review module, reviews the output of each agent among the multiple agents collaborating to complete the task, and advances the process based on the review results. This allows for the rapid discovery and optimization of problems that arise in the process, enabling multi-agent collaboration to complete the task with a more optimized process.

[0041] Figure 1 is a schematic diagram of the system architecture in an embodiment of this specification. As shown in Figure 1, the system may include an environment module, a creation agent module, a multi-agent module, and a review module. The environment module interacts with each agent in the creation agent / multi-agent module and the review module, allowing the environment module to work in conjunction with the review module to promote collaboration among multiple agents to complete a target task. Initially, the system may include an environment module, a creation agent module, and a review module. The environment module can input the target task text into the creation agent, and the creation agent can output description information of multiple agents (such as Agent1, Agent2, Agent3, and Agent4), the relationships between the multiple agents, and process text based on the target task text. The review module may include a review agent. The environment module can use the review module to review the information output by the creation agent. If the review is successful, the multi-agent module is created based on the description information of the multiple agents and the relationships between the multiple agents, including, for example, Agent1, Agent2, Agent3, and Agent4. The multi-agent collaboration process in an embodiment of this specification will be described below with reference to Figure 1.

[0042] Figure 2 is a flowchart of the method for creating an intelligent agent for a target task in an embodiment of this specification.

[0043] As shown in Figure 2, in step S201, the environment module inputs the target task text for creating the intelligent agent.

[0044] The environment module is a code module within the system used to interface with users and various intelligent agents to advance task flows. Users can input specific task requests into the environment module, which can then create the specific task based on the request and generate task text. After task creation, the environment module can store information related to the task, including the task request and task text.

[0045] After receiving a user's task request, the environment module first determines whether the request includes process information and agent specification information. If the request does not include process information and agent specification information, the environment module can determine whether the task involves a complex task requiring collaboration among multiple agents; for example, a large model can be used to determine if the task is complex. If so, the task is considered the target task, and the process shown in Figure 2 is executed for the target task. If the environment module determines the task is simple, it can execute the task using a single agent.

[0046] In one example, the target task might be to locate anomalies in a distributed system based on error messages. The request for this target task could include a description of the distributed system's architecture, a description of potential anomalies within the system, and so on. For instance, the distributed system might include multiple topic groups and one or more domains, each corresponding to a domain name. At least one of the following anomalies could occur in the distributed system: anomalies in topic group configurations, dirty data under a domain name, or single-machine anomalies. Dirty data under a domain name typically refers to a corrupted DNS server cache, leading to tampering with DNS resolution results or pointing to incorrect IP addresses.

[0047] In another example, the target task might be to generate a target application, such as an application for a library management system. The request for this target task might include information such as a description of the target application's functionality, a description of its interface, and a description of its operating environment. The target task text might include the name of the target application and the aforementioned descriptive information.

[0048] The environment module can input the target task text to create agents, thereby generating descriptions of multiple agents corresponding to the target task, their relationships, and the flow information of the target task. These agents can be obtained from existing large models, or by fine-tuning an existing large model based on training samples.

[0049] In step S203, the intelligent agent is created to output text0 based on the input information. Text0 includes description information, association information, and process information of the multiple intelligent agents to be created.

[0050] In one implementation, the created intelligent agent can output text0 based on the currently input target task text. This text0 may include preliminary process information, descriptions of multiple intelligent agents required to execute the process, and the relationships between these agents. The process information may include, for example, multiple process steps and the objectives to be achieved in each step. The agent descriptions may include at least one of the following: the agent's function, applicable domain, and user needs. The agent's function may include, for example, at least one of the following: code generation, reasoning, dialogue, recommendation, and content generation. Applicable domains may include, for example, healthcare, finance, education, and the internet. The relationships between multiple intelligent agents may include, for example, dependencies and subscription relationships between agents.

[0051] For example, Figure 3 is a schematic diagram of the content included in the text text0 corresponding to the above-mentioned anomaly localization task in an embodiment of this specification. The text text0 includes a description of Agent1, Agent2, and Agent4 in Figure 3. The relationship between the Agents defined in the text text0 is as follows: the output of Agent1 is used as the input of Agent2, and the outputs of Agent2 and Agent1 are used as the input of Agent4. At the same time, Agent1 can use the output of Agent2 as input to output text for inputting Agent4.

[0052] The process information in text0 includes, for example: Agent1 generates input text Text1 for Agent2 and provides input text Text1 to Agent2. This input text Text1 instructs Agent2 to determine whether there is an anomaly in the configuration of the topic group based on the error message; Agent2 performs reasoning based on input text Text1 and the error message to determine whether there is an anomaly in the configuration of the topic group, and provides output text Text2, which includes the determination result, to Agent1 and Agent4; Agent1 generates input text Text3 for Agent4 based on the process text and text Text2, and provides input text Text3 to Agent4. This input text Text3 instructs Agent4 to determine whether there is dirty data in each domain based on the error message; Agent4 performs reasoning based on text Text3 and text Text2 to determine whether there is dirty data in each domain.

[0053] Figure 4 is a schematic diagram of the content included in the text Text0 corresponding to the application generation task described above in the embodiments of this specification. The text text0 includes a description of Agent1, Agent2, Agent3, and Agent4 in Figure 4. The relationship between the Agents defined in the text text0 is as follows: the output of Agent1 is used as the input of Agent2, Agent3, and Agent4, respectively; Agent4 depends on the input of Agent2 and Agent3; the output of Agent4 is used as the input of Agent2 and Agent3; and the outputs of Agent2 and Agent3 are also used as the input of Agent1, etc.

[0054] The process information in text0 includes, for example, the following: Agent1 generates input texts for Agent2 and Agent3 and provides them to Agent1 and Agent2 respectively. For instance, Agent2's input text instructs Agent2 to generate client code and the required functionality f1, while Agent3's input text instructs Agent3 to generate server code and the required functionality f2, etc. Agent2 and Agent3 generate corresponding code in parallel based on the text output by Agent1. Agent2 generates code corresponding to functionality f1, and Agent3 generates code corresponding to functionality f2. After generating the code, Agent2 and Agent3 provide the code to Agent4 and Agent1 respectively. After Agent1 determines that Agent2 and Agent3 have completed the code generation, it generates input text for Agent4 and provides it to Agent4. This input text instructs Agent4 to test the generated code. Agent4 tests the code based on the text input by Agent1. If the test fails, Agent4 provides the problems in the code to Agent2 and Agent3 respectively.

[0055] In step S205, an agent is created to provide the text text0 to the environment module.

[0056] In one implementation, the environment module can obtain the text text0 by reading the text text0 of the created agent's output. It is understood that the embodiments of this specification are not limited to the environment module reading the created agent's output, but the text text0 of the created agent's output can be obtained through other known methods. For example, the environment module can subscribe to the created agent's output so that the created agent pushes its output to the environment module. After obtaining the created agent's output, the environment module stores the output and records its status, for example, as "pending review".

[0057] In step S207, the environment module inputs the text text0 and the target task text into the review module.

[0058] In step S209, the review module reviews the text0 based on the target task text and outputs the review results.

[0059] The review module can be used to review whether text0 can be used to achieve the target task. Specifically, the review module can review whether the multiple agents described in text0 meet the requirements of the target task, whether the multiple agents can achieve the target task by executing multiple steps in the process according to their relationship, and whether the output of each agent conforms to the preset structure, etc.

[0060] In one embodiment, the review module may include a preset code module that reviews the text0 based on preset review rules and the target task text. In another embodiment, the review module may include an agent for review (hereinafter referred to as the review agent), which can be input with the target task text and the text0, and thus the review agent can output the corresponding review result.

[0061] The review module outputs a review result indicating whether the review has passed or failed. In the case of a failed review, the review result may also include at least one of the following: the reason for the failure, the problems existing in text0, and suggestions for modifying text0.

[0062] In step S211, the review module provides the review results to the environment module.

[0063] In step S213, the environment module determines whether the review is passed. If the review is passed, the environment module executes step S217, creating multiple agents based on the text text0 and establishing (or setting) the relationships between the multiple agents. The environment module can also set the initial values ​​of the states of each agent (e.g., empty state). In addition, the environment module can update the output state of the created agents to indicate that the review has passed.

[0064] In cases where the review fails, in step S215, the environment module inputs the target task text, the current text text0, and the review result to the agent. The agent can then re-execute step S203, outputting an updated text text0 based on the input target task text, the current text text0, and the review result. This allows the review module to output a more complete text text0 for completing the target task. After re-executing step S203, steps S205-S213 can continue in the order shown in the flowchart. In step S213, the review result determines whether to execute step S215 or step S217. The agent can repeat the above process until the review passes or the maximum number of reviews is reached, ultimately generating a text text0 that has been optimized multiple times. The agent then provides this text text0 to the environment module, which stores it, records its status as "review passed," and executes step S217. Based on this text text0, multiple agents (e.g., multiple agents as shown in Figure 3 or Figure 4) are created, and their relationships are established.

[0065] It is understood that although this embodiment shows the generation of text0 by creating an agent, this embodiment is not limited to this. For example, text0 can be generated by other text generation modules (or models). In addition, when the user directly specifies the target task and the corresponding process information and information of multiple agents, the environment module can directly create multiple agents based on the information provided by the user.

[0066] After creating multiple agents, the environment module can use these agents to collaborate and drive the process until the target task is completed.

[0067] Figure 5 is a flowchart of a multi-agent collaboration method in an embodiment of this specification.

[0068] As shown in Figure 5, in step S501, the environment module inputs process text to Agent1, instructing Agent1 to generate input text Text1 for Agent2 based on the process text.

[0069] The environment module can obtain process information from the aforementioned Text0 text and input this process information as process text into Agent1. This process text corresponds, for example, to the process shown in Figure 3 or Figure 4, and Agent1 is, for example, Agent1 in Figure 3 or Figure 4.

[0070] In one implementation, the environment module can input the process text and Agent2's identifier into Agent1 together, instructing Agent1 to output the text used to input Agent2.

[0071] After the environment module inputs the process text into Agent1, it can record the operation as the process status.

[0072] In step S503, Agent1 outputs the text Text1 used to input Agent2 based on the input information.

[0073] In one implementation, for the above-mentioned anomaly localization task, Agent1 generates Text1 based on the process text. This Text1 may, for example, be used to instruct Agent2 to determine whether there is an anomaly in the configuration of the topic group based on the error message.

[0074] In another implementation, for the application generation task described above, Agent1 generates text texts Text1 and Text1' corresponding to Agent2 and Agent3 respectively, based on the process text. Text1, for example, instructs Agent2 to generate client-side code code1 corresponding to function f1, and Text1', for example, instructs Agent3 to generate server-side code code2 corresponding to function f2. The following description uses only Text1 as an example.

[0075] In step S505, Agent1 provides the text Text1 to the environment module.

[0076] The environment module can read the text Text1 by reading the output text from Agent1, store the text Text1 in association with Agent1, and record the status of the text Text1 as "pending review".

[0077] In step S507, the environment module inputs the process text, text1, the identifier of Agent1 and the identifier of Agent2 into the review module, instructing the review module to review text1.

[0078] The environment module can input process text, text1, the identifier of Agent1, and the identifier of Agent2 into the review module in a predetermined format. This indicates that text1 is generated by Agent1 based on the process text and used as input to Agent2, and instructs the review module to review text1. The environment module can also use natural language to indicate that text1 is generated by Agent1 based on the process text and used as input to Agent2, and instruct the review module to review text1.

[0079] In step S509, the review module reviews the text Text1 based on the process text, the identifier of Agent1, and the identifier of Agent2, and outputs the review results.

[0080] As mentioned above, the review module can conduct reviews based on preset rules or based on a review agent.

[0081] The review module can review whether Text1 conforms to the corresponding process in the process text, the description of Agent2, and whether Text1 corresponds to the instructions in the input information of Agent1, and thus output the review results.

[0082] For example, in an anomaly localization task, the review module can examine whether the indication for Agent2 in Text1 corresponds to the function of Agent2 described in the process text (i.e., determining whether there is an anomaly in the configuration of the topic group based on the error message). In the application generation task, the review module can examine whether the indication in Text1 corresponds to the function of Agent2 described in the process text (i.e., generating the client's code code1 corresponding to function f1).

[0083] In cases where the review is passed, the review result indicates that the text Text1 has passed the review; in cases where the review is not passed, the review module can also generate problems with the text Text1.

[0084] In step S511, the review module provides the review results to the environment module.

[0085] In step S513, the environment module determines whether the review is passed.

[0086] In cases where the review fails, the review module executes step S515, inputting the process text, the current text Text1, and the review result to Agent1. Agent1 can then re-execute step S503, regenerating Text1 based on the input process text, the current text Text1, and the review result. This updated Text1 takes into account the issues present in the original Text1 included in the review result, resulting in a more optimized text. Steps S505-S513 can then be executed again to determine if the updated Text1 passes the review. By repeatedly looping these steps, a superior Text1 can ultimately be obtained.

[0087] In one implementation, if the review of Text1 still fails after multiple iterations, the environment module can re-input the input and output data of Agent1 from the multiple iterations to the creation agent, so that the creation agent can redetermine a more optimized Agent1.

[0088] If the review is successful, the environment module can update the status of Text1 to "Review Successful" and input Text1 into Agent2, thereby advancing the process.

[0089] Figure 6 is a flowchart of another multi-agent cooperation method in the embodiments of this specification.

[0090] As shown in Figure 6, in step S601, the environment module inputs the text Text1 into Agent2.

[0091] In the anomaly localization task, this step corresponds to the arrow pointing from Agent1 to Agent2 in Figure 3. That is, the environment module inputs Text1 into Agent2 based on the description of Text1 in the process information (or process text) (i.e., Agent1 provides Text1 to Agent2). Similarly, in the application generation task, the environment module inputs Text1 into Agent2 based on the description of Text1 in the process information.

[0092] In step S603, Agent2 outputs text Text2 based on the input information.

[0093] Specifically, in the anomaly localization task, Agent2, based on the instructions in Text1, reads multiple error messages from the distributed system through a pre-defined interface. It analyzes these error messages to determine if they are concentrated on a single topic group. If so, it determines whether the configuration of that single topic group is abnormal; otherwise, it determines that the configurations of each topic group are not abnormal. After completing this reasoning, Agent2 outputs Text2, which indicates whether the configurations of each topic group are abnormal.

[0094] In the application generation task, Agent2 outputs text Text2 based on the instructions in text Text1. Text1 contains the code corresponding to function f1.

[0095] In step S605, Agent2 provides the text Text2 to the environment module.

[0096] In step S607, the environment module inputs the process text, the identifier of Agent2, and the text Text2 into the review module, instructing the review module to review the text Text2.

[0097] The environment module can input the process text, the identifier of Agent2, and the text Text2 into the review module in a predetermined order (or format) to instruct the text Text2 to be output by Agent2 and to instruct the review module to review the text Text2 based on the process text. The environment module can also instruct the text Text2 to be output by Agent2 in natural language and to instruct the review module to review the text Text2 based on the process text.

[0098] In one implementation, the environment module can input the process text, the identifier of Agent2, text Text1, and text Text2 into the review module, and instruct the review module to review text Text2 based on the process text and text Text1.

[0099] In step S609, the review module reviews the text Text2 based on the process text and outputs the review results.

[0100] The review module can review whether Text2 conforms to the corresponding process in the process text, the description of Agent2, and whether Text2 corresponds to the instructions in the input information (Text1) of Agent2, and thus output the review results.

[0101] For example, in an anomaly localization task, the review module can examine whether the text Text2 contains a definitive result stating "the configuration of the topic group is either present or absent." In the application generation task, the review module can examine whether the text Text2 contains the code code1 corresponding to function f1.

[0102] In cases where the review is passed, the review result indicates that the text Text2 has passed the review; in cases where the review is not passed, the review module can also generate problems with the text Text2.

[0103] In step S611, the review module provides the review results to the environment module.

[0104] In step S613, the environment module determines whether the review is passed.

[0105] In cases where the review fails, the review module executes step S615, inputting text Text1, the current text Text2, and the review result to Agent2. Agent2 can then re-execute step S603, regenerating text Text2 based on the input text Text1, the current text Text2, and the review result. This updated text Text2 takes into account the issues present in the original text Text2 included in the review result, thus resulting in a more optimized text. Steps S605-S613 can then be executed again to determine whether the updated text Text2 passes the review. By repeatedly looping these steps, a superior text Text2 can ultimately be obtained.

[0106] In one implementation, if the review of Text2 still fails after multiple iterations, the environment module can re-input the input and output data of Agent2 from the multiple iterations to the creating agent, so that the creating agent can redetermine a more optimized Agent2.

[0107] If the review is passed, the environment module can record the status of text Text2 as "review passed". Then, it executes step S617, inputting the process text, text Text2, and the identifier of Agent2 into Agent1, instructing Text2 to be output by Agent2, and instructing Agent1 to generate text Text3 for input to Agent4.

[0108] Specifically, in the application generation task shown in Figure 4, after the environment module determines that the output text Text2 of Agent2 and the output text Text2′ of Agent3 have both passed the review, it inputs the process text, text Text2, the identifier of Agent2, text Text2′ and the identifier of Agent3 into Agent1, instructs that Text2 be output by Agent2 and Text2′ be output by Agent2′, and instructs Agent1 to generate text Text3 for input to Agent4 based on the process text, text Text2 and text Text2′.

[0109] In step S619, Agent1 outputs the text Text3 used to input Agent4 based on the input information.

[0110] Specifically, in the anomaly localization task, Agent1 can generate text Text3 based on the input process text, text Text2, and Agent2's identifier. This text Text3 is used to instruct Agent4 to determine whether there is dirty data in each domain based on the error information.

[0111] In the application generation task, Agent1 can generate text Text3 based on the input process text, text Text2 and Agent2's identifier, text Text2' and Agent3's identifier. This text Text3 is used to instruct Agent3 to test the code included in text Text2 and the code included in text Text2'.

[0112] After Agent4 outputs based on the input information, it can be processed in a manner similar to that shown in Figure 6. That is, the environment module reviews the text output by Agent4 through the review module, and the process is promoted if the review is passed.

[0113] In one implementation, referring to FIG4, in the application generation task, the output text Text4 of Agent4 may include feedback information on Agent2 and Agent3 (i.e., problems in the code). After the environment module approves the output text Text4 of Agent4, it can re-input text Text1 and text Text4 into Agent2 so that Agent2 can re-execute step S603 in FIG6 and output according to the input information. Then, the process can be promoted by re-executing steps S605-S619.

[0114] Figure 7 is an architectural diagram of a multi-agent cooperative device according to an embodiment of this specification, including:

[0115] Input unit 71 is used to input the process text corresponding to the target task into the first intelligent agent;

[0116] Output unit 72 is used by the first agent to output the first text for input to the second agent based on the process text;

[0117] The review unit 73 is used to review the first text based on the process text to obtain a first review result;

[0118] The generation unit 74 is configured to, in the event that the review fails, generate a second text for inputting into the second agent by the first agent based on the process text, the first text, and the first review result.

[0119] In one embodiment, the review unit 73 is further configured to: input the process text to a third intelligent agent, and have the third intelligent agent review the first text based on the process text, and output the first review result.

[0120] In one embodiment, the output unit 72 is further configured to:

[0121] The first intelligent agent generates the first text based on the process text and the output text of the fourth intelligent agent, wherein the fourth intelligent agent is the intelligent agent that ranks before the second intelligent agent in the process corresponding to the process text.

[0122] In one implementation, the first review result includes problems found in the first text or suggestions for modification of the first text.

[0123] In one implementation, the input unit is further configured to: input process text corresponding to the target task to the first agent, and instruct the first agent to output first text for inputting into the second agent.

[0124] In one implementation, the input unit is further configured to: input the first text into the second intelligent agent if the review is passed.

[0125] In one embodiment, the output unit is further configured to output a first output text by the second agent based on the first text; the input unit is further configured to input the first output text into the third agent; the review unit is further configured to review the first output text by the third agent based on the process text and output a second review result; the input unit is further configured to input the first text, the first output text, and the second review result into the second agent if the second review result indicates that the review has failed.

[0126] In one embodiment, the apparatus further includes an update unit for updating or replacing the second intelligent agent if the second review result indicates that the review has failed.

[0127] In one implementation, the review unit is further configured to: have the third agent review the first output text based on the process text and the first text.

[0128] In one embodiment, the output unit is further configured to output a third text for input to a fifth agent based on the process text by the first agent; the review unit is further configured to review the third text based on the process text, and the fifth agent is configured to operate in parallel with the second agent.

[0129] In one embodiment, the output unit is further configured to have the creating agent output a second output text based on the target task text corresponding to the target task. The second output text includes the description information of the first agent, the description information of the second agent, the association relationship between the first agent and the second agent, and the process text.

[0130] The input unit is also used to input the second output text into the third intelligent agent;

[0131] The review unit is further configured to have the third agent review the second output text based on the target task text and output a third review result; the device further includes a creation unit, configured to create and set the first agent and the second agent according to the description information and the association relationship when the third review result indicates that the review has passed.

[0132] In one embodiment, the input unit is further configured to: input the second output text into the third agent, instructing the third agent to determine whether, based on the second output text, the first agent and the second agent can complete the target task by executing the process corresponding to the process text.

[0133] In one implementation, the target task is used to locate cross-domain message anomalies, and the output unit is further used to: output the first text by the first agent based on the process text and message error information, wherein the first text is used to instruct the second agent to perform reasoning based on the message error information to determine whether a specific type of anomaly exists.

[0134] In one implementation, the target task is used to generate an application, and the output unit is further used to: output the first text by the first agent according to the process text, wherein the first text is used to instruct the second agent to generate code corresponding to the target function.

[0135] In the 1990s, improvements to a technology could be clearly distinguished as either hardware improvements (e.g., improvements to the circuit structure of diodes, transistors, switches, etc.) or software improvements (improvements to the methodology). However, with technological advancements, many methodological improvements today can be considered direct improvements to the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved methodology into the hardware circuit. Therefore, it cannot be said that a methodological improvement cannot be implemented using hardware physical modules. For example, a Programmable Logic Device (PLD) (such as a Field Programmable Gate Array (FPGA)) is such an integrated circuit whose logic function is determined by the user programming the device. Designers can program and "integrate" a digital system onto a PLD themselves, without needing chip manufacturers to design and manufacture dedicated integrated circuit chips. Furthermore, nowadays, instead of manually manufacturing integrated circuit chips, this programming is mostly implemented using "logic compiler" software. Similar to the software compiler used in program development, the original code before compilation must also be written in a specific programming language, called a Hardware Description Language (HDL). There are many HDLs, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, and RHDL (Ruby Hardware Description Language). Currently, the most commonly used are VHDL (Very-High-Speed ​​Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should also understand that by simply performing some logic programming on the method flow using one of these hardware description languages ​​and programming it into an integrated circuit, the hardware circuit implementing the logical method flow can be easily obtained.

[0136] The controller can be implemented in any suitable manner. For example, it can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers. Examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicon Labs C8051F320. A memory controller can also be implemented as part of the control logic of the memory. Those skilled in the art will also recognize that, in addition to implementing the controller in purely computer-readable program code form, the same functionality can be achieved by logically programming the method steps to make the controller take the form of logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the means included therein for implementing various functions can also be considered as structures within the hardware component. Alternatively, the means for implementing various functions can be considered as both software modules implementing the method and structures within the hardware component.

[0137] The systems, devices, modules, or units described in the above embodiments can be implemented by computer chips or physical entities, or by products with certain functions. A typical implementation device is a server system. Of course, this application does not exclude the possibility that, with the future development of computer technology, the computer implementing the functions of the above embodiments can be, for example, a personal computer, a laptop computer, an in-vehicle human-machine interaction device, a cellular phone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or any combination of these devices.

[0138] While one or more embodiments of this specification provide the operational steps of the methods described in the embodiments or flowcharts, more or fewer operational steps may be included based on conventional or non-inventive means. The order of steps listed in the embodiments is merely one possible order of execution among many steps and does not represent the only possible order. In actual device or end product execution, the methods shown in the embodiments or drawings may be executed sequentially or in parallel (e.g., in a parallel processor or multi-threaded processing environment, or even a distributed data processing environment). The terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, product, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, product, or apparatus. Without further limitations, the presence of other identical or equivalent elements in the process, method, product, or apparatus that includes the elements is not excluded. For example, the use of terms such as "first," "second," etc., is to denote names and does not indicate any particular order.

[0139] For ease of description, the above devices are described in terms of function, divided into various modules. Of course, when implementing one or more of these specifications, the functions of each module can be implemented in one or more software and / or hardware components, or a module that performs the same function can be implemented by a combination of multiple sub-modules or sub-units. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, indirect coupling or communication connection between devices or units, and may be electrical, mechanical, or other forms.

[0140] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in one or more blocks of the flowchart illustrations and / or one or more blocks of the block diagrams.

[0141] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means that implement the functions specified in one or more flowcharts and / or one or more block diagrams.

[0142] These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, such that the instructions, which execute on the computer or other programmable apparatus, provide steps for implementing the functions specified in one or more flowcharts and / or one or more block diagrams.

[0143] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0144] Memory may include non-persistent storage in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.

[0145] Computer-readable media includes both permanent and non-permanent, removable and non-removable media that can store information by any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic disk storage, graphene storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.

[0146] Those skilled in the art will understand that one or more embodiments of this specification can be provided as a method, system, or computer program product. Therefore, one or more embodiments of this specification may take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, one or more embodiments of this specification may take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0147] One or more embodiments of this specification can be described in the general context of computer-executable instructions, such as program modules, that are executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform a particular task or implement a particular abstract data type. One or more embodiments of this specification can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.

[0148] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, system embodiments are basically similar to method embodiments, so the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments. In the description of this specification, the terms "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of this specification. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described can be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification and the features of different embodiments or examples.

[0149] The above description is merely an embodiment of one or more embodiments of this specification and is not intended to limit the scope of these embodiments. Various modifications and variations can be made to these embodiments by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this specification should be included within the scope of the claims.

Claims

1. A multi-agent cooperative method, comprising: The first agent is input with a process text corresponding to the target task. The process text includes the steps to be performed by each of the multiple agents and information indicating the execution order of each step. The multiple agents include the first agent and the second agent. The first intelligent agent outputs a first text for inputting into the second intelligent agent based on the process text; Based on the process text, the first text is reviewed to obtain a first review result; If the review fails, the first agent generates a second text for input to the second agent based on the process text, the first text, and the first review result.

2. The method of claim 1, the reviewing the first text based on the flow text comprising: The process text is input to the third intelligent agent, which then reviews the first text based on the process text and outputs the first review result.

3. The method according to claim 1, wherein the step of the first agent outputting first text for inputting into the second agent based on the process text includes: The first intelligent agent generates the first text based on the process text and the output text of the fourth intelligent agent, wherein the fourth intelligent agent is the intelligent agent that ranks before the second intelligent agent in the process corresponding to the process text.

4. The method of claim 1, wherein, The first review result includes problems found in the first text or suggestions for modification of the first text.

5. The method according to claim 1, wherein inputting the process text corresponding to the target task to the first intelligent agent includes: The first agent is given a flow text corresponding to the target task, and the first agent is instructed to output a first text for inputting into the second agent.

6. The method of claim 2, further comprising: If the review is passed, the first text is input into the second agent.

7. The method according to claim 6, further comprising: The second intelligent agent outputs a first output text based on the first text; The first output text is input into the third intelligent agent; The third intelligent agent reviews the first output text based on the process text and outputs a second review result; If the second review result indicates that the review has failed, the first text, the first output text, and the second review result are input into the second intelligent agent.

8. The method of claim 7, further comprising: If the second review result indicates that the review has failed, the second intelligent agent shall be updated or replaced.

9. The method of claim 7, reviewing, by the third intelligent agent, the first output text based on the flow text, comprising: The third intelligent agent reviews the first output text based on the process text and the first text.

10. The method of claim 1, further comprising: The first intelligent agent outputs a third text for input to the fifth intelligent agent based on the process text; The third text is reviewed based on the process text, and the fifth agent is used to operate in parallel with the second agent.

11. The method of claim 2, further comprising: The second output text is determined based on the target task text corresponding to the target task. The second output text includes the description information of the first agent, the description information of the second agent, the association relationship between the first agent and the second agent, and the process text. The second output text is input into the third intelligent agent; The third intelligent agent reviews the second output text based on the target task text and outputs a third review result; If the third review result indicates that the review is passed, the first agent and the second agent are created and set up according to the description information and the association.

12. The method according to claim 11, wherein inputting the second output text into the third agent comprises: The second output text is input into the third agent, instructing the third agent to determine whether the first agent and the second agent can complete the target task by executing the process corresponding to the process text, based on the second output text.

13. The method according to claim 1, wherein the target task is used to locate cross-domain message anomalies. The outputting, by the first intelligent agent, first text for inputting the second intelligent agent according to the process text comprises: The first agent outputs the first text based on the process text and message error information. The first text is used to instruct the second agent to perform reasoning based on the message error information to determine whether a specific type of anomaly exists.

14. The method according to claim 1, wherein the target task is used to generate an application. The step of the first agent outputting first text for input to the second agent based on the process text includes: The first agent outputs the first text based on the process text, and the first text is used to instruct the second agent to generate code corresponding to the target function.

15. A multi-agent cooperative device, comprising: An input unit is used to input process text corresponding to a target task into a first agent. The process text includes the steps to be performed by each agent among a plurality of agents and information indicating the execution order of each step. The plurality of agents include the first agent and a second agent. An output unit is used to output first text for input to a second agent based on the process text by the first agent; The review unit is used to review the first text based on the process text and obtain a first review result; A generation unit is configured to, in the event that the review fails, generate a second text for input to the second agent by the first agent based on the process text, the first text, and the first review result.

16. A computing device comprising a memory and a processor, wherein the memory stores executable code, and the processor, when executing the executable code, implements the method of any one of claims 1-14.