Multi-agent system

JP2026141399APending Publication Date: 2026-09-04ELVEZ INC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2025027983
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-02-25
Publication Date
2026-09-04

AI Technical Summary

Benefits of technology

【0006】 本技術に係るマルチエージェントシステムは、所定の処理を実行するように役割分担がなされた複数のAIエージェントが、メッセージの送受信により連携して動作するように構成されている。すなわち、何らかの機能の改修を行う場合、関連するAIエージェントのみを変更することにより、関連しない既存の機能に影響が生じることを抑制できる。したがって、大規模言語モデルを利用したシステムに対する変更を容易にすることができる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026141399000001_ABST
    Figure 2026141399000001_ABST
Patent Text Reader

Abstract

To facilitate the customization of systems that utilize large-scale language models. [Solution] The multi-agent system includes multiple AI agents equipped with a large-scale language model and capable of input and output via messages written in natural language. The multiple AI agents include a first agent that performs a first process and a second agent that performs a second process different from the first process, and the first agent is configured to request the second agent to perform the second process by sending a message.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a multi-agent system including a large-scale language model.

Background Art

[0002] Conventionally, an information processing apparatus that causes an AI agent to generate an answer has been proposed (for example, Patent Document 1). The information processing apparatus includes: a reception unit that receives a question about an item for sale; a generation unit that inputs input information including information of the question and information for outputting an answer to the question to an AI agent that generates and outputs information corresponding to input information, and causes the AI agent to generate answer information that is information indicating an answer to the question; and a providing unit that provides the answer information generated by the generation unit. Furthermore, when a goal is given to the AI agent, the AI agent causes a large-scale language model to generate tasks for achieving the goal, collects information for causing the large-scale language model to execute the generated tasks, and outputs information for achieving the goal by repeating the process of causing the large-scale language model to execute the tasks. The generation unit causes the AI agent to generate answer information by using, as the input information, information further including information indicating a desire to sell the item for sale quickly or information indicating a desire to sell the item for sale at a high price as information indicating the wish of a seller of the item for sale.

Prior Art Literature

Patent Literature

[0003]

Patent Document 1

Summary of the Invention

Problem to be Solved by the Invention

[0004] In conventional systems utilizing large-scale language models, extending, modifying, and customizing functionality is not easy. Achieving these changes requires modifying the model used to adapt to new requirements, or retraining and fine-tuning the model, leading to increased development costs. Therefore, this technology aims to facilitate modifications to systems using large-scale language models. [Means for solving the problem]

[0005] The multi-agent system relating to this technology includes multiple AI agents equipped with a large-scale language model and capable of input and output via messages written in natural language. The multiple AI agents include a first agent that performs a first process and a second agent that performs a second process different from the first process, and the first agent is configured to request the second agent to perform the second process by sending a message. [Effects of the Invention]

[0006] The multi-agent system related to this technology is configured so that multiple AI agents, each assigned a specific role to perform predetermined processes, cooperate by sending and receiving messages. In other words, when modifying any function, it is possible to minimize the impact on unrelated existing functions by changing only the relevant AI agents. Therefore, it is possible to easily modify systems that utilize large-scale language models. [Brief explanation of the drawing]

[0007] [Figure 1] Figure 1 is a block diagram showing an example of the functional configuration of a multi-agent system. [Figure 2] Figure 2 is a hardware configuration diagram showing an example of a computer. [Figure 3] Figure 3 is a processing flow diagram showing an example of the process performed by the AI ​​agent. [Figure 4]Figure 4 shows an example of the UI layout displayed on the user's device. [Figure 5] Figure 5 is a diagram illustrating the addition of an agent to the system. [Figure 6] Figure 6 is a sequence diagram showing an example of a partial process performed by the system. [Modes for carrying out the invention]

[0008] Figure 1 is a block diagram showing an example of the functional configuration of a multi-agent system according to this embodiment. The multi-agent system (also simply referred to as "the system") 1 includes a plurality of AI (Artificial Intelligence) agents 2 (2A, 2B, 2C, ...), an externally generated AI 3 used by a predetermined AI agent 2, one or more user terminals 4, and one or more administrator terminals 5, and these components are connected to each other so as to be able to communicate with one another via a network 6.

