Business support system, business support method, and program
The business support system addresses the issue of task-specific AI accuracy and user inconvenience by employing a parent AI to select the most suitable child AI, thereby improving efficiency and accuracy in task processing.
Patent Information
- Application Number
- PCT/JP2024/044554
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-12-28
- Filing Date
- 2024-12-17
- Publication Date
- 2025-07-03
AI Technical Summary
Conventional AI systems lack specificity for tasks, leading to insufficient accuracy and user inconvenience due to the need to select from multiple specialized AIs for various tasks, which is time-consuming and often results in inappropriate task processing.
A business support system that includes a parent AI capable of selecting a child AI specialized for a specific task based on input data, streamlining the task processing and eliminating the need for manual user selection.
Enhances user convenience by efficiently selecting and processing tasks with appropriate child AIs, reducing user effort and ensuring accurate task execution.
Smart Images

Figure JP2024044554_03072025_PF_FP_ABST
Abstract
Description
Business support system, business support method, and program
[0001] The present disclosure relates to a business support system, a business support method, and a program.
[0002] Conventionally, technologies that support user work based on AI (Artificial Intelligence) have been studied. For example, Patent Literature 1 describes a large-scale language model such as BERT (Bidirectional Encoder Representations from Transformers), which is an example of such AI. For example, a large-scale language model such as BERT is highly versatile and can process various tasks based on input data indicating user input.
[0003] Japanese Patent Application Laid-Open No. 2023-125311
[0004] However, since a highly versatile AI such as that described in Patent Document 1 is not specialized for a specific task, the accuracy of task processing may be insufficient. On the other hand, if a business support system attempts to prepare an AI specialized for a specific task, it must prepare a large number of AIs to handle various tasks. A user must select an AI specialized for a specific task from among a large number of AIs and have it process the task. For this reason, conventional technologies cannot sufficiently improve user convenience. This point is not limited to AI, but applies to business support programs in general that support users' business operations.
[0005] One of the objectives of the present disclosure is to improve user convenience.
[0006] A business support system according to one aspect of the present disclosure includes an input data acquisition unit that acquires input data indicating user input, a selection unit that can select a business support program from among a plurality of business support programs specialized for a specific task in business support based on AI (Artificial Intelligence) that can select the business support program specialized for the task corresponding to the input data, and a task processing unit that, when the business support program is selected by the selection unit, processes the task corresponding to the input data based on the business support program.
[0007] According to the present disclosure, it is possible to improve convenience for users.
[0008] FIG. 1 is a diagram illustrating an example of the hardware configuration of a business support system. FIG. 2 is a diagram illustrating an example of a business support screen. FIG. 3 is a diagram illustrating an example of the relationship between a parent AI and a child AI. FIG. 4 is a diagram illustrating an example of functions realized in the business support system. FIG. 5 is a diagram illustrating an example of a training database. FIG. 6 is a diagram illustrating an example of processing executed in the business support system. FIG. 7 is a diagram illustrating an example of functions realized in the business support system of variant 1. FIG. 8 is a diagram illustrating an example of AI of variant 6.
[0009] [1. Hardware Configuration] An example of an embodiment of a business support system, a business support method, and a program according to the present disclosure will be described. Fig. 1 is a diagram illustrating an example of the hardware configuration of a business support system. For example, the business support system 1 includes a learning terminal 10, a server 20, and a user terminal 30. Each of the learning terminal 10, the server 20, and the user terminal 30 is connected to a network N such as the Internet or a LAN.
[0010] The learning terminal 10 is a computer that performs learning of AI (Artificial Intelligence), which will be described later. For example, the learning terminal 10 is a personal computer, a tablet terminal, or a smartphone. For example, the learning terminal 10 includes a control unit 11, a memory unit 12, a communication unit 13, an operation unit 14, and a display unit 15. The control unit 11 includes at least one processor. The memory unit 12 includes at least one of volatile memory such as RAM and non-volatile memory such as flash memory. The communication unit 13 includes at least one of a communication interface for wired communication and a communication interface for wireless communication. The operation unit 14 is an input device such as a mouse or a touch panel. The display unit 15 is an LCD or organic EL display.
[0011] The server 20 is a server computer. For example, the server 20 includes a control unit 21, a storage unit 22, and a communication unit 23. The hardware configurations of the control unit 21, the storage unit 22, and the communication unit 23 may be similar to those of the control unit 11, the storage unit 12, and the communication unit 13, respectively.
[0012] The user terminal 30 is a user's computer. For example, the user terminal 30 is a personal computer, a tablet terminal, a smartphone, or a wearable terminal. For example, the user terminal 30 includes a control unit 31, a memory unit 32, a communication unit 33, an operation unit 34, and a display unit 35. The hardware configurations of the control unit 31, the memory unit 32, the communication unit 33, the operation unit 34, and the display unit 35 may be similar to those of the control unit 11, the memory unit 12, the communication unit 13, the operation unit 14, and the display unit 15, respectively.
[0013] The programs stored in the storage units 12, 22, and 32 may be supplied via the network N. The hardware configuration of each of the learning terminal 10, the server 20, and the user terminal 30 is not limited to the example shown in FIG. 1. For example, at least one of the learning terminal 10, the server 20, and the user terminal 30 may include at least one of a reading unit (e.g., a memory card slot) that reads a computer-readable information storage medium and an input / output unit (e.g., a USB terminal) for direct connection to an external device. The program stored in the information storage medium may be supplied to at least one of the learning terminal 10, the server 20, and the user terminal 30 via at least one of the reading unit and the input / output unit.
[0014] Furthermore, the business support system 1 only needs to include at least one computer. The computers included in the business support system 1 are not limited to the example in FIG. 1. For example, the business support system 1 may include only the learning terminal 10 and the server 20. In this case, the user terminal 30 exists outside the business support system 1. The business support system 1 may also include only the server 20. In this case, the learning terminal 10 and the user terminal 30 exist outside the business support system 1. The business support system 1 may also include the server 20 and other server computers.
[0015] 2. Overview of the Business Support System In this embodiment, the business support system 1 has a business support function that supports a user's business. For example, the business support function may be a communication function that enables a user to communicate with other users, a schedule management function that manages a user's schedule, a file management function that manages a user's files, or an email management function that manages a user's email. The business support function may also be any other known function.
[0016] For example, the business support system 1 may provide users with cloud-based or on-premise groupware. The business support system 1 may also provide users with a service that supports business operations, but is not classified as groupware. When a user logs in to the business support system 1, the user terminal 30 displays a business support screen on the display unit 35, allowing the user to use the business support function. In this embodiment, an example is given in which the business support screen is displayed on the browser of the user terminal 30.
[0017] FIG. 2 is a diagram showing an example of a business support screen. The example of FIG. 2 shows a business support screen SC on which a user can use a communication function, which is an example of a business support function. For example, the user terminal 30 displays a thread selected by a user from among multiple threads created in the business support system 1 on the business support screen SC. The business support screen SC displays posts made to the thread in chronological order. The user can post a new post to the thread or post a reply to an existing post.
[0018] As shown in the upper business support screen SC of FIG. 2, a user can input a new post in an input form F10. For example, a user can mention another user by specifying the other user. A mention is a notification to the other user. In the example of FIG. 2, a user can mention another user by entering a specific symbol (e.g., @) followed by the other user's information (e.g., the other user's name). The mention mechanism may be similar to a known mechanism. A user can also mention an AI in the same way as mentioning other users.
[0019] AI is a program with artificial intelligence that assists users in their work. There are various definitions of AI, and the AI of this embodiment may be AI defined by various known definitions. The AI may be AI called generative AI or conversational AI. For example, the AI may be a large-scale language model, a machine learning model not classified as a large-scale language model, a program called a bot, or other programs. There are various definitions of machine learning, and the machine learning of this embodiment may be machine learning defined by various known definitions. The machine learning may be supervised learning, semi-supervised learning, or unsupervised learning.
[0020] In this embodiment, a case where a large-scale language model corresponds to an AI is taken as an example. For example, a user can mention an AI by entering a specific symbol (e.g., @) followed by a character string indicating the AI (e.g., "bot") instead of information about another user. When a user enters a post, the user terminal 30 transmits input data indicating the post entered by the user to the server 20.
[0021] For example, when the server 20 receives input data from the user terminal 30, it determines whether or not a mention has been made to the AI based on the input data. If the server 20 determines that a mention has been made to the AI, it reflects the user's post in the thread. If the server 20 determines that a mention has been made to the AI, it causes the AI to process a task according to the input data.
[0022] A task is the content of processing executed by a program, for example, AI. A task can also be the content of output from a program, for example, AI. A task may be any task related to business support. For example, a task may be machine translation, summarizing, research (providing knowledge), schedule adjustment, generating text such as email or report, creating images, generating applications, setting up a database, classifying input data, or other tasks. The business support system 1 is capable of processing multiple tasks, of which these are examples. Task processing is also an example of a business support function possessed by the business support system 1.
[0023] A task according to input data is a task determined based on the input indicated by the input data (in the example of FIG. 2, a post to a thread). A task according to input data can also be said to be a task requested by a user who made the input indicated by the input data. For example, if the AI is a generative AI, a task according to input data is a task in which the AI generates content such as an image or text based on the input data. If the AI is an interactive AI, a task according to input data is a task in which the AI generates answer data indicating an answer from the AI based on the input indicated by the input data.
[0024] In this embodiment, multiple AIs specialized for specific tasks in business support are prepared. The AIs are an example of business support programs that support user business. As in a modified example described below, the business support programs may be programs that are not classified as AIs, but this embodiment takes as an example a case where the AI corresponds to the business support program. The server 20 causes an AI specialized for a task corresponding to input data, from among multiple AIs prepared in advance, to process the task.
[0025] In the example of FIG. 2 , the input data indicates a post such as, "I will explain popular programming languages to my manager at next week's regular meeting. Please tell me what popular programming languages are." Since the user is requesting the AI to research popular programming, the task corresponding to the input data is a research task. The server 20 causes an AI specialized in research tasks, among multiple pre-prepared AIs, to process the research task. The server 20 transmits data indicating the task processing results output by the AI to the user terminal 30. As shown in the business support screen SC at the bottom of FIG. 2 , the user terminal 30 displays a response from the AI based on the data.
[0026] As described above, the server 20 selects an AI from among multiple AIs that is specialized for a task corresponding to the input data to process the task. For example, a user may select an AI from among multiple AIs that is specialized for a task corresponding to the input data, and the server 20 may select the AI selected by the user to process the task. In this case, the user must select the AI, which requires the user's effort. Furthermore, the user may not necessarily select an appropriate AI, and the task may not be processed appropriately.
[0027] Therefore, in this embodiment, in addition to an AI specialized in a specific task, an AI capable of selecting that AI is prepared in advance. Hereinafter, an AI that performs processing specialized for a specific task is called a child AI. A child AI can also be called a specialized AI. An AI that can select a child AI is called a parent AI. A parent AI can also be called a selection AI. In this embodiment, an example is given in which the parent AI only performs the task of selecting a child AI, but as in the modified example described below, the parent AI may also be a general-purpose AI that can process various tasks. In other words, the parent AI may not only be specialized in the task of selecting a child AI, but may also be able to handle various tasks.
[0028] Figure 3 is a diagram showing an example of the relationship between parent AIs and child AIs. In the example of Figure 3, child AI 201A specialized in the task of machine translation, child AI 201B specialized in the task of summarizing, child AI 201C specialized in the task of research, and child AI 201D specialized in the task of schedule adjustment are prepared. Hereinafter, when there is no particular distinction between child AIs 201A to 201D, they will simply be referred to as child AI 201. Furthermore, when there is no particular distinction between parent AI 200 and child AI 201, the reference numerals will be omitted and they will simply be referred to as AI.
[0029] For example, the server 20 inputs input data received from the user terminal 30 to the parent AI 200. The parent AI 200 is assumed to have undergone prior learning so that it can select an appropriate child AI 201. The learning method of the parent AI 200 will be described later. Depending on the content of the input data, the parent AI 200 may not need to select a child AI 201. In the example of input data shown in Figure 2, the parent AI 200 infers from the content of the input data that child AI 201C, which is specialized in research tasks, is appropriate, and selects child AI 201C.
[0030] For example, the server 20 inputs input data received from the user terminal 30 to the child AI 201C selected by the parent AI 200. The child AI 201C processes the research task based on the input data and outputs output data indicating the results of the research. In the example of Figure 2, the output data output from the child AI 201C indicates an answer such as, "Trends in programming languages are constantly changing, but as of 2023, several languages are attracting attention. For example, the following five languages are..."
[0031] In this embodiment, the child AI 201 selected by the parent AI 200 varies depending on the content of the input data. For example, suppose a user inputs a post containing a sentence written in Japanese and a sentence such as "Please translate the above sentence into English." In this case, the parent AI 200 infers from the content of the input data that child AI 201A, which specializes in machine translation tasks, is appropriate, and selects child AI 201A. Based on the input data, the server 20 has the child AI 201A selected by the parent AI 200 process the machine translation task. The child AI 201A processes the machine translation task by translating the Japanese sentence indicated by the input data into English.
[0032] For example, suppose a user inputs a post containing a sentence of a certain length and a sentence such as "Please create a summary of the above sentence." In this case, the parent AI 200 infers from the content of the input data that child AI 201B, which specializes in the task of creating a summary, is appropriate, and selects child AI 201B. Based on the input data, the server 20 has the child AI 201B selected by the parent AI 200 process the task of creating a summary. Child AI 201B processes the task of creating a summary by creating a summary of the sentence indicated by the input data.
[0033] For example, suppose a user inputs a post including candidate dates for a meeting and a sentence such as "Please check if my schedule is free." In this case, the parent AI 200 infers from the content of the input data that the child AI 201D, which specializes in the task of schedule adjustment, is appropriate, and selects the child AI 201D. Based on the input data, the server 20 causes the child AI 201D selected by the parent AI 200 to process the schedule adjustment task. The child AI 201D processes the schedule adjustment task by referring to the user's schedule data registered in the business support system 1 and checking whether the candidate dates indicated by the input data are free.
[0034] As described above, in the business support system 1 of this embodiment, the parent AI 200 can select a child AI 201 that specializes in a task corresponding to the input data based on input data indicating a post entered by a user. When the child AI 201 is selected by the parent AI 200, the child AI 201 processes the task corresponding to the input data. This improves the user's business efficiency, and the business support system 1 can improve user convenience. Details of the business support system 1 will be described below.
[0035] 3. Functions Implemented by the Business Support System FIG. 4 is a diagram showing an example of functions implemented by the business support system 1. As shown in FIG.
[0036] 3-1. Functions Realized by the Learning Terminal For example, the learning terminal 10 includes a data storage unit 1000 and a learning unit 1001. The data storage unit 1000 is realized by the storage unit 12. The learning unit 1001 is realized by the control unit 11.
[0037] [Data Storage Unit] The data storage unit 1000 stores data necessary for training at least one of the parent AI 200 and the child AI 201. For example, the data storage unit 1000 stores the parent AI 200. In this embodiment, an example is given in which the parent AI 200 is a large-scale language model based on a transformer, such as a generative pre-trained transformer (GPT) or a bidirectional encoder representations from transformers (BERT). The parent AI 200 may also be a large-scale language model using a method other than a transformer. The parent AI 200 may also be a machine learning model that is not classified as a large-scale language model. For example, the parent AI 200 may be a generative adversarial network, a neural network, or a support vector machine.
[0038] In addition, since the selection of an appropriate child AI 201 can also be considered as classification (labeling) of input data, the parent AI 200 may be a machine learning model capable of classifying input data. Furthermore, the parent AI 200 may be a program that is not classified as a machine learning model. For example, the parent AI 200 may be a rule-based program that indicates the relationship between input data and an appropriate child AI 201. A rule-based program defines rules that are judged based on all or part of the input indicated by the input data. A rule-based program contains program code that indicates that when a certain rule is satisfied, the child AI 201 associated with the rule is appropriate. If the parent AI 200 is a rule-based program, learning is not performed, so the business support system 1 does not need to include a learning terminal 10.
[0039] In this embodiment, since the parent AI 200 is a machine learning model, for example, a Transformer-based large-scale language model, the parent AI 200 includes parameters that are adjusted by learning and a program that indicates processing such as calculation of embedded representations. Furthermore, this embodiment takes as an example a case where a business that provides the business support system 1 to users (for example, a company that developed groupware) creates the parent AI 200 by re-learning (for example, fine-tuning, transfer learning, or distillation) a pre-trained large-scale language model provided by another business.
[0040] The program and parameters of the parent AI 200 may be various known programs and parameters. The parameters of the parent AI 200 are referenced by the program of the parent AI 200. For example, the parameters are at least one of a weighting coefficient and a bias. The program of the parent AI 200 includes code that indicates the internal processing of the parent AI 200. For example, the program of the parent AI 200 includes an intermediate layer that calculates an embedded representation and generates data for the output layer, and an output layer that performs final output based on the data.
[0041] For example, if the parent AI 200 is a Transformer-based large-scale language model, the program of the parent AI 200 indicates a process of dividing a sentence indicated by input data into multiple tokens, a process of calculating embedded expressions for each token, a process of making a prediction according to the arrangement of the embedded expressions, and a process of producing an output according to this series of processes.If the parent AI 200 is another machine learning model, the program of the parent AI 200 may indicate a process adopted as the other machine learning model.The data storage unit 1000 stores a training database DB which stores training data that the learning unit 1001 described below has the parent AI 200 learn.
[0042] FIG. 5 is a diagram showing an example of a training database DB. In this embodiment, a case where supervised learning is performed is taken as an example. For example, the training data includes an input portion that is input to the AI during learning, and an output portion that is the correct answer during learning. In the example of FIG. 5, the input portion of the training data is input data for training. The output portion of the training data is child AI identification data for identifying the child AI 201 that is the correct answer (child AI 201 specialized in a task according to the training input data). When the parent AI 200 is created by relearning a large-scale language model that has been pre-trained, the training data is data for relearning. Learning in this embodiment also includes relearning.
[0043] The training input data indicates training input. For example, the training input data indicates training sentences (character strings). As in the example of Figure 2, when input data indicating thread posts is analyzed by the parent AI 200, the training input data is a post that the learning unit 1001 causes the parent AI 200 to learn. The training input data may indicate information other than sentences. For example, the training input data may indicate files, reactions, images displayed on the business support screen SC, or other information.
[0044] The child AI identification data is data that enables the business support system 1 to identify the child AI 201. For example, the child AI identification data is an ID or name assigned to the child AI 201. The child AI identification data indicates the child AI 201 that is specialized for a task corresponding to the training input data. In other words, the child AI identification data indicates the child AI 201 that is the correct answer during learning. In this embodiment, an example is given in which one child AI identification data is associated with one training input data (i.e., one child AI identification data that is the correct answer for one training input data), but multiple child AI identification data may be associated with one training input data.
[0045] For example, if the training input data indicates content related to machine translation, the child AI identification data paired with the training input data indicates child AI 201A specialized in the task of machine translation. If the training input data indicates content related to summary creation, the child AI identification data paired with the training input data indicates child AI 201B specialized in the task of summary creation. If the training input data indicates content related to research, the child AI identification data paired with the training input data indicates child AI 201C specialized in the task of research. If the training input data indicates content related to schedule adjustment, the child AI identification data paired with the training input data indicates child AI 201D specialized in the task of schedule adjustment.
[0046] The training data may be created by a person in charge of learning the parent AI 200. For example, the person in charge creates training input data, which is the input portion of the training data, based on posts in existing threads or virtual posts. The person in charge determines the appropriate tasks for these posts and designates (annotates) the child AI identification data of the child AI 201 specialized in that task as the output portion of the training data. The learning terminal 10 generates pairs of these input and output portions as training data and stores them in the training database DB. The training data may be generated using a known tool rather than being generated by manual designation by the person in charge.
[0047] For example, the data storage unit 1000 stores multiple child AIs 201. In this embodiment, an example is taken in which the child AI 201 is a Transformer-based large-scale language model, similar to the parent AI 200. The child AI 201 may also be a large-scale language model using a method other than Transformer. The child AI 201 may also be a machine learning model that is not classified as a large-scale language model. For example, the child AI 201 may be a generative adversarial network, a neural network, or a support vector machine. Furthermore, the child AI 201 may be a program that is not classified as a machine learning model.
[0048] In this embodiment, an example is given in which a business providing a business support system 1 to a user creates a child AI 201 by retraining a pre-trained large-scale language model provided by another business. For example, the child AI 201 includes parameters adjusted by training and a program that indicates processing such as calculation of embedded expressions. The program and parameters of the child AI 201 may be various well-known programs and parameters. This is as described for the program and parameters of the parent AI 200. The program and parameters of the child AI 201 may be similar to those described as an example of the program and parameters of the parent AI 200.
[0049] For example, the data storage unit 1000 stores training data for relearning a pre-trained large-scale language model. That is, the data storage unit 1000 stores training data for the child AI 201 separately from the training data for the parent AI 200. The training data for the child AI 201 may be publicly known training data, and is therefore not shown in the figure. The training data for the child AI 201 is prepared according to the task for which the child AI 201 specializes. For example, the training data for the child AI 201 includes input data for training and output data that indicates an output that is the correct answer according to the task of the child AI 201. The output data is determined according to the content of the task.
[0050] For example, the training data of child AI 201A specialized in the task of machine translation includes training input data indicating the sentence before translation and output data indicating the sentence after translation. Training data of child AI 201B specialized in the task of summary creation includes training input data indicating the sentence to be summarized and output data indicating the correct summary. Training data of child AI 201C specialized in the task of research includes training input data indicating the details of the research request and output data indicating the correct details of the research. Training data of child AI 201D specialized in the task of schedule adjustment includes training input data indicating the schedule to be adjusted and output data indicating the correct adjustment result. Similarly, for other tasks, training data appropriate to the task may be prepared.
[0051] The data stored in the data storage unit 1000 is not limited to the example of this embodiment. The data storage unit 1000 may store data necessary for learning at least one of the parent AI 200 and the child AI 201. For example, the data storage unit 1000 may store other data, such as a learning program that indicates a series of processes during learning. The learning program also indicates the formula for the loss function calculated during learning. The data storage unit 1000 may store all of the parent AI 200 before learning (parent AI 200 with initial parameters), parent AI 200 after learning (parent AI 200 with parameters adjusted by learning), child AI 201 before learning (child AI 201 with parameters adjusted by pre-learning), and child AI 201 after learning (child AI 201 with parameters adjusted by re-learning).
[0052] [Learning Unit] The learning unit 1001 performs learning of at least one of the parent AI 200 and the child AI 201. For example, the learning unit 1001 performs learning of the parent AI 200 based on each of multiple training data stored in the training database DB. In this embodiment, an example is given in which the learning unit 1001 performs learning of the parent AI 200 based on a supervised learning algorithm. The learning algorithm may be a well-known algorithm. The learning unit 1001 may also perform learning of the parent AI 200 based on a semi-supervised learning or unsupervised learning algorithm.
[0053] In this embodiment, the learning unit 1001 performs a series of learning processes by executing a learning program stored in the data storage unit 1000. For example, the learning unit 1001 may perform learning of the parent AI 200 by adjusting the parameters of the parent AI 200 so that when an input portion of training data stored in the training database DB is input to the parent AI 200, an output portion of the training data is output from the parent AI 200. The learning unit 1001 calculates the loss of the parent AI 200 based on the loss function described in the learning program. The learning unit 1001 repeats learning until the loss becomes sufficiently small.
[0054] In this embodiment, a case where a Transformer-based large-scale language model corresponds to the parent AI 200 is taken as an example, and therefore the learning unit 1001 may perform learning of the parent AI 200 based on a known algorithm adopted in the Transformer-based large-scale language model. The learning unit 1001 may perform learning of the parent AI 200 based on a known algorithm corresponding to the type of machine learning model adopted as the parent AI 200. For example, the learning unit 1001 may perform learning of the parent AI 200 based on a known algorithm such as backpropagation or gradient descent. The learning unit 1001 may perform learning of the parent AI 200 from scratch, rather than retraining a pre-trained large-scale language model. The learning unit 1001 may perform learning of the parent AI 200 based on unannotated training data.
[0055] For example, when learning is completed, the learning unit 1001 records the learned parent AI 200 in the data storage unit 1000. The data storage unit 1000 may store both the parent AI 200 before learning and the learned parent AI 200. The learning unit 1001 transmits the learned parent AI 200 to the server 20. The learned parent AI 200 transmitted to the server 20 is made available for use by the user.
[0056] For example, the learning unit 1001 performs learning of the child AI 201 based on the training data of the child AI 201. A specific example of the learning method of the child AI 201 may be the same as the method described as an example of the learning method of the parent AI 200. The learning unit 1001 performs learning of the child AI 201 by adjusting the parameters of the child AI 201 so that when an input portion of the training data of the child AI 201 is input to the child AI 201, an output portion of the training data is output from the child AI 201. In this embodiment, the learning unit 1001 performs re-learning of the pre-trained child AI 201. The re-learning may be performed using a known algorithm. The learning unit 1001 may perform learning of the child AI 201 from scratch, rather than re-training a pre-trained large-scale language model. The learning unit 1001 may perform learning of the child AI 201 based on unannotated training data.
[0057] For example, when learning is completed, the learning unit 1001 records the learned child AI 201 in the data storage unit 1000. The data storage unit 1000 may store both the child AI 201 before learning and the learned child AI 201. The learning unit 1001 transmits the learned child AI 201 to the server 20. The learned child AI 201 transmitted to the server 20 is made available for use by the user.
[0058] [3-2. Functions Realized by the Server] For example, the server 20 includes a data storage unit 2000, an input data acquisition unit 2001, a selection unit 2002, a task processing unit 2003, and a providing unit 2004. The data storage unit 2000 is realized by the storage unit 22. The input data acquisition unit 2001, the selection unit 2002, the task processing unit 2003, and the providing unit 2004 are each realized by the control unit 21.
[0059] [Data Storage Unit] The data storage unit 2000 stores data necessary for business support. For example, the data storage unit 2000 stores a parent AI 200 and multiple child AIs 201. In this embodiment, the learning terminal 10 performs learning on each of the parent AI 200 and the multiple child AIs 201. The server 20 acquires the trained parent AI 200 and the trained multiple child AIs 201 from the learning terminal 10 and records them in the data storage unit 2000.
[0060] As mentioned above, since the child AI 201 is an example of a business support program, any reference to the child AI 201 can be read as the business support program. In this embodiment, an example is given in which the child AI 201 corresponds to one specific task, but the child AI 201 may also correspond to multiple tasks. In other words, the child AI 201 may be a single-task AI or a multi-task AI.
[0061] In addition, at least one of the parent AI 200 and the child AI 201 may be stored in another computer other than the server 20 (e.g., another server computer). For example, if the parent AI 200 is stored in another computer, the selection unit 2002 described below requests the other computer to select the child AI 201 by sending input data to the other computer. The other computer can select the child AI 201 based on the input data received from the server 20 and the parent AI 200 stored therein. The other computer sends selection result data indicating the selection result of the child AI 201 to the server 20. The selection unit 2002 may identify the child AI 201 selected by the parent AI 200 based on the selection result data received from the other computer.
[0062] For example, if the child AI 201 is stored in another computer, the task processing unit 2003 described below requests the other computer to process the task by sending input data. If the parent AI 200 is not stored in the other computer, the task processing unit 2003 may send selection result data indicating the child AI 201 selected by the parent AI 200 to the other computer. Based on this data, the other computer causes the child AI 201 specialized in the task corresponding to the input data to process the task. The other computer sends processing result data indicating the processing result of the task to the server 20. The task processing unit 2003 acquires the processing result data received from the other computer. In this way, the task processing unit 2003 may process the task by requesting the other computer to process the actual task and acquiring the processing result data.
[0063] The data stored in the data storage unit 2000 is not limited to the above examples. The data storage unit 2000 can store any data. For example, the data storage unit 2000 may store programs and data for each function of the business support system 1 (for example, in the case of a communication function, data posted to a thread). The data storage unit 2000 may store a database in which various data of users who use the business support system 1 is stored. The data storage unit 2000 may store data such as data for displaying the business support screen SC (for example, HTML data).
[0064] [Input Data Acquisition Unit] The input data acquisition unit 2001 acquires input data indicating user input. User input can also be referred to as user operation. For example, the input data indicates a character string entered by the user. The character string can also be referred to as text, a message, or a sentence. In the example of FIG. 2, the input data indicates a user post. The input data may indicate input other than a character string. For example, the input data may indicate a voice uttered by the user, a file selection result by the user, a selection result of information (e.g., an image or text) displayed on the business support screen SC, or other input.
[0065] For example, when a user makes an input on the business support screen SC, the user terminal 30 transmits input data indicating the input to the server 20. The input data acquisition unit 2001 acquires the input data from the user terminal 30. The input data acquisition unit 2001 may acquire the input data from the user terminal 30 via a computer other than the server 20 and the user terminal 30. In the example of FIG. 2 , when a user performs an operation for posting (e.g., selecting the "Write" button), the user terminal 30 transmits input data indicating the post entered in the input form F10 to the server 20. The input data acquisition unit 2001 acquires input data indicating the user's post from the user terminal 30.
[0066] The input data may be stored in the data storage unit 2000. For example, the input data acquisition unit 2001 records the input data acquired from the user terminal 30 in the data storage unit 2000. The input data acquisition unit 2001 can acquire the input data from the data storage unit 2000 at any timing. In this case, the data storage unit 2000 may also store data for identifying the user who made the input indicated by the input data.
[0067] [Selection Unit] The selection unit 2002 can select a business assistance program from among multiple business assistance programs specialized for specific tasks in business assistance, based on the parent AI 200, which can select a business assistance program specialized for a task corresponding to input data. In this embodiment, an example is given in which the child AI 201 corresponds to the business assistance program, so the selection unit 2002 can select a child AI 201 specialized for a task corresponding to the input data based on the parent AI 200. The selection unit 2002 may select multiple child AIs 201.
[0068] The selection unit 2002 does not necessarily have to select a child AI 201, and may not select a child AI 201. For example, the selection unit 2002 may not select a child AI 201 if there is no task corresponding to the input data, or if there is a task corresponding to the input data but no child AI 201 specialized for it. The selection unit 2002 may attempt to select a child AI 201 each time input data is acquired. When certain input data is acquired, the selection unit 2002 may not select a child AI 201 specialized for a task corresponding to the input data, and when other input data is acquired, the selection unit 2002 may select a child AI 201 specialized for a task corresponding to the other input data.
[0069] For example, the selection unit 2002 inputs input data to the parent AI 200. The input data is used as a prompt for the parent AI 200. In addition to the input data, a default prompt prepared by the business support system 1 may be input to the parent AI 200. The parent AI 200 calculates an embedded expression based on the input data and outputs output data indicating an output corresponding to the embedded expression. If a child AI 201 corresponding to the embedded expression exists, the parent AI 200 outputs the child AI identification data of the child AI 201 as output data. If a child AI 201 corresponding to the embedded expression does not exist, the parent AI 200 outputs output data indicating that the child AI 201 was not selected. The selection unit 200 acquires the output data output from the parent AI 200. A series of processes by the parent AI 200 is executed based on parameters adjusted by learning.
[0070] In this embodiment, a Transformer-based large-scale language model corresponds to the parent AI 200, so the parent AI 200 divides the character string indicated by the input data into multiple tokens and then calculates the embedded representation of each token. The parent AI 200 predicts the continuation as necessary based on the sequence of the embedded representation of each token, and then outputs output data. If a child AI 201 exists that corresponds to the sequence of the embedded representation of each token, the parent AI 200 outputs the child AI identification data of the child AI 201 as output data. If a child AI 201 does not exist that corresponds to the sequence of the embedded representation of each token, the parent AI 200 outputs output data indicating that the child AI 201 was not selected.
[0071] Note that the processing performed by parent AI 200 is not limited to the above example. Parent AI 200 may output output data indicating the selection result of child AI 201 based on input data. The relationship between these inputs and outputs may be defined in the program code of parent AI 200. For example, if parent AI 200 is a machine learning model other than Transformer, parent AI 200 may calculate an embedded representation based on input data and output output data corresponding to the embedded representation, as described above. If parent AI 200 is a program not classified as a machine learning model, output data may be output from parent AI 200 based on the program code, variables, etc. described in the program.
[0072] [Task Processing Unit] When a business support program is selected by the selection unit 2002, the task processing unit 2003 processes a task corresponding to the input data based on the business support program. In this embodiment, an example is given in which the child AI 201 corresponds to the business support program, so the task processing unit 2003 processes a task based on the input data and the child AI 201 selected by the selection unit 2002. In other words, the task processing unit 2003 causes the child AI 201 selected by the selection unit 2002 to process a task corresponding to the input data.
[0073] For example, the task processing unit 2003 inputs input data to the child AI 201 selected by the selection unit 2002. The input data is used as a prompt for the child AI 201. In addition to the input data, a default prompt prepared by the business support system 1 may be input to the child AI 201. The child AI 201 calculates an embedded expression based on the input data and outputs output data corresponding to the embedded expression. The child AI 201 outputs output data corresponding to the embedded expression. The output of the output data corresponds to processing of a task corresponding to the input data. The selection unit 2002 acquires the output data output from the child AI 201. A series of processes by the child AI 201 is executed based on parameters adjusted by learning.
[0074] For example, if the selection unit 2002 selects child AI201A specialized in the task of machine translation, child AI201A outputs output data indicating the translation result according to the embedded expression. If the selection unit 2002 selects child AI201B specialized in the task of summarizing, child AI201B outputs output data indicating the summary according to the embedded expression. If the selection unit 2002 selects child AI201C specialized in the task of research, child AI201C outputs output data indicating information according to the embedded expression. If the selection unit 2002 selects child AI201D specialized in the task of schedule adjustment, child AI201D outputs output data indicating the adjustment result according to the embedded expression.
[0075] In this embodiment, a Transformer-based large-scale language model corresponds to the child AI 201, which divides the character string indicated by the input data into multiple tokens and calculates the embedding of each token. The child AI 201 predicts the continuation as necessary based on the sequence of the embedding of each token, and then outputs the output data.
[0076] Note that the processing performed by child AI 201 is not limited to the above example. Child AI 201 may output output data indicating the selection result of child AI 201 based on input data. The relationship between these inputs and outputs may be defined in the program code of child AI 201. For example, if child AI 201 is a machine learning model other than Transformer, child AI 201 may calculate an embedded representation based on the input data and output output data corresponding to the embedded representation, as described above. If child AI 201 is a program not classified as a machine learning model, output data may be output from child AI 201 based on the program code, variables, etc. described in the program.
[0077] In this embodiment, if the selection unit 2002 does not select a child AI 201, the task processing unit 2003 does not process the task corresponding to the input data. In this case, the task processing unit 2003 transmits data to the user terminal 30 indicating that the task corresponding to the input data has not been processed. Based on the data, the user terminal 30 displays an error message on the display unit 35 indicating that the task corresponding to the input data has not been processed. If the selection unit 2002 does not select a child AI 201, the task processing unit 2003 may cause a general-purpose parent AI 200 to process the task, as in a modified example described below. As another example, if the selection unit 2002 does not select a child AI 201, the task processing unit 2003 may cause a general-purpose AI prepared separately from the parent AI 200 to process the task.
[0078] [Providing Unit] The providing unit 2004 provides the user with the processing result of the task processing unit 2003. In this embodiment, the providing unit 2004 is realized by the server 20, and therefore the providing unit 2004 provides the processing result to the user by transmitting processing result data indicating the processing result of the task processing unit 2003 to the user terminal 30. Based on the processing result data, the user terminal 30 displays information (e.g., an image or text) indicating the processing result of the task processing unit 2003 on the business support screen SC.
[0079] For example, the providing unit 2004 includes an output providing unit 2004A. The output providing unit 2004A provides the user with the output from the business support program selected by the selecting unit 2002, which is obtained by the task processing unit 2003. In this embodiment, since the child AI 201 corresponds to the business support program, the output providing unit 2004A provides the user with the output from the child AI 201 obtained by the task processing unit 2003. In other words, the output providing unit 2004A provides the user with the output obtained by the task processing unit 2003 as is. The output data output from the child AI 201 is an example of processing result data. Instead of the output data becoming processing result data as is, processing result data may be generated based on the output data, as in a modified example described below.
[0080] The processing result data may be in any format. In this embodiment, the processing result data may be data necessary for displaying some information on the business support screen SC. For example, when the business support screen SC is displayed in a browser, the processing result data may be data in a markup language such as HTML. When the business support screen SC is displayed in an application dedicated to the business support system 1, the processing result data may be data (e.g., image data or text data) necessary for displaying some information in the application. In the example of Figure 2, the providing unit 2004 displays the answer indicated by the processing result data as a reply to the post made to the user. The user's post is also displayed on the business support screen SC by processing of the server 20.
[0081] [3-3. Functions Realized by User Terminal] For example, the user terminal 30 includes a data storage unit 3000, a display control unit 3001, and an input reception unit 3002. The data storage unit 3000 is realized by the storage unit 32. The display control unit 3001 and the input reception unit 3002 are each realized by the control unit 31.
[0082] [Data Storage Unit] The data storage unit 3000 stores data for business support. For example, the data storage unit 3000 stores a browser for displaying various screens of the business support system 1. For example, the data storage unit 3000 stores a program dedicated to the business support system 1. The business support screen SC may be displayed on a program dedicated to the business support system 1.
[0083] [Display Control Unit] The display control unit 3001 displays various screens in the business support system 1 on the display unit 35. For example, the display control unit 3001 displays various screens such as the business support screen SC on the display unit 35 based on data received from the server 20.
[0084] [Input Receiving Unit] The input receiving unit 3002 receives user input. For example, the input receiving unit 3002 receives input for various screens such as the business support screen SC. Input data indicating the input received by the input receiving unit 3002 is transmitted to the server 20 as appropriate.
[0085] 6 is a diagram showing an example of processing executed in the business support system 1. The processing in FIG. 6 is executed by the control units 11, 21, and 31 executing programs stored in the storage units 12, 22, and 32, respectively. The processing in FIG. 6 is an example of processing included in a business support method.
[0086] For example, the learning terminal 10 performs learning of the parent AI 200 based on the training data of the parent AI 200 stored in the training database DB (S1). The learning terminal 10 performs learning of each pre-trained child AI 201 based on the training data of that child AI 201 (S2). The learning terminal 10 transmits the trained parent AI 200 and multiple trained child AIs 201 to the server 20 (S3). The server 20 acquires the parent AI 200 and multiple child AIs 201 from the learning terminal 10 (S4). Thereafter, the user becomes able to use the parent AI 200 and multiple child AIs 201.
[0087] The user terminal 30 executes a login process between the user terminal 30 and the server 20 to allow the user to log in to the business support system 1 (S5). The user terminal 30 accepts user input based on a detection signal from the operation unit 34 (S6). The user terminal 30 transmits input data indicating the input accepted in S to the server 20 (S7). The server 20 acquires the input data from the user terminal 30 (S8). In the example of FIG. 2, the following process is executed when an AI, including the parent AI 200 and the child AI 201, is mentioned.
[0088] The server 20 inputs input data to the parent AI 200 (S9). The server 20 obtains output data indicating the output from the parent AI 200 (S10). The server 20 determines whether the child AI 201 selected by the parent AI 200 is indicated in the output data (S11). If it is determined in S11 that the child AI 201 is not indicated in the output data (S11: N), this processing ends. In this case, a message indicating that the task was not processed by the child AI 201 may be displayed on the user terminal 30.
[0089] If it is determined in S11 that the child AI 201 is indicated in the output data (S11: Y), the server 20 causes the child AI 201 to process a task corresponding to the input data (S12). The server 20 acquires output data indicating the output from the child AI 201 (S13). The server 20 executes processing between the server 20 and the user terminal 30 to provide the output from the child AI 201 to the user (S14), and the processing ends. In the example of Figure 2, the processing of S14 results in the answer from the child AI 201 being provided to the user as output.
[0090] [5. Summary of the embodiment] The business support system 1 of this embodiment can select a child AI 201 specialized for a task corresponding to input data based on the parent AI 200. When a child AI 201 is selected, the business support system 1 processes the task corresponding to the input data based on the selected child AI 201. This allows the business support system 1 to effectively support the user's work, thereby improving user convenience. For example, the user does not need to select a child AI 201 to process a task from multiple child AIs 201, so the business support system 1 can save the user effort. If the user selects the child AI 201 themselves, there is a possibility that the user will select a child AI 201 that is not appropriate for processing the task corresponding to the input data. However, the business support system 1 can select an appropriate child AI 201 based on the parent AI 200 to appropriately process the task.
[0091] The business support system 1 also provides the user with the output from the child AI 201 selected by the selection unit 2002. The business support system 1 can effectively support the user's business by providing the user with the output from the child AI 201 as the processing result of the task according to the input data. The user can check the content of the output from the child AI 201 as it is.
[0092] [6. Modifications] The present disclosure is not limited to the above-described embodiments, and can be modified as appropriate without departing from the spirit of the present disclosure.
[0093] [6-1. Variation 1] For example, in the embodiment, an example is given in which the output providing unit 2004A provides the output from the child AI 201, which is specialized for a task according to the input data, to the user as is. Variation 1 is given as an example in which the parent AI 200 processes the output from the child AI 201 in an appropriate form. For example, the parent AI 200 modifies the output from the child AI 201 to more general language. The parent AI 200 may merge the output from the child AI 201 with the processing results of the task it processed. In variation 1, the output after processing by the parent AI 200 is provided to the user.
[0094] 7 is a diagram showing an example of functions realized by the business support system 1 of Modification 1. The business support system 1 of Modification 1 includes a processing execution unit 2005. The processing execution unit 2005 is realized by the control unit 11. The providing unit 2004 of Modification 1 includes a processing result providing unit 2004B. The providing unit 2004 of Modification 1 does not have to include the output providing unit 2004A. The business support system 1 may include both the output providing unit 2004A and the processing result providing unit 2004B, and these may be used depending on the situation.
[0095] The processing execution unit 2005 executes processing on the output obtained by the task processing unit 2003, which is the output from the business support program selected by the selection unit 2002, based on the parent AI 200. As in the embodiment, variant example 2 also takes the case where the child AI 201 corresponds to the business support program. For example, the processing execution unit 2005 inputs output data from the child AI 201 to the parent AI 200. The parent AI 200 may modify all or part of the output indicated by the output data from the child AI 201, or may add all or part of the input indicated by the input data to the output indicated by the output data from the child AI 201.
[0096] In addition, the processing execution unit 2005 may input not only the output data from the child AI 201 but also at least one of input data and prompt data indicating a predetermined prompt to the parent AI 200. The processing execution unit 2005 may execute processing for the output indicated by the output data based at least on the output data from the child AI 201. The prompt data may indicate the processing content for the output from the child AI 201.
[0097] For example, if parent AI 200 is to correct the output from child AI 201 to more general words, the prompt data may include a prompt such as, "Please correct this sentence to more general words." If parent AI 200 is to merge the output from child AI 201 with its own processing results, the prompt data may include a prompt such as, "Please merge this sentence with your processing results." Parent AI 200 may execute processing indicated by the prompt data on the output from the child AI.
[0098] The processing result providing unit 2004B provides the user with the processing results of the processing execution unit 2005. The processing result providing unit 2004B provides the user with the processing results by transmitting processing result data indicating the processing results of the processing execution unit 2005 to the user terminal 30. The user terminal 30 displays information (e.g., an image or text) indicating the processing results of the processing execution unit 2005 on the business support screen SC based on the processing result data. The processing result providing unit 2004B differs from the output providing unit 2004A in that it does not provide the output from the child AI 201 to the user as is, but the method of providing information itself is the same as the output providing unit 2004A.
[0099] The business support system 1 of variant example 1 performs processing on the output obtained by the task processing unit 2003, which is the output from the business support program selected by the selection unit 2002, based on the parent AI 200. The business support system 1 provides the processing results by the parent AI 200 to the user. This allows the business support system 1 to provide more appropriate information to the user, thereby effectively improving user convenience. For example, if the output from the child AI 201 is unnatural as a sentence, the business support system 1 can have the parent AI 200 correct it to an appropriate sentence and then provide the corrected sentence to the user, thereby improving user convenience. If the business support system 1 merges the output from the child AI 201 and the task processing results by the parent AI 200 and provides them to the user, it can present more information to the user.
[0100] [6-2. Variation 2] For example, if a business support program is not selected by the selection unit 2002, the task processing unit 2003 may process a task corresponding to the input data based on the parent AI 200. In variation 2, as in the embodiment, an example is given in which the child AI 201 corresponds to the business support program. Therefore, if the child AI 201 is not selected by the selection unit 2002, the task processing unit 2003 processes a task corresponding to the input data based on the parent AI 200.
[0101] The parent AI 200 of variant 2 is not an AI specialized for a specific task, but a general-purpose AI capable of processing a variety of tasks. For example, in the embodiment, an example was given in which the parent AI 200 is created by relearning a pre-trained large-scale language model, but if the pre-trained large-scale language model is a Transformer-based model such as GPT, the parent AI 200 created by pre-training also has general-purpose properties. The parent AI 200 may also be a multi-tasking AI capable of handling multiple specific tasks.
[0102] For example, the task processing unit 2003 inputs input data to the parent AI 200 selected by the selection unit 2002. The parent AI 200 calculates an embedded expression based on the input data and outputs output data corresponding to the embedded expression. The parent AI 200 outputs output data corresponding to the embedded expression. The output of the output data corresponds to processing of a task corresponding to the input data. The selection unit 2002 acquires the output data output from the parent AI 200. A series of processes of the parent AI 200 may be performed based on parameters adjusted by learning. For example, when re-learning is performed to make the parent AI 200 more versatile, a series of processes of the parent AI 200 is performed based on the parameters adjusted by re-learning.
[0103] In the business support system 1 of variant example 2, if a child AI 201 is not selected by the selection unit 2002, the business support system 1 processes a task according to the input data based on the parent AI 200. This prevents the business support system 1 from being unable to provide any information to the user when a business support program is not selected by the selection unit 2002, and allows the business support system 1 to provide some kind of information to the user. For example, if a user requests a task that cannot be handled by the child AI 201, the business support system 1 can process the task based on the general-purpose parent AI 200 and provide the user with the processing results.
[0104] [6-3. Variation 3] For example, in the embodiment, a case has been described in which each of the multiple business support programs is a child AI 201. However, the multiple business support programs may include a child AI 201 that is an AI different from the parent AI 200, and a non-AI program that is a non-AI. A non-AI program is a program that is not classified as an AI. A non-AI program receives all or part of input data. A non-AI program outputs output data based on all or part of the input data input to the non-AI program. The non-AI program is assumed to be stored in the data storage unit 2000, but the non-AI program may also be stored in another computer. The non-AI program may be a simple program such as a program that obtains the current date. Even such a simple program can process the task of obtaining the current date.
[0105] For example, the non-AI program may be a machine translation program not classified as AI, a summary creation program not classified as AI, a research program not classified as AI (e.g., a search engine program not classified as AI), a schedule adjustment program not classified as AI, or other programs. These non-AI programs may be programs used in known groupware or known business support services not classified as groupware. The non-AI program may be the rule-based program described above.
[0106] When a child AI 201 is selected by the selection unit 2002, the task processing unit 2003 of variant example 3 processes a task according to the input data based on the child AI 201. The processing of the task processing unit 2003 in this case is as described in the embodiment. When a non-AI program is selected by the selection unit 2002, the task processing unit 2003 processes a task according to the input data based on the non-AI program. The task processing unit 2003 inputs all or part of the input data to the non-AI program. The processing of the non-AI program may be processing adopted in known groupware or known business support services that are not classified as groupware.
[0107] For example, the non-AI program executes processing on all or part of the input data input to it based on the program code included in the non-AI program. The non-AI program outputs output data indicating the execution result of the program code. The task processing unit 2003 acquires the output data output from the non-AI program. If the non-AI program is stored in a computer other than the server 20, the task processing unit 2003 may send input data to the other computer to request processing of a task by the non-AI program. The task processing unit 2003 acquires processing result data indicating the processing result of the task by the non-AI program from the other computer.
[0108] In the business support system 1 of variant example 3, when a child AI 201 is selected by the selection unit 2002, the business support system 1 processes a task according to the input data based on the child AI 201. When a non-AI program is selected by the selection unit 2002, the business support system 1 processes a task according to the input data based on the non-AI program. This allows the business support system 1 to have the appropriate one of the child AI 201 and the non-AI program process the task according to the input data.
[0109] [6-4. Variation 4] For example, in Variation 3, there may be a child AI 201 and a non-AI program specialized in the same task. For example, not only child AI 201A specialized in machine translation, but also a non-AI program not classified as AI may be able to process the task of machine translation. Not only child AI 201B specialized in summarization, but also a non-AI program not classified as AI may be able to process the task of summarization. Not only child AI 201C specialized in research, but also a non-AI program not classified as AI may be able to process the task of research. Not only child AI 201D specialized in schedule adjustment, but also a non-AI program not classified as AI may be able to process the task of schedule adjustment.
[0110] In variant 4, the selection unit 2002 selects both the child AI 201 and the non-AI program if both are capable of processing tasks according to the input data. When the selection unit 2002 selects both the child AI 201 and the non-AI program, the task processing unit 2003 processes the task according to the input data based on both the child AI 201 and the non-AI program, and may select either the output from the child AI 201 or the output from the non-AI program. The processing of tasks by each of the child AI 201 and the non-AI program is as described in the embodiment or variant 3.
[0111] The task processing unit 2003 selects either the output from the child AI 201 or the output from the non-AI program based on a predetermined selection method. The selection method may be any predetermined method. In variant example 4, an example of a selection method is to have the parent AI 200 select the appropriate one from the output from the child AI 201 or the output from the non-AI program. For example, the training data of the parent AI 200 indicates the relationship between two training outputs and the correct output. The learning unit 1001 performs learning of the parent AI 200 so that when two training outputs indicated in the input portion of the training data are input to the parent AI 200, the parent AI 200 selects and outputs the correct output indicated in the output portion of the training data. The learning algorithm may be any of various known algorithms, as in the embodiment.
[0112] For example, the task processing unit 2003 inputs the output from the child AI 201 and the output from the non-AI program to the parent AI 200. The parent AI 200 calculates embedded representations for each of the output from the child AI 201 and the output from the non-AI program, and selects the appropriate one based on these embedded representations. Depending on the embedded representations of each of the output from the child AI 201 and the output from the non-AI program, the parent AI 200 may select both of them, or may select only one of them. The parent AI 200 outputs output data indicating the selection result of at least one of the output from the child AI 201 and the output from the non-AI program.
[0113] For example, the task processing unit 2003 acquires output data output from the parent AI 200. The providing unit 2004 provides the processing result to the user based on the selection result indicated by the output data. For example, the providing unit 2004 provides the processing result to the user based on at least one of the output from the child AI 201 and the output from a non-AI program selected by the parent AI 200.
[0114] Note that the selection method of the task processing unit 2003 is not limited to the method using the parent AI 200. The task processing unit 2003 may select either the output from the child AI 201 or the output from the non-AI program based on another selection method. For example, if the child AI 201 is capable of calculating a score indicating the accuracy of the output and the non-AI program is also capable of calculating a score indicating the accuracy of the output, the task processing unit 2003 may select the output from the child AI 201 or the output from the non-AI program, whichever has the higher score. As another example, the task processing unit 2003 may select the output from the child AI 201 or the output from the non-AI program, whichever has the longer sentence.
[0115] When both the child AI 201 and the non-AI program are selected by the selection unit 2002, the business support system 1 of variant example 4 processes a task according to the input data based on both the child AI 201 and the non-AI program, and selects either the output from the child AI 201 or the output from the non-AI program. This enables the business support system 1 to provide more appropriate processing results to the user.
[0116] [6-5. Variation 5] For example, the multiple business support programs may include a public program that processes public data that can be made public, and a private program that processes private data that cannot be made public. In variation 5, as in the embodiment, an example is given in which child AI 201 corresponds to the business support program. Child AI 201 that processes public data is an example of a public program. Child AI 201 that processes private data is an example of a private program. Child AI 201 that processes public data may exist on a computer other than server 20. Child AI 201 that processes private data completes information processing in a secure environment within server 20.
[0117] Public data is data that may be made public outside the business support system 1. For example, data that may remain as a log outside the business support system 1 corresponds to public data. Public data is a portion of the data registered in the business support system 1. For example, data other than confidential data of the organization to which the user belongs corresponds to public data. Data indicating information published on a general website such as an Internet encyclopedia or a homepage corresponds to public data. Classification data indicating which data is classified as public data is assumed to be stored in advance in the data storage unit 2000.
[0118] Private data is data that must not be made public outside the business support system 1. For example, data that must not remain as a log outside the business support system 1 corresponds to private data. Private data is data registered in the business support system 1 other than public data. For example, among schedule data registered in the schedule management function, data such as the names of people outside the organization to which the user belongs corresponds to private data. Another example is confidential data of the organization to which the user belongs. Classification data indicating which data is classified as private data is assumed to be stored in advance in the data storage unit 2000. The child AI 201 of variant example 5 processes tasks by referring to at least one of public data and private data.
[0119] In variant example 5, the output portion of the training data learned by parent AI 200 is child AI identification data indicating either child AI 201 that processes public data or child AI 201 that processes private data. For example, when it is necessary to make public data public and not private data public in order to process a task corresponding to certain training input data, the child AI identification data paired with the training input data indicates child AI 201 that processes public data. For example, when it is necessary to make private data public in addition to public data public in order to process a task corresponding to certain training input data, the child AI identification data paired with the training input data indicates child AI 201 that processes private data.
[0120] Since the parent AI 200 of variant example 5 has learned higher-level training data, it is able to estimate what kind of input data should select a child AI 201 that processes public data or a child AI 201 that processes private data. For example, the selection unit 2002 inputs input data to the parent AI 200. The parent AI 200 calculates an embedded representation of the input data and outputs output data indicating a child AI 201 that processes public data or a child AI 201 that processes private data based on the embedded representation. As described in the embodiment, the parent AI 200 may not select any child AI 201.
[0121] In variant example 5, when a public program is selected by the selection unit 2002, the task processing unit 2003 processes a task corresponding to the input data based on the public program and public data. Variation example 5 uses the case where the child AI 201 that processes the public data corresponds to the public program, so the task processing unit 2003 inputs the input data to the child AI 201 that processes the public data. The child AI 201 calculates an embedded representation of the input data and acquires the public data based on the embedded representation. Instead of the child AI 201 acquiring the public data, the parent AI 200 may acquire the public data, and the selection unit 2002 may input the public data to the child AI 201. The child AI 201 processes a task corresponding to the input data after leaving the public data as a log outside the business support system 1. While variant example 5 differs from the embodiment and other variant examples in that the public data is left as a log outside the business support system 1, the flow of task processing by the child AI 201 is the same as in the embodiment and other variant examples.
[0122] In variant example 5, when a private program is selected by the selection unit 2002, the task processing unit 2003 processes a task corresponding to the input data based on the private program and private data. Variation example 5 uses an example in which the child AI 201 that processes the private data corresponds to the private program, so the task processing unit 2003 inputs the input data to the child AI 201 that processes the private data. The child AI 201 calculates an embedded representation of the input data and acquires the private data based on the embedded representation. Instead of the child AI 201 acquiring the private data, the parent AI 200 may acquire the private data, and the selection unit 2002 may input the private data to the child AI 201. The child AI 201 processes a task corresponding to the input data without leaving the private data as a log outside the business support system 1. Variation example 5 differs from the embodiment and other variant examples in that the private data is not left as a log outside the business support system 1, but the flow of task processing by the child AI 201 is the same as in the embodiment and other variant examples.
[0123] In the business support system 1 of variant example 5, when a public program is selected by the selection unit 2002, the business support system 1 processes a task corresponding to the input data based on the public program and public data. When a private program is selected by the selection unit 2002, the business support system 1 processes a task corresponding to the input data based on the private program and private data. This allows the business support system 1 to reliably prevent confidential data from leaking to the outside. For example, the business support system 1 can use child AIs 201 that process private data and child AIs 201 that process public data, both of which can process the same task.
[0124] [6-6. Variation 6] For example, if there are many child AIs 201 specialized in specific tasks, it may be impossible to select an appropriate child AI 201 with only one parent AI 200. For this reason, three or more hierarchies may exist in the AI, such as parent, child, and grandchild. Variation 6 uses an example of three hierarchies, but the number of hierarchies may be four or more. The AI at the lowest hierarchical level is an AI specialized in a specific task. AIs other than those at the lowest hierarchical level are AIs that can select AIs at the hierarchical level below them. AIs other than those at the lowest hierarchical level may be general-purpose AIs as described in Variation 2.
[0125] FIG. 8 is a diagram showing an example of an AI of variant 6. In FIG. 8, there is a parent AI 200, multiple child AIs 201, and multiple grandchild AIs 202. The parent AI 200 can select at least one child AI 201 based on input data. Similar to the embodiment, the training data of the parent AI 200 indicates the relationship between the training input data and the child AI identification data of the child AI 201 that is the correct answer. However, variant 6 differs from the embodiment in that the child AI 201 is not an AI specialized for a specific task, but is an AI that can select a grandchild AI 202. Because the parent AI 200 of variant 6 has learned such training data, it can select an appropriate child AI 201 according to the input data.
[0126] The child AI 201 of variant 6 is capable of selecting at least one grandchild AI 202 based on input data. In variant 6, the child AI 201 has the same functions as the parent AI 200 described in the embodiment and variants 1 to 5. The training data for the child AI 201 is the same as the training data for the parent AI 200 described in the embodiment. However, the output portion of the training data is grandchild AI identification data for identifying the grandchild AI 202. The grandchild AI identification data differs from the child AI identification data in that it is data for identifying the grandchild AI 202, but is similar to the child AI identification data in other respects. Because the child AI 201 of variant 6 has learned such training data, it is capable of selecting an appropriate child AI 201 according to the input data.
[0127] For example, the grandchild AI 202 has the same functions as the child AI 201 described in the embodiment and variants 1 to 5. The description of the child AI 201 in the embodiment and variants 1 to 5 can be read as the grandchild AI 202. In the example of Figure 8, there are multiple grandchild AIs 202 specialized in the same task. For example, grandchild AIs 202 specialized in the task of machine translation include grandchild AI 202A specialized in English translation and grandchild AI 202B specialized in Chinese translation. Grandchild AI 202A has learned English training data. Grandchild AI 202B has learned Chinese training data. Child AI 201A can estimate which of grandchild AIs 202A and 202B is appropriate based on input data and select the appropriate one. Note that the parent AI 200 estimates that the processing of child AI 201A is appropriate based on the input data and selects child AI 201A. The child AI 201A learns training input data to be translated as training data.
[0128] For example, there are two grandchild AIs 202 specialized in the task of creating summaries: grandchild AI 202C specialized in creating summaries for threads, and grandchild AI 202D specialized in creating summaries for emails. Grandchild AI 202C has learned training data indicating thread posts. Grandchild AI 202D has learned training data indicating the text of emails. Child AI 201B can estimate which of grandchild AIs 202C and 202D is appropriate based on the input data and select the appropriate one. Note that parent AI 200 estimates that the processing of child AI 201B is appropriate based on the input data and selects child AI 201B. Child AI 201B has learned training input data for creating summaries as training data. Similarly, for other tasks, the grandchild AI 202 that will process the final task is selected by child AI 201.
[0129] The selection unit 2002 in Modification 6 selects a child AI 201 from which a business support program can be selected. The selection unit 2002 selects a business support program based on the selected child AI 201. In the example of FIG. 8 , the selection unit 2002 may correspond to the parent AI 200. If the selection unit 2002 does not correspond to the parent AI 200, the selection unit 2002 may select the child AI 201 based on the parent AI 200. For example, the selection unit 2002 selects a business support program based on a child AI 201 selected by the parent AI 200, which is another AI that can select any child AI 201, from among multiple child AIs 201. In Modification 6, a case will also be described in which the grandchild AI 202, which corresponds to the child AI 201 described in the embodiment, corresponds to a business support program. At least one of the parent AI 200 and the child AI 201 in Modification 6 may be a versatile AI. The selection of the child AI 201 may be performed not by an AI such as the parent AI 200, but by a program that is not classified as an AI.
[0130] For example, the selection unit 2002 inputs input data to the parent AI 200. The parent AI 200 calculates an embedded expression based on the input data and outputs output data corresponding to the embedded expression. If a child AI 201 corresponding to the embedded expression exists, the parent AI 200 outputs the child AI identification data of the child AI 201 as output data. If a child AI 201 corresponding to the embedded expression does not exist, the parent AI 200 outputs output data indicating that the child AI 201 has not been selected. The selection unit 2002 acquires the output data output from the parent AI 200. A series of processes by the parent AI 200 is executed based on parameters adjusted by learning.
[0131] For example, the selection unit 2002 inputs input data to the child AI 201 indicated by the output data. The parent AI 200 calculates an embedded expression based on the input data and outputs output data corresponding to the embedded expression. If a grandchild AI 202 corresponding to the embedded expression exists, the parent AI 200 outputs the child AI identification data of the grandchild AI 202 as output data. If a grandchild AI 202 corresponding to the embedded expression does not exist, the parent AI 200 outputs output data indicating that the grandchild AI 202 was not selected. The selection unit 2002 acquires the output data output from the parent AI 200. A series of processes of the child AI 201 are executed based on parameters adjusted by learning.
[0132] The processing of the task processing unit 2003 after the grandchild AI 202 is selected may be the same as in the embodiment. The task processing unit 2003 may cause the grandchild AI 202 to process the task that is described in the embodiment as being processed by the child AI 201. The task processing unit 2003 inputs input data to the grandchild AI 202 selected by the selection unit 2002. The task processing unit 2003 obtains output data from the grandchild AI 202.
[0133] The business support system 1 of the sixth modification selects a child AI 201 that can select a grandchild AI 202. This allows the business support system 1 to appropriately process tasks according to input data even if the number of business support programs, including the grandchild AI 202, increases.
[0134] [6-7. Variation 7] For example, when multiple business support programs are selected by the selection unit 2002, the task processing unit 2003 may process a task corresponding to input data based on the multiple business support programs and merge the outputs from each of the multiple business support programs. In Variation 7, as in the embodiment, an example is given in which the child AI 201 corresponds to the business support program. When Variation 6 and Variation 7 are combined, the grandchild AI 202 corresponds to the business support program. Merging outputs may mean that the task processing unit 2003 simply combines multiple outputs, or may mean that the task processing unit 2003 generates a new output based on the multiple outputs.
[0135] For example, when multiple child AIs 201 are selected by the selection unit 2002, the task processing unit 2003 causes each of the multiple child AIs 201 to process a task according to the input data. The processing of tasks by each child AI 201 is as described in the embodiment. The task processing unit 2003 combines outputs from each of the multiple child AIs 201 to generate a single output. For example, the task processing unit 2003 may merge the outputs from each of the multiple child AIs 201 by taking an AND operation, or may merge the outputs from each of the multiple child AIs 201 by taking an OR operation. The providing unit 2004 provides the processing result to the user based on the single output data generated by the task processing unit 2003.
[0136] For example, suppose the task corresponding to the input data is schedule adjustment. Furthermore, suppose the user's schedule is managed separately by multiple schedule management functions. The task processing unit 2003 merges the output from a child AI 201 that adjusts the schedule based on a schedule managed by one schedule management function with the output from a child AI 201 that adjusts the schedule based on a schedule managed by another schedule management function. The task processing unit 2003 can obtain an output that indicates the user's free time by merging these outputs to perform an AND operation on the user's free time indicated by these outputs. Merging can be performed similarly for other tasks according to the child AI 201.
[0137] When multiple child AIs 201 are selected by the selection unit 2002, the business support system 1 of variant 7 processes a task according to the input data based on the multiple child AIs 201 and merges the outputs from each of the multiple child AIs 201. This allows the business support system 1 to merge processing results from more child AIs 201, thereby providing useful information to the user. For example, even if a user's schedule is managed separately by multiple schedule management functions, the business support system 1 can present the user with times when the user is definitely free by having each of the multiple child AIs 201 check the user's availability managed by these schedule management functions and merging the outputs.
[0138] [6-8. Variation 8] For example, when multiple business support programs are selected by the selection unit 2002, the task processing unit 2003 may process a task according to the input data by inputting the output from some of the multiple business support programs to other business support programs among the multiple business support programs. In Variation 8, as in the embodiment, an example is given in which the child AI 201 corresponds to the business support program. When Variation 6 and Variation 8 are combined, the grandchild AI 202 corresponds to the business support program.
[0139] For example, the task processing unit 2003 may input output data from a child AI 201A specialized in the task of machine translation to a child AI 201B specialized in the task of summarizing. In this case, the child AI 201B creates a summary in a language other than the input language indicated by the input data. The task processing unit 2003 acquires the output data output by the child AI 201B. In another example, the task processing unit 2003 may input output data from the child AI 201B specialized in the task of summarizing to a child AI 201C specialized in the task of research. In this case, the child AI 201C performs research according to the summary of the input indicated by the input data. The task processing unit 2003 acquires the output data output by the child AI 201C.
[0140] In addition, the question of which child AI 201 the task processing unit 2003 should input the output from which child AI 201 to which child AI 201 may be predetermined or may be determined by the parent AI 200. When the decision is made by the parent AI 200, the training data of the parent AI 200 includes training data regarding which child AI 201 the output from which child AI 201 should be input to. By having the parent AI 200 learn such training data, the parent AI 200 can estimate which child AI 201 the output from which child AI 201 should be input to. The task processing unit 2003 simply performs input and output in the flow estimated by the parent AI 200 to obtain the final output.
[0141] When multiple child AIs 201 are selected by the selection unit 2002, the business support system 1 of variant example 8 processes a task according to the input data by inputting the output from some of the multiple child AIs 201 to other child AIs 201. This allows the business support system 1 to link multiple child AIs 201, thereby improving the accuracy of task processing.
[0142] [6-9. Other Modifications] For example, two or more of Modifications 1 to 8 may be combined. For example, the case where AI-based business support is provided when a user uses a communication function such as a thread has been exemplified, but the business support system 1 may also provide AI-based business support when a user uses another business support function. In this case, too, the business support system 1 may provide business support by executing the same processing as in the embodiment and Modifications 1 to 8.
[0143] For example, the functions described as being realized by the server 20 may be realized by the user terminal 30. In this case, the functions may be realized by a browser script or an application installed on the user terminal 30. For example, each function may be shared among multiple computers or may be realized by a single computer.
Claims
1. An input data acquisition unit that acquires input data indicating a user's input, and an AI (Artificial Intelligence) that can select a business support program specialized for the task corresponding to the input data from among a plurality of business support programs specialized for specific tasks in business support, a selection unit that can select the business support program, and a task processing unit that processes the task corresponding to the input data based on the selected business support program when the business support program is selected by the selection unit. A business support system including.
2. The business support system according to claim 1, further including an output providing unit that provides the output obtained by the task processing unit, which is the output from the business support program selected by the selection unit, to the user.
3. The business support system according to claim 1 or 2, further including a processing execution unit that executes processing on the output obtained by the task processing unit, which is the output from the business support program selected by the selection unit, based on the AI, and a processing result providing unit that provides the processing result of the processing execution unit to the user.
4. The task processing unit processes the task corresponding to the input data based on the AI when the business support program is not selected by the selection unit. The business support system according to claim 1 or 2.
5. The plurality of business support programs include an AI different from the AI and a non-AI program that is non-AI. When the different AI is selected by the selection unit, the task processing unit processes the task corresponding to the input data based on the different AI. When the non-AI program is selected by the selection unit, the task processing unit processes the task corresponding to the input data based on the non-AI program. The business support system according to claim 1 or 2.
6. When both the different AIs and the non-AI program are selected by the selection unit, the task processing unit processes the task according to the input data based on both the different AIs and the non-AI program, and selects either the output from the different AIs or the output from the non-AI program. The business support system according to claim 5.
7. The plurality of business support programs include a public program for processing publicly available data and a non-public program for processing non-public data that cannot be made public. When the public program is selected by the selection unit, the task processing unit processes the task according to the input data based on the public program and the public data. When the non-public program is selected by the selection unit, the task processing unit processes the task according to the input data based on the non-public program and the non-public data. The business support system according to claim 1 or 2.
8. The selection unit selects the AI that can select the business support program. The business support system according to claim 1 or 2.
9. When a plurality of the business support programs are selected by the selection unit, the task processing unit processes the task according to the input data based on the plurality of business support programs, and merges the outputs from each of the plurality of business support programs. The business support system according to claim 1 or 2.
10. When a plurality of the business support programs are selected by the selection unit, the task processing unit processes the task according to the input data by inputting the output from some of the plurality of business support programs into other of the plurality of business support programs. The business support system according to claim 1 or 2.
11. A business support method that acquires input data indicating a user's input, and is capable of selecting, based on AI (Artificial Intelligence), a business support program specialized for a task corresponding to the input data from among a plurality of business support programs specialized for specific tasks in business support, and when the business support program is selected, processes the task corresponding to the input data based on the business support program.
12. A program for causing a computer to function as an input data acquisition unit that acquires input data indicating a user's input, a selection unit that is capable of selecting, based on AI (Artificial Intelligence), a business support program specialized for a task corresponding to the input data from among a plurality of business support programs specialized for specific tasks in business support, and a task processing unit that processes the task corresponding to the input data based on the business support program when the business support program is selected by the selection unit.
Citation Information
Patent Citations
Language model learning device, interaction device, and trained language model
JP2023125311A
Self-learning type operation substitute processing system
JP2000163187A