Device, method and program for executing task

The task execution device and method dynamically decompose and assign tasks to handle unexpected requests, addressing the limitations of predefined workflows by generating flexible task processing solutions.

WO2026127083A1PCT designated stage Publication Date: 2026-06-18NEC CORP

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
NEC CORP
Filing Date
2025-12-11
Publication Date
2026-06-18

AI Technical Summary

Technical Problem

Existing task execution technologies are limited to processing predefined procedures and cannot handle arbitrary or unexpected task requests effectively.

Method used

A task execution device and method that dynamically determines whether to decompose tasks into subtasks, generates workflows, and assigns subtasks to various processing units, allowing for flexible task processing.

🎯Benefits of technology

Enables the handling of arbitrary task requests by dynamically generating workflows and assigning subtasks, reducing processing load and eliminating the need for specialized knowledge in workflow generation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2025043203_18062026_PF_FP_ABST
    Figure JP2025043203_18062026_PF_FP_ABST
Patent Text Reader

Abstract

A device for executing a task according to the present invention comprises: a task acquisition unit that acquires data representing a task to be executed; a first determination unit that determines whether to decompose the task into a plurality of subtasks by using the data; a task decomposition unit that decomposes the task into a plurality of subtasks and generates a workflow in which the plurality of subtasks are connected in parallel or in series when it is determined that the task be decomposed; and a second determination unit that determines whether or not to decompose the subtasks included in the workflow.
Need to check novelty before this filing date? Find Prior Art

Description