[0009] The AI ​​agent 2 in this embodiment is equipped with an LLM (Large Language Model). The AI ​​agent 2 receives a request from the user terminal 4 in the form of text written in natural language, generates a text response according to the content of the request, and sends it to the user terminal 4. In addition, multiple AI agents 2 also send and receive text from each other, so that each one can respond to requests from other AI agents 2.

[0010] Within System 1, text messages can be sent and received based on any protocol. For example, an HTTP request containing a text message may be sent to a URL to identify the AI ​​agent 2 to communicate with, based on the HTTP (Hypertext Transfer Protocol) protocol, and an HTTP response containing a text message generated by the AI ​​agent 2 to communicate with may be received. In other words, the AI ​​agent 2 may be implemented by a web server.

[0011] The AI ​​agent 2, user terminal 4, externally generated AI 3, etc., shown in Figure 1 are realized by a computer executing a predetermined program. Note that each AI agent 2 may be implemented on a different computer, or multiple AI agents 2 may be implemented on a single computer. Figure 2 is a hardware configuration diagram showing an example of a computer. The computer 100 shown in Figure 2 comprises a processor 101, a primary storage device 102, a secondary storage device 103, a communication interface (I / F) 104, and an input / output interface (I / F) 105. The processor 101 operates based on a program stored in the primary storage device 102 or the secondary storage device 103, and functions, for example, as an AI agent 2. The primary storage device 102 temporarily stores programs read by the processor 101 and temporarily stores data as a workspace for the processor 101. The secondary storage device 103 stores programs executed by the processor 101 and data used by the programs. The communication I / F 104 sends and receives data to and from other devices via a network. The I / F105 is an interface that conforms to a predetermined standard, for example, to receive data from input devices such as keyboards, pointing devices, and touch panels, and to output data to output devices such as displays, speakers, and printers. It is also a media interface (I / F) for connecting to a reading device that reads programs stored on a recording medium, or a read / write device that reads and writes data to a recording medium. Recording media include optical recording media such as DVD (Digital Versatile Disc) and BD (Blu-ray® Disc), magneto-optical recording media such as MO (Magneto-Optical disk), tape media, magnetic recording media, or semiconductor memory.

[0012] The AI ​​agent 2 in Figure 1 comprises LLM21 (21A, 21B, 21C, ...), a cooperative control unit 22 (22A, 22B, 22C, ...), and a specialized function unit 23 (23A, 23B, 23C, ...).

[0013] LLM21 is a relatively lightweight, large-scale language model that operates locally (in other words, on the computer where the program that runs AI agent 2 is executed). The functions that LLM21 provides will also be referred to as the "brain." LLM21 is, for example, a Transformer model that has been pre-trained on a large amount of text data, and can perform input and output in natural language via text. When LLM21 receives a text-based request from user terminal 4, it creates a response to the request and outputs it to user terminal 4. Furthermore, LLM21 is a function that multiple AI agents 2 share, and AI agents 2 can also make requests to each other in natural language and return responses.

[0014] The Coordination Control Unit 22 causes AI Agent 2 to operate in cooperation with other AI Agent 2, thereby achieving orchestration of the entire system. The function realized by the Coordination Control Unit 22 will also be called the "heartbeat." The Coordination Control Unit 22 functions as a trigger mechanism that operates AI Agent 2 at a predetermined rhythm based on a timer provided by the computer 100. The timer can be one provided by the computer 100 as appropriate, and may be UNIX® time, for example. The interval of the predetermined rhythm may be dynamically changed according to the resource load of the processor, network, etc.

[0015] Furthermore, the cooperative control unit 22 periodically acquires information representing the load status (also referred to as a "load indicator") from the computer 100 on which the AI ​​agent 2 is running. The cooperative control unit 22 also transmits a keep-alive signal (a signal containing the acquired load indicator) to other AI agents 2. The load indicator is the utilization rate of resources available to the computer 100, and may be, for example, the processor (CPU) utilization rate. In addition, the resource utilization rate may include the load status of memory, network, disk I / O, etc., instead of or in addition to the processor utilization rate. When multiple AI agents 2 are running on a single computer 100, these AI agents 2 send and receive the same resource utilization rate to each other.

