Assistance device and assistance method
The assistance device uses a large-scale language model to analyze user inputs and generate precise instructions by identifying relevant material data, addressing the challenge of accurately creating SQL queries and workflows.
Patent Information
- Application Number
- PCT/JP2025/021895
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-16
- Filing Date
- 2025-06-18
- Publication Date
- 2026-01-22
AI Technical Summary
Existing methods struggle to accurately create instructions that represent processes to be executed by a computer, particularly in creating SQL queries and workflows, due to difficulties in interpreting complex natural language inputs and generating precise commands.
An assistance device and method that utilizes a large-scale language model (LLM) to analyze user inputs, identify relevant material data, and generate recommended instructions by understanding semantic relationships and deep language comprehension, enabling precise command creation.
Enables accurate and efficient generation of instructions, including SQL queries and workflows, by leveraging semantic understanding and deep learning to interpret complex natural language inputs and generate precise commands.
Smart Images

Figure JP2025021895_22012026_PF_FP_ABST
Abstract
Description
Support device and support method
[0001] The present invention relates to an assistance device and an assistance method.
[0002] Various methods are known for assisting users in creating commands for a computer. Patent Literature 1 proposes creating an SQL query by extracting word segments based on attribute values that have the highest degree of matching with the query information.
[0003] Patent No. 7397903
[0004] The technique of Patent Document 1 makes it difficult to accurately create instructions that represent processes to be executed by a computer. An object of some aspects of the present invention is to provide a technique that enables accurate creation of instructions that represent processes to be executed by a computer.
[0005] According to some embodiments, there is provided an assistance device for assisting in the creation of instructions written in a computer language, the assistance device comprising: a first acquisition means for acquiring an input representing a target process to be executed by a computer; an identification means for identifying, from a plurality of material data, material data whose relevance to the input satisfies a predetermined condition; and a second acquisition means for, when one or more material data satisfying the predetermined condition have been identified, acquiring recommended instructions for causing the computer to execute the target process using the one or more material data and the input, wherein each of the plurality of material data includes individual instructions written in a computer language and metadata related to the individual instructions, and the relevance between one of the plurality of material data and the input is determined based at least on the metadata included in the one material data.
[0006] Some embodiments allow for precise creation of instructions that represent operations to be performed by a computer.
[0007] 1 is a block diagram illustrating an example of the configuration of an assistance device according to some embodiments; 2 is a block diagram illustrating an example of the hardware configuration of an assistance device according to some embodiments; 3 is a block diagram illustrating an example of material data according to some embodiments; 4 is a flow diagram illustrating an example of the operation of an assistance device according to some embodiments; 5 is a schematic diagram illustrating an example of a creation screen according to some embodiments;
[0008] Hereinafter, the embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the invention as claimed, and not all combinations of features described in the embodiments are necessarily essential to the invention. Two or more of the features described in the embodiments may be combined in any desired manner. Furthermore, the same reference numerals are used to designate identical or similar components, and redundant descriptions will be omitted.
[0009] An example configuration of a system including an assistance device 101 according to some embodiments will be described with reference to Fig. 1. The connection between two components in Fig. 1 indicates that these two components can communicate over a network. The network may be a cellular network, a local area network, the Internet, another network, or any combination thereof.
[0010] The support device 101 is a device that provides a service that supports the creation of commands written in a computer language. In the following description, the service that supports the creation of commands written in a computer language will be referred to as a creation support service. Furthermore, a user who uses the creation support service will be simply referred to as a user.
[0011] A computer language is a language for describing instructions that can be executed by a computer. Computer languages include artificial languages. Artificial languages are languages whose syntax is intentionally created by humans. Examples of artificial languages include programming languages (e.g., C, Java, Python, etc.), database languages (e.g., Structured Query Language (SQL), XQuery, Object Query Language (OQL), etc.), data description languages (e.g., XML, JSON), etc. Examples of instructions written in an artificial language include source code written in a programming language, queries written in a database language, and data written in a data description language. If a computer is capable of executing instructions written in a natural language, the computer language includes a natural language.
[0012] The user terminal 102 is a device used by a user to use the creation support service. The user terminal 102 may be any device such as a smartphone, a tablet computer, a desktop computer, or a laptop computer. The support device 101 may provide the creation support service as a web service, and the user may use the creation support service using a browser on the user terminal 102. Alternatively, the user may use the creation support service using a dedicated application (including an API (Application Programming Interface) service) installed on the user terminal 102.
[0013] Although only one user terminal 102 is shown in Figure 1, the support device 101 may be capable of providing creation support services to multiple users, and multiple users may use the creation support services using their own user terminals 102.
[0014] The database server 103 is an example of a device capable of executing instructions created by the creation assistance service. When a query written in a database language is created by the creation assistance service, the database server 103 can execute the query. The instructions created by the creation assistance service may be executed by another device shown in FIG. 1 (e.g., the user terminal 102) or by a device not shown in FIG. 1.
[0015] The creation server 104 creates commands written in a computer language in response to a request from the assistance device 101. The creation server 104 may provide a natural language processing service, and requests from the assistance device 101 to the creation server 104 may be made in natural language. The natural language processing service may create answers using the functions of a large-scale language model (LLM) trained by machine learning. For example, the natural language processing service may be a function provided by ChatGPT by OpenAI.
[0016] This LLM function inputs a plurality of material data 300 to be used in this system as learning data in advance, and in the learning process, inductively extracts and models complex patterns, contexts, and semantic relationships between the syntactic structure, description style, and content of the target processing that each individual command 301 achieves, and the processing description, purpose, and data sample described in metadata 302.
[0017] Specifically, the LLM function internally establishes rules for generating commands in various programming languages and description formats, general coding patterns for achieving specific tasks, and methods for using generalized parameters, thereby providing the assistive device 101 with the ability to understand and reason about deeper meanings between commands and descriptions in natural language (metadata), rather than simply matching superficial words.
[0018] In response to a request from the assistance device 101, the evaluation server 105 evaluates the relevance between an input representing a target process to be executed by a computer and material data. The material data is data used by the creation server 104 to create an instruction. The evaluation server 105 may provide a natural language processing service, and requests from the assistance device 101 to the evaluation server 105 may be made in natural language. The natural language processing service may create an answer using a large-scale language model trained by machine learning. For example, the natural language processing service may be ChatGPT by OpenAI, Inc.
[0019] 1, the creation server 104 and the evaluation server 105 are separate servers, but the creation server 104 and the evaluation server 105 may be integrated into a single server. In this case, the functions of the creation server 104 and the evaluation server 105 may be provided by the same natural language processing service. Furthermore, the functions of at least one of the creation server 104 and the evaluation server 105 may be integrated into the assistance device 101.
[0020] The support device 101 and the various servers described above may be configured by devices in an on-premise environment or by computing resources in a cloud computing environment. The support device 101 and the various servers may be configured as separate devices or as the same device.
[0021] An example of the hardware configuration of a computer 200 according to some embodiments will be described with reference to Fig. 2. The computer 200 may be used as any of the assistance device 101, the user terminal 102, and various servers shown in Fig. 1. The computer 200 may have the hardware components shown in Fig. 2. The computer 200 may have hardware components not shown in Fig. 2, or may not have some of the hardware components shown in Fig. 2.
[0022] The processor 201 controls the overall operation of the computer 200. The processor 201 may be configured, for example, by a central processing unit (CPU), a graphics processing unit (GPU), or a combination of these. The processor 201 may be a single processor or a collection of multiple processors connected to each other so that they can communicate with each other.
[0023] The memory 202 stores programs and data used in the processing of the computer 200. The memory 202 may be configured, for example, by a combination of random access memory (RAM) and read-only memory (ROM).
[0024] The input device 203 is a device for obtaining instructions from a user of the computer 200. The input device 203 may be configured, for example, by a combination of one or more of a keyboard, buttons, a touchpad, and a microphone. The display device 204 is a device for visually presenting information to the user of the computer 200. The display device 204 may be, for example, a dot-matrix display such as a liquid crystal display. The computer 200 may have a device (e.g., a touch screen) in which the input device 203 and the display device 204 are integrated. The input device 203 and the display device 204 may be external to the computer. In this case, the computer 200 may have an interface for communicating with the external input device 203 and display device 204.
[0025] The communication device 205 is a device for communicating with devices external to the computer 200. When the computer 200 performs wired communication, the communication device 205 may be a network interface card (NIC) having a connector for connecting a cable. When the computer 200 performs wireless communication, the communication device 205 may be a wireless communication module including an antenna and a baseband processing circuit.
[0026] The secondary storage device 206 is a device for non-volatilely storing programs and data used in the processing of the computer 200. The secondary storage device 206 is configured by, for example, a hard disk drive (HDD) or a solid state drive (SSD).
[0027] In the following description, a component (eg, processor 201) of computer 200 that functions as a particular device (eg, support device 101) will be referred to as a component of this particular device (eg, processor 201 of support device 101).
[0028] Referring to FIG. 3 , the data used in the creation support service will be described. The support device 101 uses a plurality of material data 300 to provide the creation support service. Each of the plurality of material data 300 includes individual instructions 301 written in a computer language and metadata 302 related to the instructions 301. The instructions 301 and metadata 302 included in the material data 300 may differ for each material data. The plurality of material data 300 is prepared, for example, by an administrator of the creation support service and stored in the secondary storage device 206 of the support device 101. Alternatively, the plurality of material data 300 may be stored in a device different from the support device 101 and may be read out by the support device 101 as needed.
[0029] The plurality of material data 300 may include material data created by a natural language processing service. For example, the administrator of the assistance device 101 may request the creation server 104 to create instructions for performing a specific process and metadata related to the instructions. The administrator of the assistance device 101 may add material data composed of the instructions and metadata created by the creation server 104 to the plurality of material data 300. The administrator of the assistance device 101 may also modify the instructions created by the creation server 104 before adding them to the plurality of material data 300.
[0030] The metadata 302 may include one or more of a description of the processing performed by the instructions 301, a purpose for executing the instructions 301, and a sample of data that can be processed by the instructions 301. The metadata 302 may be written in natural language.
[0031] For example, assume that instruction 301 is an SQL query for extracting records whose country column is "Japan" from a telephone bill table and summing the bill amount column. An SQL query is a query written in SQL. In this case, the description of the processing by instruction 301 may be a sentence such as, "This SQL query extracts records whose country column is "Japan" from the telephone bill table and sums the bill amount column." The purpose of executing instruction 301 may be a sentence such as, "To determine the telephone bill amount in Japan." A sample of data that can be processed by instruction 301 may be a table named "telephone bill" having columns named "country name" and "bill amount."
[0032] In another example, assume that instruction 301 is source code for a program for detecting whether an image contains a vehicle. In this case, the description of the process performed by instruction 301 may be a sentence such as, "This source code is written in Java and detects whether an image contains a vehicle." The purpose of executing instruction 301 may be a sentence such as, "To determine the amount of a telephone bill in Japan." A sample of data that can be processed by instruction 301 may be image data that includes a vehicle.
[0033] The command 301 included in at least one of the plurality of material data may have a generalized parameter. For example, if the command 301 is an SQL query, the command 301 may have a parameter such as "WHERE country="[country name]". As will be described later, the [country name] part is replaced with a specific value (e.g., Japan) when the SQL query is created.
[0034] An example of the operation of the assistance device 101 for providing a creation assistance service will be described with reference to Fig. 4. The operation of Fig. 4 may be performed by the processor 201 of the assistance device 101 executing a program read into the memory 202 of the assistance device 101. Alternatively, some or all of the steps of the operation of Fig. 4 may be performed by a dedicated integrated circuit such as an application specific integrated circuit (ASIC). The operation of Fig. 4 may be started in response to a user of the assistance device 101 requesting assistance in program creation from the assistance device 101.
[0035] In S401, the assistance device 101 acquires from a user a natural language input representing a process to be executed by a computer (e.g., the database server 103). The process to be executed by the computer is referred to as a target process. The natural language input may be, for example, a sentence such as, "Please calculate the total telephone bill amount for January 2024 in Japan and the United States." In the following description of FIG. 4, the natural language input acquired in S401 is simply referred to as a natural language input. In S401, the assistance device 101 may use a natural language character string obtained by translating a character string translatable into a natural language (e.g., log data output from a machine) as the natural language input for the following process. The translation of the character string may be performed by the assistance device 101 or by the user. Furthermore, the following process for natural language input can also be performed for artificial language input.
[0036] In S402, the assistance device 101 acquires the relevance between each of the plurality of data materials 300 stored in the secondary storage device 206 of the assistance device 101 and the natural language input. For example, the assistance device 101 may transmit the plurality of data materials 300 and the natural language input to the evaluation server 105 and request the evaluation server 105 (specifically, its natural language processing service) to determine the relevance between each of the plurality of data materials 300 and the natural language input. This request may be a sentence such as, "Please determine the relevance between each data material and the instruction 'Calculate the total billing amount for January 2024 in Japan and the United States.'" For example, the assistance device 101 may request that a quantifiable relevance be determined, such as semantic distance, symbolic similarity (e.g., Levenshtein distance), or the number of common symbols. Regarding the number of common symbols, this request may be a sentence such as, "Please use the number of occurrences of the word 'Japan' and the number of common telephone numbers contained in both the natural language input and the material data as the relevance." The support device 101 may request to determine the relationship in terms of days, such as whether the items were kept by the same department, etc. The support device 101 obtains the relationship in response to this request.
[0037] The assistance device 101 may request the evaluation server 105 to determine relevance based on the entire data material 300, or may request the evaluation server 105 to determine relevance based on a portion of the data material 300. For example, the assistance device 101 may request the evaluation server 105 to determine relevance based on the metadata 302 of the data material 300. In response to this request, the evaluation server 105 determines relevance based on the metadata 302 of the data material 300. Alternatively, the assistance device 101 may request the evaluation server 105 to determine relevance based on both the instructions 301 and the metadata 302 of the data material 300. In response to this request, the evaluation server 105 determines relevance based on both the instructions 301 and the metadata 302 of the data material 300.
[0038] The relevance between the data material and the natural language input may be based on the semantic distance between the data material and the natural language input, or may be expressed as the semantic distance between the data material and the natural language input. For example, the assistance device 101 may make a request to the evaluation server 105 with a sentence such as "Please determine the semantic distance between each data material and the instruction 'Calculate the total billing amount for January 2024 in Japan and the United States.'" The smaller the semantic distance between the data material and the natural language input, the higher the relevance therebetween, and the larger the semantic distance between the data material and the natural language input, the lower the relevance therebetween.
[0039] In S403, the assistance device 101 identifies material data 300 whose relevance to the natural language input satisfies a predetermined condition from the plurality of material data 300. In the following description, this predetermined condition is referred to as a specific condition. If there is no material data 300 that satisfies the specific condition, the assistance device 101 may end the operation of FIG. 4.
[0040] The specific condition may be the highest relevance (e.g., the closest semantic distance). In this case, one material data 300 is identified. The specific condition may be that the relevance is among the top three (e.g., the semantic distance is the first to third closest). In this case, three material data 300 are identified. Furthermore, the specific condition may include a condition that the relevance is higher than a predetermined threshold (e.g., the semantic distance is smaller than a predetermined threshold). For example, the specific condition may be that the semantic distance is the first to third closest and is also smaller than a predetermined threshold. In this case, it is possible that no material data 300 is identified. In the following description of FIG. 4, the one or more material data 300 identified in S403 will be simply referred to as one or more material data 300.
[0041] In the following, it is assumed that one or more material data 300 satisfying the selection conditions are identified in S403. In S404, the assistance device 101 uses one or more material data 300 and the natural language input to acquire recommended instructions for causing a computer (e.g., the database server 103) to execute the target process expressed in the natural language input. Hereinafter, such recommended instructions will be referred to as recommended instructions. In addition to the recommended instructions, the assistance device 101 may also acquire metadata related to the recommended instructions. Similar to the metadata 302, the metadata related to the recommended instructions may include one or more of a description of the process according to the recommended instructions, a purpose for executing the recommended instructions, and a sample of data that can be processed by the recommended instructions. The assistance device 101 may display the recommended instructions to the user, and may also display the metadata related to the recommended instructions to the user.
[0042] The assistance device 101 may obtain the recommendation command by requesting the creation server 104 (specifically, the LLM as its natural language processing service) to create a recommendation command using one or more material data 300 identified in S403. This request may be made in the form of a sentence written in natural language, such as, for example, "If material data is included below, please refer to the material data and create a command to execute the instruction: 'Calculate the total invoice amount for January 2024 in Japan and the United States. (One or more material data follow.)'" The assistance device 101 may create a request to the creation server 104 using a pre-created template sentence, such as, "If material data is included below, please refer to the material data and create a command to execute the instruction: [natural language input] [material data]," by replacing [natural language input] and [material data] with the execution results of S401 and S403, respectively. If no material data is identified, [material data] may be replaced with a blank or a sentence such as "No material data."
[0043] Upon receiving this request, the LLM on the creation server 104 uses its pre-learned knowledge to generate recommended commands. In this command generation process, the LLM combines the target process content of the provided natural language input with the content of one or more material data 300 (individual commands 301 and their metadata 302) identified in S403 to infer their interrelationships and the optimal command structure for achieving the new target process. This inference process goes beyond simple syntactic pattern matching. Furthermore, the LLM's learning process goes beyond simply inductively generalizing a recursive "process flow" from the process components (nodes) and their connection patterns (edges) in existing workflow instances. The LLM uses a priori inference to interpret abstract concepts and semantic relationships derived from deep language comprehension and metadata, addressing the ambiguity and complexity expressed in the natural language input. This enables the LLM to creatively supplement and construct logically and semantically valid node connections not directly included in existing workflow instances, as well as seemingly "broken" process flows, using its pre-learned knowledge.
[0044] Specifically, the LLM can creatively decompose and reconstruct components of individual commands (e.g., SQL phrases, individual workflow nodes, data transformation logic, etc.) learned from multiple material data 300, as well as abstract task concepts indicated by metadata. Furthermore, the LLM generates more complex, non-trivial commands that are specific to user requirements by assigning new values to generalized parameters based on comprehensive judgments based on knowledge gained from multiple material data 300, in addition to specific values extracted from natural language input. In particular, when generating workflows, the LLM reproduces the functions of each node and the edge connection patterns as "logic flows" learned from existing workflow examples, thereby building new processes that respond to natural language input beyond existing frameworks.
[0045] The assistance device 101 may further request the creation server 104 (specifically, its natural language processing service) to specialize generalized parameters included in one or more material data based on natural language input. For example, the assistance device 101 may include a sentence such as "Please specify the parts of the individual instructions for one or more material data enclosed in [ ] based on natural language input" in a request to the creation server 104. The creation server 104 creates recommended instructions (and their metadata, if requested) in response to the request from the assistance device 101 and responds to the assistance device 101. The assistance device 101 may personalize the request to the creation server 104 based on historical feedback from the user (e.g., user preferences, past user selection trends).
[0046] In S405, the assistance device 101 acquires the execution result of the recommended command and displays this execution result to the user. For example, if the recommended command is an SQL query for the database server 103, the assistance device 101 may request the database server 103 to execute the recommended command and acquire the execution result. S405 may be executed automatically after S404 is completed, or may be executed in response to an instruction from the user.
[0047] The support device 101 may represent the execution result of the recommended command in a diagram or a table. For example, the support device 101 may request the creation server 104 (or another server) to create an instruction for representing the execution result of the recommended command in a diagram or a table, and display the diagram or table in accordance with the instruction.
[0048] According to the above-described method, one or more pieces of material data 300 are identified based on metadata, and recommended commands are created using the one or more pieces of material data 300. This makes it possible to accurately create recommended commands for causing a computer to execute a target process. Furthermore, because the administrator of the creation support service can prepare the material data to be provided to the natural language processing service, it is possible to prevent the natural language processing service from creating commands that could cause problems in the system (for example, commands that pose security risks or commands that impose a high processing load).
[0049] Referring to FIG. 5 , an example of a creation screen 500 for receiving instructions from a user regarding the creation of an instruction will be described. The creation screen 500 is displayed on the display device 204 of the user terminal 102 when the method of FIG. 4 is initiated. The creation screen 500 is a graphic user interface (GUI) screen. The GUI screen is a screen that includes one or more graphic objects (hereinafter simply referred to as objects) for receiving input from a user. In the following description, a specific object for receiving a specific input will be described as an example, but another object capable of receiving the same input may be used instead.
[0050] Creation screen 500 includes the objects shown in Fig. 5. Creation screen 500 may include objects not shown in Fig. 5, or may not include some of the objects shown in Fig. 5. The same applies to other screens described below.
[0051] The pull-down list 501 is an object for setting a computer that executes the recommended command. For example, the database server 103 may be selectable from the pull-down list 501.
[0052] The text box 502 is an object for inputting a sentence written in a natural language that represents a process to be executed by a computer (for example, the database server 103).
[0053] The button 503 is a button for instructing the creation of a recommended command for causing the computer set in the pull-down list 501 to execute the target process represented by the sentence entered in the text box 502. In response to the user pressing the button 503, the assistance device 101 starts the operation shown in Fig. 4. Thereafter, in S401, the assistance device 101 acquires the input into the text box 502 as a natural language input.
[0054] The field 504 is an area for displaying the recommended command. The assistance device 101 displays the recommended command acquired in S404 in the field 504. The assistance device 101 may also display metadata related to the recommended command in the field 504 together with the recommended command.
[0055] The button 505 is a button for instructing the computer set in the pull-down list 501 to execute the recommended command displayed in the field 504. The assistance device 101 executes S405 in response to the user pressing the button 505. The creation screen 500 may include an object (e.g., a button or a chat window) for instructing the assistance device 101 to modify or recreate the recommended command displayed in the field 504. In response to receiving this instruction, the assistance device 101 modifies or recreates the recommended command and displays it in the field 504.
[0056] The field 506 is an area for displaying the execution result of the recommended command. In S405, the assistance device 101 displays the execution result of the recommended command in the field 506. The creation screen 500 may include an object (e.g., a chat window) for obtaining feedback on the execution result of the recommended command from the user. The user may determine whether the execution result of the recommended command is appropriate or inappropriate and provide the determination to the assistance device 101. The assistance device 101 may execute the method of FIG. 4 again based on the feedback from the user.
[0057] In the above example, the user uses the user terminal 102 to use the creation support service provided by the support device 101. Alternatively, application software that provides the creation support service may be installed in the user terminal 102, and the user may create a program using this application software. In this case, the user terminal 102 executes the operations shown in FIG. 4 above, and the user terminal 102 functions as the support device.
[0058] In the above example, the command generated by the assistance device 101 is an SQL query. Alternatively, the command generated by the assistance device 101 may be a workflow. A workflow is a flow of multiple tasks (e.g., business tasks). A workflow is expressed, for example, by a directed graph. The directed graph is written, for example, in the JSON format or the YAML format.
[0059] A node in the directed graph represents a process to be performed. The process represented by a node is specified by an input description, a transformation rule, and an output description. The input description includes the data structure (e.g., type) of the input variable and the meaning of the input variable. The transformation rule includes the data transformation process and the meaning of the data transformation process. The output description includes the data structure (e.g., type) of the output variable and the meaning of the output variable. The output variable is passed to a subsequent node. The input variables, the data transformation process, and the output variable may be described in a programming language. The meaning of the input variables, the meaning of the data transformation process, and the meaning of the output variable may be described in natural language. These meanings may be created by a developer or by a large-scale language model.
[0060] An edge of a directed graph (i.e., a directed edge) represents the order of tasks connected to the edge. Specifically, the edge indicates that after the task specified in the starting node of the edge is executed, the task specified in the ending node of the edge is executed based on the execution result of the task specified in the starting node of the edge.
[0061] As an example of a workflow, we will explain the refund process for unfulfilled contractual obligations. This workflow includes tasks such as collecting and analyzing usage data for various SIM cards, and processing refunds and generating reports for unfulfilled contractual obligations.
[0062] When the instructions generated by the support device 101 are a workflow, the nodes and edges become the above-mentioned material data 300. Furthermore, input variables, data conversion processes, and output variables become individual instructions 301, and the meanings of the input variables, data conversion processes, and output variables become metadata 302.
[0063] The recommended instructions (i.e., the recommended workflow) displayed to the user in S404 of FIG. 4 may be generated in a format that is independent of a specific environment (e.g., a cloud environment such as Amazon Web Services, Google Cloud Platform, or Azure). For example, the workflow may be described in a domain specific language (DSL). When executing the workflow in S405, the assistance device 101 may convert the workflow into a format that is dependent on a specific environment (e.g., resources provided by each platform, such as computing, storage, and event processing).
[0064] The invention is not limited to the above-described embodiment, and various modifications and variations are possible within the scope of the gist of the invention.
[0065] This application claims priority based on Japanese Patent Application No. 2024-113586, filed July 16, 2024, the entire contents of which are incorporated herein by reference.
Claims
1. An assistance device for assisting in the creation of instructions written in a computer language, comprising: a first acquisition means for acquiring an input representing a target process to be executed by a computer; an identification means for identifying, from a plurality of material data, material data whose relevance to the input satisfies a predetermined condition; and a second acquisition means for, when one or more material data that satisfy the predetermined condition have been identified, acquiring recommended instructions for causing the computer to execute the target process using the one or more material data and the input, wherein each of the plurality of material data includes individual instructions written in a computer language and metadata related to the individual instructions, and the relevance between one of the plurality of material data and the input is determined based at least on the metadata included in the one material data.
2. The assistance device of claim 1, wherein the metadata about the individual instructions includes one or more of: a description of the processing performed by the individual instructions; a purpose for executing the individual instructions; and a sample of data that can be processed by the individual instructions.
3. The support device according to claim 1 or 2, wherein the association between the one piece of material data and the input is based on a semantic distance between the one piece of material data and the input.
4. An assistance device according to any one of claims 1 to 3, wherein the association between the one piece of material data and the input is determined further based on the individual instructions included in the one piece of material data.
5. An assistance device according to any one of claims 1 to 4, wherein the identification means requests a natural language processing service to determine the association between the one material data and the input based at least on the metadata.
6. The support device according to any one of claims 1 to 5, wherein the individual command included in at least one of the plurality of material data has a generalized parameter.
7. The assistance device according to any one of claims 1 to 6, wherein the second acquisition means acquires the recommended command by requesting a natural language processing service to create the recommended command using the one or more material data.
8. The assistance device according to claim 7, wherein the second acquisition means further requests the natural language processing service to specialize generalized parameters included in the individual command based on the input.
9. The support device according to any one of claims 1 to 8, further comprising a third acquisition means for acquiring the execution result of the recommended command.
10. The support device according to claim 9, further comprising a display means for displaying the execution results.
11. The support device according to claim 9 or 10, further comprising a fourth acquisition means for acquiring an instruction for representing the execution result in a diagram or a table.
12. The assistance device according to any one of claims 1 to 11, wherein the plurality of material data includes material data created by a natural language processing service.
13. The support device according to any one of claims 1 to 12, wherein the plurality of material data includes material data containing individual commands written in SQL.
14. A program for causing a computer to function as each means of the support device according to any one of claims 1 to 13.
15. A method for assisting in the creation of instructions written in a computer language, comprising: a first acquisition step in which a first acquisition means acquires an input representing a target process to be executed by a computer; an identification step in which an identification means identifies, from a plurality of material data, material data whose relevance to the input satisfies a predetermined condition; and a second acquisition step in which, when one or more material data that satisfy the predetermined condition are identified, a second acquisition step in which a second acquisition means acquires recommended instructions for causing the computer to execute the target process using the one or more material data and the input, wherein each of the plurality of material data includes individual instructions written in a computer language and metadata related to the individual instructions, and the relevance between one of the plurality of material data and the input is determined based at least on the metadata included in the one material data.
Citation Information
Patent Citations
Search support system, search support method and program
JP7385077B1
Artificial Intelligence Recommendation System
US20210334697A1