Task Execution Device, Task Execution Method, and Task Execution Program 【0001】 The present disclosure relates to a task execution device, a task execution method, and a task execution program. 【0002】 Techniques for executing tasks are known. As an example of a technique for executing tasks, for example, the technique described in Patent Document 1 can be cited. The device described in Patent Document 1 includes a task management unit that stores a task, which is information on a state that a user aims for or targets, a situation information input unit that inputs situation information, which is information on the current situation of the user, a conflict determination unit that determines a conflict of the task based on the task and the situation information, an alternative rule management unit that stores an alternative rule associating a conflict with an alternative in the case where a conflict occurs, an alternative rule selection unit that selects an alternative corresponding thereto when a conflict is determined, an alternative action information generation unit that generates alternative action information based on the conflict-occurring task, the situation information, and the alternative, and a priority update unit that updates the priorities of application of the task and the alternative rule based on the alternative action information. 【0003】 In addition, Non-Patent Document 1 discloses a technique of training and utilizing data of task decomposition in a large language model. Further, Non-Patent Document 2 discloses automatic parallelization by data flow analysis. 【0004】 Japanese Unexamined Patent Application Publication No. 2005-346602 【0005】 Tushar Khot, et. al., "Text modular networks: Learning to decompose tasks in the language of existing models", 2021 DAVID F. BACON, et. al., "Compiler Transformations for High-Performance Computing", 1994 【0006】 In the technique described in Patent Document 1, there is a problem that only a procedure assumed in advance can be processed and it is impossible to respond to a processing request for an arbitrary task. 【0007】This disclosure has been made in view of the above-mentioned problems, and one exemplary purpose is to provide a technology that can respond to requests for processing any task that has not been anticipated in advance. 【0008】 A task execution device relating to an exemplary aspect of this disclosure includes: a task acquisition means for acquiring data representing a task to be executed; a first determination means for determining whether or not to decompose the task into a plurality of subtasks using the data; a task decomposition means for decomposing the task into a plurality of subtasks and generating a workflow in which the plurality of subtasks are linked in parallel or in series, if it is determined that the task should be decomposed; and a second determination means for determining whether or not to decompose the subtasks included in the workflow. 【0009】 A task execution method relating to an exemplary aspect of this disclosure includes: a task acquisition process in which at least one processor acquires data representing a task to be executed; a first determination process in which the at least one processor uses the data to determine whether or not to decompose the task into a plurality of subtasks; a task decomposition process in which, if the at least one processor determines to decompose the task, decomposes the task into a plurality of subtasks and generates a workflow by linking the plurality of subtasks in parallel or in series; and a second determination process in which the at least one processor determines whether or not to decompose the subtasks included in the workflow. 【0010】 An exemplary aspect of the present disclosure is a program for causing a computer to function as a task execution device, wherein the computer functions as: a task acquisition means for acquiring data representing a task to be executed; a first determination means for determining whether or not to decompose the task into a plurality of subtasks using the data; a task decomposition means for, if it is determined that the task should be decomposed, for decomposing the task into a plurality of subtasks and generating a workflow in which the plurality of subtasks are linked in parallel or in series; and a second determination means for determining whether or not to decompose the subtasks included in the workflow. 【0011】One exemplary aspect of this disclosure is that it provides a technology capable of responding to any task processing request that was not anticipated in advance. 【0012】 This is a block diagram showing the configuration of the task execution device related to this disclosure. This is a flowchart showing the flow of the task execution method related to this disclosure. This is a block diagram showing the configuration of the task execution device related to this disclosure. This is a flowchart showing the flow of the task execution method related to this disclosure. This is a diagram showing a specific example of task decomposition processing related to this disclosure. This is a block diagram showing the configuration of a computer that functions as a task execution device related to this disclosure. This is a diagram showing an example of task processing by an AI agent related to prior art. 【0013】 The following are examples of embodiments of the present invention. However, the present invention is not limited to the exemplary embodiments shown below, and various modifications are possible within the scope of the claims. For example, embodiments obtained by appropriately combining some or all of the technologies (things or methods) employed in each of the exemplary embodiments shown below may also be included in the scope of the present invention. Furthermore, embodiments obtained by appropriately omitting some of the technologies employed in each of the exemplary embodiments shown below may also be included in the scope of the present invention. In addition, the effects mentioned in each of the exemplary embodiments shown below are examples of effects that can be expected in that exemplary embodiment and do not define the scope of the present invention. That is, embodiments that do not produce the effects mentioned in each of the exemplary embodiments shown below may also be included in the scope of the present invention. 【0014】[First Exemplary Embodiment] A first exemplary embodiment, which is an example of an embodiment of the present invention, will be described in detail with reference to the drawings. This exemplary embodiment is the basic form for each of the exemplary embodiments described later. The scope of application of each technology adopted in this exemplary embodiment is not limited to this exemplary embodiment. That is, each technology adopted in this exemplary embodiment can also be adopted in other exemplary embodiments included in this disclosure, to the extent that no particular technical problems occur. Furthermore, each technology shown in the drawings referenced to explain this exemplary embodiment can also be adopted in other exemplary embodiments included in this disclosure, to the extent that no particular technical problems occur. 【0015】 (Configuration of the Task Execution Device) The configuration of the task execution device 1 will be described with reference to Figure 1. Figure 1 is a block diagram showing the configuration of the task execution device 1. As shown in Figure 1, the task execution device 1 includes a task acquisition unit 11, a first determination unit 12, a task decomposition unit 13, and a second determination unit 14. 【0016】 The task acquisition unit 11 acquires data representing the task to be executed. A task refers to an individual business, process, or instruction that a system or program can execute. The first determination unit 12 uses the above data to determine whether or not to decompose the task into multiple subtasks. A subtask refers to an individual business, process, or instruction that a system or program can execute. If the task decomposition unit 13 determines that the task should be decomposed, it decomposes the task into multiple subtasks and generates a workflow by linking the multiple subtasks in parallel or in series. The second determination unit 14 determines whether or not to decompose the subtasks included in the workflow. 【0017】(Effects of the Task Execution Device) As described above, the Task Execution Device 1 employs a configuration comprising: a task acquisition unit 11 that acquires data representing the task to be executed; a first determination unit 12 that uses the data to determine whether or not to decompose the task into a plurality of subtasks; a task decomposition unit 13 that, if it is determined that the task should be decomposed, decomposes the task into a plurality of subtasks and generates a workflow by linking the plurality of subtasks in parallel or in series; and a second determination unit 14 that determines whether or not to decompose the subtasks included in the workflow. Therefore, the Task Execution Device 1 has the effect of being able to respond to processing requests for arbitrary tasks that were not anticipated in advance. 【0018】 (Flow of Task Execution Method) The flow of the task execution method S1 will be explained with reference to Figure 2. Figure 2 is a flowchart showing the flow of the task execution method S1. As shown in Figure 2, the task execution method S1 includes a task acquisition process S11, a first determination process S12, a task decomposition process S13, and a second determination process S14. 【0019】 In the task acquisition process S11, at least one processor acquires data representing the task to be executed. In the first determination process S12, the at least one processor uses the data to determine whether or not to decompose the task into multiple subtasks. In the task decomposition process S13, if the at least one processor determines to decompose the task, it decomposes the task into multiple subtasks and generates a workflow by linking the multiple subtasks in parallel or in series. In the second determination process S14, the at least one processor determines whether or not to decompose the subtasks included in the workflow. 【0020】(Effects of the task execution method) As described above, the task execution method S1 employs a configuration that includes: a task acquisition process S11 in which at least one processor acquires data representing the task to be executed; a first determination process S12 in which the at least one processor uses the data to determine whether or not to decompose the task into a plurality of subtasks; a task decomposition process S13 in which, if the at least one processor determines that the task should be decomposed, decomposes the task into a plurality of subtasks and generates a workflow by linking the plurality of subtasks in parallel or in series; and a second determination process S14 in which the at least one processor determines whether or not to decompose the subtasks included in the workflow. Therefore, the task execution method S1 has the effect of being able to respond to processing requests for arbitrary tasks that were not anticipated in advance. 【0021】 [Second Exemplary Embodiment] A second exemplary embodiment, which is an example of an embodiment of the present invention, will be described in detail with reference to the drawings. Components having the same function as those described in the above-described exemplary embodiment are denoted by the same reference numerals, and their descriptions are omitted as appropriate. The scope of application of each technology adopted in this exemplary embodiment is not limited to this exemplary embodiment. That is, each technology adopted in this exemplary embodiment can also be adopted in other exemplary embodiments included in this disclosure, to the extent that no particular technical problems arise. Furthermore, each technology shown in the drawings referenced to describe this exemplary embodiment can also be adopted in other exemplary embodiments included in this disclosure, to the extent that no particular technical problems arise. 【0022】 (Configuration of the Task Execution Device) The configuration of the task execution device 1A will be described with reference to Figure 3. Figure 3 is a block diagram showing the configuration of the task execution device 1A. The task execution device 1A comprises a control unit 10A, a storage unit 20A, a communication unit 30A, an input unit 40A, and an output unit 50A. 【0023】(Communication Unit) The communication unit 30A communicates with devices outside the task execution device 1A via a communication line N. The specific configuration of the communication line N is not limited to this exemplary embodiment, but examples of the communication line N include a wireless LAN (Local Area Network), a wired LAN, a WAN (Wide Area Network), a public network, a mobile data communication network, or a combination thereof. The communication unit 30A transmits data supplied from the control unit 10A to other devices and supplies data received from other devices to the control unit 10A. 【0024】 (Input Unit) The input unit 40A is configured to receive input to the task execution device 1A, and may include, for example, an input device such as a keyboard, mouse, touch panel, camera, or microphone. Alternatively, the input unit 40A may be configured to receive data from the input device via an interface such as USB (Universal Serial Bus). 【0025】 (Output Unit) The output unit 50A is configured to output from the task execution unit 1A, and may include, for example, an output device such as a display, printer, touch panel, or speaker. The output unit 50A may also be configured to include an interface such as USB, and output data to the output device via this interface. 【0026】 (Storage Unit) The storage unit 20A stores various types of information that the control unit 10A refers to. Examples of such information include data representing tasks acquired by the task acquisition unit 111A (described later) and data representing workflows generated by the task decomposition unit 113A (described later). The storage unit 20A is an example of a storage device according to this disclosure. 【0027】(Control Unit) As shown in Figure 3, the control unit 10A includes a plurality of task processing units 110a, 110b, 110c, ..., a task acquisition unit 111A, a complexity determination unit 112A, a task decomposition unit 113A, a task distribution unit 114A, a memory control unit 115A, a workflow conversion unit 116A, and an output control unit 117A. The plurality of task processing units 110a, 110b, 110c, ... are examples of task processing means according to the present disclosure. The task acquisition unit 111A, task decomposition unit 113A, task distribution unit 114A, memory control unit 115A, workflow conversion unit 116A, and output control unit 117A are examples of task acquisition means, task decomposition means, task distribution means, memory control means, workflow conversion means, and presentation means according to the present disclosure, respectively. The complexity determination unit 112A is an example of the first determination means and the second determination means according to the present disclosure. 【0028】 (Task Processing Units) Task processing units 110a, 110b, 110c, ... process tasks. Hereinafter, when there is no need to distinguish between task processing units 110a, 110b, 110c, ... they will be referred to as "Task Processing Unit 110A". An example of a Task Processing Unit 110A is an API (Application Programming Interface) of an LLM (Large Language Model). Alternatively, a Task Processing Unit 110A may be a symbolic computation system or a data analysis engine written in a programming language such as Python. Alternatively, a Task Processing Unit 110A may be a search engine, such as an internal search engine or an external search engine. In particular, a Task Processing Unit 110A may be a search engine that performs searches using Retrieval Augmented Generation (RAG) technology. Alternatively, a Task Processing Unit 110A may be an API of an internal IT system such as an accounting system. Alternatively, a Task Processing Unit 110A may be RPA (Robotic Process Automation) software that automates the operation of business systems. 【0029】(Task Acquisition Unit) The task acquisition unit 111A acquires data representing the task to be executed. Examples of data representing a task include text, image data, audio data, video data, or combinations thereof. Hereafter, "data representing a task" will also be simply referred to as "task". 【0030】 For example, the task acquisition unit 111A acquires task data by receiving it from another device via the communication unit 30A. Alternatively, the task acquisition unit 111A may acquire data input to the input unit 40A. Furthermore, the task acquisition unit 111A may acquire task data by reading it from a storage location specified by the user of the task execution device 1A (which may be a storage device within the task execution device 1A or a storage device outside the task execution device 1A). 【0031】 (Complexity Determination Unit) The complexity determination unit 112A determines whether or not to decompose the task acquired by the task acquisition unit 111A into multiple subtasks. For example, the complexity determination unit 112A determines not to decompose the task if at least one of the multiple task processing units 110A is capable of solving the task. The complexity determination unit 112A also determines to decompose the task if it is impossible for all of the multiple task processing units 110A to solve the task. Hereafter, determining whether or not to decompose a task will also be referred to as "determining the complexity of the task". 【0032】 More specifically, the complexity determination unit 112A, as an example, queries multiple task processing units 110A to determine if it is possible to solve the task. If it receives a response from all of the task processing units 110A indicating that it is not possible to solve the task, it determines that the task should be decomposed. Conversely, if the complexity determination unit 112A receives a response from at least one of the multiple task processing units 110A indicating that it is possible to solve the task, it determines that the task should not be decomposed. 【0033】Furthermore, the complexity determination unit 112A may determine the necessity of task decomposition by, for example, the following method. First, the complexity determination unit 112A converts the task into a programming language (e.g., Python) and uses the source code metrics of the process (e.g., LoC (number of lines)) as the complexity score. Next, the complexity determination unit 112A converts the task into a programming language (e.g., Python), applies a technique for automatic program parallelization (e.g., data flow analysis), and if it is determined that parallelization is possible, it determines that the task should be decomposed into a parallel structure. Alternatively, the complexity determination unit 112A speculatively decomposes the task, estimates which task will have a better "score" before and after decomposition, and selects the better one. The score may be, for example, a value indicating the amount of resources (time, memory, computing power) required for execution, or the quality of the results obtained. The complexity determination unit 112A may, for example, select the option that requires fewer resources (time, memory, computing power) for execution, or the option that yields better results. One method for estimating the score is to utilize a score prediction model that has learned from past "task and score" performance. 【0034】 The complexity determination unit 112A supplies tasks that it has determined to be broken down to the task decomposition unit 113A, which then further decomposes those subtasks into multiple subtasks. On the other hand, the complexity determination unit 112A supplies tasks that it has determined not to be broken down to the task distribution unit 114A. 【0035】Furthermore, the complexity determination unit 112A determines whether or not to decompose a subtask included in the workflow generated by the task decomposition unit 113A, which will be described later. As an example, the complexity determination unit 112A determines not to decompose a subtask if at least one of the multiple task processing units 110A is capable of solving the subtask included in the workflow. On the other hand, the complexity determination unit 112A determines to decompose a subtask if all of the multiple task processing units 110A are incapable of solving the subtask included in the workflow. More specifically, the complexity determination unit 112A queries the multiple task processing units 110A to see if they are capable of solving the subtask, and if it receives a response from all of the multiple task processing units 110A indicating that they are incapable of solving the subtask, it determines to decompose the subtask. 【0036】 The complexity determination unit 112A supplies the subtasks it has determined to decompose to the task decomposition unit 113A, which then further decomposes those subtasks into multiple subtasks. On the other hand, the complexity determination unit 112A supplies the subtasks it has determined not to decompose to the task distribution unit 114A. 【0037】(Task Decomposition Unit) The task decomposition unit 113A decomposes a task (or subtask) that has been determined to be decomposed by the complexity determination unit 112A into multiple subtasks and generates a workflow by linking these multiple subtasks in parallel or serially. The workflow can also be described as a graph in which multiple subtasks are linked in parallel or directly. As a method for decomposing a task by the task decomposition unit 113A, for example, a technique that uses a large-scale language model trained with task decomposition data (the technique described in Non-Patent Literature 1, etc.) may be used. Alternatively, for example, the task decomposition unit 113A may convert the task into a formal language such as a programming language and then perform task decomposition in the formal language. Another example is that the task decomposition unit 113A may utilize automatic parallelization by data flow analysis (the technique described in Non-Patent Literature 2, etc.). Automatic parallelization first identifies the data and information dependencies between procedures when a task is expressed as steps in a procedure, and then decomposes the procedure groups that do not have dependencies so that they can be executed in parallel. 【0038】 The task decomposition unit 113A, as an example, decomposes a task in series or in parallel based on the type of task. More specifically, the task decomposition unit 113A may, as an example, decompose a task in series if the type of task is "data processing pipeline," "document creation and review process," "approval flow," etc., and decompose a task in parallel if the type of task is "cross-search of multiple search engines," "company research in market analysis," etc. In the case of "company research in market analysis," the research on each company is conducted in parallel. 【0039】 If the task includes image data, the task decomposition unit 113A may, for example, decompose the task by dividing the image represented by the image data into multiple regions. Alternatively, if the task includes video data, the task decomposition unit 113A may, for example, decompose the task by dividing the video data along the time axis. 【0040】Further, as an example, the task decomposition unit 113A selects one of a plurality of decomposition patterns using data representing a task, and decomposes the task according to the selected decomposition pattern. Further, the task decomposition unit 113A may perform at least one of decomposition of sub-tasks included in the workflow and integration of sub-tasks based on a user operation. 【0041】 (Task Assignment Unit) The task assignment unit 114A instructs the task processing unit 110A to execute sub-tasks included in the workflow generated by the task decomposition unit 113A. 【0042】 (Memory Control Unit) The memory control unit 115A stores data representing the task, the workflow obtained by decomposing the task, and the task processing unit 110A called by the task assignment unit 114A in a storage device such as the storage unit 20A. 【0043】 (Workflow Conversion Unit) The workflow conversion unit 116A converts the workflow stored in a storage device such as the storage unit 20A into a workflow in a format defined by a predetermined workflow engine. Examples of the workflow engine include, but are not limited to, Dify or LangChain. 【0044】 The workflow conversion unit 116A outputs the converted workflow. As an example, the workflow conversion unit 116A may transmit the workflow to another device via the communication unit 30A. Further, the workflow conversion unit 116A may output the workflow to an output device. Examples of the output device include, but are not limited to, a display, a printer, a projector, a speaker, etc. Further, the workflow conversion unit 116A may store the converted workflow in a storage device such as the storage unit 20A. 【0045】(Output Control Unit) The output control unit 117A presents the workflow to the user by outputting data representing the workflow to an output device such as a display. Examples of the output device include, but are not limited to, a display, a printer, a projector, a speaker, etc. Further, the output control unit 117A may output the data by transmitting the data to another device via the communication unit 30A. 【0046】 (Flow of Task Execution Method) FIG. 4 is a flowchart showing the flow of the task execution method S1A. In step S101, the task acquisition unit 111A acquires a task. As an example, the task is the text "Mr. X broke a block wall and caused an accident for which liability insurance compensation will be paid. Please calculate the insurance premium." 【0047】 In step S102, the complexity determination unit 112A determines whether to decompose the task acquired in step S101. As an example, the complexity determination unit 112A asks a plurality of task processing units 110A whether they can solve the task. If the complexity determination unit 112A receives a response from any of the plurality of task processing units 110A indicating that the task can be solved, it determines not to decompose the task. On the other hand, if the complexity determination unit 112A receives a response from all the task processing units 110A it inquired that the task cannot be solved, it determines to decompose the task. 【0048】 In step S103, if it is determined to decompose the task (step S103: YES), the complexity determination unit 112A proceeds to the process of step S104. On the other hand, if it is determined not to decompose the task (step S103: NO), the complexity determination unit 112A proceeds to the process of step S105. 【0049】 In step S104, the task decomposition unit 113A decomposes the task into a plurality of subtasks and generates a workflow in which the plurality of subtasks are connected in parallel or in series. 【0050】After completing the process in step S104, the task decomposition unit 113A returns to the process in step S102. That is, the task decomposition unit 113A supplies the decomposed subtasks to the complexity determination unit 112A, which then determines the complexity of each of the supplied subtasks. In step S102, the complexity determination unit 112A determines whether to further decompose the subtasks, and if it determines to do so, the task decomposition unit 113A further decomposes the subtasks in step S104. In this way, by repeating the processes in steps S102 to S104, the task decomposition unit 113A recursively decomposes the task. 【0051】 In step S105, the task distribution unit 114A distributes the subtasks obtained by the breakdown to multiple task processing units 110A. In other words, the task distribution unit 114A instructs the task processing units 110A to execute the subtasks included in the workflow. 【0052】 In step S106, the memory control unit 115A stores the task acquired by the task acquisition unit 111A, the workflow obtained by breaking down the task, and the data representing the called task processing unit 110A in a storage device such as the memory unit 20A. 【0053】 In step S107, the workflow conversion unit 116A converts the workflow stored in the storage device such as the storage unit 20A into a format specified by the existing workflow engine. 【0054】 (Specific Example of Task Decomposition Process) Figure 5 is a diagram showing a specific example of the task decomposition process according to the present disclosure. In the example of Figure 5, the task decomposition unit 113A decomposes task T1 into a plurality of subtasks T11, T12, and T13 in the first task decomposition process (step S104 in Figure 4). The task decomposition unit 113A also decomposes subtask T12 into a plurality of subtasks T121, T122, and T123 in the second task decomposition process. The task decomposition unit 113A also decomposes subtask T123 into a plurality of subtasks T1231 and T1232 in the third task decomposition process. 【0055】(Other examples of task decomposition processing) The task decomposition unit 113A may also perform at least one of the following based on user operation: decomposition of subtasks included in the workflow and integration of subtasks. In this case, the user confirms the workflow presented by the output control unit 117A and performs operations to decompose or integrate subtasks using an input device. Examples of input devices include, but are not limited to, a keyboard, mouse, and touch panel. The task decomposition unit 113A performs decomposition or integration of subtasks included in the workflow based on signals output by the input device in response to user operation. 【0056】 (Effects of the Task Execution Device) Incidentally, complex tasks require taking into account company rules based on various internal and external information and making complex decisions in complex steps, making it difficult to solve complex tasks with a single AI (LLM). For example, if the task is text such as "Mr. X has damaged a concrete block wall and caused an accident for which property damage liability insurance will be paid. Please calculate the insurance premium," the logic for calculating the insurance premium is unique to each company, so it is unclear what calculation logic is appropriate, and the insurance premium will differ depending on Mr. X's background, so it is necessary to collect various internal and external information in order to make an appropriate decision. Also, LLMs that are not good at complex calculations may not be able to calculate the insurance premium appropriately. 【0057】 Therefore, a system called an AI agent has been proposed, which autonomously executes tasks based on user instructions. The AI ​​agent combines various processes such as "internal database search," "web search," and "Python," with AI (LLM) acting as a connector to perform complex decision-making. 【0058】 Figure 7 shows an example of task processing by an AI agent in the conventional technology. In the example in Figure 7, the AI ​​agent 200 performs tasks W1 to W4 in order to solve task T21. Task T21 is the text: "Mr. X has damaged a concrete block wall and caused an accident for which property damage liability insurance will be paid. Please calculate the insurance premium." 【0059】 In task W1, AI agent 200 queries the company's contract database DB1 for X's original insurance class. In task W2, AI agent 200 refers to the company's manual shared folder F2 and determines whether an insurance class reduction is necessary based on the details of the accident. In task W3, AI agent 200 refers to the company's manual shared folder F3 and extracts the premium / discount rate based on the insurance class and accident details. Tasks W2 and S3 use, for example, RAG (Retrieval-Augmented Generation). In task W4, AI agent 200 calculates X's insurance premium using Python. AI agent 200 outputs response T22, which includes the insurance premium calculated in task W4. 【0060】 In conventional AI agents, as illustrated in Figure 7, it has been proposed that the procedures (workflows) for how to combine and process which agents are defined by Python code or by a GUI (Graphical User Interface). 【0061】 However, conventional AI agents have the problem that they can only process procedures that have been prepared and anticipated in advance. Predefined workflows cannot handle arbitrary on-demand processing requests, requiring new programming for each use case. Furthermore, creating workflows requires specialized knowledge. As a result, development and maintenance of workflows must be relied upon programmers with expertise, creating bottlenecks in deployment and application. In addition, there is the problem that workflow generation is costly. Connecting multiple systems and tools requires complex configuration and custom code development. 【0062】 In contrast, the task execution device 1A determines whether to break down the task to be executed, dynamically generates a workflow, and dynamically assigns subtasks to various task processing units 110A. As a result, the task execution device 1A can respond to processing requests for arbitrary tasks that were not anticipated in advance. 【0063】Furthermore, in the task execution device 1A, the complexity determination unit 112A supplies the subtasks that it has determined to be broken down to the task decomposition unit 113A, which then further decomposes those subtasks into multiple subtasks. Therefore, the task execution device 1A can dynamically generate workflows by recursively decomposing subtasks. 【0064】 Furthermore, in the task execution device 1A, the complexity determination unit 112A determines not to decompose a task if at least one of the multiple task processing units 110A can solve the task, and also determines not to decompose a subtask included in the workflow if at least one of the multiple task processing units 110A can solve the subtask. Therefore, the task execution device 1A allows subtasks included in the workflow to be dynamically assigned to various task processing units 110A. 【0065】 Furthermore, in the task execution device 1A, the complexity determination unit 112A queries multiple task processing units 110A to see if it is possible to solve the task. If it receives a response from all of the task processing units 110A indicating that it is not possible to solve the task, it determines that the task should be broken down. Similarly, it queries multiple task processing units 110A to see if it is possible to solve a subtask. If it receives a response from all of the task processing units 110A indicating that it is not possible to solve the subtask, it determines that the subtask should be broken down. Therefore, the task execution device 1A can prevent the execution of processes that unnecessarily break down tasks (or subtasks) by not breaking down the task (or subtask) when there is a task processing unit 110A that can solve that task (or subtask), thereby reducing the processing load. 【0066】Furthermore, in the task execution device 1A, the task decomposition unit 113A is configured to decompose a task in series or parallel based on the type of task. Therefore, the task execution device 1A can dynamically generate a workflow by recursively performing series and parallel decomposition of tasks. 【0067】 Furthermore, in the task execution device 1A, the task decomposition unit 113A is configured to select one of several decomposition patterns using data representing the task, and decompose the task according to the selected decomposition pattern. Therefore, the task execution device 1A can decompose a task using a decomposition pattern suitable for the task to be executed. 【0068】 Furthermore, the task execution device 1A includes an output control unit 117A that presents the workflow generated by the task decomposition unit 113A to the user. The task decomposition unit 113A is configured to perform at least one of the following based on user operation: decomposition of subtasks included in the workflow and integration of subtasks. Therefore, the task execution device 1A can generate a workflow that reflects the user's intentions. 【0069】 Furthermore, the task execution device 1A employs a configuration that includes a storage control unit 115A that stores data representing a task, a workflow obtained by breaking down the task, and a task processing unit 110A called by the task distribution unit 114A in a storage device. Therefore, with the task execution device 1A, the workflow and other data stored in the storage device can be utilized in other systems. 【0070】 Furthermore, the task execution device 1A is configured to include a workflow conversion unit 116A that converts a workflow stored in a storage device into a workflow in a format defined by a predetermined workflow engine. Therefore, the workflow generated by the task execution device 1A can be exported to other workflow engines. 【0071】[Example of implementation by software] Some or all of the functions of task execution devices 1 and 1A (hereinafter also referred to as "each of the above devices") may be implemented by hardware such as integrated circuits (IC chips) or by software. 【0072】 In the latter case, each of the above devices is implemented, for example, by a computer that executes instructions for a program, which is software that realizes each function. An example of such a computer (hereinafter referred to as computer C) is shown in Figure 6. Figure 6 is a block diagram showing the hardware configuration of computer C, which functions as each of the above devices. 【0073】 Computer C comprises at least one processor C1 and at least one memory C2. Memory C2 stores a program P for operating Computer C as each of the above-mentioned devices. In Computer C, the processor C1 reads and executes the program P from memory C2, thereby realizing each of the above-mentioned devices. 【0074】 For processor C1, for example, a CPU (Central Processing Unit), GPU (Graphic Processing Unit), DSP (Digital Signal Processor), MPU (Micro Processing Unit), FPU (Floating Point Number Processing Unit), PPU (Physics Processing Unit), TPU (Tensor Processing Unit), quantum processor, microcontroller, or a combination thereof can be used. For memory C2, for example, flash memory, HDD (Hard Disk Drive), SSD (Solid State Drive), or a combination thereof can be used. 【0075】Furthermore, computer C may also be equipped with RAM (Random Access Memory) for loading program P at runtime and for temporarily storing various data. Computer C may also be equipped with a communication interface for sending and receiving data with other devices. Furthermore, computer C may also be equipped with an input / output interface for connecting input / output devices such as a keyboard, mouse, display, and printer. 【0076】 Furthermore, program P can be recorded on a non-temporary, tangible recording medium M that is readable by computer C. Such recording medium M can include, for example, tape, disk, card, semiconductor memory, or programmable logic circuitry. Computer C can acquire program P via such recording medium M. Program P can also be transmitted via a transmission medium. Such transmission mediums can include, for example, a communication network or broadcast waves. Computer C can also acquire program P via such transmission medium. 【0077】 Furthermore, each of the above functions of each of the above devices may be implemented by a single processor in a single computer, by multiple processors in a single computer working together, or by multiple processors in each of multiple computers working together. In addition, the programs for implementing each of the above functions in each of the above devices may be stored in a single memory in a single computer, distributed and stored in multiple memories in a single computer, or distributed and stored in multiple memories in each of multiple computers. 【0078】 [Addendum A] This disclosure includes the technologies described in the following addendums. However, the present invention is not limited to the technologies described in the following addendums, and various modifications are possible within the scope of the claims. 【0079】(Appendix A1) A task execution device comprising: a task acquisition means for acquiring data representing a task to be executed; a first determination means for determining whether or not to decompose the task into a plurality of subtasks using the data; a task decomposition means for decomposing the task into a plurality of subtasks and generating a workflow in which the plurality of subtasks are linked in parallel or in series, if it is determined that the task should be decomposed; and a second determination means for determining whether or not to decompose the subtasks included in the workflow. 【0080】 (Appendix A2) The task execution device according to Appendix A1, further comprising a task distribution means that instructs the task processing means to execute the subtask included in the workflow if it is determined that the subtask should not be broken down. 【0081】 (Appendix A3) The task execution device according to Appendix A1 or A2, wherein the second determination means supplies a subtask that has been determined to be decomposed to the task decomposition means, and causes the subtask to be further decomposed into a plurality of subtasks. 【0082】 (Note A4) The task execution device according to any one of Notes A1 to A3, wherein the first determination means determines that a task will not be broken down if at least one of the plurality of task processing means is capable of solving the task, and the second determination means determines that a subtask included in the workflow will not be broken down if at least one of the plurality of task processing means is capable of solving the subtask. 【0083】 (Note A5) The task execution device as described in Note A4, wherein the first determination means queries the plurality of task processing means to determine whether it is possible to solve the task, and if it receives a response from all of the plurality of task processing means that it is not possible to solve the task, it determines to decompose the task; and the second determination means queries the plurality of task processing means to determine whether it is possible to solve the subtask, and if it receives a response from all of the plurality of task processing means that it is not possible to solve the subtask, it determines to decompose the subtask. 【0084】 (Note A6) The task execution device according to any one of Notes A1 to A5, wherein the task decomposition means decomposes the task in series or in parallel based on the type of task. 【0085】 (Note A7) The task execution device according to any one of Notes A1 to A6, wherein the task decomposition means selects one of a plurality of decomposition patterns using the data and decomposes the task according to the selected decomposition pattern. 【0086】 (Appendix A8) A task execution device according to any one of Appendix A1 to A7, comprising a presentation means for presenting the workflow to a user, wherein the task decomposition means performs at least one of the following based on user operation: decomposition of subtasks included in the workflow and integration of subtasks. 【0087】 (Appendix A9) The task execution device according to Appendix A2, further comprising a storage control means for storing data representing the task, the workflow obtained by breaking down the task, and the task processing means called by the task distribution means in a storage device. 【0088】 (Appendix A10) The task execution device according to any one of Appendix A1 to A9, further comprising workflow conversion means for converting a workflow stored in the storage device into a workflow in a format defined by a predetermined workflow engine. 【0089】 [Addendum B] This disclosure includes the technologies described in the following addendums. However, the present invention is not limited to the technologies described in the following addendums, and various modifications are possible within the scope of the claims. 【0090】(Appendix B1) A task execution method comprising: a task acquisition process in which at least one processor acquires data representing a task to be executed; a first determination process in which the at least one processor determines whether or not to decompose the task into a plurality of subtasks using the data; a task decomposition process in which, if the at least one processor determines to decompose the task, decomposes the task into a plurality of subtasks and generates a workflow in which the plurality of subtasks are linked in parallel or in series; and a second determination process in which the at least one processor determines whether or not to decompose the subtasks included in the workflow. 【0091】 (Appendix B2) The task execution method according to Appendix B1, further comprising a task distribution process that instructs the task processing unit to execute the subtask included in the workflow if the at least one processor determines that it does not decompose the subtask. 【0092】 (Appendix B3) The task execution method described in Appendix B1 or B2, wherein the second determination process supplies the subtask determined to be decomposed to the task decomposition process, and causes the subtask to be further decomposed into multiple subtasks. 【0093】 (Note B4) The task execution method according to any one of Notes B1 to B3, wherein the first determination process determines not to decompose a task if at least one of the multiple task processing units is capable of solving the task, and the second determination process determines not to decompose a subtask included in the workflow if at least one of the multiple task processing units is capable of solving the subtask. 【0094】(Note B5) The task execution method described in Note B4, wherein the first determination process queries the plurality of task processing units to see if it is possible to solve the task, and if it receives a response from all of the plurality of task processing units that it is not possible to solve the task, it determines to decompose the task; and the second determination process queries the plurality of task processing units to see if it is possible to solve the subtask, and if it receives a response from all of the plurality of task processing units that it is not possible to solve the subtask, it determines to decompose the subtask. 【0095】 (Appendix B6) The task execution method according to any one of Appendix B1 to B5, wherein in the task decomposition process, the at least one processor decomposes the task in series or in parallel based on the type of task. 【0096】 (Note B7) The task execution method according to any one of Notes B1 to B6, wherein in the task decomposition process, the at least one processor selects one of a plurality of decomposition patterns using the data and decomposes the task according to the selected decomposition pattern. 【0097】 (Appendix B8) The task execution method according to any one of Appendix B1 to B7, wherein the at least one processor includes a presentation process that presents the workflow to a user, and in the task decomposition process, the at least one processor performs at least one of decomposition of subtasks included in the workflow and integration of subtasks based on user operation. 【0098】 (Appendix B9) The task execution method according to Appendix B2, further comprising a storage control process in which at least one processor stores data representing the task, the workflow obtained by decomposing the task, and the task processing unit called by the task distribution process in a storage device. 【0099】(Appendix B10) The task execution method according to any one of Appendix B1 to B9, further comprising a workflow conversion process in which at least one processor converts a workflow stored in the storage device into a workflow in a format defined by a predetermined workflow engine. 【0100】 [Addendum C] This disclosure includes the technologies described in the following addendums. However, the present invention is not limited to the technologies described in the following addendums, and various modifications are possible within the scope of the claims. 【0101】 (Appendix C1) A program that causes a computer to function as a task execution device, wherein the computer functions as: a task acquisition means for acquiring data representing a task to be executed; a first determination means for determining whether or not to decompose the task into a plurality of subtasks using the data; a task decomposition means for decomposing the task into a plurality of subtasks and generating a workflow in which the plurality of subtasks are linked in parallel or in series, if it is determined that the task should be decomposed; and a second determination means for determining whether or not to decompose the subtasks included in the workflow. 【0102】 (Appendix C2) The task execution program described in Appendix C1, which further causes the computer to function as a task distribution means that instructs a task processing means to execute a subtask included in the workflow if it is determined that the subtask should not be broken down. 【0103】 (Note C3) The task execution program according to Note C1 or C2, wherein the second determination means supplies the subtask that has been determined to be decomposed to the task decomposition means, and causes the subtask to be further decomposed into a plurality of subtasks. 【0104】(Note C4) The task execution program according to any one of Notes C1 to C3, wherein the first determination means determines that the task will not be broken down if at least one of the plurality of task processing means is capable of solving the task, and the second determination means determines that the subtask included in the workflow will not be broken down if at least one of the plurality of task processing means is capable of solving the subtask. 【0105】 (Note C5) The task execution program as described in Note C4, wherein the first determination means queries the plurality of task processing means to see if it is possible to solve the task, and if it receives a response from all of the plurality of task processing means that it is not possible to solve the task, it determines to decompose the task; and the second determination means queries the plurality of task processing means to see if it is possible to solve the subtask, and if it receives a response from all of the plurality of task processing means that it is not possible to solve the subtask, it determines to decompose the subtask. 【0106】 (Note C6) The task decomposition means is a task execution program according to any one of Notes C1 to C5, which decomposes the task in series or in parallel based on the type of task. 【0107】 (Note C7) The task execution program described in any one of Notes C1 to C6, wherein the task decomposition means selects one of a plurality of decomposition patterns using the data and decomposes the task according to the selected decomposition pattern. 【0108】 (Note C8) The task execution program according to any one of Notes C1 to C7, wherein the computer functions as a presentation process that presents the workflow to the user, and the task decomposition means performs at least one of the following based on user operation: decomposition of subtasks included in the workflow and integration of subtasks. 【0109】(Appendix C9) The task execution program described in Appendix C2, which further causes the computer to function as a storage control means that stores data representing the task, the workflow obtained by breaking down the task, and the task processing means called by the task distribution means in a storage device. 【0110】 (Note C10) A task execution program according to any one of Notes C1 to C9, which further causes the computer to function as a workflow conversion means that converts a workflow stored in the storage device into a workflow in a format defined by a predetermined workflow engine. 【0111】 [Addendum D] This disclosure includes the technologies described in the following addendums. However, the present invention is not limited to the technologies described in the following addendums, and various modifications are possible within the scope of the claims. 【0112】 (Note D1) A task execution device comprising at least one processor, wherein the at least one processor performs: a task acquisition process for acquiring data representing a task to be executed; a first determination process for determining whether or not to decompose the task into a plurality of subtasks using the data; a task decomposition process for decomposing the task into a plurality of subtasks and generating a workflow in which the plurality of subtasks are linked in parallel or in series, if it is determined that the task should be decomposed; and a second determination process for determining whether or not to decompose the subtasks included in the workflow. 【0113】 The task execution device may also include memory. Furthermore, the memory may store a program that causes at least one processor to execute each of the aforementioned processes. 【0114】 (Appendix D2) The task execution device according to Appendix D1, further performing a task distribution process instructing the task processing unit to execute the subtask included in the workflow if the at least one processor determines that it does not decompose the subtask. 【0115】(Note D3) The task execution device according to Note D1 or D2, wherein the second determination process supplies the subtask determined to be decomposed to the task decomposition process, and causes the subtask to be further decomposed into multiple subtasks. 【0116】 (Note D4) The task execution device according to any one of Notes D1 to D3, wherein the first determination process determines not to decompose a task if at least one of the multiple task processing units is capable of solving the task, and the second determination process determines not to decompose a subtask included in the workflow if at least one of the multiple task processing units is capable of solving the subtask. 【0117】 (Note D5) The task execution device as described in Note D4, wherein the first determination process queries the plurality of task processing units to determine whether it is possible to solve the task, and if it receives a response from all of the plurality of task processing units that it is not possible to solve the task, it determines to decompose the task; and the second determination process queries the plurality of task processing units to determine whether it is possible to solve the subtask, and if it receives a response from all of the plurality of task processing units that it is not possible to solve the subtask, it determines to decompose the subtask. 【0118】 (Note D6) In the task decomposition process, the task execution device according to any one of Notes D1 to D5, wherein the at least one processor decomposes the task in series or in parallel based on the type of task. 【0119】 (Note D7) The task execution device according to any one of Notes D1 to D6, wherein in the task decomposition process, the at least one processor selects one of a plurality of decomposition patterns using the data and decomposes the task according to the selected decomposition pattern. 【0120】(Note D8) The task execution device according to any one of Notes D1 to D7, wherein the at least one processor further performs a presentation process for presenting the workflow to the user, and in the task decomposition process, the at least one processor performs at least one of decomposition of subtasks included in the workflow and integration of subtasks based on user operation. 【0121】 (Note D9) The task execution device according to Note D2, wherein the at least one processor further performs a storage control process that stores data representing the task, the workflow obtained by breaking down the task, and the task processing unit called by the task distribution process in a storage device. 【0122】 (Note D10) The task execution device according to any one of Notes D1 to D9, wherein the at least one processor further performs a workflow conversion process that converts the workflow stored in the storage device into a workflow in a format defined by a predetermined workflow engine. 【0123】 [Addendum E] This disclosure includes the technologies described in the following addendums. However, the present invention is not limited to the technologies described in the following addendums, and various modifications are possible within the scope of the claims. 【0124】 (Appendix E1) A non-temporary recording medium that records a task execution program for causing a computer to function as a task execution device, the program that causes the computer to execute: a task acquisition process for acquiring data representing a task to be executed; a first determination process for determining whether or not to decompose the task into a plurality of subtasks using the data; a task decomposition process for decomposing the task into a plurality of subtasks and generating a workflow in which the plurality of subtasks are linked in parallel or serial if it is determined that the task should be decomposed; and a second determination process for determining whether or not to decompose the subtasks included in the workflow. 【0125】Although the present disclosure has been described above with reference to embodiments, the present disclosure is not limited to the embodiments described above. Various modifications to the structure and details of the present disclosure can be made as can be understood by those skilled in the art within the scope of the present disclosure. Furthermore, each embodiment can be combined with other embodiments as appropriate. 【0126】 Each drawing is merely illustrative to illustrate one or more embodiments. Each drawing may be associated with one or more other embodiments, rather than being associated with only one specific embodiment. As those skilled in the art will understand, various features or steps described with reference to any one drawing can be combined with features or steps shown in one or more other drawings, for example, to create embodiments not explicitly shown or described. Not all features or steps shown in any one drawing to illustrate an exemplary embodiment are necessarily required, and some features or steps may be omitted. The order of steps described in any of the drawings may be changed as appropriate. 【0127】 This application claims priority based on Japanese Patent Application No. 2024-218796, filed on 13 December 2024, and incorporates all of its disclosures herein. 【0128】 1, 1A Task execution device 11, 111A Task acquisition unit 12 First determination unit 13, 113A Task decomposition unit 14 Second determination unit 15, 114A Task distribution unit 110A, 110a Task processing unit 112A Complexity determination unit 115A Memory control unit 116A Workflow conversion unit 117A Output control unit