[0016] Furthermore, the cooperative control unit 22 temporarily stores information received from other AI agents 2 that represents the load status of those other AI agents 2. If it has not received a health signal from the other AI agent 2 to which the message is to be sent within a predetermined period, or if the load of the other AI agent 2 to which the message is to be sent is greater than a predetermined standard, it may postpone sending the message for a predetermined period. Also, for example, if the AI ​​agents 2 are redundant within the system, the destination of the message may be changed to another AI agent 2 whose load is less than the predetermined standard. The cooperative control unit 22 can monitor the processing load of each AI agent 2 and perform load balancing. In addition, the cooperative control unit 22 may monitor the communication bandwidth status in real time and dynamically optimize message forwarding.

[0017] Furthermore, if the size of a message to be transmitted to another AI agent 2 is larger than a predetermined criterion, or if the load index of the destination AI agent 2 is larger than a predetermined criterion, the cooperative control unit 22 may divide the message into chunks that are equal to or smaller than the predetermined criterion and transmit the divided chunks. The criterion for the message size can be defined by, for example, the data size, the number of characters in the text, or the like. Additionally, the chunk size may be dynamically changed according to resource loads such as those of a processor or a network. Note that when the cooperative control unit 22 receives message chunks, it combines all the received chunks to restore the original message before division, and inputs the restored message to the LLM 21. With this configuration, one transmission / reception process can be completed within a predetermined unit time, and the overall operation of the system 1 can be smoothed.

[0018] The specialized function unit 23 assumes the unique role assigned to each AI agent 2. The function implemented by the specialized function unit 23 is also referred to as a "feature". The specialized function unit 23 is configured to output a response corresponding to the role of the AI agent 2 to a request received by the LLM 21. The role may be assigned by pre-loading a prompt for operation according to the role into the LLM 21 in advance. Alternatively, the specialized function unit 23 may be implemented by fine-tuning an existing LLM. Fine-tuning can be performed by performing additional training on a pre-trained model using a preprocessed (tokenized) dataset. Furthermore, the specialized function unit 23 may be implemented by introducing RAG (Retrieval Augmented Generation) into the LLM. In RAG, the LLM refers to (searches) for example vectorized external information, and further uses information obtained from the external information to generate a response. Moreover, the specialized function unit 23 may be configured to generate a request to the external generative AI 3 as a text message and operate using a response obtained from the external generative AI 3.

[0019] External Generation AI3 is an existing cloud service that can be used, for example, via network 6. External Generation AI3 also receives text-based requests (prompts) and generates responses. External Generation AI3 may be, for example, a large-scale language model, but it may also be capable of generating images, audio, music, etc. A large-scale language model is, for example, a machine learning model based on a Transformer model with a self-attention mechanism. A large-scale language model may be, but is not limited to, ChatGPT®, Claude®, Gemini®, etc.

[0020] Furthermore, as shown in Figure 1, AI agent 2 may also be equipped with a DBMS (Data Base Management System) 24 (24C). AI agent 2 equipped with a DBMS 24 will also be referred to as a "data manipulation agent." In this case, the specialized function unit 23 (23C) is configured to generate queries written in a data manipulation language such as SQL, in response to text messages received from other AI agents 2, and issue them to the DBMS 24. The specialized function unit 23 is also configured to retrieve query results from the DBMS 24 and generate a response corresponding to the content, for example, in a natural language text message. A database accessible via such a DBMS 24 can be considered a type of external information in the RAG described above. Note that the DBMS 24 is not limited to RDB (Relational Database), but may also handle NoSQL databases such as key-value, column-oriented, graph, or document databases.

[0021] FIG. 3 is a process flow diagram showing an example of processing executed by the AI agent 2. As described above, the AI agent 2 includes operations such as judgment and output by the LLM 21, and is not a program described in a procedural language, but in FIG. 3, typical operations are shown as a process flow for convenience. It is also assumed that the AI agent 2 is preset with processing (roles) to be performed by itself in the system 1, as well as identification information and functions (roles) of the plurality of AI agents 2 included in the system 1.

