Data processing device, data processing method, and program
A data processing device and method leverage a data generation model to automate application creation, addressing the need for coding expertise by generating applications directly from user inputs, enhancing user-friendly and efficient app development.
Patent Information
- Application Number
- JP2023123820
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-07-28
- Publication Date
- 2025-02-07
AI Technical Summary
The need for sophisticated expertise and significant human resources in coding hinders the creation of user-desired applications, particularly in the context of digital transformation, as existing technologies require programming languages to develop new applications.
A data processing device and method utilizing a data generation model to generate applications based on user inputs, allowing users to create applications without coding through a series of prompts and interactions with a data generation model like ChatGPT, generating requirement definitions, component lists, and source codes.
Enables users to create applications efficiently and effectively, even without programming knowledge, by automating the application development process, facilitating quick prototyping and verification of concepts.
Smart Images

Figure 2025019918000001_ABST
Abstract
Description
[Technical field]
[0001] The technology disclosed herein relates to a data processing device, a data processing method, and a program. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including a description and related instruction sentence regarding the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2022-180282 A Summary of the Invention [Problem to be solved by the invention]
[0004] Nowadays, as the importance of digital transformation (DX) is emphasized, there is an increasing demand for a variety of applications (for example, web applications) that meet diverse needs. When a user tries to create a new application, they need to code it using a programming language. However, coding requires advanced specialized knowledge and requires the investment of a large amount of human resources, which is an obstacle to app development. However, with conventional technologies, although they are able to communicate with users, they have not been able to create the apps that users want. [Means for solving the problem]
[0005] A first aspect of the technology disclosed herein is a data processing device that includes an input unit that accepts user input, a processing unit that performs specific processing using a data generation model capable of generating data according to the input content, and an output unit that outputs the result of the specific processing, wherein the processing unit obtains a requirements definition of the application using the output of the data generation model when the input content generated based on the requirement definition of the application specified by the user input is input, and when an instruction to create the application is given in the requirements definition, creates the application based on the output result from the data generation model obtained by inputting a prompt corresponding to the creation stage of the application as the input content.
[0006] A second aspect of the technology disclosed herein is a data processing method that includes accepting user input, performing a specific process using a data generation model capable of generating data according to the input content, and outputting a result of the specific process, in which a requirements definition of the application is obtained using the output of the data generation model when the input content generated based on the requirement definition of the application specified by the user input is entered in the specific process, and when an instruction to create the application is given in the requirements definition, a prompt corresponding to the creation stage of the application is entered as the input content, thereby creating the application based on the output result from the data generation model.
[0007] A third aspect of the technology disclosed herein is a program for causing a computer to execute a process including accepting user input, performing a specific process using a data generation model capable of generating data according to the input content, and outputting a result of the specific process, wherein in the specific process, a requirements definition of the application is obtained using the output of the data generation model when the input content generated based on the requirement definition of the application specified by the user input is entered, and when an instruction to create the application is given in the requirements definition, creating the application based on the output result from the data generation model obtained by inputting a prompt according to the creation stage of the application as the input content. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a conceptual diagram illustrating an example of a configuration of a data processing system. [Diagram 2] FIG. 2 is a conceptual diagram showing an example of main functions of a data processing device and a smart device. [Figure 3A] 13 shows an example of a screen displayed during specific processing. [Figure 3B] 13 shows an example of a screen displayed during specific processing. [Figure 3C] 13 shows an example of a screen displayed during specific processing. [Figure 3D] 13 shows an example of a screen displayed during specific processing. [Figure 4] 2 shows a schematic functional configuration of a specific processing unit of the data processing device. [Diagram 5] The outline of the specific process is shown below. [Figure 6] The outline of the specific process is shown below. [Figure 7] 13 illustrates an example of an operational flow of a specific process performed by a data processing device. [Figure 8] 13 illustrates an example of an operational flow of a specific process performed by a data processing device. [Figure 9] 13 illustrates an example of an operational flow of a reception output process by a smart device. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] Hereinafter, an example of an embodiment of a data processing device, a data processing method, and a program according to the technology of the present disclosure will be described with reference to the accompanying drawings.
[0010] First, the terms used in the following description will be explained.
[0011] In the following embodiments, a signed processor (hereinafter simply referred to as a "processor") may be one arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be one type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), or a TPU (Tensor Processing Unit).
[0012] In the following embodiments, a signed RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by the processor.
[0013] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0014] In the following embodiments, a communication I / F (Interface) with a code is an interface including a communication processor and an antenna. The communication I / F controls communication between multiple computers. An example of a communication standard applied to the communication I / F is a wireless communication standard including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0015] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. In addition, in this specification, the same idea as "A and / or B" is also applied when three or more things are expressed by connecting them with "and / or."
[0016] FIG. 1 shows an example of the configuration of a data processing system 10 according to the embodiment.
[0017] As shown in Fig. 1, the data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server. An example of the smart device 14 is a smartphone. In this embodiment, the data processing device 12 is an example of a "data processing device" according to the technology of the present disclosure.
[0018] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a wide area network (WAN) and / or a local area network (LAN).
[0019] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0020] The reception device 38 includes a touch panel 38A and a microphone 38B, and receives user input. The touch panel 38A detects contact with a pointer (e.g., a pen or a finger) to receive user input by the touch of the pointer. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0021] The output device 40 includes a display 40A and a speaker 40B, and presents data to the person 20 by outputting the data in a form of expression that the person 20 can perceive (e.g., voice and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs voice according to instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, an aperture, and a shutter, and an imaging element such as a Complementary Metal-Oxide-Semiconductor (CMOS) image sensor or a Charge Coupled Device (CCD) image sensor.
[0022] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for transmitting and receiving various types of information between the processor 46 and the processor 28 via the network 54.
[0023] FIG. 2 shows an example of main functions of the data processing device 12 and the smart device 14.
[0024] As shown in Fig. 2, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32. The specific process program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific process program 56 from the storage 32, and executes the read specific process program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific process program 56 executed on the RAM 30.
[0025] The storage 32 stores a data generation model 58. The data generation model 58 is used by the specific processing unit 290.
[0026] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 62. The reception output program 62 is used together with the specific processing program 56 by the data processing system 10. The processor 46 reads out the reception output program 62 from the storage 50, and executes the read reception output program 62 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 62 executed on the RAM 48.
[0027] Next, the process of the specific processing unit 290 when the data processing device 12 performs specific processing, which is processing for creating a web application (hereinafter also simply referred to as "app"), will be described. Note that, although the creation of a web application is described here as an example, this is merely one example. For example, it may be in the form of software (installed and executed on a personal computer or smartphone).
[0028] In the identification process in this embodiment, as shown in Fig. 3A to Fig. 3C, the content of an application that the user wishes to create is transmitted from the smart device 14 to the data processing device 12. In the example shown in Fig. 3A, the content of a request to create an application that calculates a matrix product is transmitted. For example, the content of the application that the user wishes to create is transmitted to the data processing device 12 via a chat application installed in the smart device 14.
[0029] In the data processing device 12, first, the specific processing unit 290 inputs requirement definition data ND indicating the contents of the application to the data generation model 58. The data generation model 58 generates a requirement definition for creating the application based on the input requirement definition data ND. Then, the data generation model 58 outputs requirement definition data CD which is data indicating the contents of the requirement definition. The data processing device 12 transmits the requirement definition data CD to the smart device 14.
[0030] The smart device 14 outputs the requirement definition data CD acquired from the data processing device 12. The requirement definition data CD is displayed, for example, on the display 40A. In the example shown in Fig. 3B, the requirement definition data CD is displayed in a message display field of a chat application as the requirement definition data CD.
[0031] The smart device 14 outputs the requirements definition data CD and receives a response from the user as to whether or not to create an application. In the example shown in FIG. 3B, a message box asking "Do you want to create code based on the requirements?" is displayed below a message indicating the requirements definition data CD in a message display field of the chat application. Furthermore, two soft keys, "Yes" and "No", are displayed in the message box. Note that the manner in which a response from the user is received via the message box is merely an example. For example, a message instructing the user to create an application may be directly input into a message input field of the chat application.
[0032] The user checks the requirements definition displayed on the display 40A of the smart device 14, and inputs any necessary corrections. In the example shown in FIG. 3C, the corrections to the requirements definition are input in a message input field of a chat application. The identification processing unit 290 inputs requirement definition data ND indicating the contents of the corrected application to the data generation model 58. The data generation model 58 generates a requirements definition for creating the application based on the input requirement definition data ND.
[0033] The smart device 14 outputs the requirement definition data CD acquired again from the data processing device 12. The user checks the requirement definition displayed on the display 40A of the smart device 14, and if the result of the requirement definition matches the content of the desired application, the user taps the "Yes" soft key in the message box. This causes the application to be created in the data processing device 12.
[0034] Then, the smart device 14 acquires data indicating the application from the data processing device 12 and outputs it. In the example shown in FIG. 3C, a URL of a web application providing a service is displayed in a message display field of a chat application as data indicating the application. In the example shown in FIG. 3C, a URL is tapped to transition to a website providing the service, and a web application that calculates a matrix product is available on the website. In this way, in this embodiment, the application is provided by inputting the contents of the application that the user wishes to create, without performing work such as coding.
[0035] Note that, here, an example of an application that calculates a matrix product is given as an example of an application, but this is merely one example. The type or specifications of the application are not particularly limited. In addition, although an embodiment in which an input is received from a user and an output result from the data processing device 12 is displayed in a message sending / receiving field of a chat application has been shown, this is merely one example. For example, an embodiment in which an input is received from a user and an output result from the data processing device 12 is displayed via a dedicated application or website may also be used. Furthermore, the form of provision of the created application is not particularly limited, and the application may be downloaded or installed.
[0036] Next, the specific processing executed in the specific processing unit 290 will be described with reference to Fig. 4. The specific processing unit 290 includes an input unit 292, a processing unit 294, and an output unit 296, as shown in Fig. 4.
[0037] The input unit 292 acquires a user input received by the smart device 14. Specifically, the request definition of an application desired by the user received by the smart device 14 is acquired. For example, the user inputs request definition data ND indicating the request definition via the smart device 14, and the smart device 14 transmits the input request definition data ND to the data processing device 12 via the network. Then, in the specific processing unit 290 of the data processing device 12, the input unit 292 acquires the request definition data ND transmitted from the smart device 14.
[0038] Here, the form of the request definition data ND is not particularly limited, and may be text data, image data, and / or audio data.
[0039] The processing unit 294 performs a specification process using the data generation model 58. The specification process will be described in detail later.
[0040] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ) and other generation AIs. The data generation model 58 is obtained by making a neural network perform deep learning. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating a voice, text data indicating a text, and image data indicating an image is input. The data generation model 58 performs inference on the input inference data according to the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0041] The output unit 296 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. For example, the control unit 46A causes the display 40A to display the result of the specific processing. Also, for example, the control unit 46A may cause the speaker 40B to output the result of the specific processing as sound.
[0042] Next, various processes included in the specific process will be described with reference to FIGS. 5, first, a requirement definition creation process is executed in the specific process. In the requirement definition creation process, the requirement definition data ND acquired via the smart device 14 is input to the data generation model 58 together with an instruction statement for creating the requirement definition. Then, the data generation model 58 outputs the requirement definition data CD.
[0043] In addition, a history of an interaction with a user via the smart device 14 is stored as interaction history data 32A in the storage 32. In the requirements definition creation process, the interaction history data 32A is referred to, so that information on the requirements definition previously given by the user is reflected in the creation of the requirements definition. That is, the interaction history data 32A can be included in an instruction sentence input to the data generation model 58. This realizes the creation of a requirements definition for creating an application desired by the user.
[0044] When the user confirms the requirements definition created as a result of the requirements definition creation process and accepts an instruction to start creating an application, a component list creation process is executed. In the component list creation process, requirements definition data CD is input to the data generation model 58 together with an instruction statement to create a list of components. Here, the list of components refers to a list of components used to implement the application the user wishes to create. The data generation model 58 outputs component list data CL, which is data indicating a list of components, in accordance with the instruction statement.
[0045] An example of a prompt used in the component list creation process is as follows: In the technology disclosed herein, Python is selected as an example of a programming language, and the following prompt instructs the data generation model 58 to behave as a Python function. Also, the data generation model 58 is instructed to respond in JSON format about what components are needed.
[0046] "You are the following python function: ```` # Returns a Json string of an object that has an array of "user_stories", an array of "functions", and array of "screens" as properties from the given string. def take_requirements(requirements_str: str) -> str: ```"
[0047] By including an instruction in the instruction statement to operate the data generation model 58 as a Python function, it is possible to impart precision to the operation and / or output of the data generation model 58 and further reduce the possibility of prompt injection occurring in the data generation model 58.
[0048] Also, by making the instruction text respond in JSON format, it becomes easier to implement the components. If the response is not in JSON format, an error may be generated and a component list creation process may be executed. This makes it possible to handle cases where the response from the data generation model 58 is not in JSON format (for example, in natural language).
[0049] In the following description, examples of directives will be given when Python is used as the programming language, but it goes without saying that other programming languages may also be used.
[0050] After the component list creation process is executed, the component implementation process is executed. In the component implementation process, the component list data CL and template source code data TC are input to the data generation model 58 together with instructions for generating source code corresponding to each component.
[0051] Here, the template source code data TC is a template of source code corresponding to the type of component, and is a predetermined source code. The data generation model 58 writes source code for each component shown in the component list data CL by using the corresponding template source code data TC. That is, the data generation model 58 outputs partial source code data PC corresponding to each component.
[0052] In the component implementation process, an example of a prompt when implementing a component that generates a screen is as follows.
[0053] "You are the following python function: ```` # Implements the screen given in "screen" as a React component. # Uses the template code given the parameter 'template_code'. # The parameter 'requirements' is the Json string of requirements for the application. # Returns the code of the react component. def implement_screen(requirements_json: str, template_code: str, screen: str) -> str: ```"
[0054] In the component implementation process, the output partial source code data PC is stored as temporary source code data 32B in the storage 32. In this manner, the temporary source code data 32B stored in the storage 32 is called in the next source code integration process and is used for integrating the partial source code data PC.
[0055] After the component implementation process is executed, a source code integration process is executed. In the source code integration process, the partial source code data PC is input to the data generation model 58 together with a directive for integrating the partial source code data PC of each component. The data generation model 58 outputs integrated source code data IC, which is source code obtained by integrating the partial source code data PC.
[0056] After the source code integration process is executed, a problem identification process is executed. In the problem identification process, the integrated source code data IC is input to the data generation model 58 together with a directive for identifying a problem in the integrated source code data IC. The data generation model 58 outputs problem data PD indicating a problem (e.g., occurrence of a bug, slow operation speed, etc.) that occurs when an application is operated according to the integrated source code data IC.
[0057] An example of a prompt used in the problem indication process is as follows:
[0058] "You are the following python function: ```` # Analyzes the given javascript and JSX code and returns a list of suggestions for improvements. def analyze_code(code: str) -> list[str]”
[0059] After the problem identification process is executed, a problem correction process is executed. In the problem correction process, the integrated source code data IC and the problem data PD are input to the data generation model 58 together with a directive for correcting the problem in the integrated source code data IC. The data generation model 58 outputs corrected source code data RC, which is source code obtained by correcting the problem in the integrated source code data IC.
[0060] An example of a prompt in the problem fixing process is as follows:
[0061] "You are following python function: ```` # Improves the provided code based on the suggestions given code based on the suggestions given. # Returns the code of react component. def improve_code(suggestions: list[str], code: str) -> str:"
[0062] After the problem correction process is executed, the problem indication process is executed again. In the problem indication process, the corrected source code data RC is input to the data generation model 58 together with a directive for indicating a problem in the corrected source code data RC. The data generation model 58 outputs problem data PD indicating a problem when an application runs according to the corrected source code data RC. Here, if the problem data PD satisfies a predetermined condition, the corrected source code data RC is output as a result of the identification process. Here, the predetermined condition may be, for example, a condition that the problem data PD output from the data generation model 58 is data indicating that there is no problem.
[0063] The source code of the application thus generated is provided to the user as a result of the specific process, which allows the user to use the application without coding the application.
[0064] Next, the operation of the data processing system 10 will be described with reference to FIGS.
[0065] First, an example of the flow of the specific processing will be described with reference to Fig. 7 and Fig. 8. Note that the flow of the specific processing shown in Fig. 7 and Fig. 8 is an example of a "data processing method" according to the technique of the present disclosure.
[0066] 7, first, in step S101, the input unit 292 in the data processing device 12 acquires, as a user input, the content of an application desired by the user (i.e., requested definition data ND from the user) from the smart device 14. After the process of step S101 is executed, the identification process proceeds to step S103.
[0067] In step S103, the processing unit 294 inputs a prompt including the requirement definition data ND acquired in step S101 and an instruction for creating a requirement definition for creating an application to the data generation model 58. After the process of step S103 is executed, the identification process proceeds to step S105.
[0068] In step S105, the processing unit 294 acquires the requirements definition data CD output from the data generation model 58. After the process of step S105 is executed, the identification process proceeds to step S107.
[0069] In step S107, the output unit 296 outputs the requirement definition data CD acquired in step S105 to the smart device 14. After the process of step S107 is executed, the identification process proceeds to step S109.
[0070] In step S109, the input unit 292 determines whether or not an application creation instruction has been received from the smart device 14. If the input unit 292 has not received the application creation instruction, the determination is negative, and the identification process returns to step S101. If the input unit 292 has received the application creation instruction, the determination is positive, and the identification process proceeds to step S111.
[0071] In step S111, the processing unit 294 inputs a prompt including the requirements definition data CD acquired in step S105 and an instruction for creating a list of components required for implementing the application based on the requirements definition data CD to the data generation model 58. After the process of step S111 is executed, the identification process proceeds to step S113.
[0072] In step S113, the processing unit 294 acquires the component list data CL output from the data generation model 58. After the process of step S113 is executed, the identification process proceeds to step S115.
[0073] In step S115, the processing unit 294 inputs a prompt including the component list data CL and an instruction for implementing source code corresponding to each component using template source code based on the component list data CL to the data generation model 58. After the process of step S115 is executed, the identification process proceeds to step S117.
[0074] In step S117, the processing unit 294 acquires the partial source code data PC output from the data generation model 58. After the process of step S117 is executed, the identification process proceeds to step S119.
[0075] 8, in step S119, the processing unit 294 inputs a prompt including the partial source code data PC and an instruction for integrating the partial source code data PC to the data generation model 58. After the process of step S119 is executed, the identification process proceeds to step S121.
[0076] In step S121, the processing unit 294 acquires the integrated source code data IC output from the data generation model 58. After the process of step S121 is executed, the identification process proceeds to step S123.
[0077] In step S123, the processing unit 294 inputs the integrated source code data IC and a prompt including an instruction for pointing out a problem in the integrated source code data IC to the data generation model 58. After the process of step S123 is executed, the identification process proceeds to step S125.
[0078] In step S125, the processing unit 294 acquires the problem data PD output from the data generation model 58. After the process of step S125 is executed, the identification process proceeds to step S127.
[0079] In step S127, the processing unit 294 judges whether the problem point data PD acquired in step S125 satisfies a predetermined condition. Here, the predetermined condition is, for example, a condition that the problem point data PD is data indicating that there is no problem in the integrated source code data IC. If there is no problem in the integrated source code data IC, the judgment is affirmative, and the identification process proceeds to step S133. If there is a problem in the integrated source code data IC, the judgment is negative, and the identification process proceeds to step S129.
[0080] In step S129, the processing unit 294 inputs a prompt including the problem data PD, the integrated source code data IC, and an instruction for correcting the integrated source code data IC based on the problem data PD to the data generation model 58. After the process of step S127 is executed, the identification process proceeds to step S131.
[0081] In step S131, the processing unit 294 acquires the modified source code data RC output from the data generation model 58. After the process of step S129 is executed, the identification process proceeds to step S123 again.
[0082] In step S133, the output unit 296 outputs the integrated source code data IC to the smart device 14 as a result of the identification process. For example, an application (e.g., a web application) that operates according to the integrated source code data IC is provided to the smart device 14. After the process of step S133 is executed, the identification process ends.
[0083] Next, an example of the flow of the reception and output process will be described with reference to FIG.
[0084] 9, first, in step S201, control unit 46A accepts a user input. For example, control unit 46A accepts a user input via touch panel 38A. After the process of step S201 is executed, the reception and output process proceeds to step S203.
[0085] In step S203, the control unit 46A transmits the request definition data ND accepted in step S201 to the data processing device 12 via the communication I / F 44. After the process of step S201 is executed, the acceptance and output process proceeds to step S205.
[0086] In step S205, the control unit 46A receives the requirements definition data CD as a result of the specific process executed by the data processing device 12. After the process of step S205 is executed, the reception and output process proceeds to step S207.
[0087] In step S207, the control unit 46A outputs the requirements definition data CD. For example, the control unit 46A causes the display 40A to display the requirements definition data CD. After the process of step S207 is executed, the reception and output process proceeds to step S209.
[0088] In step S209, the control unit 46A determines whether or not an application creation instruction has been received from the user. If an application creation instruction has not been received from the user, the determination is negative, and the acceptance and output process proceeds to step S201. If an application creation instruction has been received from the user, the determination is positive, and the acceptance and output process proceeds to step S211.
[0089] In step S211, the control unit 46A transmits the application creation instruction accepted in step S209 to the data processing device 12. After the process of step S211 is executed, the acceptance and output process proceeds to step S213.
[0090] In step S213, the control unit 46A receives data indicating the application as a result of the specific process from the data processing device 12. For example, the control unit 46A causes the display 40A to display the URL of the web application that provides the service. After the process of step S213 is executed, the reception output process ends.
[0091] As described above, in the data processing device 12, the requirements definition is set by repeating responses between the user and the data processing device 12 for the application that the user wishes to create. Then, after the requirements definition is determined, when the user issues an instruction to create the application, the specification processing unit 290 of the data processing device 12 executes the specification process. In the specification process, a prompt is input to the data generation model 58 according to the application creation stage (for example, creation of a list of components required for the application, implementation of the components, integration of the components, identification of problems in the source code, and correction of the source code). Then, according to the output from the data generation model 58, the processing unit 294 further generates a prompt, which is input to the data generation model 58. In this way, responses are repeated between the processing unit 294 and the data generation model 58, so that the application creation stage progresses, and the application is finally created. Therefore, the application can be created without the user having to perform coding.
[0092] For example, by using the data processing device 12 according to the technology of the present disclosure, even a person without knowledge of app development can create a prototype app and quickly perform concept verification. Specifically, for a service under consideration, a person in charge of planning a new business can create a prototype app himself / herself in a short time (e.g., 30 minutes) by using the data processing device 12 of the present disclosure. In addition, since design materials and source codes are available at the prototype creation stage, it becomes easy for a specialized engineer to modify the prototype based on the created prototype in preparation for the development of a commercial app.
[0093] Furthermore, in the data processing device 12, a prompt including the requirements definition data CD is input to the data generation model 58 to obtain a list of components to be implemented in the application. This allows implementation of each component of the application to be created, making it easier to create the application using the data generation model 58. In application development, an application is often realized by a combination of typical functions. And the typical functions of an application are realized by various components. Therefore, creating a list of components and implementing each component makes it easier to create the application.
[0094] Moreover, in the data processing device 12, a prompt including the requirements definition data CD and template source code data TC is input to the data generation model 58. The prompt includes an instruction to implement each component in the list of components required for the application. This realizes the implementation of each component. In implementing the components, template source code corresponding to each component is used. Therefore, by incorporating a patterned function into the template source code, the implementation of the components by the data generation model 58 is realized. This eliminates the need for the user to check the source codes of the components and integrate them, making it easier to create an application.
[0095] Furthermore, in the data processing device 12, a prompt including the partial source code data PC is input to the data generation model 58. The prompt includes a directive for integrating the partial source code data PC corresponding to the components. As a result, integrated source code data IC, which is source code corresponding to a plurality of components, is generated. In other words, source code for running the application is generated.
[0096] Furthermore, in the data processing device 12, a prompt including the integrated source code data IC is input to the data generation model 58. The prompt includes an instruction for pointing out problems in the source codes of the implemented components. This generates problem data PD indicating problems in the integrated source code data IC. That is, problems in the source code for running the application are pointed out. This makes it easier to create an application without the user having to check the source code or perform an operation check.
[0097] Furthermore, in the data processing device 12, a prompt including the problem data PD is input to the data generation model 58. The prompt includes a directive for correcting the problem in the source code of the component. This causes corrected source code data RC, which is the corrected source code, to be output. In other words, the source code for running the application is corrected. This eliminates the need for the user to check the problems in the source code and correct the problems, making it easier to create an application.
[0098] In the above embodiment, the source code obtained as a result of the specific processing is provided to the user, but the technology of the present disclosure is not limited to this. The source code may not be provided, and the application may be directly provided. For example, it is often difficult for a user who is not familiar with programming to handle source code, but since the application is directly provided, even a user who is not familiar with programming can easily use the application.
[0099] As described above, the user may select whether to provide the source code obtained as a result of the specific process or to provide the application directly to the user. This allows the result of the specific process to be provided according to the user's situation, improving user convenience.
[0100] In the above embodiment, an example has been described in which the requirements definition data CD is input to the data generation model 58 in the identification process to output source code from the data generation model 58, but the technology of the present disclosure is not limited to this. The requirements definition data CD may be input to the data generation model 58, and binary code may be output from the data generation model 58. In this case, in the identification process, an application that operates according to the binary code output from the data generation model 58 is created, and the created application is provided to the user.
[0101] In the above embodiment, an example in which the data generation model 58 is stored in the storage 32 of the data processing device 12 has been described, but the technology of the present disclosure is not limited to this. The data generation model 58 may be stored in an external device of the data processing device 12. In this case, the data processing device 12 is connected to the external device via the network 54, and the specific processing is performed by transmitting and receiving data between the specific processing unit 290 and the data generation model 58 stored in the external device.
[0102] In the above embodiment, the specific process is executed in the data processing device 12, but the technology of the present disclosure is not limited to this. The specific process may be executed in the smart device 14. In this case, the smart device 14 is an example of a "data processing device" according to the technology of the present disclosure.
[0103] In the above embodiment, a smartphone is given as an example of the smart device 14, but the technology of the present disclosure is not limited to this. The smart device 14 may be a personal computer, smart glasses, a smart watch, or a tablet terminal.
[0104] In the above embodiment, an example was given in which a specific process is performed by one computer 22, but the technology disclosed herein is not limited to this, and distributed processing of the specific process may be performed by multiple computers, including computer 22.
[0105] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable computer-readable non-transitory storage medium such as a Universal Serial Bus (USB) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[0106] In addition, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 upon request from the data processing device 12.
[0107] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[0108] As the hardware resource for executing the specific process, various processors as shown below can be used. An example of the processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing the specific process by executing software, i.e., a program. Another example of the processor is a dedicated electric circuit, which is a processor having a circuit configuration designed exclusively for executing the specific process, such as a Field-Programmable Gate Array (FPGA), a Programmable Logic Device (PLD), or an Application Specific Integrated Circuit (ASIC). Each processor has a built-in or connected memory, and each processor executes the specific process by using the memory.
[0109] The hardware resource that executes the specific process may be one of these various processors, or may be a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific process may be a single processor.
[0110] As an example of a configuration using one processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a configuration using a processor that realizes the functions of the entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[0111] Furthermore, more specifically, the hardware structure of these various processors can be an electric circuit that combines circuit elements such as semiconductor elements. The specific processes described above are merely examples. It goes without saying that unnecessary steps may be deleted, new steps may be added, or the order of processes may be changed without departing from the spirit of the invention.
[0112] The above description and illustrations are detailed descriptions of the parts related to the technology of the present disclosure, and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, function, action, and effect is an example of the configuration, function, action, and effect of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above description and illustrations, within the scope of the gist of the technology of the present disclosure. In addition, in order to avoid confusion and to facilitate understanding of the parts related to the technology of the present disclosure, the above description and illustrations omit explanations of technical common sense that do not require explanation in order to enable the implementation of the technology of the present disclosure.
[0113] All publications, patent applications, and standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or standard was specifically and individually indicated to be incorporated by reference. [Explanation of symbols]
[0114] 10 data processing system, 12 data processing device, 14 smart device, 20 person, 22 computer, 24 database, 26 communication I / F, 28 processor, 32 storage, 32A dialogue history data, 32B temporary source code data, 34 bus, 36 computer, 38 reception device, 38A touch panel, 38B microphone, 40 output device, 40A display, 40B speaker, 42 camera, 44 communication I / F, 46 processor, 46A control unit, 50 storage, 52 bus, 54 network, 56 specific processing program, 58 data generation model, 62 reception output program, 290 specific processing unit, 292 input unit, 294 processing unit, 296 output unit, CD requirement definition data, CL component list data, IC integrated source code data, ND requirement definition data, PC partial source code data, PD problem data, RC modified source code data, TC Shape source code data
Claims
1. an input unit for accepting user input; A processing unit that performs specific processing using a data generation model that can generate data according to an input content; an output unit that outputs a result of the specific processing, The processing unit includes: obtaining a requirements definition of the application using an output of the data generation model when the input content generated based on a requirements definition of the application specified by the user input is input; When an instruction to create the application is given in the requirements definition, the application is created based on the output result from the data generation model obtained by inputting a prompt corresponding to the creation stage of the application as the input content. Data processing device.
2. In the identification process, a prompt including the requirements definition and an instruction to generate a list of components to be implemented in the application is input to the data generation model to obtain the list.
2. A data processing apparatus according to claim 1.
3. In the identification process, a prompt including a command for implementing the component shown in the list is input to the data generation model, the command being a text including the requirement definition and a predetermined template source code, thereby obtaining source code for the component.
3. A data processing apparatus according to claim 2.
4. In the identification process, source code for the application is obtained by inputting prompts including instructions for integrating the implemented components into the data generation model.
4. A data processing device according to claim 3.
5. In the identification process, a prompt including an instruction for identifying a problem in a source code of the implemented component is input to the data generation model to obtain data indicating a problem in the source code.
5. A data processing apparatus according to claim 4.
6. The identification process includes inputting prompts to the data generation model, the prompts including instructions to correct the problems in the source code of the component, thereby obtaining the corrected source code.
6. A data processing apparatus according to claim 5.
7. Accepting user input; Performing specific processing using a data generation model capable of generating data according to input content; outputting a result of the specific processing; In the specific processing, A requirements definition of the application is obtained using an output of the data generation model when the input content generated based on a requirements definition of the application specified by the user input is input; When an instruction to create the application is given in the requirements definition, the application is created based on the output result from the data generation model obtained by inputting a prompt corresponding to the creation stage of the application as the input content. Data processing methods.
8. Accepting user input; Performing specific processing using a data generation model capable of generating data according to input content; outputting a result of the specific processing; In the specific processing, A requirements definition of the application is obtained using an output of the data generation model when the input content generated based on a requirements definition of the application specified by the user input is input; When an instruction to create the application is given in the requirements definition, the application is created based on the output result from the data generation model obtained by inputting a prompt corresponding to the creation stage of the application as the input content. A program for causing a computer to execute a process including the above.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A
Cited By
Program, information processing method, and information processing apparatus
JP2025137471A
Program, information processing method, and information processing apparatus
JP2025176169A
Program, information processing method and information processing device
JP7750586B2
Program, information processing method, and information processing apparatus.
JP7895662B2
Program generation device, program generation system, program generation method, and program generation program
JP7898653B1