Claims

1. A task execution device comprising: a task acquisition means for acquiring data representing a task to be executed; a first determination means for determining whether or not to decompose the task into a plurality of subtasks using the data; a task decomposition means for decomposing the task into a plurality of subtasks and generating a workflow in which the plurality of subtasks are linked in parallel or in series, if it is determined that the task should be decomposed; and a second determination means for determining whether or not to decompose the subtasks included in the workflow.

2. The task execution device according to claim 1, further comprising a task distribution means that instructs the task processing means to execute the subtask included in the workflow if it is determined that the subtask should not be broken down.

3. The task execution apparatus according to claim 1 or 2, wherein the second determination means supplies a subtask that has been determined to be decomposed to the task decomposition means, and causes the subtask to be further decomposed into a plurality of subtasks.

4. The task execution device according to any one of claims 1 to 3, wherein the first determination means determines that a task will not be broken down if at least one of the plurality of task processing means is capable of solving the task, and the second determination means determines that a subtask included in the workflow will not be broken down if at least one of the plurality of task processing means is capable of solving the subtask.

5. The task execution device according to claim 4, wherein the first determination means queries the plurality of task processing means to determine whether it is possible to solve the task, and if it receives a response from all of the plurality of task processing means that it is not possible to solve the task, it determines to decompose the task; and the second determination means queries the plurality of task processing means to determine whether it is possible to solve the subtask, and if it receives a response from all of the plurality of task processing means that it is not possible to solve the subtask, it determines to decompose the subtask.