[0022] For example, the cooperative control unit 22 determines whether a message has been received from another agent 2, the user terminal 4, or the like (FIG. 3: step S1). In this step, for example, a server on which the AI agent 2 is installed determines whether a text message included in an HTTP request has been received. When a message is received (S1: YES), the cooperative control unit 22 registers, for example, a task (message) in a queue of a primary storage device or a secondary storage device (FIG. 3: step S2).

[0023] When it is determined that no message has been received in step S1 (S1: NO), or after step S2, the cooperative control unit 22 determines whether a predetermined timing has arrived (FIG. 3: step S3). In this step, the cooperative control unit 22 uses a timer to determine that a predetermined timing has arrived at a predetermined operation interval.

[0024] When it is determined that the predetermined timing has arrived (S3: YES), the cooperative control unit 22 acquires a load index (FIG. 3: step S4). In this step, the cooperative control unit 22 acquires, for example, the CPU usage rate of the computer on which the AI agent 2 operates. Further, the cooperative control unit 22 transmits and receives a life-and-death signal including the load index acquired in step S4 (FIG. 3: step S5). Although the timing of receiving a life-and-death signal from another AI agent 2 is not limited to step S5, when the cooperative control unit 22 receives a life-and-death signal from another AI agent 2, the cooperative control unit 22 stores the load index of the computer on which the other AI agent 2 operates in a primary storage device or a secondary storage device.

[0025] Furthermore, the cooperative control unit 22 determines whether there is a task that the AI ​​agent 2 should execute (Figure 3: Step S6). In this step, the cooperative control unit 22 determines, for example, whether there is a task registered in a predetermined queue. If a task exists (S6: YES), the AI ​​agent 2 executes the task (Figure 3: Step S7). In this step, for example, the cooperative control unit 22 reads one task from the queue and causes the LLM 21 to generate a response message. The LLM 21 generates a response message for the task in cooperation with the specialized function unit 23. That is, the LLM 21 generates a response message based on predefined settings (assigned roles) such as prompts and fine-tuning, and, if necessary, refers to external information of RAG or uses externally generated AI 3. Note that, in addition to generating response messages, depending on the predefined settings, it may also update the database or generate messages to request other AI agents to execute tasks.

[0026] Furthermore, the cooperative control unit 22 determines whether the load index of the output destination of the message generated in step S7 is below a threshold (Figure 3: step S8). In this step, if the output destination of the message is another AI agent 2, it determines whether the load index received from that other AI agent 2, for example in step S5, is below a predetermined threshold. Note that if the output destination of the message is the user terminal 4, the determination based on the load index in step S8 may be omitted.

[0027] If the load indicator is determined to be below a threshold (S8: YES), the cooperative control unit 22 sends a text message to the other AI agent 2 or user terminal 4 (Figure 3: Step S9). When responding to a request from the other AI agent 2 or user terminal 4, in this step, for example, the text message is included in the HTTP response and sent. If the text message to be sent is larger than a predetermined standard, it may be divided into predetermined chunks and sent.

[0028] On the other hand, if it is determined that the load indicator is not below the threshold (S8: NO), the cooperative control unit 22 suspends sending the message or changes the message destination (Figure 3: step S10). The cooperative control unit 22 may, for example, wait until it receives a load indicator below the threshold from the destination AI agent 2 before sending the message. Also, for example, if AI agent 2 is redundant within the system, the cooperative control unit 22 may change the message destination to an AI agent 2 with the same functionality as the original destination, whose load indicator is below the threshold. Furthermore, in step S10, the message to be sent may be divided into predetermined chunks before sending.

[0029] By having each AI agent 2 perform the processing described above, a multi-agent system can be constructed to achieve the desired objective as a whole system 1. Note that Figure 3 is an example, and for example, if a predetermined timing arrives during the execution of the task in step S7, the processing of S4 may be started in parallel. Such AI agents 2 can be said to be large-scale language models operating as part of system 1, like objects in object-oriented programming. That is, each AI agent 2 is configured to operate to perform its assigned role, is not interfered with by other AI agents 2, and is encapsulated. Furthermore, the LLM 21 and the cooperative control unit 22 described above are functions common to each AI agent 2, and can be inherited when, for example, a new AI agent 2 is added to system 1. In addition, the specialized function unit 23 is configured to perform processing specific to each AI agent 2, realizing polymorphism. For example, multiple AI agents 2 can be configured to perform different processing when they receive the same message.