6. The task execution device according to any one of claims 1 to 5, wherein the task decomposition means decomposes the task in series or in parallel based on the type of task.

7. The task execution device according to any one of claims 1 to 6, wherein the task decomposition means selects one of a plurality of decomposition patterns using the data and decomposes the task according to the selected decomposition pattern.

8. A task execution device according to any one of claims 1 to 7, comprising: presentation means for presenting the workflow to a user, wherein the task decomposition means performs at least one of decomposition of subtasks included in the workflow and integration of subtasks based on user operation.

9. A task execution method comprising: a task acquisition process in which at least one processor acquires data representing a task to be executed; a first determination process in which the at least one processor determines whether or not to decompose the task into a plurality of subtasks using the data; a task decomposition process in which, if the at least one processor determines to decompose the task, decomposes the task into a plurality of subtasks and generates a workflow in which the plurality of subtasks are linked in parallel or serially; and a second determination process in which the at least one processor determines whether or not to decompose the subtasks included in the workflow.

10. The task execution method according to claim 9, further comprising a task distribution process that instructs a task processing unit to execute a subtask included in the workflow if the at least one processor determines that it does not decompose the subtask.

11. The task execution method according to claim 9 or 10, wherein the second determination process supplies the subtask determined to be decomposed to the task decomposition process, and causes the subtask to be further decomposed into a plurality of subtasks.