[0030] The user terminal 4 in Figure 2 is a computer such as a PC (Personal Computer), tablet, or smartphone. The device configuration of the user terminal 4 is the same as, for example, the computer 100 shown in Figure 2. The user terminal 4 communicates with a predetermined AI agent 2, for example via an internet browser, based on user operations, and displays a predetermined user interface (UI) in the internet browser. Alternatively, communication with the predetermined AI agent 2 may be performed via application software that performs the processing according to this embodiment, instead of an internet browser. Based on user operations, the user terminal 4 sends requests via text messages to the AI ​​agent 2, receives responses from the AI ​​agent 2, and outputs them to an output device such as a display.

[0031] Figure 4 shows an example of the UI layout displayed on a display connected to the user terminal 4. The UI 305 includes a header 3051 displayed at the top of the screen, a main view 3052 which is the main area located below the header 3051, a navigation panel 3053 displayed on the left side of the screen, and an assistant panel 3054 displayed on the right side of the screen. The header 3051 displays icons 30511, 30512, 30513, ... representing multiple AI agents 2 with which the user can interact via text. For example, icons representing AI agents 2 provided by system 1 that are set to be directly interactable by the user are displayed in selectable locations on the header 3051. The main view 3052 is an area primarily for displaying the generated results output by AI agents 2. The navigation panel 3053 is an area for displaying task information, such as a list of projects that multiple users work on collaboratively in system 1, and work items obtained by drilling down into the details of each project. The navigation panel 3053 may also display labels to identify a series of interactions between a single user and AI agent 2. The assistant panel 3054 is an area for displaying a chat interface for interacting with AI agent 2. The navigation panel 3053 and the assistant panel 3054 may be displayed as needed by sliding in from off-screen and sliding out from off-screen. In addition, a popup window 3055 may be displayed as needed in the center of the main view 3052. The popup window 3055 can be used, for example, to display a chat interface for interacting with AI agent 2, or to display an interface for the user to modify the output of AI agent 2. Such a UI 305 is defined using, for example, CSS (Cascading Style Sheets) loaded by an internet browser, and the text output by AI agent 2 is displayed in an area corresponding to its content. For example, when AI agent 2 outputs text, it may be configured to output information indicating the output area.The data for rendering the screen shown in Figure 4 is created and sent, for example, by AI agent 2 selected by the user as the conversation partner. Furthermore, icons 30511, 30512, 30513, ... may change their shape, pattern, color, etc., each time they receive a health signal from the corresponding AI agent 2. For example, the icons may be displayed with an animation that makes them appear to pulsate.

[0032] The administrator terminal 5 in Figure 1 is also a computer such as a PC, tablet, or smartphone. The device configuration of the administrator terminal 5 is the same as that of computer 100 shown in Figure 2, for example. The administrator terminal 5 manages the settings of System 1 based on the operations of the user who is the administrator of System 1. System 1 is configured to work in cooperation with the AI ​​agent 2 described above, and the administrator can add new AI agent 2 to System 1 to add functions, for example.

[0033] Figure 5 is a diagram illustrating the addition of an agent to System 1. The AI ​​agent 2 according to this embodiment is configured by defining functions within System 1 based on a base agent that has common functions LLM21 and a cooperative control unit 22. In Figure 5, a "core agent" that functions to coordinate the AI ​​agent 2 and "specialized agents" that realize predetermined functions in System 1 are included. For example, the core agent may be provided by the platform according to the embodiment, and specialized agents may be added as appropriate by the administrator of System 1.

[0034] The core agents illustrated in Figure 5 include a message management agent 2D, a user management agent 2E, and a security management agent 2F. The message management agent 2D is equipped with a specialized function unit 23 for centrally managing communications within the system 1. For example, the specialized function unit 23 of the message management agent 2D is configured to read external information in which the identification information of each AI agent 2 is associated with an address on the network 6. When the message management agent receives a message and the identification information of the AI ​​agent 2 that is the destination of the message from the sending AI agent 2, it reads the address associated with the destination's identification information from the external information and forwards the message to the receiving AI agent 2. The specialized function unit 23 of the message management agent 2D can be configured by combining prompts that instruct the LLM 21 on the following matters, fine-tuning, RAG, etc. (1) When a message is received from another AI agent 2, read out the address corresponding to the recipient. (2) Forward the received message to the retrieved address. Furthermore, distributed systems and blockchain technology may be applied, and distributed consensus algorithms and fail-safe mechanisms may be introduced in message transfer. In this way, the operation of System 1 can be maintained even in the event of communication failures or failures of some AI agents 2. In other words, a more robust communication network can be constructed than a centralized message management system.

[0035] The user management agent 2E includes a specialized function unit 23 for adding, updating, and deleting user accounts, and managing user operation privileges within system 1. System 1 provides a membership service that users using user terminals 4 log in with their respective accounts. For example, the specialized function unit 23 of the user management agent 2E is configured to read external information in which user identification information and operation privileges are registered in association. Users may be divided into roles, and privileges may be set for each role. When the user management agent receives a query from another AI agent 2 that includes user identification information, it reads information indicating operation privileges associated with the user identification information from the external information and sends the information indicating operation privileges to the AI ​​agent 2 that made the query. The specialized function unit 23 of the user management agent 2E can be configured by combining prompts, fine-tuning, RAG, etc., that instruct the LLM 21 on the following matters. (1) When AI agent 2 receives user identification information, read the operation permissions corresponding to the user's role. (2) Sending information indicating the read operation permissions to other AI agents.

[0036] The security management agent 2F is equipped with a specialized function unit 23 for detecting potentially problematic processes within system 1 and notifying the administrator. For example, the specialized function unit 23 of the security management agent 2F monitors updates to deliverables created by users using system 1, and especially communications with networks outside system 1, detects predefined processes that may pose risks, and outputs a warning to the administrator terminal 5. The specialized function unit 23 of the security management agent 2F can be configured by combining prompts, fine-tuning, RAG, etc., that instruct LLM 21 on the following matters. (1) If the recipient of the message is a device other than one pre-registered in System 1, a warning will be output to the administrator terminal. (2) Verify the consistency of the updated file with other files managed by System 1, and if any problems are found, output a warning to the administrator terminal. Furthermore, security management agent 2F may use cryptographic technologies such as quantum-resistant cryptography or zero-knowledge proofs to enable more secure message transmission and data manipulation between each AI agent 2. In addition, not limited to security management agent 2F, each AI agent 2 may be equipped with self-diagnostic and monitoring functions to reduce the risk of unauthorized access and data tampering.

[0037] Figure 6 is a sequence diagram showing an example of a partial process performed by System 1. Based on user operations, the user terminal requests a processing request from a specialized agent, such as a file viewing or updating process (Figure 6: Step S11). As mentioned above, the request is made via a natural language text message. The request is also entered into the assistant panel 3054, the popup window 3055, etc., in the UI shown in Figure 4. The specialized agent sends a query to the user management agent to the message management agent (Figure 6: Step S12). In this System 1, the message management agent mediates communication between AI agents 2. This query is also made via a natural language text message. This query includes, for example, the identification information of the destination AI agent, the user's identification information, and the identification information of a specified file. The message management agent identifies the address of the user management agent, which is the destination AI agent 2, by referring to external information, for example, and forwards the query to the user management agent (Figure 6: Step S13). The user management agent also reads information representing the user's operational permissions, which are associated with the user's identification information, by referencing external information, for example, and generates a response to the specialist agent (Figure 6: Step S14). This response is also made in natural language text message. This response also includes the identification information of the destination specialist agent and information indicating the operational permissions granted to the user. The user management agent then sends the response to the specialist agent to the message management agent (Figure 6: Step S15). The message management agent then identifies the address of the destination specialist management agent and forwards the response to the specialist agent (Figure 6: Step S16). The specialist agent generates a response to the user terminal according to the user's permissions (Figure 6: Step S17). If the user has operational permissions, for example, the response may include the contents of a file that can be viewed. Step S17 may also include processing that includes updating a file for which the user has operational permissions. On the other hand, if the user does not have operational permissions, for example, a response is generated indicating that the requested process cannot be executed.The specialized agent then sends a response to the user terminal (Figure 6: Step S18). The response is output to, for example, the main view 3052, assistant panel 3054, pop-up window 3055, etc., in the UI shown in Figure 4. The security management agent may also determine whether each of the message sending / receiving and file operations shown in Figure 6 falls under a predetermined risk-related process, and if it determines that it does, it may output a warning to the administrator terminal 5. As described above, the multiple agents included in System 1 are configured to work together by sending and receiving text messages in natural language.