12. The task execution method according to any one of claims 9 to 11, wherein the first determination process determines not to decompose a task if at least one of the plurality of task processing units is capable of solving the task, and the second determination process determines not to decompose a subtask included in the workflow if at least one of the plurality of task processing units is capable of solving the subtask.

13. The task execution method according to claim 12, wherein the first determination process queries the plurality of task processing units to determine whether it is possible to solve the task, and if it receives a response from all of the plurality of task processing units that it is not possible to solve the task, it determines to decompose the task; and the second determination process queries the plurality of task processing units to determine whether it is possible to solve the subtask, and if it receives a response from all of the plurality of task processing units that it is not possible to solve the subtask, it determines to decompose the subtask.

14. The task execution method according to any one of claims 9 to 13, wherein in the task decomposition process, the at least one processor decomposes the task in series or in parallel based on the type of task.

15. The task execution method according to any one of claims 9 to 14, wherein in the task decomposition process, the at least one processor selects one of a plurality of decomposition patterns using the data and decomposes the task according to the selected decomposition pattern.

16. The task execution method according to any one of claims 9 to 15, wherein the at least one processor includes a presentation process for presenting the workflow to a user, and in the task decomposition process, the at least one processor performs at least one of decomposing subtasks included in the workflow and integrating subtasks based on user operation.

17. A task execution program for causing a computer to function as a task execution device, the program comprising: a task acquisition means for acquiring data representing a task to be executed; a first determination means for determining whether or not to decompose the task into a plurality of subtasks using the data; a task decomposition means for decomposing the task into a plurality of subtasks and generating a workflow in which the plurality of subtasks are linked in parallel or in series, if it is determined that the task should be decomposed; and a second determination means for determining whether or not to decompose the subtasks included in the workflow.

18. The task execution program according to claim 17, further comprising: the computer, if it is determined that the subtask should not be broken down, further functioning as a task distribution means that instructs a task processing means to execute the subtask included in the workflow.

19. The task execution program according to claim 17 or 18, wherein the second determination means supplies a subtask that has been determined to be decomposed to the task decomposition means, and causes the subtask to be further decomposed into a plurality of subtasks.

20. The task execution program according to any one of claims 17 to 19, wherein the first determination means determines that a task will not be broken down if at least one of the plurality of task processing means is capable of solving the task, and the second determination means determines that a subtask included in the workflow will not be broken down if at least one of the plurality of task processing means is capable of solving the subtask.