[0038] The specialized agents in Figure 5 include project management agent 2G, task management agent 2H, extension management agent 2J, etc. These specialized agents are AI agents 2 that the administrator adds as needed, depending on the application of system 1. In this embodiment, system 1 provides services to support system development carried out by multiple users.

[0039] Project Management Agent 2G includes a specialized function unit 23 for generating requirements definitions on a project basis and managing project information and progress. For example, the specialized function unit 23 of Project Management Agent 2G is configured to generate requirements definitions and basic designs that meet user requirements, modify requirements definitions and basic designs according to user requirements, and manage project progress. Project progress may be managed, for example, by reading and writing external information. The specialized function unit 23 of Project Management Agent 2G can be configured by combining prompts, fine-tuning, RAG, etc., that instruct LLM21 on the following matters. (1) In response to user requests, generate requirements definitions at a predetermined level of detail for items such as project overview, business flow, system architecture, user interface, and budget. (2) Generate a basic design at a predetermined level of granularity according to the requirements definition. (3) For items included in the basic design, obtain the tasks that embody these items and their progress status from the task management agent, and manage their progress.

[0040] Task management agent 2H includes a specialized function unit 23 for generating and modifying tasks to realize a project, managing task status, and managing progress. For example, the specialized function unit 23 of task management agent 2H acquires the basic design from project management agent 2G, generates tasks (detailed designs) to realize the basic design, and modifies tasks according to user requests. It may also manage task progress by reading and writing external information, for example. The specialized function unit 23 of project management agent 2G can be configured by combining prompts, fine-tuning, RAG, etc., that instruct LLM21 on the following matters. (1) Break down the items included in the basic design into tasks that the user must perform. (2) Create a schedule that assigns tasks to users, and manage the progress of tasks by obtaining deliverables from the user's terminal.

[0041] The Extension Management Agent 2J includes a specialized function unit 23 for centrally managing and integrating plugins and extensions available in the development environment into the system. For example, the specialized function unit 23 of the Extension Management Agent 2J handles the installation of plugins into the development environment used by the project, as well as version control of the integrated plugins. The Extension Management Agent 2J is configured to execute predetermined commands on the system development environment used in System 1. The specialized function unit 23 of the Extension Management Agent 2J can be configured by combining prompts, fine-tuning, RAG, etc., that instruct LLM21 on the following matters. (1) Update the list of generally available plugins and their versions. (2) When a user requests the addition, update, or deletion of plugins, etc., to the development environment, verify the user's operational permissions. (3) If the user has the necessary permissions, they may add, update, or delete plugins, etc., to the development environment and update the list of plugins, etc., that are applied to the development environment.

[0042] Each specialized agent performs processing independently, allowing it to work in conjunction with other AI agents 2 to operate System 1. The method for adding AI agents 2 to System 1 and building specialized function units 23 may incorporate containerization and microservice architecture, in addition to prompting, RAG, and fine-tuning techniques for template classes (base agents), enabling rapid deployment and expansion of new agents and features. This creates a platform that can flexibly respond to technological advancements and new requirements. Furthermore, during the operational phase of System 1, the division of roles and task allocation among AI agents 2 based on reinforcement learning and autonomous optimization algorithms may be implemented to achieve optimal resource allocation and cooperative operation between agents in real time. This improves the operational efficiency and scalability of the system.

[0043] The above shows an example of the configuration of AI Agent 2, but according to the present invention, System 1 for various applications can be constructed, not limited to the example in Figure 5. Systems using large-scale language models can improve the accuracy of their output by tuning them according to the application, but maintenance such as adding or changing functions was not easy. With AI Agent 2 that functions independently as in this embodiment, it becomes easy to add new functions and it becomes possible to suppress effects such as degradation on existing functions. Furthermore, by dividing the configuration of AI Agent 2 into an LLM 21 and a cooperative control unit 22 that are common to all AI Agent 2 and operate in cooperation with other AI Agent 2, and a specialized function unit 23 that executes processing specific to each AI Agent 2, it has become possible to construct a multi-agent system that realizes object-oriented programming. In addition, if inter-agent communication is performed without limit, there is a risk of processing delays due to processor or network overload. General AI systems lack the ability to dynamically adapt to environmental changes, but in the above embodiment, the cooperative control unit 22 periodically cooperates with other AI Agent 2 to share load indicators and perform dynamic load balancing, thereby enabling efficient inter-agent communication. Furthermore, by installing a security management agent within System 1, secure inter-agent communication and data updates became possible.

[0044] The embodiments of this application have been described above based on the drawings, but these are illustrative examples, and it is possible to implement the invention in various forms with modifications and improvements based on the knowledge of those skilled in the art, including the embodiments described in the summary of the invention. Furthermore, the above-mentioned functional parts ("parts") can be read as "means," "circuits," "processors," etc. For example, "LLM," "cooperative control unit," and "specialized functional unit" can be read as means, circuits, or processors. [Explanation of Symbols]

[0045] 1: Multi-agent system 2: AI Agent, 21: LLM (Brain), 22: Cooperative Control Unit (Heartbeat), 23: Specialized Function Unit (Feature) 3: Externally generated AI 4: User terminal 5: Administrator terminal

Claims

1. A multi-agent system comprising multiple AI agents equipped with a large-scale language model and capable of input and output via messages written in natural language, Multiple AI agents include a first agent that performs a first process and a second agent that performs a second process different from the first process. The first agent is configured to request the second agent to perform a second process by sending a message. A multi-agent system.

2. Based on a template class that defines the basic configuration of the AI ​​agent, it is possible to create a third agent, which is an instance of the AI ​​agent, that performs a third process different from the first and second processes. The third agent is implemented to perform a third process based on at least one of the following: prompt input to the template class, fine-tuning, and RAG (Retrieval Augmented Generation). With the creation of the third agent, the first agent may be modified to request the third agent to execute a third process by sending a message. The multi-agent system according to claim 1.

3. The AI ​​agent has a trigger that periodically initiates the sending of messages. The second agent periodically sends a load indicator showing the processing load of the second agent to the first agent according to a trigger. Depending on the load indicator it receives, the first agent may (1) change the timing of sending messages to the second agent, (2) divide the messages to the second agent into chunks, or (3) change the destination of the messages. The multi-agent system according to claim 1 or 2.

4. The multi-agent system according to claim 1 or 2, further comprising a user management agent that performs user authentication based on a predetermined authentication method and determines whether or not the authenticated user has operational authority in response to inquiries from other AI agents.

5. The system includes a data manipulation agent that connects to a database management system (DBMS), creates a query using a predetermined data manipulation language (DML) based on a message received from the requesting AI agent, sends the query to the DBMS, and also sends a message to the requesting AI agent corresponding to the information output from the DBMS. The multi-agent system according to claim 1 or 2.

6. The system further includes a security management agent that monitors either or both database updates via a data manipulation agent, or the sending and receiving of messages, and outputs warnings to the administrator terminal based on predetermined criteria. The multi-agent system according to claim 5.

7. A project management agent, which is an AI agent that creates a draft requirements definition for system development based on messages received from the user terminal, A task management agent that generates tasks to assign to users based on the created requirements definition draft and manages the progress of those tasks, The multi-agent system according to claim 1 or 2, further comprising:

Citation Information

Patent Citations

  • Information processing device, information processing method, and information processing program

    JP7509972B1