System
The system automates application development by allowing users to input basic information, generate questions, and automatically create and test code, addressing the inefficiencies of conventional coding completion services.
Patent Information
- Application Number
- JP2024130282
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-06
- Publication Date
- 2026-02-19
AI Technical Summary
Conventional coding completion services rely heavily on developers, leading to excessive workload and delayed project progress, especially in scenarios where users lack programming expertise.
A system that includes an input means for users to provide basic information, a generation means for the server to generate questions, a response means for users to answer, an automatic generation means for the server to create code, a construction means to organize file and folder structures, and a test means to execute automated tests, thereby automating the application development process.
This system significantly reduces developers' workload, enabling efficient and high-quality application development by automating the entire process from user input to testing.
Smart Images

Figure 2026027984000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [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 an instruction sentence related to a description of 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] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] Conventional coding completion services rely on developers, who are responsible for much of the actual work. As a result, developers often have to work excessively hard, which can delay project progress. The purpose of this invention is to improve this situation by providing a system that significantly reduces developers' workload and enables more efficient application development. [Means for solving the problem]
[0005] The present invention solves the above-mentioned problems by providing a system including an input means for a user to input basic information, a generation means for a server to generate additional questions and send the questions to the user, a response means for the user to answer the questions, an automatic generation means for the server to automatically generate code, a construction means for constructing a file and folder structure based on the code generated by the server, a confirmation and correction request means for the user to check the generated structure and request corrections, and a test means for the server to execute automatic tests. This provides a series of flows in which an application is automatically implemented simply by the user inputting specifications and functions and answering a few questions.
[0006] "User" refers to a person who intends to use the system to develop an application.
[0007] "Server" refers to a computer system that receives input information from a user, generates questions, automatically generates code, builds file structures, and performs testing.
[0008] "Input means" refers to a function that provides an interface for the user to input basic information about the application.
[0009] "Generation means" refers to a function that generates additional questions based on the input basic information and sends them to the user.
[0010] "Response means" refers to a function that provides an interface for the user to respond to questions from the server.
[0011] "Automatic generation means" refers to a function that automatically generates application code based on the user's answers.
[0012] "Construction means" refers to a function that automatically creates the necessary file and folder structure based on the generated code.
[0013] The "verification and modification request means" refers to a function that provides an interface for a user to verify a generated application and make a modification request if necessary.
[0014] "Testing means" refers to the function of running automated tests on the generated code and checking the results.
[0015] "Code" refers to the programming language used to build a software application.
[0016] A "question" refers to a series of questions and answers presented by the server to the user to provide specific information needed by the application. [Brief explanation of the drawings]
[0017] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10]1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0018] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0019] First, the terms used in the following description will be explained.
[0020] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single 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), and an APU (Accelerated Processing Unit).
[0021] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0022] 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.
[0023] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0024] 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. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0025] [First embodiment]
[0026] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0027] 1, a 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.
[0028] 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 WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0029] 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.
[0030] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. 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.
[0031] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0032] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0033] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0034] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing 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 processing program 56 executed on the RAM 30.
[0035] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0036] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 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 60 executed on the RAM 48.
[0037] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0038] This invention is a system that automatically generates applications based on basic information provided by the user. The user inputs the basic information of the application, the server generates questions based on that information, receives the user's answers, automatically generates code, configures files and folders, and finally the user checks and corrects the information, and the server performs automatic testing.
[0039] Automatic Application Generation Process Flow
[0040] 1. The user enters basic information
[0041] The user accesses the server through a terminal and enters basic information about the application, including the application name, main functions, and purpose.
[0042] 2. The server generates a follow-up question
[0043] The server analyzes the basic information provided by the user and generates follow-up questions to obtain the details needed to solve the problem, such as the format in which the data is stored and whether the user is authenticated.
[0044] 3. The user answers the question
[0045] The user answers questions posed by the server through the terminal, which establishes the specific requirements of the application.
[0046] 4. The server automatically generates the code
[0047] Based on the user's answers, the server automatically generates the application code, using technologies and frameworks selected based on the user's requirements, including back-end APIs, front-end components, and database schemas.
[0048] 5. The server builds the file and folder structure
[0049] The server places the generated code in the appropriate directory structure, for example, building a front-end with React, a back-end with Node.js, and a database with MongoDB.
[0050] 6. The user reviews the generated configuration and requests corrections
[0051] The user checks the provided application configuration on the terminal and requests modifications as necessary, for example, by sending a specific request such as "Make the task update function simpler" to the server.
[0052] 7. The server runs automated tests
[0053] The server runs automated tests on the final code to ensure quality, and if all tests pass, it delivers the finished application to the user.
[0054] Specific examples
[0055] Creating a to-do list app
[0056] 1. The user enters basic information
[0057] The user inputs that they want to create a "TODO list app" and then inputs key functions such as "add task," "delete task," and "update task."
[0058] 2. The server generates a follow-up question
[0059] The server generates questions such as "In what format do you want to save the task?" and "Is user authentication required?" and sends them to the user.
[0060] 3. The user answers the question
[0061] The user answers "Database", "Yes".
[0062] 4. The server automatically generates the code
[0063] Based on this information, the server automatically generates code that uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[0064] 5. The server builds the file and folder structure
[0065] The server will generate the following files and folders:
[0066] / frontend
[0067] App.js
[0068] components /
[0069] services /
[0070] / backend
[0071] server.js
[0072] routes /
[0073] models /
[0074] / database
[0075] mongo.js
[0076] 6. The user reviews the generated configuration and requests corrections
[0077] The user checks the code and configuration and sends a request to the server for a fix, such as "Make the task update function more concise."
[0078] 7. The server runs automated tests
[0079] The server runs automated tests using Jest and Supertest, and if all tests pass, it serves the finished application to the user.
[0080] This allows users to develop and implement applications efficiently with little effort.
[0081] The processing flow will be explained below.
[0082] Step 1:
[0083] The user enters basic information.
[0084] The user accesses the Copilot application using a terminal and enters basic information such as the application name, main function, and purpose.
[0085] The terminal transmits the input information to the server.
[0086] Step 2:
[0087] The server generates a follow-up question.
[0088] The server analyzes the basic information provided by the user and identifies any additional information needed.
[0089] The server generates additional questions to determine detailed specifications, such as the data storage format and whether or not authentication functions are available.
[0090] The server sends the generated question to the terminal and displays it to the user.
[0091] Step 3:
[0092] The user answers the question.
[0093] The user answers questions from the server via the terminal, inputting specific answers such as "Data storage format is database" and "Authentication function is necessary."
[0094] The terminal transmits the user's answer to the server.
[0095] Step 4:
[0096] The server automatically generates the code.
[0097] The server analyzes the user's answers and selects the most appropriate program template based on them.
[0098] The server automatically generates the application code using the selected template, for example using React for the front end and Node.js and Express for the back end.
[0099] The server stores the generated code internally.
[0100] Step 5:
[0101] The server builds the file and folder structure.
[0102] The server organizes the generated code and creates the appropriate directory structure.
[0103] The server will automatically generate the following file and folder structure:
[0104] / frontend
[0105] App.js
[0106] components /
[0107] services /
[0108] / backend
[0109] server.js
[0110] routes /
[0111] models /
[0112] / database
[0113] mongo.js
[0114] Step 6:
[0115] The user reviews the generated configuration and requests corrections.
[0116] The server sends all the generated code and directory structure to the user.
[0117] The user uses the terminal to verify the provided application configuration.
[0118] The user sends a request for necessary modifications, such as "simplify the task update function," to the server.
[0119] Step 7:
[0120] The server applies the fix.
[0121] The server receives a modification request from the user and makes the modifications to the originally generated code.
[0122] The corrected code is then provided to the user again.
[0123] Step 8:
[0124] The server runs the automated tests.
[0125] The server runs automated tests against the generated code using an automated testing framework (e.g., Jest or Supertest).
[0126] Verify that each function works correctly and generate test results.
[0127] If all tests pass, the final application is delivered to the user. If not, the user is notified of the corrections and the application is retested.
[0128] Example 1
[0129] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0130] The traditional application development process requires a lot of human resources and time, placing a heavy burden on users who are not familiar with programming. Furthermore, the entire process, from requirements definition to development, testing, and deployment, is performed manually, which increases the likelihood of errors and inconsistent quality. To solve these problems, a system is needed that can automatically generate applications based on user input and automate the entire process, from testing to deployment.
[0131] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0132] In this invention, the server includes an input means for a user to input basic information, a generation means for the server to generate additional questions and send the questions to the user, a response means for the user to answer the questions, an automatic generation means for the server to automatically generate code, a construction means for constructing a file and folder structure based on the code generated by the server, a confirmation and correction request means for the user to check the generated structure and request corrections, a test means for the server to execute an automatic test, a means for automatically generating questions using a generative AI model, a means for automatically generating code using the generative AI model, and a means for the server to provide error notifications and correction instructions. This enables users to easily generate applications and efficiently develop and test high-quality code.
[0133] The "input means" is a user interface for the user to input basic information about the application.
[0134] The "generation means" is a function in which the server analyzes the basic information provided by the user and automatically generates questions to obtain the necessary additional information.
[0135] The "response means" is an interface that allows the user to input a response to a question sent from the server, and includes a function for sending the response to the server.
[0136] The "automatic generation means" is a function that allows the server to automatically generate the necessary code based on the user's answers.
[0137] The "construction means" is a function that automatically constructs an appropriate file and folder structure based on the code generated by the server.
[0138] The "verification and modification request means" is an interface that allows the user to verify the configuration of the generated application and request modifications as necessary.
[0139] "Testing means" is a function that allows the server to run automated tests on the generated code and evaluate the results.
[0140] "Means for automatically generating questions using a generative AI model" is a function that uses a generative model to automatically generate appropriate questions based on basic information provided by the user.
[0141] "Means for automatically generating code using a generative AI model" is a function that uses a generative model to automatically generate the necessary code based on the user's answers.
[0142] The "means for providing error notification and correction instructions" is a function by which the server notifies the user of errors found during automatic testing or code generation and provides instructions regarding correction.
[0143] This invention is a system that automatically generates applications based on basic information provided by the user. The user inputs the basic information of the application, the server generates questions based on that information, receives the user's answers, automatically generates code, configures files and folders, and finally the user checks and corrects the information, and the server performs automatic testing.
[0144] Hardware and software used
[0145] This system uses the following hardware and software:
[0146] Device: The device used by the user, such as a computer, smartphone, or tablet.
[0147] Servers: Cloud or physical servers required for high-performance data processing and running generative AI models.
[0148] Generative AI model: A machine learning model that automatically generates appropriate questions based on user input and automatically generates code.
[0149] The specific software and technology stack used is as follows:
[0150] Frontend: React.js
[0151] Backend: Node.js, Express.js
[0152] Database: MongoDB
[0153] Testing frameworks: Jest, Supertest
[0154] Detailed System Description
[0155] In this system, the user accesses the server using a terminal and enters basic information about the application, including the application name, main functions, and purpose. Once the user has completed the input, the server analyzes the basic information and generates additional questions using a generative AI model. For example, questions such as "What format should the data be saved in?" and "Is user authentication required?" are generated.
[0156] Users answer these questions from their device. Based on the user's answers, the server automatically generates code using a generative AI model. The generated code uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[0157] The server then places the generated code in the appropriate directory structure, which looks something like this:
[0158] / frontend
[0159] App.js
[0160] components /
[0161] services /
[0162] / backend
[0163] server.js
[0164] routes /
[0165] models /
[0166] / database
[0167] mongo.js
[0168] The user can check the generated application configuration on their device and request modifications as necessary. For example, they can send a specific request, such as "Please simplify the task update function," from their device to the server.
[0169] Finally, the server runs automated tests and ensures the quality of the code using Jest and Supertest, and if all tests pass, the server serves the finished application to the user.
[0170] Example: Creating a TODO list app
[0171] The user inputs that they want to create a "TODO list app" and enters key functions such as "add task," "delete task," and "update task." The server then generates questions such as "In what format do you want to save tasks?" and "Do you require user authentication?" The user answers "Database" and "Yes." Based on this information, the server automatically generates code that uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[0172] Example of input prompt for generative AI model
[0173] "Based on basic information about the application provided by the user, select the optimal technology stack and generate questions. Based on the answers, auto-generate code and build the directory structure. Finally, run automated tests and return the test results."
[0174] This allows users to easily and efficiently create high-quality applications.
[0175] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0176] Step 1:
[0177] The user enters basic information
[0178] Specific operation: A user accesses the server using a terminal and enters basic information about the application in a form provided in a web browser. The input items include the application name (e.g., "TODO list"), main functions (e.g., "Add task," "Delete task," "Update task"), and purpose (e.g., "For task management").
[0179] Input: Basic information entered by the user, such as the application name, main function, and purpose.
[0180] Output: Basic information about the user that is sent to the server.
[0181] Step 2:
[0182] The server generates additional questions
[0183] Specific operation: The server analyzes the basic information sent by the user and generates follow-up questions to gather the detailed information needed to solve the problem. At this time, it uses a generative AI model to automatically generate appropriate questions. For example, specific questions such as "What format should the data be saved in?" and "Is user authentication required?" are generated.
[0184] Input: Basic information entered by the user.
[0185] Output: A follow-up question to be sent to the user.
[0186] Step 3:
[0187] The user answers the question
[0188] Specific Action: The user uses the device to answer questions sent by the server, thereby establishing the specific requirements of the application. For example, the user answers "Yes" to the question "Save to database?" The device sends the entered answer to the server in real time.
[0189] Input: Additional question from the server.
[0190] Output: The user's answer.
[0191] Step 4:
[0192] The server automatically generates the code
[0193] How it works: Based on the user's answers, the server selects the optimal technology stack and automatically generates the application code. It uses a generative AI model to efficiently generate the code for each part. For example, it generates code that uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[0194] Input: The user's answer.
[0195] Output: Auto-generated code.
[0196] Step 5:
[0197] The server builds the file and folder structure
[0198] What happens: The server places the generated code in the appropriate directory structure, which looks like this:
[0199] / frontend
[0200] App.js
[0201] components /
[0202] services /
[0203] / backend
[0204] server.js
[0205] routes /
[0206] models /
[0207] / database
[0208] mongo.js
[0209] Input: The auto-generated code.
[0210] Output: The constructed file and folder structure.
[0211] Step 6:
[0212] The user reviews the generated configuration and requests corrections
[0213] Specific operation: The user checks the generated application configuration on the device and requests modifications if necessary. For example, the user sends a specific request from the device to the server, such as "Please simplify the task update function."
[0214] Input: The constructed file and folder structure.
[0215] Output: User requested corrections.
[0216] Step 7:
[0217] The server runs the automated tests
[0218] What happens: The server runs automated tests on the final code. Test frameworks like Jest and Supertest are used. If all tests pass, the server serves the finished application to the user. If any tests fail, the server notifies the user of the error and goes back to the process of asking them to fix it.
[0219] Input: Your final code.
[0220] Output: Test results and error notifications.
[0221] (Application example 1)
[0222] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0223] In traditional brick-and-mortar store operations, developing applications with store-specific functions requires specialized knowledge and a great deal of effort. Furthermore, it is difficult for each store to customize them to meet their unique requirements, which is time-consuming and costly. This hinders efforts to improve store operation efficiency and customer satisfaction.
[0224] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0225] In this invention, the server includes an input means for a user to input basic information, a generation means for the server to generate additional questions and send the questions to the user, and a response means for the user to answer the questions. This makes it possible to automatically generate a store-specific application based on the information provided by the user. The server also includes a specialized generation means for acquiring information about the operation of the physical store as additional information and generating a store-specific application, and a function generation means for generating code including each function of the store-specific application (customer information management, inventory management, coupon issuance, push notification, etc.). This allows users to quickly, efficiently, and at low cost obtain an application specialized for their own store.
[0226] "Input means" refers to a means for a user to input basic information.
[0227] The "generation means" is a means by which the server generates an additional question and transmits the question to the user.
[0228] The "response means" is a means for a user to respond to a question generated by the generation means.
[0229] The "automatic generation means" is a means by which the server automatically generates a code based on the user's answers.
[0230] A "construction means" is a means for constructing a file and folder structure based on the code generated by the server.
[0231] The "verification and modification request means" is a means for the user to verify the generated configuration and request any necessary modifications.
[0232] "Test means" refers to the means by which the server executes automated tests.
[0233] The "specialized generation means" is a means for acquiring information about the operation of a physical store as additional information and generating a store-specific application.
[0234] The "function generation means" is a means for generating code including each function of the store application (customer information management, inventory management, coupon issuance, push notification, etc.).
[0235] This invention is a system for automatically generating applications specialized for brick-and-mortar store operations. In this system, a server acquires additional information based on basic information entered by a user, automatically generates the necessary code, and provides the application specialized for the brick-and-mortar store.
[0236] The hardware used will be servers and smartphones and tablets used by store operators. The servers will use cloud-based infrastructure such as AWS EC2 instances, and the smartphones and tablets will be iOS and Android devices.
[0237] The software used is Node.js for the server, Express for the backend, and MongoDB for the database. React Native is used for the front end to build applications for physical stores. These software are used to provide store-specific application functions using specialization and function generation methods based on information entered by users.
[0238] First, the user uses the input means to input basic information about their store, which then transmits information such as the store's name, services offered, and main functions to the server. The server then uses the generation means to generate additional questions and transmits them to the user. The user then uses the response means to answer the questions and establish specific requirements.
[0239] The server generates code using the automatic generation means based on this information, and has a construction means for arranging the generated code in an appropriate file and folder structure. The user checks the generated structure using the confirmation and correction request means and requests the server to make any necessary corrections. Finally, the server runs an automatic test using the testing means, and provides the user with an application whose quality has been assured.
[0240] As a concrete example, we will generate a customer service app for a brick-and-mortar store. For example, if a restaurant owner inputs the following basic information and requirements, the app will be automatically generated using the specialization generation means and function generation means.
[0241] Example prompt sentence:
[0242] My restaurant is called Gourmet Delights. I need to create an app that can manage customer information (new registration, update, delete), inventory management (add, delete, update products), issue coupons and manage usage history, send push notifications when customers visit, and provide rewards based on the number of times a customer visits. I will use MongoDB as the database, and I also need customer authentication and push notification functions.
[0243] By inputting this prompt into the server, a specialized application for a physical store that meets the user's requirements is automatically generated, allowing the user to realize efficient operation tailored to their own store.
[0244] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0245] Step 1:
[0246] The user enters basic information.
[0247] Users enter basic information such as the store name, services offered, and key features through an application on their smartphone or tablet.
[0248] Input data: store name, services provided, main functions, etc.
[0249] Output data: Basic information entered by the user
[0250] Specific behavior:
[0251] When a user enters information into the input form and presses the "Submit" button, the basic information is sent to the server.
[0252] Step 2:
[0253] The server generates a follow-up question.
[0254] The server analyzes the basic information entered by the user and generates additional questions to obtain the required details.
[0255] Input data: User basic information
[0256] Output data: Additional questions
[0257] Specific behavior:
[0258] Based on the information entered, the server automatically generates questions such as the database storage format, whether user authentication is required, and whether push notification functionality is required.
[0259] Step 3:
[0260] The user answers the question.
[0261] The user answers additional questions sent by the server.
[0262] Input data: Additional questions
[0263] Output data: User's answer
[0264] Specific behavior:
[0265] The user inputs an answer to the additional question and presses the "Submit" button, which sends the answer to the server.
[0266] Step 4:
[0267] The server automatically generates the code.
[0268] The server automatically generates application code based on the user's answers.
[0269] Input data: User answers
[0270] Output data: Generated code
[0271] Specific behavior:
[0272] Based on the information provided, the server automatically generates code for the front end (React Native), back end (Node.js, Express), and database (MongoDB).
[0273] Step 5:
[0274] The server builds the file and folder structure.
[0275] The server places the generated code in the appropriate directory structure.
[0276] Input data: Generated code
[0277] Output data: Files and folders arranged in a directory structure
[0278] Specific behavior:
[0279] The server places the auto-generated code into the front-end, back-end, and database directories.
[0280] Step 6:
[0281] The user reviews the generated configuration and requests corrections.
[0282] The user checks the provided application configuration and requests the server to make corrections if necessary.
[0283] Input data: Generated configuration
[0284] Output data: Correction request details
[0285] Specific behavior:
[0286] The user checks a preview of the generated application, and if he finds any part that needs to be corrected, he sends the corrections to the server.
[0287] Step 7:
[0288] The server runs the automated tests.
[0289] The server runs automated tests on the final code to ensure quality.
[0290] Input data: Final code
[0291] Output data: Test results
[0292] Specific behavior:
[0293] The server uses a test framework such as Jest or Supertest to verify that each function of the generated code works correctly.
[0294] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0295] This invention is a system that automatically generates applications based on basic information provided by the user, and further combines it with an emotion engine to recognize the user's emotions and improve the experience.The user enters the basic information for the application, the emotion engine analyzes the input, the server generates questions, receives the user's answers, automatically generates code, configures files and folders, and finally the user checks and corrects the results, after which the server performs automatic testing.
[0296] Automatic Application Generation Process Flow
[0297] 1. The user enters basic information
[0298] Users access the system using a terminal and input basic information such as the application name, function, purpose, etc. During this input process, the emotion engine recognizes the user's emotions.
[0299] Input data from the terminal is sent to the server.
[0300] The emotion engine analyzes and records emotions from the user's writing and behavioral patterns.
[0301] 2. The server generates a follow-up question
[0302] The server generates a question based on the basic information to identify additional information.
[0303] An emotional engine assesses the user's emotional state and adjusts the content and format of questions to avoid stress and confusion.
[0304] The question is sent to the terminal and displayed to the user.
[0305] 3. The user answers the question
[0306] The user answers questions from the server through the terminal.
[0307] During the answering process, the emotion engine analyzes the user's emotions and evaluates their level of satisfaction or whether they have any problems.
[0308] The response data from the terminal is sent to the server.
[0309] 4. The server automatically generates the code
[0310] The server considers the user's response and the analysis results of the emotion engine to select the most appropriate program template.
[0311] The server uses templates to automatically generate application code, for example using React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[0312] The generated code is stored on the server.
[0313] 5. The server builds the file and folder structure
[0314] The server places the generated code in the appropriate directory and automatically creates a file and folder structure.
[0315] The following files and folders will be generated:
[0316] / frontend
[0317] App.js
[0318] components /
[0319] services /
[0320] / backend
[0321] server.js
[0322] routes /
[0323] models /
[0324] / database
[0325] mongo.js
[0326] 6. The user reviews the generated configuration and requests corrections
[0327] The server sends the generated application configuration to the user.
[0328] The user checks the configuration on the terminal and requests corrections if necessary.
[0329] During this process, the emotion engine analyzes the user's feelings and evaluates their level of satisfaction and stress.
[0330] Feedback from the device is sent to the server and corrections are made as needed.
[0331] 7. The server runs automated tests
[0332] The server runs tests against the generated code using automated testing frameworks such as Jest or Supertest.
[0333] Provide test results and ask for feedback at a time that is optimal for the user's emotional state.
[0334] If all tests pass, the final application is delivered to the user, taking into account their emotional state and providing additional support if necessary.
[0335] Specific examples
[0336] Creating a TODO list app and utilizing an emotion engine
[0337] 1. Enter basic information
[0338] The user enters that they want to create a "TODO list app" and then enters key functions such as "add task," "delete task," and "update task."
[0339] The emotion engine analyzes the tone and speed of the user's writing as they type, as well as the frequency of mistakes, to determine whether the user is enjoying themselves or feeling anxious.
[0340] 2. Generate additional questions
[0341] The server generates questions such as "In what format do you want to save the task?" and "Is user authentication required?" and sends them to the user.
[0342] If the user finds a question difficult, the emotion engine can simplify the question or provide additional help information.
[0343] 3. Answering questions and analyzing
[0344] The user answers "database" and "yes."
[0345] The emotion engine analyzes the emotions expressed when a user answers and evaluates whether the content and format of the question were appropriate.
[0346] 4. Automatic code generation
[0347] The server generates the optimal code based on the answers.
[0348] Check that there are no problems with the generated code, and if necessary, adjust it taking into account the emotion engine's evaluation.
[0349] 5. Building a file and folder structure
[0350] The server will place the code in the appropriate directory and auto-generate the configuration.
[0351] The structure is arranged in a format that is easy for users to check.
[0352] 6. Check the configuration and request corrections
[0353] The user checks the configuration and requests modifications if necessary.
[0354] The emotion engine analyzes user feedback and evaluates whether the configuration meets the user's expectations.
[0355] If any modifications are required, the server will regenerate the code and provide it to the user.
[0356] 7. Running automated tests
[0357] The server runs automated tests to ensure the generated code works correctly.
[0358] The emotion engine analyzes the test result feedback and evaluates how satisfied the user is.
[0359] If all tests pass, the final application is made available to the user.
[0360] In this way, the present invention can automatically generate applications in an efficient and user-friendly manner while taking into account the user's feelings.
[0361] The processing flow will be explained below.
[0362] Step 1:
[0363] The user enters basic information.
[0364] A user uses a terminal to access the application Copilot and enters basic information such as the application name, main function, and purpose. For example, it is a "TODO list app" and the functions include "add task," "delete task," and "update task."
[0365] The device sends the user's input information to the server, where the emotion engine monitors the user's input speed and error rate and analyzes the user's emotional state (e.g., stress, satisfaction).
[0366] Step 2:
[0367] The server generates a follow-up question.
[0368] The server generates additional questions based on the basic information to determine detailed specifications, such as "What format should the task be saved in?" or "Does user authentication require?"
[0369] The emotion engine takes into account the analyzed emotional state of the user and decides whether to simplify the question or provide additional clarification.
[0370] The server sends the generated question to the terminal and displays it to the user.
[0371] Step 3:
[0372] The user answers the question.
[0373] The user answers questions from the server through the terminal, for example, by replying "database" and "yes."
[0374] The device then sends the user's response to the server. During this process, the emotion engine analyzes the user's emotions and evaluates their level of satisfaction or dissatisfaction.
[0375] Step 4:
[0376] The server automatically generates the code.
[0377] The server selects the optimal program template based on the user's answers and the results of the emotion engine analysis, for example, using React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[0378] The server uses the selected template to automatically generate the application code, which is stored internally on the server.
[0379] Step 5:
[0380] The server builds the file and folder structure.
[0381] The server will place the generated code in the appropriate directory and automatically create the necessary files and folders, for example:
[0382] / frontend
[0383] App.js
[0384] components /
[0385] services /
[0386] / backend
[0387] server.js
[0388] routes /
[0389] models /
[0390] / database
[0391] mongo.js
[0392] Step 6:
[0393] The user reviews the generated configuration and requests corrections.
[0394] The server sends the generated application configuration to the user.
[0395] The user can check the configuration provided on the device and make correction requests if necessary, for example, by entering a specific request such as "I want the task update function to be simpler."
[0396] The emotion engine analyzes the user's emotions during this confirmation process and evaluates whether the correction request went smoothly or whether there was any dissatisfaction.
[0397] The terminal sends the user's modification request to the server, which generates a new code.
[0398] Step 7:
[0399] The server runs the automated tests.
[0400] The server runs tests on the generated code using an automated testing framework (e.g., Jest, Supertest), ensuring that each API endpoint and front-end functionality works correctly.
[0401] When the emotion engine presents test results to the user, it analyzes how the user will receive the information and provides appropriate feedback.
[0402] If all tests pass, the server delivers the final application to the user. If any tests fail, the server notifies the user of any fixes that need to be made and the application is retested.
[0403] This series of processes allows users to respond flexibly using the emotion engine, while also enabling efficient automatic generation of applications.
[0404] Example 2
[0405] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0406] Conventional automatic application generation systems ask questions and generate code without considering the user's emotional state, which can lead to stress and confusion for the user. In addition, they lack a feedback mechanism to guarantee the quality and user satisfaction of the generated application, which often results in the final result not meeting the user's expectations.
[0407] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for generating additional questions based on basic information input by the user, means for analyzing the user's emotions and adjusting the content and format of the questions, and means for regenerating new code that reflects the results of the user's emotion analysis. This makes it possible to automatically generate high-quality applications that take the user's emotional state into consideration and improve user satisfaction.
[0408] "Input means" refers to a device or interface that allows a user to input basic information.
[0409] The "generation means" refers to the function of the server to create additional questions based on the information input by the user and send them to the user.
[0410] "Response means" refers to a device or interface that allows a user to respond to questions from the server.
[0411] "Analysis means" refers to the algorithms and models that the server uses to analyze the user's emotions.
[0412] "Automatic generation means" refers to the function of the server to automatically generate code based on the user's input data and analysis results.
[0413] "Building means" refers to the function of the server to automatically organize files and folders based on the generated code.
[0414] The "verification and modification request means" refers to a device or interface that allows a user to verify the generated configuration and request modifications as necessary.
[0415] "Testing means" refers to frameworks and tools that allow the server to run automated tests on the generated code.
[0416] "Basic information" refers to initial setting information such as the name, function, and purpose of the application entered by the user.
[0417] "Additional Information" refers to detailed information required by the application, gathered through server-generated queries.
[0418] "Emotion analysis" refers to the process of inferring and analyzing a user's emotional state from their input and actions.
[0419] "Automatic generation" refers to the process by which the server automatically generates program code based on user input and analysis results.
[0420] "Folder structure" refers to the layout of the directories and file arrangement that contain the generated code.
[0421] "Automated testing" refers to a testing process run by the server to ensure that the generated code works as expected.
[0422] This invention is a system that automatically generates applications based on basic information provided by the user, and combines it with an emotion engine to recognize the user's emotions and improve the experience. This system works as follows.
[0423] Hardware and software used
[0424] The main components of the system include:
[0425] Hardware: The devices used by users (PCs, smartphones, tablets, etc.) and servers
[0426] Software: React (front-end), Node.js and Express (back-end), MongoDB (database), emotion engine, Jest and Supertest (automated testing frameworks)
[0427] Operation explanation
[0428] 1. Enter basic information
[0429] Users access the system using a terminal and enter basic information such as the application name, function, and purpose. During this process, the emotion engine recognizes and analyzes the user's emotions. The basic information entered by the user is sent from the terminal to the server. The emotion engine analyzes and records emotions from the user's sentences and behavioral patterns.
[0430] 2. Generate additional questions
[0431] The server generates questions to identify additional information based on the basic information. The emotion engine evaluates the user's emotional state and adjusts the content and format of the questions to avoid stress or confusion. The generated questions are sent to the device and displayed to the user.
[0432] 3. Answering questions
[0433] The user answers questions from the server via their device. During this answering process, the emotion engine analyzes the user's emotions and evaluates their level of satisfaction or whether they have any problems. The answer data is sent from the device to the server.
[0434] 4. Automatic code generation
[0435] The server considers the user's answers and the analysis results of the emotion engine, selects the optimal program template, and automatically generates application code. Specifically, it uses React for the front end, Node.js and Express for the back end, and MongoDB for the database. The generated code is stored on the server.
[0436] 5. Building a file and folder structure
[0437] The server places the generated code in the appropriate directory and automatically creates a file and folder structure, for example:
[0438] / frontend
[0439] App.js
[0440] components /
[0441] services /
[0442] / backend
[0443] server.js
[0444] routes /
[0445] models /
[0446] / database
[0447] mongo.js
[0448] 6. Check the configuration and request corrections
[0449] The server sends the generated application configuration to the user. The user checks the configuration on their device and requests modifications if necessary. The emotion engine analyzes the user's feelings during this process as well, evaluating their level of satisfaction and stress. Feedback is sent from the device to the server, and modifications are made as necessary.
[0450] 7. Running automated tests
[0451] The server uses automated testing frameworks such as Jest and Supertest to run tests on the generated code. It provides test results at a time that best suits the user's emotional state and asks for feedback. If all tests pass, the final application is delivered to the user. It provides additional support, if necessary, taking into account the user's emotional state.
[0452] Example: Creating a TODO list app
[0453] For example:
[0454] 1. Enter basic information
[0455] Users input that they want to create a "to-do list app" and enter key functions such as "add task," "delete task," and "update task." The emotion engine analyzes the tone, speed, and frequency of mistakes in the writing to determine whether the user is enjoying themselves or feeling impatient.
[0456] 2. Generate additional questions
[0457] The server generates questions such as "What format do you want to save the task in?" and "Does user authentication require?" and sends them to the user. If the user finds a question difficult, the emotion engine simplifies the question or provides additional help information.
[0458] 3. Answering questions and analyzing
[0459] The user answers "database" and "yes." The emotion engine analyzes the user's emotions when answering and evaluates whether the content and format of the question were appropriate.
[0460] 4. Automatic code generation
[0461] Based on the answers, the server generates the optimal code, including React (front-end), Node.js and Express (back-end), and MongoDB (database).
[0462] 5. Building a file and folder structure
[0463] The server places the code in the appropriate directories and auto-generates the configuration, including / frontend, / backend, and / database directories as examples.
[0464] 6. Check the configuration and request corrections
[0465] The user checks the configuration and requests corrections if necessary. The emotion engine analyzes the user's feedback and evaluates whether the configuration meets expectations. If corrections are necessary, the server regenerates the code and provides it to the user.
[0466] 7. Running automated tests
[0467] The server runs automated tests to ensure the generated code works correctly. The emotion engine analyzes the test feedback and evaluates user satisfaction. If all tests pass, the final application is delivered to the user.
[0468] Prompt Sentence Examples
[0469] "We'd like you to create a new task management app. It should have the following features: add task, delete task, and edit task. It should also have user authentication capabilities. The data will be stored in a database."
[0470] In this way, the present invention can automatically generate applications in an efficient and user-friendly manner while taking into account the user's feelings.
[0471] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0472] Step 1: User enters basic information
[0473] Input: The user inputs basic information such as "application name," "function," and "purpose" on the terminal.
[0474] Operation: When the user completes the input, the input data is sent from the terminal to the server.
[0475] Data processing: The server analyzes the received basic information and understands the user's wishes. The emotion engine analyzes the user's emotional state based on the tone of their writing and their typing speed, and records this in a database.
[0476] Output: Basic information data and sentiment analysis data are saved on the server.
[0477] Step 2: The server generates an additional question
[0478] Input: Basic information data and sentiment analysis data
[0479] How it works: The server uses basic information to generate questions to get the details needed by the application.
[0480] Data processing: The emotion engine evaluates the user's emotional state and adapts the content and format of the questions to suit the user's emotions.
[0481] Output: The generated question is sent to the terminal.
[0482] Step 3: User answers questions
[0483] Input: The question sent by the server
[0484] How it works: The user answers questions on the device and sends the answers from the device to the server.
[0485] Data processing: The emotion engine analyzes the answers to questions and the user's emotional state at the time of answering.
[0486] Output: The response data and analyzed emotion data are saved on the server.
[0487] Step 4: The server automatically generates the code
[0488] Input: Response data and sentiment analysis data
[0489] How it works: Based on the answers and the results of the emotion engine analysis, the server selects the most appropriate program template and automatically generates code.
[0490] Data processing: Using generative AI models, we generate code using React (front-end), Node.js and Express (back-end), and MongoDB (database).
[0491] Output: The generated code is saved on the server.
[0492] Step 5: The server builds the file and folder structure
[0493] Input: Generated code
[0494] How it works: The server places the generated code in the appropriate directories and builds a file and folder structure.
[0495] Data processing: Placing the code in the proper directory structure and linking relevant files within the folders.
[0496] Output: Files and folders will be generated with the following structure:
[0497] / frontend
[0498] App.js
[0499] components /
[0500] services /
[0501] / backend
[0502] server.js
[0503] routes /
[0504] models /
[0505] / database
[0506] mongo.js
[0507] Step 6: User reviews the generated configuration and requests modifications
[0508] Input: Generated files and folder structure
[0509] Operation: The server provides the generated configuration to the user, who can then check the configuration on the terminal and request modifications if necessary.
[0510] Data Processing: The emotion engine analyzes the user's feedback and emotional state to evaluate whether the configuration meets expectations.
[0511] Output: The correction request data is sent to the server and corrections are made as necessary.
[0512] Step 7: The server runs the automated tests
[0513] Input: Final generated code and configuration
[0514] How it works: The server runs tests against your code using an automated testing framework like Jest or Supertest.
[0515] Data processing: Analyze the test results and check for defects.
[0516] Output: The test results are reported to the user, and if all tests are passed, the final application is provided to the user. The emotion engine analyzes the test result feedback and evaluates the user's satisfaction.
[0517] (Application example 2)
[0518] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0519] Conventional automatic application generation systems proceed without considering the user's emotions, which can cause stress and confusion for the user. Furthermore, particularly in brick-and-mortar stores, there is a lack of support tools to help store staff effectively handle customer service, resulting in inconsistent customer service quality. A system that solves these problems and improves the experience for users and store staff is needed.
[0520] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0521] In this invention, the server includes an input means for the user to input basic information, an emotion analysis means for recognizing the user's emotions, and a generation means for the server to generate additional questions and send the questions to the user. This makes it possible to optimize the question and code generation process while taking the user's emotions into consideration. Furthermore, by including an information provision means for providing information to human service providers in physical stores, it is possible to support store clerks in effectively dealing with customers and improve the quality of customer service.
[0522] An "input means" is a device or software interface that allows a user to input basic information into an application.
[0523] "Emotion analysis means" refers to a technology or system for analyzing a user's input and behavior and recognizing their emotional state.
[0524] The "generation means" is a function that automatically generates necessary follow-up questions based on the basic information received by the server from the user and sends them to the user.
[0525] A "response means" is a device or software interface that allows a user to respond to questions received from the server.
[0526] "Automatic generation means" is a function that allows the server to automatically generate application code based on the user's answers and the results of sentiment analysis.
[0527] The "construction means" is a function that automatically constructs an appropriate file and folder structure based on the code generated by the server.
[0528] The "verification and modification request means" is a device or software interface that allows the user to verify the generated configuration and, if necessary, request modifications from the server.
[0529] A "testing means" is a device or software interface that allows the server to automatically test the generated code to ensure correct operation.
[0530] "Information provision means" is a function that provides real-time information for customer support and product suggestions to human service providers in physical stores.
[0531] The embodiment of the present invention will be described in detail using an example of a system in which a smart customer service assistant app is operated in a physical store.
[0532] System Configuration
[0533] This system consists of the following hardware and software:
[0534] Smart glasses or smartphone: A device used by the user (store clerk) to respond to customers, input basic information, and provide real-time information.
[0535] Server: The central unit for processing input data, sentiment analysis, question generation, code generation, file construction, and automated testing.
[0536] Sentiment analysis engine: A software module that analyzes user input and behavior to recognize emotional states.
[0537] Auto-generation engine: A software module that automatically generates application code based on the user's basic information and answers.
[0538] Test engine: A software module that automatically tests the behavior of generated application code.
[0539] Processing Flow
[0540] First, a user accesses the application using smart glasses or a smartphone and enters basic information such as the store name, the services offered, and the desired customer service style. At this time, the emotion analysis engine analyzes the user's emotions, such as whether they are relaxed or stressed, based on the tone of their writing, typing speed, frequency of mistakes, etc.
[0541] The server generates questions to identify additional information based on the received basic information. The generated questions are displayed on the screen of smart glasses or a smartphone. For example, a question might be, "What is your typical customer demographic?" To this, the user (store clerk) might respond, "Women in their 20s and 30s." The sentiment analysis engine then analyzes this response and evaluates the user's level of satisfaction or stress.
[0542] The server automatically generates appropriate code based on user responses and sentiment analysis results, using React Native for the front end, Node.js and Express for the back end, and Firebase for the database.
[0543] The generated code is automatically placed in the appropriate file and folder structure by the server, and the user is prompted for confirmation. The user can review this structure and request modifications if necessary. The sentiment analysis engine also analyzes the user's emotions and evaluates how the structure affects satisfaction and stress.
[0544] Finally, the server runs automated tests on the generated code. A test engine uses a testing framework such as Jest or Supertest to verify the behavior of the generated application code. If all tests pass, the final application is made available to users.
[0545] Specific examples
[0546] Prompt Sentence Examples
[0547] "Basic information provided by the user:
[0548] 1. Store name: Example: "Stylish Boutique"
[0549] 2. Services offered: Example: "Sale of women's clothing"
[0550] 3. Customer service style: e.g., "friendly and professional"
[0551] Questions generated by the emotion engine:
[0552] 1. What is your typical customer demographic?
[0553] 2. What are the characteristics of your best-selling products?
[0554] 3. What do you pay particular attention to to make your customers feel comfortable?
[0555] Example answer:
[0556] 1. "Women in their 20s and 30s"
[0557] 2. "Designs that reflect the latest trends and affordable prices"
[0558] 3. "Smiles and quick responses"
[0559] In this way, smart customer service assistant apps incorporating sentiment analysis can effectively support customer interactions in brick-and-mortar stores and improve the experience for both store associates and customers.
[0560] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0561] Step 1:
[0562] A user accesses the application using smart glasses or a smartphone and inputs basic information (e.g., store name, services offered, customer service style, etc.). The input basic information is sent to the server as text data. The server analyzes the received basic information and evaluates the user's emotional state (e.g., whether they are relaxed or excited) using an emotion analysis engine.
[0563] Step 2:
[0564] The server generates questions based on the user's basic information to identify additional information needed. During this generation process, an emotion analysis engine takes the user's emotional state into account and adjusts the difficulty and format of the questions. The generated questions are sent to the user's smart glasses or smartphone and displayed.
[0565] Step 3:
[0566] The user answers questions sent from the server. The user's answers are sent as text data from the device to the server. The server analyzes the received answers and reevaluates the user's emotional state using an emotion analysis engine. This process measures the degree of satisfaction or stress the user feels in response to the questions.
[0567] Step 4:
[0568] The server automatically generates appropriate application code based on the user's answers and the results of sentiment analysis. For example, it uses React Native for the front end, Node.js and Express for the back end, and Firebase for the database. The generated code is stored on the server.
[0569] Step 5:
[0570] The server automatically creates the appropriate directory and file structure based on the generated code. For example, directories such as " / frontend," " / backend," and " / database" are created in the project root folder, and the relevant files are placed in each directory. This structure is then sent to the user's smart glasses or smartphone, where they can view it.
[0571] Step 6:
[0572] The user checks the generated configuration and requests corrections if necessary. If the user requests corrections, the information is sent back to the server from the device. The server analyzes the received feedback, evaluates the user's emotional state using an emotion analysis engine, and regenerates new code that reflects the corrections.
[0573] Step 7:
[0574] The server runs automated tests on the generated code using testing frameworks such as Jest and Supertest. The test results are stored on the server, and if all tests pass, the final application is provided to the user. The test results are then sent to the user's smart glasses or smartphone, where they are fed back to the user.
[0575] The specific processing unit 290 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. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0576] 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> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with 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.
[0577] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0578] [Second embodiment]
[0579] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0580] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0581] 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 WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0582] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, 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 microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0583] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0584] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0585] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0586] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, 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.
[0587] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0588] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0589] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 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 60 executed on the RAM 48.
[0590] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."
[0591] This invention is a system that automatically generates applications based on basic information provided by the user. The user inputs the basic information of the application, the server generates questions based on that information, receives the user's answers, automatically generates code, configures files and folders, and finally the user checks and corrects the information, and the server performs automatic testing.
[0592] Automatic Application Generation Process Flow
[0593] 1. The user enters basic information
[0594] The user accesses the server through a terminal and enters basic information about the application, including the application name, main functions, and purpose.
[0595] 2. The server generates a follow-up question
[0596] The server analyzes the basic information provided by the user and generates follow-up questions to obtain the details needed to solve the problem, such as the format in which the data is stored and whether the user is authenticated.
[0597] 3. The user answers the question
[0598] The user answers questions posed by the server through the terminal, which establishes the specific requirements of the application.
[0599] 4. The server automatically generates the code
[0600] Based on the user's answers, the server automatically generates the application code, using technologies and frameworks selected based on the user's requirements, including back-end APIs, front-end components, and database schemas.
[0601] 5. The server builds the file and folder structure
[0602] The server places the generated code in the appropriate directory structure, for example, building a front-end with React, a back-end with Node.js, and a database with MongoDB.
[0603] 6. The user reviews the generated configuration and requests corrections
[0604] The user checks the provided application configuration on the terminal and requests modifications as necessary, for example, by sending a specific request such as "Make the task update function simpler" to the server.
[0605] 7. The server runs automated tests
[0606] The server runs automated tests on the final code to ensure quality, and if all tests pass, it delivers the finished application to the user.
[0607] Specific examples
[0608] Creating a to-do list app
[0609] 1. The user enters basic information
[0610] The user inputs that they want to create a "TODO list app" and then inputs key functions such as "add task," "delete task," and "update task."
[0611] 2. The server generates a follow-up question
[0612] The server generates questions such as "In what format do you want to save the task?" and "Is user authentication required?" and sends them to the user.
[0613] 3. The user answers the question
[0614] The user answers "Database", "Yes".
[0615] 4. The server automatically generates the code
[0616] Based on this information, the server automatically generates code that uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[0617] 5. The server builds the file and folder structure
[0618] The server will generate the following files and folders:
[0619] / frontend
[0620] App.js
[0621] components /
[0622] services /
[0623] / backend
[0624] server.js
[0625] routes /
[0626] models /
[0627] / database
[0628] mongo.js
[0629] 6. The user reviews the generated configuration and requests corrections
[0630] The user checks the code and configuration and sends a request to the server for a fix, such as "Make the task update function more concise."
[0631] 7. The server runs automated tests
[0632] The server runs automated tests using Jest and Supertest, and if all tests pass, it serves the finished application to the user.
[0633] This allows users to develop and implement applications efficiently with little effort.
[0634] The processing flow will be explained below.
[0635] Step 1:
[0636] The user enters basic information.
[0637] The user accesses the Copilot application using a terminal and enters basic information such as the application name, main function, and purpose.
[0638] The terminal transmits the input information to the server.
[0639] Step 2:
[0640] The server generates a follow-up question.
[0641] The server analyzes the basic information provided by the user and identifies any additional information needed.
[0642] The server generates additional questions to determine detailed specifications, such as the data storage format and whether or not authentication functions are available.
[0643] The server sends the generated question to the terminal and displays it to the user.
[0644] Step 3:
[0645] The user answers the question.
[0646] The user answers questions from the server via the terminal, inputting specific answers such as "Data storage format is database" and "Authentication function is necessary."
[0647] The terminal transmits the user's answer to the server.
[0648] Step 4:
[0649] The server automatically generates the code.
[0650] The server analyzes the user's answers and selects the most appropriate program template based on them.
[0651] The server automatically generates the application code using the selected template, for example using React for the front end and Node.js and Express for the back end.
[0652] The server stores the generated code internally.
[0653] Step 5:
[0654] The server builds the file and folder structure.
[0655] The server organizes the generated code and creates the appropriate directory structure.
[0656] The server will automatically generate the following file and folder structure:
[0657] / frontend
[0658] App.js
[0659] components /
[0660] services /
[0661] / backend
[0662] server.js
[0663] routes /
[0664] models /
[0665] / database
[0666] mongo.js
[0667] Step 6:
[0668] The user reviews the generated configuration and requests corrections.
[0669] The server sends all the generated code and directory structure to the user.
[0670] The user uses the terminal to verify the provided application configuration.
[0671] The user sends a request for necessary modifications, such as "simplify the task update function," to the server.
[0672] Step 7:
[0673] The server applies the fix.
[0674] The server receives a modification request from the user and makes the modifications to the originally generated code.
[0675] The corrected code is then provided to the user again.
[0676] Step 8:
[0677] The server runs the automated tests.
[0678] The server runs automated tests against the generated code using an automated testing framework (e.g., Jest or Supertest).
[0679] Verify that each function works correctly and generate test results.
[0680] If all tests pass, the final application is delivered to the user. If not, the user is notified of the corrections and the application is retested.
[0681] Example 1
[0682] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0683] The traditional application development process requires a lot of human resources and time, placing a heavy burden on users who are not familiar with programming. Furthermore, the entire process, from requirements definition to development, testing, and deployment, is performed manually, which increases the likelihood of errors and inconsistent quality. To solve these problems, a system is needed that can automatically generate applications based on user input and automate the entire process, from testing to deployment.
[0684] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0685] In this invention, the server includes an input means for a user to input basic information, a generation means for the server to generate additional questions and send the questions to the user, a response means for the user to answer the questions, an automatic generation means for the server to automatically generate code, a construction means for constructing a file and folder structure based on the code generated by the server, a confirmation and correction request means for the user to check the generated structure and request corrections, a test means for the server to execute an automatic test, a means for automatically generating questions using a generative AI model, a means for automatically generating code using the generative AI model, and a means for the server to provide error notifications and correction instructions. This enables users to easily generate applications and efficiently develop and test high-quality code.
[0686] The "input means" is a user interface for the user to input basic information about the application.
[0687] The "generation means" is a function in which the server analyzes the basic information provided by the user and automatically generates questions to obtain the necessary additional information.
[0688] The "response means" is an interface that allows the user to input a response to a question sent from the server, and includes a function for sending the response to the server.
[0689] The "automatic generation means" is a function that allows the server to automatically generate the necessary code based on the user's answers.
[0690] The "construction means" is a function that automatically constructs an appropriate file and folder structure based on the code generated by the server.
[0691] The "verification and modification request means" is an interface that allows the user to verify the configuration of the generated application and request modifications as necessary.
[0692] "Testing means" is a function that allows the server to run automated tests on the generated code and evaluate the results.
[0693] "Means for automatically generating questions using a generative AI model" is a function that uses a generative model to automatically generate appropriate questions based on basic information provided by the user.
[0694] "Means for automatically generating code using a generative AI model" is a function that uses a generative model to automatically generate the necessary code based on the user's answers.
[0695] The "means for providing error notification and correction instructions" is a function by which the server notifies the user of errors found during automatic testing or code generation and provides instructions regarding correction.
[0696] This invention is a system that automatically generates applications based on basic information provided by the user. The user inputs the basic information of the application, the server generates questions based on that information, receives the user's answers, automatically generates code, configures files and folders, and finally the user checks and corrects the information, and the server performs automatic testing.
[0697] Hardware and software used
[0698] This system uses the following hardware and software:
[0699] Device: The device used by the user, such as a computer, smartphone, or tablet.
[0700] Servers: Cloud or physical servers required for high-performance data processing and running generative AI models.
[0701] Generative AI model: A machine learning model that automatically generates appropriate questions based on user input and automatically generates code.
[0702] The specific software and technology stack used is as follows:
[0703] Frontend: React.js
[0704] Backend: Node.js, Express.js
[0705] Database: MongoDB
[0706] Testing frameworks: Jest, Supertest
[0707] Detailed System Description
[0708] In this system, the user accesses the server using a terminal and enters basic information about the application, including the application name, main functions, and purpose. Once the user has completed the input, the server analyzes the basic information and generates additional questions using a generative AI model. For example, questions such as "What format should the data be saved in?" and "Is user authentication required?" are generated.
[0709] Users answer these questions from their device. Based on the user's answers, the server automatically generates code using a generative AI model. The generated code uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[0710] The server then places the generated code in the appropriate directory structure, which looks something like this:
[0711] / frontend
[0712] App.js
[0713] components /
[0714] services /
[0715] / backend
[0716] server.js
[0717] routes /
[0718] models /
[0719] / database
[0720] mongo.js
[0721] The user can check the generated application configuration on their device and request modifications as necessary. For example, they can send a specific request, such as "Please simplify the task update function," from their device to the server.
[0722] Finally, the server runs automated tests and ensures the quality of the code using Jest and Supertest, and if all tests pass, the server serves the finished application to the user.
[0723] Example: Creating a TODO list app
[0724] The user inputs that they want to create a "TODO list app" and enters key functions such as "add task," "delete task," and "update task." The server then generates questions such as "In what format do you want to save tasks?" and "Do you require user authentication?" The user answers "Database" and "Yes." Based on this information, the server automatically generates code that uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[0725] Example of input prompt for generative AI model
[0726] "Based on basic information about the application provided by the user, select the optimal technology stack and generate questions. Based on the answers, auto-generate code and build the directory structure. Finally, run automated tests and return the test results."
[0727] This allows users to easily and efficiently create high-quality applications.
[0728] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0729] Step 1:
[0730] The user enters basic information
[0731] Specific operation: A user accesses the server using a terminal and enters basic information about the application in a form provided in a web browser. The input items include the application name (e.g., "TODO list"), main functions (e.g., "Add task," "Delete task," "Update task"), and purpose (e.g., "For task management").
[0732] Input: Basic information entered by the user, such as the application name, main function, and purpose.
[0733] Output: Basic information about the user that is sent to the server.
[0734] Step 2:
[0735] The server generates additional questions
[0736] Specific operation: The server analyzes the basic information sent by the user and generates follow-up questions to gather the detailed information needed to solve the problem. At this time, it uses a generative AI model to automatically generate appropriate questions. For example, specific questions such as "What format should the data be saved in?" and "Is user authentication required?" are generated.
[0737] Input: Basic information entered by the user.
[0738] Output: A follow-up question to be sent to the user.
[0739] Step 3:
[0740] The user answers the question
[0741] Specific Action: The user uses the device to answer questions sent by the server, thereby establishing the specific requirements of the application. For example, the user answers "Yes" to the question "Save to database?" The device sends the entered answer to the server in real time.
[0742] Input: Additional question from the server.
[0743] Output: The user's answer.
[0744] Step 4:
[0745] The server automatically generates the code
[0746] How it works: Based on the user's answers, the server selects the optimal technology stack and automatically generates the application code. It uses a generative AI model to efficiently generate the code for each part. For example, it generates code that uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[0747] Input: The user's answer.
[0748] Output: Auto-generated code.
[0749] Step 5:
[0750] The server builds the file and folder structure
[0751] What happens: The server places the generated code in the appropriate directory structure, which looks like this:
[0752] / frontend
[0753] App.js
[0754] components /
[0755] services /
[0756] / backend
[0757] server.js
[0758] routes /
[0759] models /
[0760] / database
[0761] mongo.js
[0762] Input: The auto-generated code.
[0763] Output: The constructed file and folder structure.
[0764] Step 6:
[0765] The user reviews the generated configuration and requests corrections
[0766] Specific operation: The user checks the generated application configuration on the device and requests modifications if necessary. For example, the user sends a specific request from the device to the server, such as "Please simplify the task update function."
[0767] Input: The constructed file and folder structure.
[0768] Output: User requested corrections.
[0769] Step 7:
[0770] The server runs the automated tests
[0771] What happens: The server runs automated tests on the final code. Test frameworks like Jest and Supertest are used. If all tests pass, the server serves the finished application to the user. If any tests fail, the server notifies the user of the error and goes back to the process of asking them to fix it.
[0772] Input: Your final code.
[0773] Output: Test results and error notifications.
[0774] (Application example 1)
[0775] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0776] In traditional brick-and-mortar store operations, developing applications with store-specific functions requires specialized knowledge and a great deal of effort. Furthermore, it is difficult for each store to customize them to meet their unique requirements, which is time-consuming and costly. This hinders efforts to improve store operation efficiency and customer satisfaction.
[0777] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0778] In this invention, the server includes an input means for a user to input basic information, a generation means for the server to generate additional questions and send the questions to the user, and a response means for the user to answer the questions. This makes it possible to automatically generate a store-specific application based on the information provided by the user. The server also includes a specialized generation means for acquiring information about the operation of the physical store as additional information and generating a store-specific application, and a function generation means for generating code including each function of the store-specific application (customer information management, inventory management, coupon issuance, push notification, etc.). This allows users to quickly, efficiently, and at low cost obtain an application specialized for their own store.
[0779] "Input means" refers to a means for a user to input basic information.
[0780] The "generation means" is a means by which the server generates an additional question and transmits the question to the user.
[0781] The "response means" is a means for a user to respond to a question generated by the generation means.
[0782] The "automatic generation means" is a means by which the server automatically generates a code based on the user's answers.
[0783] A "construction means" is a means for constructing a file and folder structure based on the code generated by the server.
[0784] The "verification and modification request means" is a means for the user to verify the generated configuration and request any necessary modifications.
[0785] "Test means" refers to the means by which the server executes automated tests.
[0786] The "specialized generation means" is a means for acquiring information about the operation of a physical store as additional information and generating a store-specific application.
[0787] The "function generation means" is a means for generating code including each function of the store application (customer information management, inventory management, coupon issuance, push notification, etc.).
[0788] This invention is a system for automatically generating applications specialized for brick-and-mortar store operations. In this system, a server acquires additional information based on basic information entered by a user, automatically generates the necessary code, and provides the application specialized for the brick-and-mortar store.
[0789] The hardware used will be servers and smartphones and tablets used by store operators. The servers will use cloud-based infrastructure such as AWS EC2 instances, and the smartphones and tablets will be iOS and Android devices.
[0790] The software used is Node.js for the server, Express for the backend, and MongoDB for the database. React Native is used for the front end to build applications for physical stores. These software are used to provide store-specific application functions using specialization and function generation methods based on information entered by users.
[0791] First, the user uses the input means to input basic information about their store, which then transmits information such as the store's name, services offered, and main functions to the server. The server then uses the generation means to generate additional questions and transmits them to the user. The user then uses the response means to answer the questions and establish specific requirements.
[0792] The server generates code using the automatic generation means based on this information, and has a construction means for arranging the generated code in an appropriate file and folder structure. The user checks the generated structure using the confirmation and correction request means and requests the server to make any necessary corrections. Finally, the server runs an automatic test using the testing means, and provides the user with an application whose quality has been assured.
[0793] As a concrete example, we will generate a customer service app for a brick-and-mortar store. For example, if a restaurant owner inputs the following basic information and requirements, the app will be automatically generated using the specialization generation means and function generation means.
[0794] Example prompt sentence:
[0795] My restaurant is called Gourmet Delights. I need to create an app that can manage customer information (new registration, update, delete), inventory management (add, delete, update products), issue coupons and manage usage history, send push notifications when customers visit, and provide rewards based on the number of times a customer visits. I will use MongoDB as the database, and I also need customer authentication and push notification functions.
[0796] By inputting this prompt into the server, a specialized application for a physical store that meets the user's requirements is automatically generated, allowing the user to realize efficient operation tailored to their own store.
[0797] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0798] Step 1:
[0799] The user enters basic information.
[0800] Users enter basic information such as the store name, services offered, and key features through an application on their smartphone or tablet.
[0801] Input data: store name, services provided, main functions, etc.
[0802] Output data: Basic information entered by the user
[0803] Specific behavior:
[0804] When a user enters information into the input form and presses the "Submit" button, the basic information is sent to the server.
[0805] Step 2:
[0806] The server generates a follow-up question.
[0807] The server analyzes the basic information entered by the user and generates additional questions to obtain the required details.
[0808] Input data: User basic information
[0809] Output data: Additional questions
[0810] Specific behavior:
[0811] Based on the information entered, the server automatically generates questions such as the database storage format, whether user authentication is required, and whether push notification functionality is required.
[0812] Step 3:
[0813] The user answers the question.
[0814] The user answers additional questions sent by the server.
[0815] Input data: Additional questions
[0816] Output data: User's answer
[0817] Specific behavior:
[0818] The user inputs an answer to the additional question and presses the "Submit" button, which sends the answer to the server.
[0819] Step 4:
[0820] The server automatically generates the code.
[0821] The server automatically generates application code based on the user's answers.
[0822] Input data: User answers
[0823] Output data: Generated code
[0824] Specific behavior:
[0825] Based on the information provided, the server automatically generates code for the front end (React Native), back end (Node.js, Express), and database (MongoDB).
[0826] Step 5:
[0827] The server builds the file and folder structure.
[0828] The server places the generated code in the appropriate directory structure.
[0829] Input data: Generated code
[0830] Output data: Files and folders arranged in a directory structure
[0831] Specific behavior:
[0832] The server places the auto-generated code into the front-end, back-end, and database directories.
[0833] Step 6:
[0834] The user reviews the generated configuration and requests corrections.
[0835] The user checks the provided application configuration and requests the server to make corrections if necessary.
[0836] Input data: Generated configuration
[0837] Output data: Correction request details
[0838] Specific behavior:
[0839] The user checks a preview of the generated application, and if he finds any part that needs to be corrected, he sends the corrections to the server.
[0840] Step 7:
[0841] The server runs the automated tests.
[0842] The server runs automated tests on the final code to ensure quality.
[0843] Input data: Final code
[0844] Output data: Test results
[0845] Specific behavior:
[0846] The server uses a test framework such as Jest or Supertest to verify that each function of the generated code works correctly.
[0847] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0848] This invention is a system that automatically generates applications based on basic information provided by the user, and further combines it with an emotion engine to recognize the user's emotions and improve the experience.The user enters the basic information for the application, the emotion engine analyzes the input, the server generates questions, receives the user's answers, automatically generates code, configures files and folders, and finally the user checks and corrects the results, after which the server performs automatic testing.
[0849] Automatic Application Generation Process Flow
[0850] 1. The user enters basic information
[0851] Users access the system using a terminal and input basic information such as the application name, function, purpose, etc. During this input process, the emotion engine recognizes the user's emotions.
[0852] Input data from the terminal is sent to the server.
[0853] The emotion engine analyzes and records emotions from the user's writing and behavioral patterns.
[0854] 2. The server generates a follow-up question
[0855] The server generates a question based on the basic information to identify additional information.
[0856] An emotional engine assesses the user's emotional state and adjusts the content and format of questions to avoid stress and confusion.
[0857] The question is sent to the terminal and displayed to the user.
[0858] 3. The user answers the question
[0859] The user answers questions from the server through the terminal.
[0860] During the answering process, the emotion engine analyzes the user's emotions and evaluates their level of satisfaction or whether they have any problems.
[0861] The response data from the terminal is sent to the server.
[0862] 4. The server automatically generates the code
[0863] The server considers the user's response and the analysis results of the emotion engine to select the most appropriate program template.
[0864] The server uses templates to automatically generate application code, for example using React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[0865] The generated code is stored on the server.
[0866] 5. The server builds the file and folder structure
[0867] The server places the generated code in the appropriate directory and automatically creates a file and folder structure.
[0868] The following files and folders will be generated:
[0869] / frontend
[0870] App.js
[0871] components /
[0872] services /
[0873] / backend
[0874] server.js
[0875] routes /
[0876] models /
[0877] / database
[0878] mongo.js
[0879] 6. The user reviews the generated configuration and requests corrections
[0880] The server sends the generated application configuration to the user.
[0881] The user checks the configuration on the terminal and requests corrections if necessary.
[0882] During this process, the emotion engine analyzes the user's feelings and evaluates their level of satisfaction and stress.
[0883] Feedback from the device is sent to the server and corrections are made as needed.
[0884] 7. The server runs automated tests
[0885] The server runs tests against the generated code using automated testing frameworks such as Jest or Supertest.
[0886] Provide test results and ask for feedback at a time that is optimal for the user's emotional state.
[0887] If all tests pass, the final application is delivered to the user, taking into account their emotional state and providing additional support if necessary.
[0888] Specific examples
[0889] Creating a TODO list app and utilizing an emotion engine
[0890] 1. Enter basic information
[0891] The user enters that they want to create a "TODO list app" and then enters key functions such as "add task," "delete task," and "update task."
[0892] The emotion engine analyzes the tone and speed of the user's writing as they type, as well as the frequency of mistakes, to determine whether the user is enjoying themselves or feeling anxious.
[0893] 2. Generate additional questions
[0894] The server generates questions such as "In what format do you want to save the task?" and "Is user authentication required?" and sends them to the user.
[0895] If the user finds a question difficult, the emotion engine can simplify the question or provide additional help information.
[0896] 3. Answering questions and analyzing
[0897] The user answers "database" and "yes."
[0898] The emotion engine analyzes the emotions expressed when a user answers and evaluates whether the content and format of the question were appropriate.
[0899] 4. Automatic code generation
[0900] The server generates the optimal code based on the answers.
[0901] Check that there are no problems with the generated code, and if necessary, adjust it taking into account the emotion engine's evaluation.
[0902] 5. Building a file and folder structure
[0903] The server will place the code in the appropriate directory and auto-generate the configuration.
[0904] The structure is arranged in a format that is easy for users to check.
[0905] 6. Check the configuration and request corrections
[0906] The user checks the configuration and requests modifications if necessary.
[0907] The emotion engine analyzes user feedback and evaluates whether the configuration meets the user's expectations.
[0908] If any modifications are required, the server will regenerate the code and provide it to the user.
[0909] 7. Running automated tests
[0910] The server runs automated tests to ensure the generated code works correctly.
[0911] The emotion engine analyzes the test result feedback and evaluates how satisfied the user is.
[0912] If all tests pass, the final application is made available to the user.
[0913] In this way, the present invention can automatically generate applications in an efficient and user-friendly manner while taking into account the user's feelings.
[0914] The processing flow will be explained below.
[0915] Step 1:
[0916] The user enters basic information.
[0917] A user uses a terminal to access the application Copilot and enters basic information such as the application name, main function, and purpose. For example, it is a "TODO list app" and the functions include "add task," "delete task," and "update task."
[0918] The device sends the user's input information to the server, where the emotion engine monitors the user's input speed and error rate and analyzes the user's emotional state (e.g., stress, satisfaction).
[0919] Step 2:
[0920] The server generates a follow-up question.
[0921] The server generates additional questions based on the basic information to determine detailed specifications, such as "What format should the task be saved in?" or "Does user authentication require?"
[0922] The emotion engine takes into account the analyzed emotional state of the user and decides whether to simplify the question or provide additional clarification.
[0923] The server sends the generated question to the terminal and displays it to the user.
[0924] Step 3:
[0925] The user answers the question.
[0926] The user answers questions from the server through the terminal, for example, by replying "database" and "yes."
[0927] The device then sends the user's response to the server. During this process, the emotion engine analyzes the user's emotions and evaluates their level of satisfaction or dissatisfaction.
[0928] Step 4:
[0929] The server automatically generates the code.
[0930] The server selects the optimal program template based on the user's answers and the results of the emotion engine analysis, for example, using React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[0931] The server uses the selected template to automatically generate the application code, which is stored internally on the server.
[0932] Step 5:
[0933] The server builds the file and folder structure.
[0934] The server will place the generated code in the appropriate directory and automatically create the necessary files and folders, for example:
[0935] / frontend
[0936] App.js
[0937] components /
[0938] services /
[0939] / backend
[0940] server.js
[0941] routes /
[0942] models /
[0943] / database
[0944] mongo.js
[0945] Step 6:
[0946] The user reviews the generated configuration and requests corrections.
[0947] The server sends the generated application configuration to the user.
[0948] The user can check the configuration provided on the device and make correction requests if necessary, for example, by entering a specific request such as "I want the task update function to be simpler."
[0949] The emotion engine analyzes the user's emotions during this confirmation process and evaluates whether the correction request went smoothly or whether there was any dissatisfaction.
[0950] The terminal sends the user's modification request to the server, which generates a new code.
[0951] Step 7:
[0952] The server runs the automated tests.
[0953] The server runs tests on the generated code using an automated testing framework (e.g., Jest, Supertest), ensuring that each API endpoint and front-end functionality works correctly.
[0954] When the emotion engine presents test results to the user, it analyzes how the user will receive the information and provides appropriate feedback.
[0955] If all tests pass, the server delivers the final application to the user. If any tests fail, the server notifies the user of any fixes that need to be made and the application is retested.
[0956] This series of processes allows users to respond flexibly using the emotion engine, while also enabling efficient automatic generation of applications.
[0957] Example 2
[0958] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0959] Conventional automatic application generation systems ask questions and generate code without considering the user's emotional state, which can lead to stress and confusion for the user. In addition, they lack a feedback mechanism to guarantee the quality and user satisfaction of the generated application, which often results in the final result not meeting the user's expectations.
[0960] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for generating additional questions based on basic information input by the user, means for analyzing the user's emotions and adjusting the content and format of the questions, and means for regenerating new code that reflects the results of the user's emotion analysis. This makes it possible to automatically generate high-quality applications that take the user's emotional state into consideration and improve user satisfaction.
[0961] "Input means" refers to a device or interface that allows a user to input basic information.
[0962] The "generation means" refers to the function of the server to create additional questions based on the information input by the user and send them to the user.
[0963] "Response means" refers to a device or interface that allows a user to respond to questions from the server.
[0964] "Analysis means" refers to the algorithms and models that the server uses to analyze the user's emotions.
[0965] "Automatic generation means" refers to the function of the server to automatically generate code based on the user's input data and analysis results.
[0966] "Building means" refers to the function of the server to automatically organize files and folders based on the generated code.
[0967] The "verification and modification request means" refers to a device or interface that allows a user to verify the generated configuration and request modifications as necessary.
[0968] "Testing means" refers to frameworks and tools that allow the server to run automated tests on the generated code.
[0969] "Basic information" refers to initial setting information such as the name, function, and purpose of the application entered by the user.
[0970] "Additional Information" refers to detailed information required by the application, gathered through server-generated queries.
[0971] "Emotion analysis" refers to the process of inferring and analyzing a user's emotional state from their input and actions.
[0972] "Automatic generation" refers to the process by which the server automatically generates program code based on user input and analysis results.
[0973] "Folder structure" refers to the layout of the directories and file arrangement that contain the generated code.
[0974] "Automated testing" refers to a testing process run by the server to ensure that the generated code works as expected.
[0975] This invention is a system that automatically generates applications based on basic information provided by the user, and combines it with an emotion engine to recognize the user's emotions and improve the experience. This system works as follows.
[0976] Hardware and software used
[0977] The main components of the system include:
[0978] Hardware: The devices used by users (PCs, smartphones, tablets, etc.) and servers
[0979] Software: React (front-end), Node.js and Express (back-end), MongoDB (database), emotion engine, Jest and Supertest (automated testing frameworks)
[0980] Operation explanation
[0981] 1. Enter basic information
[0982] Users access the system using a terminal and enter basic information such as the application name, function, and purpose. During this process, the emotion engine recognizes and analyzes the user's emotions. The basic information entered by the user is sent from the terminal to the server. The emotion engine analyzes and records emotions from the user's sentences and behavioral patterns.
[0983] 2. Generate additional questions
[0984] The server generates questions to identify additional information based on the basic information. The emotion engine evaluates the user's emotional state and adjusts the content and format of the questions to avoid stress or confusion. The generated questions are sent to the device and displayed to the user.
[0985] 3. Answering questions
[0986] The user answers questions from the server via their device. During this answering process, the emotion engine analyzes the user's emotions and evaluates their level of satisfaction or whether they have any problems. The answer data is sent from the device to the server.
[0987] 4. Automatic code generation
[0988] The server considers the user's answers and the analysis results of the emotion engine, selects the optimal program template, and automatically generates application code. Specifically, it uses React for the front end, Node.js and Express for the back end, and MongoDB for the database. The generated code is stored on the server.
[0989] 5. Building a file and folder structure
[0990] The server places the generated code in the appropriate directory and automatically creates a file and folder structure, for example:
[0991] / frontend
[0992] App.js
[0993] components /
[0994] services /
[0995] / backend
[0996] server.js
[0997] routes /
[0998] models /
[0999] / database
[1000] mongo.js
[1001] 6. Check the configuration and request corrections
[1002] The server sends the generated application configuration to the user. The user checks the configuration on their device and requests modifications if necessary. The emotion engine analyzes the user's feelings during this process as well, evaluating their level of satisfaction and stress. Feedback is sent from the device to the server, and modifications are made as necessary.
[1003] 7. Running automated tests
[1004] The server uses automated testing frameworks such as Jest and Supertest to run tests on the generated code. It provides test results at a time that best suits the user's emotional state and asks for feedback. If all tests pass, the final application is delivered to the user. It provides additional support, if necessary, taking into account the user's emotional state.
[1005] Example: Creating a TODO list app
[1006] For example:
[1007] 1. Enter basic information
[1008] Users input that they want to create a "to-do list app" and enter key functions such as "add task," "delete task," and "update task." The emotion engine analyzes the tone, speed, and frequency of mistakes in the writing to determine whether the user is enjoying themselves or feeling impatient.
[1009] 2. Generate additional questions
[1010] The server generates questions such as "What format do you want to save the task in?" and "Does user authentication require?" and sends them to the user. If the user finds a question difficult, the emotion engine simplifies the question or provides additional help information.
[1011] 3. Answering questions and analyzing
[1012] The user answers "database" and "yes." The emotion engine analyzes the user's emotions when answering and evaluates whether the content and format of the question were appropriate.
[1013] 4. Automatic code generation
[1014] Based on the answers, the server generates the optimal code, including React (front-end), Node.js and Express (back-end), and MongoDB (database).
[1015] 5. Building a file and folder structure
[1016] The server places the code in the appropriate directories and auto-generates the configuration, including / frontend, / backend, and / database directories as examples.
[1017] 6. Check the configuration and request corrections
[1018] The user checks the configuration and requests corrections if necessary. The emotion engine analyzes the user's feedback and evaluates whether the configuration meets expectations. If corrections are necessary, the server regenerates the code and provides it to the user.
[1019] 7. Running automated tests
[1020] The server runs automated tests to ensure the generated code works correctly. The emotion engine analyzes the test feedback and evaluates user satisfaction. If all tests pass, the final application is delivered to the user.
[1021] Prompt Sentence Examples
[1022] "We'd like you to create a new task management app. It should have the following features: add task, delete task, and edit task. It should also have user authentication capabilities. The data will be stored in a database."
[1023] In this way, the present invention can automatically generate applications in an efficient and user-friendly manner while taking into account the user's feelings.
[1024] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1025] Step 1: User enters basic information
[1026] Input: The user inputs basic information such as "application name," "function," and "purpose" on the terminal.
[1027] Operation: When the user completes the input, the input data is sent from the terminal to the server.
[1028] Data processing: The server analyzes the received basic information and understands the user's wishes. The emotion engine analyzes the user's emotional state based on the tone of their writing and their typing speed, and records this in a database.
[1029] Output: Basic information data and sentiment analysis data are saved on the server.
[1030] Step 2: The server generates an additional question
[1031] Input: Basic information data and sentiment analysis data
[1032] How it works: The server uses basic information to generate questions to get the details needed by the application.
[1033] Data processing: The emotion engine evaluates the user's emotional state and adapts the content and format of the questions to suit the user's emotions.
[1034] Output: The generated question is sent to the terminal.
[1035] Step 3: User answers questions
[1036] Input: The question sent by the server
[1037] How it works: The user answers questions on the device and sends the answers from the device to the server.
[1038] Data processing: The emotion engine analyzes the answers to questions and the user's emotional state at the time of answering.
[1039] Output: The response data and analyzed emotion data are saved on the server.
[1040] Step 4: The server automatically generates the code
[1041] Input: Response data and sentiment analysis data
[1042] How it works: Based on the answers and the results of the emotion engine analysis, the server selects the most appropriate program template and automatically generates code.
[1043] Data processing: Using generative AI models, we generate code using React (front-end), Node.js and Express (back-end), and MongoDB (database).
[1044] Output: The generated code is saved on the server.
[1045] Step 5: The server builds the file and folder structure
[1046] Input: Generated code
[1047] How it works: The server places the generated code in the appropriate directories and builds a file and folder structure.
[1048] Data processing: Placing the code in the proper directory structure and linking relevant files within the folders.
[1049] Output: Files and folders will be generated with the following structure:
[1050] / frontend
[1051] App.js
[1052] components /
[1053] services /
[1054] / backend
[1055] server.js
[1056] routes /
[1057] models /
[1058] / database
[1059] mongo.js
[1060] Step 6: User reviews the generated configuration and requests modifications
[1061] Input: Generated files and folder structure
[1062] Operation: The server provides the generated configuration to the user, who can then check the configuration on the terminal and request modifications if necessary.
[1063] Data Processing: The emotion engine analyzes the user's feedback and emotional state to evaluate whether the configuration meets expectations.
[1064] Output: The correction request data is sent to the server and corrections are made as necessary.
[1065] Step 7: The server runs the automated tests
[1066] Input: Final generated code and configuration
[1067] How it works: The server runs tests against your code using an automated testing framework like Jest or Supertest.
[1068] Data processing: Analyze the test results and check for defects.
[1069] Output: The test results are reported to the user, and if all tests are passed, the final application is provided to the user. The emotion engine analyzes the test result feedback and evaluates the user's satisfaction.
[1070] (Application example 2)
[1071] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[1072] Conventional automatic application generation systems proceed without considering the user's emotions, which can cause stress and confusion for the user. Furthermore, particularly in brick-and-mortar stores, there is a lack of support tools to help store staff effectively handle customer service, resulting in inconsistent customer service quality. A system that solves these problems and improves the experience for users and store staff is needed.
[1073] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1074] In this invention, the server includes an input means for the user to input basic information, an emotion analysis means for recognizing the user's emotions, and a generation means for the server to generate additional questions and send the questions to the user. This makes it possible to optimize the question and code generation process while taking the user's emotions into consideration. Furthermore, by including an information provision means for providing information to human service providers in physical stores, it is possible to support store clerks in effectively dealing with customers and improve the quality of customer service.
[1075] An "input means" is a device or software interface that allows a user to input basic information into an application.
[1076] "Emotion analysis means" refers to a technology or system for analyzing a user's input and behavior and recognizing their emotional state.
[1077] The "generation means" is a function that automatically generates necessary follow-up questions based on the basic information received by the server from the user and sends them to the user.
[1078] A "response means" is a device or software interface that allows a user to respond to questions received from the server.
[1079] "Automatic generation means" is a function that allows the server to automatically generate application code based on the user's answers and the results of sentiment analysis.
[1080] The "construction means" is a function that automatically constructs an appropriate file and folder structure based on the code generated by the server.
[1081] The "verification and modification request means" is a device or software interface that allows the user to verify the generated configuration and, if necessary, request modifications from the server.
[1082] A "testing means" is a device or software interface that allows the server to automatically test the generated code to ensure correct operation.
[1083] "Information provision means" is a function that provides real-time information for customer support and product suggestions to human service providers in physical stores.
[1084] The embodiment of the present invention will be described in detail using an example of a system in which a smart customer service assistant app is operated in a physical store.
[1085] System Configuration
[1086] This system consists of the following hardware and software:
[1087] Smart glasses or smartphone: A device used by the user (store clerk) to respond to customers, input basic information, and provide real-time information.
[1088] Server: The central unit for processing input data, sentiment analysis, question generation, code generation, file construction, and automated testing.
[1089] Sentiment analysis engine: A software module that analyzes user input and behavior to recognize emotional states.
[1090] Auto-generation engine: A software module that automatically generates application code based on the user's basic information and answers.
[1091] Test engine: A software module that automatically tests the behavior of generated application code.
[1092] Processing Flow
[1093] First, a user accesses the application using smart glasses or a smartphone and enters basic information such as the store name, the services offered, and the desired customer service style. At this time, the emotion analysis engine analyzes the user's emotions, such as whether they are relaxed or stressed, based on the tone of their writing, typing speed, frequency of mistakes, etc.
[1094] The server generates questions to identify additional information based on the received basic information. The generated questions are displayed on the screen of smart glasses or a smartphone. For example, a question might be, "What is your typical customer demographic?" To this, the user (store clerk) might respond, "Women in their 20s and 30s." The sentiment analysis engine then analyzes this response and evaluates the user's level of satisfaction or stress.
[1095] The server automatically generates appropriate code based on user responses and sentiment analysis results, using React Native for the front end, Node.js and Express for the back end, and Firebase for the database.
[1096] The generated code is automatically placed in the appropriate file and folder structure by the server, and the user is prompted for confirmation. The user can review this structure and request modifications if necessary. The sentiment analysis engine also analyzes the user's emotions and evaluates how the structure affects satisfaction and stress.
[1097] Finally, the server runs automated tests on the generated code. A test engine uses a testing framework such as Jest or Supertest to verify the behavior of the generated application code. If all tests pass, the final application is made available to users.
[1098] Specific examples
[1099] Prompt Sentence Examples
[1100] "Basic information provided by the user:
[1101] 1. Store name: Example: "Stylish Boutique"
[1102] 2. Services offered: Example: "Sale of women's clothing"
[1103] 3. Customer service style: e.g., "friendly and professional"
[1104] Questions generated by the emotion engine:
[1105] 1. What is your typical customer demographic?
[1106] 2. What are the characteristics of your best-selling products?
[1107] 3. What do you pay particular attention to to make your customers feel comfortable?
[1108] Example answer:
[1109] 1. "Women in their 20s and 30s"
[1110] 2. "Designs that reflect the latest trends and affordable prices"
[1111] 3. "Smiles and quick responses"
[1112] In this way, smart customer service assistant apps incorporating sentiment analysis can effectively support customer interactions in brick-and-mortar stores and improve the experience for both store associates and customers.
[1113] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1114] Step 1:
[1115] A user accesses the application using smart glasses or a smartphone and inputs basic information (e.g., store name, services offered, customer service style, etc.). The input basic information is sent to the server as text data. The server analyzes the received basic information and evaluates the user's emotional state (e.g., whether they are relaxed or excited) using an emotion analysis engine.
[1116] Step 2:
[1117] The server generates questions based on the user's basic information to identify additional information needed. During this generation process, an emotion analysis engine takes the user's emotional state into account and adjusts the difficulty and format of the questions. The generated questions are sent to the user's smart glasses or smartphone and displayed.
[1118] Step 3:
[1119] The user answers questions sent from the server. The user's answers are sent as text data from the device to the server. The server analyzes the received answers and reevaluates the user's emotional state using an emotion analysis engine. This process measures the degree of satisfaction or stress the user feels in response to the questions.
[1120] Step 4:
[1121] The server automatically generates appropriate application code based on the user's answers and the results of sentiment analysis. For example, it uses React Native for the front end, Node.js and Express for the back end, and Firebase for the database. The generated code is stored on the server.
[1122] Step 5:
[1123] The server automatically creates the appropriate directory and file structure based on the generated code. For example, directories such as " / frontend," " / backend," and " / database" are created in the project root folder, and the relevant files are placed in each directory. This structure is then sent to the user's smart glasses or smartphone, where they can view it.
[1124] Step 6:
[1125] The user checks the generated configuration and requests corrections if necessary. If the user requests corrections, the information is sent back to the server from the device. The server analyzes the received feedback, evaluates the user's emotional state using an emotion analysis engine, and regenerates new code that reflects the corrections.
[1126] Step 7:
[1127] The server runs automated tests on the generated code using testing frameworks such as Jest and Supertest. The test results are stored on the server, and if all tests pass, the final application is provided to the user. The test results are then sent to the user's smart glasses or smartphone, where they are fed back to the user.
[1128] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1129] 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> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with 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.
[1130] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[1131] [Third embodiment]
[1132] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[1133] 5, the data processing system 310 includes the data processing device 12 and a headset type terminal 314. An example of the data processing device 12 is a server.
[1134] 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 WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1135] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. 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 microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[1136] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1137] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1138] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1139] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, 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.
[1140] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1141] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1142] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 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 60 executed on the RAM 48.
[1143] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."
[1144] This invention is a system that automatically generates applications based on basic information provided by the user. The user inputs the basic information of the application, the server generates questions based on that information, receives the user's answers, automatically generates code, configures files and folders, and finally the user checks and corrects the information, and the server performs automatic testing.
[1145] Automatic Application Generation Process Flow
[1146] 1. The user enters basic information
[1147] The user accesses the server through a terminal and enters basic information about the application, including the application name, main functions, and purpose.
[1148] 2. The server generates a follow-up question
[1149] The server analyzes the basic information provided by the user and generates follow-up questions to obtain the details needed to solve the problem, such as the format in which the data is stored and whether the user is authenticated.
[1150] 3. The user answers the question
[1151] The user answers questions posed by the server through the terminal, which establishes the specific requirements of the application.
[1152] 4. The server automatically generates the code
[1153] Based on the user's answers, the server automatically generates the application code, using technologies and frameworks selected based on the user's requirements, including back-end APIs, front-end components, and database schemas.
[1154] 5. The server builds the file and folder structure
[1155] The server places the generated code in the appropriate directory structure, for example, building a front-end with React, a back-end with Node.js, and a database with MongoDB.
[1156] 6. The user reviews the generated configuration and requests corrections
[1157] The user checks the provided application configuration on the terminal and requests modifications as necessary, for example, by sending a specific request such as "Make the task update function simpler" to the server.
[1158] 7. The server runs automated tests
[1159] The server runs automated tests on the final code to ensure quality, and if all tests pass, it delivers the finished application to the user.
[1160] Specific examples
[1161] Creating a to-do list app
[1162] 1. The user enters basic information
[1163] The user inputs that they want to create a "TODO list app" and then inputs key functions such as "add task," "delete task," and "update task."
[1164] 2. The server generates a follow-up question
[1165] The server generates questions such as "In what format do you want to save the task?" and "Is user authentication required?" and sends them to the user.
[1166] 3. The user answers the question
[1167] The user answers "Database", "Yes".
[1168] 4. The server automatically generates the code
[1169] Based on this information, the server automatically generates code that uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[1170] 5. The server builds the file and folder structure
[1171] The server will generate the following files and folders:
[1172] / frontend
[1173] App.js
[1174] components /
[1175] services /
[1176] / backend
[1177] server.js
[1178] routes /
[1179] models /
[1180] / database
[1181] mongo.js
[1182] 6. The user reviews the generated configuration and requests corrections
[1183] The user checks the code and configuration and sends a request to the server for a fix, such as "Make the task update function more concise."
[1184] 7. The server runs automated tests
[1185] The server runs automated tests using Jest and Supertest, and if all tests pass, it serves the finished application to the user.
[1186] This allows users to develop and implement applications efficiently with little effort.
[1187] The processing flow will be explained below.
[1188] Step 1:
[1189] The user enters basic information.
[1190] The user accesses the Copilot application using a terminal and enters basic information such as the application name, main function, and purpose.
[1191] The terminal transmits the input information to the server.
[1192] Step 2:
[1193] The server generates a follow-up question.
[1194] The server analyzes the basic information provided by the user and identifies any additional information needed.
[1195] The server generates additional questions to determine detailed specifications, such as the data storage format and whether or not authentication functions are available.
[1196] The server sends the generated question to the terminal and displays it to the user.
[1197] Step 3:
[1198] The user answers the question.
[1199] The user answers questions from the server via the terminal, inputting specific answers such as "Data storage format is database" and "Authentication function is necessary."
[1200] The terminal transmits the user's answer to the server.
[1201] Step 4:
[1202] The server automatically generates the code.
[1203] The server analyzes the user's answers and selects the most appropriate program template based on them.
[1204] The server automatically generates the application code using the selected template, for example using React for the front end and Node.js and Express for the back end.
[1205] The server stores the generated code internally.
[1206] Step 5:
[1207] The server builds the file and folder structure.
[1208] The server organizes the generated code and creates the appropriate directory structure.
[1209] The server will automatically generate the following file and folder structure:
[1210] / frontend
[1211] App.js
[1212] components /
[1213] services /
[1214] / backend
[1215] server.js
[1216] routes /
[1217] models /
[1218] / database
[1219] mongo.js
[1220] Step 6:
[1221] The user reviews the generated configuration and requests corrections.
[1222] The server sends all the generated code and directory structure to the user.
[1223] The user uses the terminal to verify the provided application configuration.
[1224] The user sends a request for necessary modifications, such as "simplify the task update function," to the server.
[1225] Step 7:
[1226] The server applies the fix.
[1227] The server receives a modification request from the user and makes the modifications to the originally generated code.
[1228] The corrected code is then provided to the user again.
[1229] Step 8:
[1230] The server runs the automated tests.
[1231] The server runs automated tests against the generated code using an automated testing framework (e.g., Jest or Supertest).
[1232] Verify that each function works correctly and generate test results.
[1233] If all tests pass, the final application is delivered to the user. If not, the user is notified of the corrections and the application is retested.
[1234] Example 1
[1235] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1236] The traditional application development process requires a lot of human resources and time, placing a heavy burden on users who are not familiar with programming. Furthermore, the entire process, from requirements definition to development, testing, and deployment, is performed manually, which increases the likelihood of errors and inconsistent quality. To solve these problems, a system is needed that can automatically generate applications based on user input and automate the entire process, from testing to deployment.
[1237] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1238] In this invention, the server includes an input means for a user to input basic information, a generation means for the server to generate additional questions and send the questions to the user, a response means for the user to answer the questions, an automatic generation means for the server to automatically generate code, a construction means for constructing a file and folder structure based on the code generated by the server, a confirmation and correction request means for the user to check the generated structure and request corrections, a test means for the server to execute an automatic test, a means for automatically generating questions using a generative AI model, a means for automatically generating code using the generative AI model, and a means for the server to provide error notifications and correction instructions. This enables users to easily generate applications and efficiently develop and test high-quality code.
[1239] The "input means" is a user interface for the user to input basic information about the application.
[1240] The "generation means" is a function in which the server analyzes the basic information provided by the user and automatically generates questions to obtain the necessary additional information.
[1241] The "response means" is an interface that allows the user to input a response to a question sent from the server, and includes a function for sending the response to the server.
[1242] The "automatic generation means" is a function that allows the server to automatically generate the necessary code based on the user's answers.
[1243] The "construction means" is a function that automatically constructs an appropriate file and folder structure based on the code generated by the server.
[1244] The "verification and modification request means" is an interface that allows the user to verify the configuration of the generated application and request modifications as necessary.
[1245] "Testing means" is a function that allows the server to run automated tests on the generated code and evaluate the results.
[1246] "Means for automatically generating questions using a generative AI model" is a function that uses a generative model to automatically generate appropriate questions based on basic information provided by the user.
[1247] "Means for automatically generating code using a generative AI model" is a function that uses a generative model to automatically generate the necessary code based on the user's answers.
[1248] The "means for providing error notification and correction instructions" is a function by which the server notifies the user of errors found during automatic testing or code generation and provides instructions regarding correction.
[1249] This invention is a system that automatically generates applications based on basic information provided by the user. The user inputs the basic information of the application, the server generates questions based on that information, receives the user's answers, automatically generates code, configures files and folders, and finally the user checks and corrects the information, and the server performs automatic testing.
[1250] Hardware and software used
[1251] This system uses the following hardware and software:
[1252] Device: The device used by the user, such as a computer, smartphone, or tablet.
[1253] Servers: Cloud or physical servers required for high-performance data processing and running generative AI models.
[1254] Generative AI model: A machine learning model that automatically generates appropriate questions based on user input and automatically generates code.
[1255] The specific software and technology stack used is as follows:
[1256] Frontend: React.js
[1257] Backend: Node.js, Express.js
[1258] Database: MongoDB
[1259] Testing frameworks: Jest, Supertest
[1260] Detailed System Description
[1261] In this system, the user accesses the server using a terminal and enters basic information about the application, including the application name, main functions, and purpose. Once the user has completed the input, the server analyzes the basic information and generates additional questions using a generative AI model. For example, questions such as "What format should the data be saved in?" and "Is user authentication required?" are generated.
[1262] Users answer these questions from their device. Based on the user's answers, the server automatically generates code using a generative AI model. The generated code uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[1263] The server then places the generated code in the appropriate directory structure, which looks something like this:
[1264] / frontend
[1265] App.js
[1266] components /
[1267] services /
[1268] / backend
[1269] server.js
[1270] routes /
[1271] models /
[1272] / database
[1273] mongo.js
[1274] The user can check the generated application configuration on their device and request modifications as necessary. For example, they can send a specific request, such as "Please simplify the task update function," from their device to the server.
[1275] Finally, the server runs automated tests and ensures the quality of the code using Jest and Supertest, and if all tests pass, the server serves the finished application to the user.
[1276] Example: Creating a TODO list app
[1277] The user inputs that they want to create a "TODO list app" and enters key functions such as "add task," "delete task," and "update task." The server then generates questions such as "In what format do you want to save tasks?" and "Do you require user authentication?" The user answers "Database" and "Yes." Based on this information, the server automatically generates code that uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[1278] Example of input prompt for generative AI model
[1279] "Based on basic information about the application provided by the user, select the optimal technology stack and generate questions. Based on the answers, auto-generate code and build the directory structure. Finally, run automated tests and return the test results."
[1280] This allows users to easily and efficiently create high-quality applications.
[1281] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1282] Step 1:
[1283] The user enters basic information
[1284] Specific operation: A user accesses the server using a terminal and enters basic information about the application in a form provided in a web browser. The input items include the application name (e.g., "TODO list"), main functions (e.g., "Add task," "Delete task," "Update task"), and purpose (e.g., "For task management").
[1285] Input: Basic information entered by the user, such as the application name, main function, and purpose.
[1286] Output: Basic information about the user that is sent to the server.
[1287] Step 2:
[1288] The server generates additional questions
[1289] Specific operation: The server analyzes the basic information sent by the user and generates follow-up questions to gather the detailed information needed to solve the problem. At this time, it uses a generative AI model to automatically generate appropriate questions. For example, specific questions such as "What format should the data be saved in?" and "Is user authentication required?" are generated.
[1290] Input: Basic information entered by the user.
[1291] Output: A follow-up question to be sent to the user.
[1292] Step 3:
[1293] The user answers the question
[1294] Specific Action: The user uses the device to answer questions sent by the server, thereby establishing the specific requirements of the application. For example, the user answers "Yes" to the question "Save to database?" The device sends the entered answer to the server in real time.
[1295] Input: Additional question from the server.
[1296] Output: The user's answer.
[1297] Step 4:
[1298] The server automatically generates the code
[1299] How it works: Based on the user's answers, the server selects the optimal technology stack and automatically generates the application code. It uses a generative AI model to efficiently generate the code for each part. For example, it generates code that uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[1300] Input: The user's answer.
[1301] Output: Auto-generated code.
[1302] Step 5:
[1303] The server builds the file and folder structure
[1304] What happens: The server places the generated code in the appropriate directory structure, which looks like this:
[1305] / frontend
[1306] App.js
[1307] components /
[1308] services /
[1309] / backend
[1310] server.js
[1311] routes /
[1312] models /
[1313] / database
[1314] mongo.js
[1315] Input: The auto-generated code.
[1316] Output: The constructed file and folder structure.
[1317] Step 6:
[1318] The user reviews the generated configuration and requests corrections
[1319] Specific operation: The user checks the generated application configuration on the device and requests modifications if necessary. For example, the user sends a specific request from the device to the server, such as "Please simplify the task update function."
[1320] Input: The constructed file and folder structure.
[1321] Output: User requested corrections.
[1322] Step 7:
[1323] The server runs the automated tests
[1324] What happens: The server runs automated tests on the final code. Test frameworks like Jest and Supertest are used. If all tests pass, the server serves the finished application to the user. If any tests fail, the server notifies the user of the error and goes back to the process of asking them to fix it.
[1325] Input: Your final code.
[1326] Output: Test results and error notifications.
[1327] (Application example 1)
[1328] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1329] In traditional brick-and-mortar store operations, developing applications with store-specific functions requires specialized knowledge and a great deal of effort. Furthermore, it is difficult for each store to customize them to meet their unique requirements, which is time-consuming and costly. This hinders efforts to improve store operation efficiency and customer satisfaction.
[1330] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1331] In this invention, the server includes an input means for a user to input basic information, a generation means for the server to generate additional questions and send the questions to the user, and a response means for the user to answer the questions. This makes it possible to automatically generate a store-specific application based on the information provided by the user. The server also includes a specialized generation means for acquiring information about the operation of the physical store as additional information and generating a store-specific application, and a function generation means for generating code including each function of the store-specific application (customer information management, inventory management, coupon issuance, push notification, etc.). This allows users to quickly, efficiently, and at low cost obtain an application specialized for their own store.
[1332] "Input means" refers to a means for a user to input basic information.
[1333] The "generation means" is a means by which the server generates an additional question and transmits the question to the user.
[1334] The "response means" is a means for a user to respond to a question generated by the generation means.
[1335] The "automatic generation means" is a means by which the server automatically generates a code based on the user's answers.
[1336] A "construction means" is a means for constructing a file and folder structure based on the code generated by the server.
[1337] The "verification and modification request means" is a means for the user to verify the generated configuration and request any necessary modifications.
[1338] "Test means" refers to the means by which the server executes automated tests.
[1339] The "specialized generation means" is a means for acquiring information about the operation of a physical store as additional information and generating a store-specific application.
[1340] The "function generation means" is a means for generating code including each function of the store application (customer information management, inventory management, coupon issuance, push notification, etc.).
[1341] This invention is a system for automatically generating applications specialized for brick-and-mortar store operations. In this system, a server acquires additional information based on basic information entered by a user, automatically generates the necessary code, and provides the application specialized for the brick-and-mortar store.
[1342] The hardware used will be servers and smartphones and tablets used by store operators. The servers will use cloud-based infrastructure such as AWS EC2 instances, and the smartphones and tablets will be iOS and Android devices.
[1343] The software used is Node.js for the server, Express for the backend, and MongoDB for the database. React Native is used for the front end to build applications for physical stores. These software are used to provide store-specific application functions using specialization and function generation methods based on information entered by users.
[1344] First, the user uses the input means to input basic information about their store, which then transmits information such as the store's name, services offered, and main functions to the server. The server then uses the generation means to generate additional questions and transmits them to the user. The user then uses the response means to answer the questions and establish specific requirements.
[1345] The server generates code using the automatic generation means based on this information, and has a construction means for arranging the generated code in an appropriate file and folder structure. The user checks the generated structure using the confirmation and correction request means and requests the server to make any necessary corrections. Finally, the server runs an automatic test using the testing means, and provides the user with an application whose quality has been assured.
[1346] As a concrete example, we will generate a customer service app for a brick-and-mortar store. For example, if a restaurant owner inputs the following basic information and requirements, the app will be automatically generated using the specialization generation means and function generation means.
[1347] Example prompt sentence:
[1348] My restaurant is called Gourmet Delights. I need to create an app that can manage customer information (new registration, update, delete), inventory management (add, delete, update products), issue coupons and manage usage history, send push notifications when customers visit, and provide rewards based on the number of times a customer visits. I will use MongoDB as the database, and I also need customer authentication and push notification functions.
[1349] By inputting this prompt into the server, a specialized application for a physical store that meets the user's requirements is automatically generated, allowing the user to realize efficient operation tailored to their own store.
[1350] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1351] Step 1:
[1352] The user enters basic information.
[1353] Users enter basic information such as the store name, services offered, and key features through an application on their smartphone or tablet.
[1354] Input data: store name, services provided, main functions, etc.
[1355] Output data: Basic information entered by the user
[1356] Specific behavior:
[1357] When a user enters information into the input form and presses the "Submit" button, the basic information is sent to the server.
[1358] Step 2:
[1359] The server generates a follow-up question.
[1360] The server analyzes the basic information entered by the user and generates additional questions to obtain the required details.
[1361] Input data: User basic information
[1362] Output data: Additional questions
[1363] Specific behavior:
[1364] Based on the information entered, the server automatically generates questions such as the database storage format, whether user authentication is required, and whether push notification functionality is required.
[1365] Step 3:
[1366] The user answers the question.
[1367] The user answers additional questions sent by the server.
[1368] Input data: Additional questions
[1369] Output data: User's answer
[1370] Specific behavior:
[1371] The user inputs an answer to the additional question and presses the "Submit" button, which sends the answer to the server.
[1372] Step 4:
[1373] The server automatically generates the code.
[1374] The server automatically generates application code based on the user's answers.
[1375] Input data: User answers
[1376] Output data: Generated code
[1377] Specific behavior:
[1378] Based on the information provided, the server automatically generates code for the front end (React Native), back end (Node.js, Express), and database (MongoDB).
[1379] Step 5:
[1380] The server builds the file and folder structure.
[1381] The server places the generated code in the appropriate directory structure.
[1382] Input data: Generated code
[1383] Output data: Files and folders arranged in a directory structure
[1384] Specific behavior:
[1385] The server places the auto-generated code into the front-end, back-end, and database directories.
[1386] Step 6:
[1387] The user reviews the generated configuration and requests corrections.
[1388] The user checks the provided application configuration and requests the server to make corrections if necessary.
[1389] Input data: Generated configuration
[1390] Output data: Correction request details
[1391] Specific behavior:
[1392] The user checks a preview of the generated application, and if he finds any part that needs to be corrected, he sends the corrections to the server.
[1393] Step 7:
[1394] The server runs the automated tests.
[1395] The server runs automated tests on the final code to ensure quality.
[1396] Input data: Final code
[1397] Output data: Test results
[1398] Specific behavior:
[1399] The server uses a test framework such as Jest or Supertest to verify that each function of the generated code works correctly.
[1400] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1401] This invention is a system that automatically generates applications based on basic information provided by the user, and further combines it with an emotion engine to recognize the user's emotions and improve the experience.The user enters the basic information for the application, the emotion engine analyzes the input, the server generates questions, receives the user's answers, automatically generates code, configures files and folders, and finally the user checks and corrects the results, after which the server performs automatic testing.
[1402] Automatic Application Generation Process Flow
[1403] 1. The user enters basic information
[1404] Users access the system using a terminal and input basic information such as the application name, function, purpose, etc. During this input process, the emotion engine recognizes the user's emotions.
[1405] Input data from the terminal is sent to the server.
[1406] The emotion engine analyzes and records emotions from the user's writing and behavioral patterns.
[1407] 2. The server generates a follow-up question
[1408] The server generates a question based on the basic information to identify additional information.
[1409] An emotional engine assesses the user's emotional state and adjusts the content and format of questions to avoid stress and confusion.
[1410] The question is sent to the terminal and displayed to the user.
[1411] 3. The user answers the question
[1412] The user answers questions from the server through the terminal.
[1413] During the answering process, the emotion engine analyzes the user's emotions and evaluates their level of satisfaction or whether they have any problems.
[1414] The response data from the terminal is sent to the server.
[1415] 4. The server automatically generates the code
[1416] The server considers the user's response and the analysis results of the emotion engine to select the most appropriate program template.
[1417] The server uses templates to automatically generate application code, for example using React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[1418] The generated code is stored on the server.
[1419] 5. The server builds the file and folder structure
[1420] The server places the generated code in the appropriate directory and automatically creates a file and folder structure.
[1421] The following files and folders will be generated:
[1422] / frontend
[1423] App.js
[1424] components /
[1425] services /
[1426] / backend
[1427] server.js
[1428] routes /
[1429] models /
[1430] / database
[1431] mongo.js
[1432] 6. The user reviews the generated configuration and requests corrections
[1433] The server sends the generated application configuration to the user.
[1434] The user checks the configuration on the terminal and requests corrections if necessary.
[1435] During this process, the emotion engine analyzes the user's feelings and evaluates their level of satisfaction and stress.
[1436] Feedback from the device is sent to the server and corrections are made as needed.
[1437] 7. The server runs automated tests
[1438] The server runs tests against the generated code using automated testing frameworks such as Jest or Supertest.
[1439] Provide test results and ask for feedback at a time that is optimal for the user's emotional state.
[1440] If all tests pass, the final application is delivered to the user, taking into account their emotional state and providing additional support if necessary.
[1441] Specific examples
[1442] Creating a TODO list app and utilizing an emotion engine
[1443] 1. Enter basic information
[1444] The user enters that they want to create a "TODO list app" and then enters key functions such as "add task," "delete task," and "update task."
[1445] The emotion engine analyzes the tone and speed of the user's writing as they type, as well as the frequency of mistakes, to determine whether the user is enjoying themselves or feeling anxious.
[1446] 2. Generate additional questions
[1447] The server generates questions such as "In what format do you want to save the task?" and "Is user authentication required?" and sends them to the user.
[1448] If the user finds a question difficult, the emotion engine can simplify the question or provide additional help information.
[1449] 3. Answering questions and analyzing
[1450] The user answers "database" and "yes."
[1451] The emotion engine analyzes the emotions expressed when a user answers and evaluates whether the content and format of the question were appropriate.
[1452] 4. Automatic code generation
[1453] The server generates the optimal code based on the answers.
[1454] Check that there are no problems with the generated code, and if necessary, adjust it taking into account the emotion engine's evaluation.
[1455] 5. Building a file and folder structure
[1456] The server will place the code in the appropriate directory and auto-generate the configuration.
[1457] The structure is arranged in a format that is easy for users to check.
[1458] 6. Check the configuration and request corrections
[1459] The user checks the configuration and requests modifications if necessary.
[1460] The emotion engine analyzes user feedback and evaluates whether the configuration meets the user's expectations.
[1461] If any modifications are required, the server will regenerate the code and provide it to the user.
[1462] 7. Running automated tests
[1463] The server runs automated tests to ensure the generated code works correctly.
[1464] The emotion engine analyzes the test result feedback and evaluates how satisfied the user is.
[1465] If all tests pass, the final application is made available to the user.
[1466] In this way, the present invention can automatically generate applications in an efficient and user-friendly manner while taking into account the user's feelings.
[1467] The processing flow will be explained below.
[1468] Step 1:
[1469] The user enters basic information.
[1470] A user uses a terminal to access the application Copilot and enters basic information such as the application name, main function, and purpose. For example, it is a "TODO list app" and the functions include "add task," "delete task," and "update task."
[1471] The device sends the user's input information to the server, where the emotion engine monitors the user's input speed and error rate and analyzes the user's emotional state (e.g., stress, satisfaction).
[1472] Step 2:
[1473] The server generates a follow-up question.
[1474] The server generates additional questions based on the basic information to determine detailed specifications, such as "What format should the task be saved in?" or "Does user authentication require?"
[1475] The emotion engine takes into account the analyzed emotional state of the user and decides whether to simplify the question or provide additional clarification.
[1476] The server sends the generated question to the terminal and displays it to the user.
[1477] Step 3:
[1478] The user answers the question.
[1479] The user answers questions from the server through the terminal, for example, by replying "database" and "yes."
[1480] The device then sends the user's response to the server. During this process, the emotion engine analyzes the user's emotions and evaluates their level of satisfaction or dissatisfaction.
[1481] Step 4:
[1482] The server automatically generates the code.
[1483] The server selects the optimal program template based on the user's answers and the results of the emotion engine analysis, for example, using React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[1484] The server uses the selected template to automatically generate the application code, which is stored internally on the server.
[1485] Step 5:
[1486] The server builds the file and folder structure.
[1487] The server will place the generated code in the appropriate directory and automatically create the necessary files and folders, for example:
[1488] / frontend
[1489] App.js
[1490] components /
[1491] services /
[1492] / backend
[1493] server.js
[1494] routes /
[1495] models /
[1496] / database
[1497] mongo.js
[1498] Step 6:
[1499] The user reviews the generated configuration and requests corrections.
[1500] The server sends the generated application configuration to the user.
[1501] The user can check the configuration provided on the device and make correction requests if necessary, for example, by entering a specific request such as "I want the task update function to be simpler."
[1502] The emotion engine analyzes the user's emotions during this confirmation process and evaluates whether the correction request went smoothly or whether there was any dissatisfaction.
[1503] The terminal sends the user's modification request to the server, which generates a new code.
[1504] Step 7:
[1505] The server runs the automated tests.
[1506] The server runs tests on the generated code using an automated testing framework (e.g., Jest, Supertest), ensuring that each API endpoint and front-end functionality works correctly.
[1507] When the emotion engine presents test results to the user, it analyzes how the user will receive the information and provides appropriate feedback.
[1508] If all tests pass, the server delivers the final application to the user. If any tests fail, the server notifies the user of any fixes that need to be made and the application is retested.
[1509] This series of processes allows users to respond flexibly using the emotion engine, while also enabling efficient automatic generation of applications.
[1510] Example 2
[1511] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1512] Conventional automatic application generation systems ask questions and generate code without considering the user's emotional state, which can lead to stress and confusion for the user. In addition, they lack a feedback mechanism to guarantee the quality and user satisfaction of the generated application, which often results in the final result not meeting the user's expectations.
[1513] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for generating additional questions based on basic information input by the user, means for analyzing the user's emotions and adjusting the content and format of the questions, and means for regenerating new code that reflects the results of the user's emotion analysis. This makes it possible to automatically generate high-quality applications that take the user's emotional state into consideration and improve user satisfaction.
[1514] "Input means" refers to a device or interface that allows a user to input basic information.
[1515] The "generation means" refers to the function of the server to create additional questions based on the information input by the user and send them to the user.
[1516] "Response means" refers to a device or interface that allows a user to respond to questions from the server.
[1517] "Analysis means" refers to the algorithms and models that the server uses to analyze the user's emotions.
[1518] "Automatic generation means" refers to the function of the server to automatically generate code based on the user's input data and analysis results.
[1519] "Building means" refers to the function of the server to automatically organize files and folders based on the generated code.
[1520] The "verification and modification request means" refers to a device or interface that allows a user to verify the generated configuration and request modifications as necessary.
[1521] "Testing means" refers to frameworks and tools that allow the server to run automated tests on the generated code.
[1522] "Basic information" refers to initial setting information such as the name, function, and purpose of the application entered by the user.
[1523] "Additional Information" refers to detailed information required by the application, gathered through server-generated queries.
[1524] "Emotion analysis" refers to the process of inferring and analyzing a user's emotional state from their input and actions.
[1525] "Automatic generation" refers to the process by which the server automatically generates program code based on user input and analysis results.
[1526] "Folder structure" refers to the layout of the directories and file arrangement that contain the generated code.
[1527] "Automated testing" refers to a testing process run by the server to ensure that the generated code works as expected.
[1528] This invention is a system that automatically generates applications based on basic information provided by the user, and combines it with an emotion engine to recognize the user's emotions and improve the experience. This system works as follows.
[1529] Hardware and software used
[1530] The main components of the system include:
[1531] Hardware: The devices used by users (PCs, smartphones, tablets, etc.) and servers
[1532] Software: React (front-end), Node.js and Express (back-end), MongoDB (database), emotion engine, Jest and Supertest (automated testing frameworks)
[1533] Operation explanation
[1534] 1. Enter basic information
[1535] Users access the system using a terminal and enter basic information such as the application name, function, and purpose. During this process, the emotion engine recognizes and analyzes the user's emotions. The basic information entered by the user is sent from the terminal to the server. The emotion engine analyzes and records emotions from the user's sentences and behavioral patterns.
[1536] 2. Generate additional questions
[1537] The server generates questions to identify additional information based on the basic information. The emotion engine evaluates the user's emotional state and adjusts the content and format of the questions to avoid stress or confusion. The generated questions are sent to the device and displayed to the user.
[1538] 3. Answering questions
[1539] The user answers questions from the server via their device. During this answering process, the emotion engine analyzes the user's emotions and evaluates their level of satisfaction or whether they have any problems. The answer data is sent from the device to the server.
[1540] 4. Automatic code generation
[1541] The server considers the user's answers and the analysis results of the emotion engine, selects the optimal program template, and automatically generates application code. Specifically, it uses React for the front end, Node.js and Express for the back end, and MongoDB for the database. The generated code is stored on the server.
[1542] 5. Building a file and folder structure
[1543] The server places the generated code in the appropriate directory and automatically creates a file and folder structure, for example:
[1544] / frontend
[1545] App.js
[1546] components /
[1547] services /
[1548] / backend
[1549] server.js
[1550] routes /
[1551] models /
[1552] / database
[1553] mongo.js
[1554] 6. Check the configuration and request corrections
[1555] The server sends the generated application configuration to the user. The user checks the configuration on their device and requests modifications if necessary. The emotion engine analyzes the user's feelings during this process as well, evaluating their level of satisfaction and stress. Feedback is sent from the device to the server, and modifications are made as necessary.
[1556] 7. Running automated tests
[1557] The server uses automated testing frameworks such as Jest and Supertest to run tests on the generated code. It provides test results at a time that best suits the user's emotional state and asks for feedback. If all tests pass, the final application is delivered to the user. It provides additional support, if necessary, taking into account the user's emotional state.
[1558] Example: Creating a TODO list app
[1559] For example:
[1560] 1. Enter basic information
[1561] Users input that they want to create a "to-do list app" and enter key functions such as "add task," "delete task," and "update task." The emotion engine analyzes the tone, speed, and frequency of mistakes in the writing to determine whether the user is enjoying themselves or feeling impatient.
[1562] 2. Generate additional questions
[1563] The server generates questions such as "What format do you want to save the task in?" and "Does user authentication require?" and sends them to the user. If the user finds a question difficult, the emotion engine simplifies the question or provides additional help information.
[1564] 3. Answering questions and analyzing
[1565] The user answers "database" and "yes." The emotion engine analyzes the user's emotions when answering and evaluates whether the content and format of the question were appropriate.
[1566] 4. Automatic code generation
[1567] Based on the answers, the server generates the optimal code, including React (front-end), Node.js and Express (back-end), and MongoDB (database).
[1568] 5. Building a file and folder structure
[1569] The server places the code in the appropriate directories and auto-generates the configuration, including / frontend, / backend, and / database directories as examples.
[1570] 6. Check the configuration and request corrections
[1571] The user checks the configuration and requests corrections if necessary. The emotion engine analyzes the user's feedback and evaluates whether the configuration meets expectations. If corrections are necessary, the server regenerates the code and provides it to the user.
[1572] 7. Running automated tests
[1573] The server runs automated tests to ensure the generated code works correctly. The emotion engine analyzes the test feedback and evaluates user satisfaction. If all tests pass, the final application is delivered to the user.
[1574] Prompt Sentence Examples
[1575] "We'd like you to create a new task management app. It should have the following features: add task, delete task, and edit task. It should also have user authentication capabilities. The data will be stored in a database."
[1576] In this way, the present invention can automatically generate applications in an efficient and user-friendly manner while taking into account the user's feelings.
[1577] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1578] Step 1: User enters basic information
[1579] Input: The user inputs basic information such as "application name," "function," and "purpose" on the terminal.
[1580] Operation: When the user completes the input, the input data is sent from the terminal to the server.
[1581] Data processing: The server analyzes the received basic information and understands the user's wishes. The emotion engine analyzes the user's emotional state based on the tone of their writing and their typing speed, and records this in a database.
[1582] Output: Basic information data and sentiment analysis data are saved on the server.
[1583] Step 2: The server generates an additional question
[1584] Input: Basic information data and sentiment analysis data
[1585] How it works: The server uses basic information to generate questions to get the details needed by the application.
[1586] Data processing: The emotion engine evaluates the user's emotional state and adapts the content and format of the questions to suit the user's emotions.
[1587] Output: The generated question is sent to the terminal.
[1588] Step 3: User answers questions
[1589] Input: The question sent by the server
[1590] How it works: The user answers questions on the device and sends the answers from the device to the server.
[1591] Data processing: The emotion engine analyzes the answers to questions and the user's emotional state at the time of answering.
[1592] Output: The response data and analyzed emotion data are saved on the server.
[1593] Step 4: The server automatically generates the code
[1594] Input: Response data and sentiment analysis data
[1595] How it works: Based on the answers and the results of the emotion engine analysis, the server selects the most appropriate program template and automatically generates code.
[1596] Data processing: Using generative AI models, we generate code using React (front-end), Node.js and Express (back-end), and MongoDB (database).
[1597] Output: The generated code is saved on the server.
[1598] Step 5: The server builds the file and folder structure
[1599] Input: Generated code
[1600] How it works: The server places the generated code in the appropriate directories and builds a file and folder structure.
[1601] Data processing: Placing the code in the proper directory structure and linking relevant files within the folders.
[1602] Output: Files and folders will be generated with the following structure:
[1603] / frontend
[1604] App.js
[1605] components /
[1606] services /
[1607] / backend
[1608] server.js
[1609] routes /
[1610] models /
[1611] / database
[1612] mongo.js
[1613] Step 6: User reviews the generated configuration and requests modifications
[1614] Input: Generated files and folder structure
[1615] Operation: The server provides the generated configuration to the user, who can then check the configuration on the terminal and request modifications if necessary.
[1616] Data Processing: The emotion engine analyzes the user's feedback and emotional state to evaluate whether the configuration meets expectations.
[1617] Output: The correction request data is sent to the server and corrections are made as necessary.
[1618] Step 7: The server runs the automated tests
[1619] Input: Final generated code and configuration
[1620] How it works: The server runs tests against your code using an automated testing framework like Jest or Supertest.
[1621] Data processing: Analyze the test results and check for defects.
[1622] Output: The test results are reported to the user, and if all tests are passed, the final application is provided to the user. The emotion engine analyzes the test result feedback and evaluates the user's satisfaction.
[1623] (Application example 2)
[1624] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1625] Conventional automatic application generation systems proceed without considering the user's emotions, which can cause stress and confusion for the user. Furthermore, particularly in brick-and-mortar stores, there is a lack of support tools to help store staff effectively handle customer service, resulting in inconsistent customer service quality. A system that solves these problems and improves the experience for users and store staff is needed.
[1626] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1627] In this invention, the server includes an input means for the user to input basic information, an emotion analysis means for recognizing the user's emotions, and a generation means for the server to generate additional questions and send the questions to the user. This makes it possible to optimize the question and code generation process while taking the user's emotions into consideration. Furthermore, by including an information provision means for providing information to human service providers in physical stores, it is possible to support store clerks in effectively dealing with customers and improve the quality of customer service.
[1628] An "input means" is a device or software interface that allows a user to input basic information into an application.
[1629] "Emotion analysis means" refers to a technology or system for analyzing a user's input and behavior and recognizing their emotional state.
[1630] The "generation means" is a function that automatically generates necessary follow-up questions based on the basic information received by the server from the user and sends them to the user.
[1631] A "response means" is a device or software interface that allows a user to respond to questions received from the server.
[1632] "Automatic generation means" is a function that allows the server to automatically generate application code based on the user's answers and the results of sentiment analysis.
[1633] The "construction means" is a function that automatically constructs an appropriate file and folder structure based on the code generated by the server.
[1634] The "verification and modification request means" is a device or software interface that allows the user to verify the generated configuration and, if necessary, request modifications from the server.
[1635] A "testing means" is a device or software interface that allows the server to automatically test the generated code to ensure correct operation.
[1636] "Information provision means" is a function that provides real-time information for customer support and product suggestions to human service providers in physical stores.
[1637] The embodiment of the present invention will be described in detail using an example of a system in which a smart customer service assistant app is operated in a physical store.
[1638] System Configuration
[1639] This system consists of the following hardware and software:
[1640] Smart glasses or smartphone: A device used by the user (store clerk) to respond to customers, input basic information, and provide real-time information.
[1641] Server: The central unit for processing input data, sentiment analysis, question generation, code generation, file construction, and automated testing.
[1642] Sentiment analysis engine: A software module that analyzes user input and behavior to recognize emotional states.
[1643] Auto-generation engine: A software module that automatically generates application code based on the user's basic information and answers.
[1644] Test engine: A software module that automatically tests the behavior of generated application code.
[1645] Processing Flow
[1646] First, a user accesses the application using smart glasses or a smartphone and enters basic information such as the store name, the services offered, and the desired customer service style. At this time, the emotion analysis engine analyzes the user's emotions, such as whether they are relaxed or stressed, based on the tone of their writing, typing speed, frequency of mistakes, etc.
[1647] The server generates questions to identify additional information based on the received basic information. The generated questions are displayed on the screen of smart glasses or a smartphone. For example, a question might be, "What is your typical customer demographic?" To this, the user (store clerk) might respond, "Women in their 20s and 30s." The sentiment analysis engine then analyzes this response and evaluates the user's level of satisfaction or stress.
[1648] The server automatically generates appropriate code based on user responses and sentiment analysis results, using React Native for the front end, Node.js and Express for the back end, and Firebase for the database.
[1649] The generated code is automatically placed in the appropriate file and folder structure by the server, and the user is prompted for confirmation. The user can review this structure and request modifications if necessary. The sentiment analysis engine also analyzes the user's emotions and evaluates how the structure affects satisfaction and stress.
[1650] Finally, the server runs automated tests on the generated code. A test engine uses a testing framework such as Jest or Supertest to verify the behavior of the generated application code. If all tests pass, the final application is made available to users.
[1651] Specific examples
[1652] Prompt Sentence Examples
[1653] "Basic information provided by the user:
[1654] 1. Store name: Example: "Stylish Boutique"
[1655] 2. Services offered: Example: "Sale of women's clothing"
[1656] 3. Customer service style: e.g., "friendly and professional"
[1657] Questions generated by the emotion engine:
[1658] 1. What is your typical customer demographic?
[1659] 2. What are the characteristics of your best-selling products?
[1660] 3. What do you pay particular attention to to make your customers feel comfortable?
[1661] Example answer:
[1662] 1. "Women in their 20s and 30s"
[1663] 2. "Designs that reflect the latest trends and affordable prices"
[1664] 3. "Smiles and quick responses"
[1665] In this way, smart customer service assistant apps incorporating sentiment analysis can effectively support customer interactions in brick-and-mortar stores and improve the experience for both store associates and customers.
[1666] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1667] Step 1:
[1668] A user accesses the application using smart glasses or a smartphone and inputs basic information (e.g., store name, services offered, customer service style, etc.). The input basic information is sent to the server as text data. The server analyzes the received basic information and evaluates the user's emotional state (e.g., whether they are relaxed or excited) using an emotion analysis engine.
[1669] Step 2:
[1670] The server generates questions based on the user's basic information to identify additional information needed. During this generation process, an emotion analysis engine takes the user's emotional state into account and adjusts the difficulty and format of the questions. The generated questions are sent to the user's smart glasses or smartphone and displayed.
[1671] Step 3:
[1672] The user answers questions sent from the server. The user's answers are sent as text data from the device to the server. The server analyzes the received answers and reevaluates the user's emotional state using an emotion analysis engine. This process measures the degree of satisfaction or stress the user feels in response to the questions.
[1673] Step 4:
[1674] The server automatically generates appropriate application code based on the user's answers and the results of sentiment analysis. For example, it uses React Native for the front end, Node.js and Express for the back end, and Firebase for the database. The generated code is stored on the server.
[1675] Step 5:
[1676] The server automatically creates the appropriate directory and file structure based on the generated code. For example, directories such as " / frontend," " / backend," and " / database" are created in the project root folder, and the relevant files are placed in each directory. This structure is then sent to the user's smart glasses or smartphone, where they can view it.
[1677] Step 6:
[1678] The user checks the generated configuration and requests corrections if necessary. If the user requests corrections, the information is sent back to the server from the device. The server analyzes the received feedback, evaluates the user's emotional state using an emotion analysis engine, and regenerates new code that reflects the corrections.
[1679] Step 7:
[1680] The server runs automated tests on the generated code using testing frameworks such as Jest and Supertest. The test results are stored on the server, and if all tests pass, the final application is provided to the user. The test results are then sent to the user's smart glasses or smartphone, where they are fed back to the user.
[1681] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1682] 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> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with 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.
[1683] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1684] [Fourth embodiment]
[1685] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1686] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1687] 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 WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1688] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. 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 microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[1689] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1690] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1691] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1692] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1693] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, 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.
[1694] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1695] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1696] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 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 60 executed on the RAM 48.
[1697] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1698] This invention is a system that automatically generates applications based on basic information provided by the user. The user inputs the basic information of the application, the server generates questions based on that information, receives the user's answers, automatically generates code, configures files and folders, and finally the user checks and corrects the information, and the server performs automatic testing.
[1699] Automatic Application Generation Process Flow
[1700] 1. The user enters basic information
[1701] The user accesses the server through a terminal and enters basic information about the application, including the application name, main functions, and purpose.
[1702] 2. The server generates a follow-up question
[1703] The server analyzes the basic information provided by the user and generates follow-up questions to obtain the details needed to solve the problem, such as the format in which the data is stored and whether the user is authenticated.
[1704] 3. The user answers the question
[1705] The user answers questions posed by the server through the terminal, which establishes the specific requirements of the application.
[1706] 4. The server automatically generates the code
[1707] Based on the user's answers, the server automatically generates the application code, using technologies and frameworks selected based on the user's requirements, including back-end APIs, front-end components, and database schemas.
[1708] 5. The server builds the file and folder structure
[1709] The server places the generated code in the appropriate directory structure, for example, building a front-end with React, a back-end with Node.js, and a database with MongoDB.
[1710] 6. The user reviews the generated configuration and requests corrections
[1711] The user checks the provided application configuration on the terminal and requests modifications as necessary, for example, by sending a specific request such as "Make the task update function simpler" to the server.
[1712] 7. The server runs automated tests
[1713] The server runs automated tests on the final code to ensure quality, and if all tests pass, it delivers the finished application to the user.
[1714] Specific examples
[1715] Creating a to-do list app
[1716] 1. The user enters basic information
[1717] The user inputs that they want to create a "TODO list app" and then inputs key functions such as "add task," "delete task," and "update task."
[1718] 2. The server generates a follow-up question
[1719] The server generates questions such as "In what format do you want to save the task?" and "Is user authentication required?" and sends them to the user.
[1720] 3. The user answers the question
[1721] The user answers "Database", "Yes".
[1722] 4. The server automatically generates the code
[1723] Based on this information, the server automatically generates code that uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[1724] 5. The server builds the file and folder structure
[1725] The server will generate the following files and folders:
[1726] / frontend
[1727] App.js
[1728] components /
[1729] services /
[1730] / backend
[1731] server.js
[1732] routes /
[1733] models /
[1734] / database
[1735] mongo.js
[1736] 6. The user reviews the generated configuration and requests corrections
[1737] The user checks the code and configuration and sends a request to the server for a fix, such as "Make the task update function more concise."
[1738] 7. The server runs automated tests
[1739] The server runs automated tests using Jest and Supertest, and if all tests pass, it serves the finished application to the user.
[1740] This allows users to develop and implement applications efficiently with little effort.
[1741] The processing flow will be explained below.
[1742] Step 1:
[1743] The user enters basic information.
[1744] The user accesses the Copilot application using a terminal and enters basic information such as the application name, main function, and purpose.
[1745] The terminal transmits the input information to the server.
[1746] Step 2:
[1747] The server generates a follow-up question.
[1748] The server analyzes the basic information provided by the user and identifies any additional information needed.
[1749] The server generates additional questions to determine detailed specifications, such as the data storage format and whether or not authentication functions are available.
[1750] The server sends the generated question to the terminal and displays it to the user.
[1751] Step 3:
[1752] The user answers the question.
[1753] The user answers questions from the server via the terminal, inputting specific answers such as "Data storage format is database" and "Authentication function is necessary."
[1754] The terminal transmits the user's answer to the server.
[1755] Step 4:
[1756] The server automatically generates the code.
[1757] The server analyzes the user's answers and selects the most appropriate program template based on them.
[1758] The server automatically generates the application code using the selected template, for example using React for the front end and Node.js and Express for the back end.
[1759] The server stores the generated code internally.
[1760] Step 5:
[1761] The server builds the file and folder structure.
[1762] The server organizes the generated code and creates the appropriate directory structure.
[1763] The server will automatically generate the following file and folder structure:
[1764] / frontend
[1765] App.js
[1766] components /
[1767] services /
[1768] / backend
[1769] server.js
[1770] routes /
[1771] models /
[1772] / database
[1773] mongo.js
[1774] Step 6:
[1775] The user reviews the generated configuration and requests corrections.
[1776] The server sends all the generated code and directory structure to the user.
[1777] The user uses the terminal to verify the provided application configuration.
[1778] The user sends a request for necessary modifications, such as "simplify the task update function," to the server.
[1779] Step 7:
[1780] The server applies the fix.
[1781] The server receives a modification request from the user and makes the modifications to the originally generated code.
[1782] The corrected code is then provided to the user again.
[1783] Step 8:
[1784] The server runs the automated tests.
[1785] The server runs automated tests against the generated code using an automated testing framework (e.g., Jest or Supertest).
[1786] Verify that each function works correctly and generate test results.
[1787] If all tests pass, the final application is delivered to the user. If not, the user is notified of the corrections and the application is retested.
[1788] Example 1
[1789] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1790] The traditional application development process requires a lot of human resources and time, placing a heavy burden on users who are not familiar with programming. Furthermore, the entire process, from requirements definition to development, testing, and deployment, is performed manually, which increases the likelihood of errors and inconsistent quality. To solve these problems, a system is needed that can automatically generate applications based on user input and automate the entire process, from testing to deployment.
[1791] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1792] In this invention, the server includes an input means for a user to input basic information, a generation means for the server to generate additional questions and send the questions to the user, a response means for the user to answer the questions, an automatic generation means for the server to automatically generate code, a construction means for constructing a file and folder structure based on the code generated by the server, a confirmation and correction request means for the user to check the generated structure and request corrections, a test means for the server to execute an automatic test, a means for automatically generating questions using a generative AI model, a means for automatically generating code using the generative AI model, and a means for the server to provide error notifications and correction instructions. This enables users to easily generate applications and efficiently develop and test high-quality code.
[1793] The "input means" is a user interface for the user to input basic information about the application.
[1794] The "generation means" is a function in which the server analyzes the basic information provided by the user and automatically generates questions to obtain the necessary additional information.
[1795] The "response means" is an interface that allows the user to input a response to a question sent from the server, and includes a function for sending the response to the server.
[1796] The "automatic generation means" is a function that allows the server to automatically generate the necessary code based on the user's answers.
[1797] The "construction means" is a function that automatically constructs an appropriate file and folder structure based on the code generated by the server.
[1798] The "verification and modification request means" is an interface that allows the user to verify the configuration of the generated application and request modifications as necessary.
[1799] "Testing means" is a function that allows the server to run automated tests on the generated code and evaluate the results.
[1800] "Means for automatically generating questions using a generative AI model" is a function that uses a generative model to automatically generate appropriate questions based on basic information provided by the user.
[1801] "Means for automatically generating code using a generative AI model" is a function that uses a generative model to automatically generate the necessary code based on the user's answers.
[1802] The "means for providing error notification and correction instructions" is a function by which the server notifies the user of errors found during automatic testing or code generation and provides instructions regarding correction.
[1803] This invention is a system that automatically generates applications based on basic information provided by the user. The user inputs the basic information of the application, the server generates questions based on that information, receives the user's answers, automatically generates code, configures files and folders, and finally the user checks and corrects the information, and the server performs automatic testing.
[1804] Hardware and software used
[1805] This system uses the following hardware and software:
[1806] Device: The device used by the user, such as a computer, smartphone, or tablet.
[1807] Servers: Cloud or physical servers required for high-performance data processing and running generative AI models.
[1808] Generative AI model: A machine learning model that automatically generates appropriate questions based on user input and automatically generates code.
[1809] The specific software and technology stack used is as follows:
[1810] Frontend: React.js
[1811] Backend: Node.js, Express.js
[1812] Database: MongoDB
[1813] Testing frameworks: Jest, Supertest
[1814] Detailed System Description
[1815] In this system, the user accesses the server using a terminal and enters basic information about the application, including the application name, main functions, and purpose. Once the user has completed the input, the server analyzes the basic information and generates additional questions using a generative AI model. For example, questions such as "What format should the data be saved in?" and "Is user authentication required?" are generated.
[1816] Users answer these questions from their device. Based on the user's answers, the server automatically generates code using a generative AI model. The generated code uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[1817] The server then places the generated code in the appropriate directory structure, which looks something like this:
[1818] / frontend
[1819] App.js
[1820] components /
[1821] services /
[1822] / backend
[1823] server.js
[1824] routes /
[1825] models /
[1826] / database
[1827] mongo.js
[1828] The user can check the generated application configuration on their device and request modifications as necessary. For example, they can send a specific request, such as "Please simplify the task update function," from their device to the server.
[1829] Finally, the server runs automated tests and ensures the quality of the code using Jest and Supertest, and if all tests pass, the server serves the finished application to the user.
[1830] Example: Creating a TODO list app
[1831] The user inputs that they want to create a "TODO list app" and enters key functions such as "add task," "delete task," and "update task." The server then generates questions such as "In what format do you want to save tasks?" and "Do you require user authentication?" The user answers "Database" and "Yes." Based on this information, the server automatically generates code that uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[1832] Example of input prompt for generative AI model
[1833] "Based on basic information about the application provided by the user, select the optimal technology stack and generate questions. Based on the answers, auto-generate code and build the directory structure. Finally, run automated tests and return the test results."
[1834] This allows users to easily and efficiently create high-quality applications.
[1835] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1836] Step 1:
[1837] The user enters basic information
[1838] Specific operation: A user accesses the server using a terminal and enters basic information about the application in a form provided in a web browser. The input items include the application name (e.g., "TODO list"), main functions (e.g., "Add task," "Delete task," "Update task"), and purpose (e.g., "For task management").
[1839] Input: Basic information entered by the user, such as the application name, main function, and purpose.
[1840] Output: Basic information about the user that is sent to the server.
[1841] Step 2:
[1842] The server generates additional questions
[1843] Specific operation: The server analyzes the basic information sent by the user and generates follow-up questions to gather the detailed information needed to solve the problem. At this time, it uses a generative AI model to automatically generate appropriate questions. For example, specific questions such as "What format should the data be saved in?" and "Is user authentication required?" are generated.
[1844] Input: Basic information entered by the user.
[1845] Output: A follow-up question to be sent to the user.
[1846] Step 3:
[1847] The user answers the question
[1848] Specific Action: The user uses the device to answer questions sent by the server, thereby establishing the specific requirements of the application. For example, the user answers "Yes" to the question "Save to database?" The device sends the entered answer to the server in real time.
[1849] Input: Additional question from the server.
[1850] Output: The user's answer.
[1851] Step 4:
[1852] The server automatically generates the code
[1853] How it works: Based on the user's answers, the server selects the optimal technology stack and automatically generates the application code. It uses a generative AI model to efficiently generate the code for each part. For example, it generates code that uses React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[1854] Input: The user's answer.
[1855] Output: Auto-generated code.
[1856] Step 5:
[1857] The server builds the file and folder structure
[1858] What happens: The server places the generated code in the appropriate directory structure, which looks like this:
[1859] / frontend
[1860] App.js
[1861] components /
[1862] services /
[1863] / backend
[1864] server.js
[1865] routes /
[1866] models /
[1867] / database
[1868] mongo.js
[1869] Input: The auto-generated code.
[1870] Output: The constructed file and folder structure.
[1871] Step 6:
[1872] The user reviews the generated configuration and requests corrections
[1873] Specific operation: The user checks the generated application configuration on the device and requests modifications if necessary. For example, the user sends a specific request from the device to the server, such as "Please simplify the task update function."
[1874] Input: The constructed file and folder structure.
[1875] Output: User requested corrections.
[1876] Step 7:
[1877] The server runs the automated tests
[1878] What happens: The server runs automated tests on the final code. Test frameworks like Jest and Supertest are used. If all tests pass, the server serves the finished application to the user. If any tests fail, the server notifies the user of the error and goes back to the process of asking them to fix it.
[1879] Input: Your final code.
[1880] Output: Test results and error notifications.
[1881] (Application example 1)
[1882] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1883] In traditional brick-and-mortar store operations, developing applications with store-specific functions requires specialized knowledge and a great deal of effort. Furthermore, it is difficult for each store to customize them to meet their unique requirements, which is time-consuming and costly. This hinders efforts to improve store operation efficiency and customer satisfaction.
[1884] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1885] In this invention, the server includes an input means for a user to input basic information, a generation means for the server to generate additional questions and send the questions to the user, and a response means for the user to answer the questions. This makes it possible to automatically generate a store-specific application based on the information provided by the user. The server also includes a specialized generation means for acquiring information about the operation of the physical store as additional information and generating a store-specific application, and a function generation means for generating code including each function of the store-specific application (customer information management, inventory management, coupon issuance, push notification, etc.). This allows users to quickly, efficiently, and at low cost obtain an application specialized for their own store.
[1886] "Input means" refers to a means for a user to input basic information.
[1887] The "generation means" is a means by which the server generates an additional question and transmits the question to the user.
[1888] The "response means" is a means for a user to respond to a question generated by the generation means.
[1889] The "automatic generation means" is a means by which the server automatically generates a code based on the user's answers.
[1890] A "construction means" is a means for constructing a file and folder structure based on the code generated by the server.
[1891] The "verification and modification request means" is a means for the user to verify the generated configuration and request any necessary modifications.
[1892] "Test means" refers to the means by which the server executes automated tests.
[1893] The "specialized generation means" is a means for acquiring information about the operation of a physical store as additional information and generating a store-specific application.
[1894] The "function generation means" is a means for generating code including each function of the store application (customer information management, inventory management, coupon issuance, push notification, etc.).
[1895] This invention is a system for automatically generating applications specialized for brick-and-mortar store operations. In this system, a server acquires additional information based on basic information entered by a user, automatically generates the necessary code, and provides the application specialized for the brick-and-mortar store.
[1896] The hardware used will be servers and smartphones and tablets used by store operators. The servers will use cloud-based infrastructure such as AWS EC2 instances, and the smartphones and tablets will be iOS and Android devices.
[1897] The software used is Node.js for the server, Express for the backend, and MongoDB for the database. React Native is used for the front end to build applications for physical stores. These software are used to provide store-specific application functions using specialization and function generation methods based on information entered by users.
[1898] First, the user uses the input means to input basic information about their store, which then transmits information such as the store's name, services offered, and main functions to the server. The server then uses the generation means to generate additional questions and transmits them to the user. The user then uses the response means to answer the questions and establish specific requirements.
[1899] The server generates code using the automatic generation means based on this information, and has a construction means for arranging the generated code in an appropriate file and folder structure. The user checks the generated structure using the confirmation and correction request means and requests the server to make any necessary corrections. Finally, the server runs an automatic test using the testing means, and provides the user with an application whose quality has been assured.
[1900] As a concrete example, we will generate a customer service app for a brick-and-mortar store. For example, if a restaurant owner inputs the following basic information and requirements, the app will be automatically generated using the specialization generation means and function generation means.
[1901] Example prompt sentence:
[1902] My restaurant is called Gourmet Delights. I need to create an app that can manage customer information (new registration, update, delete), inventory management (add, delete, update products), issue coupons and manage usage history, send push notifications when customers visit, and provide rewards based on the number of times a customer visits. I will use MongoDB as the database, and I also need customer authentication and push notification functions.
[1903] By inputting this prompt into the server, a specialized application for a physical store that meets the user's requirements is automatically generated, allowing the user to realize efficient operation tailored to their own store.
[1904] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1905] Step 1:
[1906] The user enters basic information.
[1907] Users enter basic information such as the store name, services offered, and key features through an application on their smartphone or tablet.
[1908] Input data: store name, services provided, main functions, etc.
[1909] Output data: Basic information entered by the user
[1910] Specific behavior:
[1911] When a user enters information into the input form and presses the "Submit" button, the basic information is sent to the server.
[1912] Step 2:
[1913] The server generates a follow-up question.
[1914] The server analyzes the basic information entered by the user and generates additional questions to obtain the required details.
[1915] Input data: User basic information
[1916] Output data: Additional questions
[1917] Specific behavior:
[1918] Based on the information entered, the server automatically generates questions such as the database storage format, whether user authentication is required, and whether push notification functionality is required.
[1919] Step 3:
[1920] The user answers the question.
[1921] The user answers additional questions sent by the server.
[1922] Input data: Additional questions
[1923] Output data: User's answer
[1924] Specific behavior:
[1925] The user inputs an answer to the additional question and presses the "Submit" button, which sends the answer to the server.
[1926] Step 4:
[1927] The server automatically generates the code.
[1928] The server automatically generates application code based on the user's answers.
[1929] Input data: User answers
[1930] Output data: Generated code
[1931] Specific behavior:
[1932] Based on the information provided, the server automatically generates code for the front end (React Native), back end (Node.js, Express), and database (MongoDB).
[1933] Step 5:
[1934] The server builds the file and folder structure.
[1935] The server places the generated code in the appropriate directory structure.
[1936] Input data: Generated code
[1937] Output data: Files and folders arranged in a directory structure
[1938] Specific behavior:
[1939] The server places the auto-generated code into the front-end, back-end, and database directories.
[1940] Step 6:
[1941] The user reviews the generated configuration and requests corrections.
[1942] The user checks the provided application configuration and requests the server to make corrections if necessary.
[1943] Input data: Generated configuration
[1944] Output data: Correction request details
[1945] Specific behavior:
[1946] The user checks a preview of the generated application, and if he finds any part that needs to be corrected, he sends the corrections to the server.
[1947] Step 7:
[1948] The server runs the automated tests.
[1949] The server runs automated tests on the final code to ensure quality.
[1950] Input data: Final code
[1951] Output data: Test results
[1952] Specific behavior:
[1953] The server uses a test framework such as Jest or Supertest to verify that each function of the generated code works correctly.
[1954] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1955] This invention is a system that automatically generates applications based on basic information provided by the user, and further combines it with an emotion engine to recognize the user's emotions and improve the experience.The user enters the basic information for the application, the emotion engine analyzes the input, the server generates questions, receives the user's answers, automatically generates code, configures files and folders, and finally the user checks and corrects the results, after which the server performs automatic testing.
[1956] Automatic Application Generation Process Flow
[1957] 1. The user enters basic information
[1958] Users access the system using a terminal and input basic information such as the application name, function, purpose, etc. During this input process, the emotion engine recognizes the user's emotions.
[1959] Input data from the terminal is sent to the server.
[1960] The emotion engine analyzes and records emotions from the user's writing and behavioral patterns.
[1961] 2. The server generates a follow-up question
[1962] The server generates a question based on the basic information to identify additional information.
[1963] An emotional engine assesses the user's emotional state and adjusts the content and format of questions to avoid stress and confusion.
[1964] The question is sent to the terminal and displayed to the user.
[1965] 3. The user answers the question
[1966] The user answers questions from the server through the terminal.
[1967] During the answering process, the emotion engine analyzes the user's emotions and evaluates their level of satisfaction or whether they have any problems.
[1968] The response data from the terminal is sent to the server.
[1969] 4. The server automatically generates the code
[1970] The server considers the user's response and the analysis results of the emotion engine to select the most appropriate program template.
[1971] The server uses templates to automatically generate application code, for example using React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[1972] The generated code is stored on the server.
[1973] 5. The server builds the file and folder structure
[1974] The server places the generated code in the appropriate directory and automatically creates a file and folder structure.
[1975] The following files and folders will be generated:
[1976] / frontend
[1977] App.js
[1978] components /
[1979] services /
[1980] / backend
[1981] server.js
[1982] routes /
[1983] models /
[1984] / database
[1985] mongo.js
[1986] 6. The user reviews the generated configuration and requests corrections
[1987] The server sends the generated application configuration to the user.
[1988] The user checks the configuration on the terminal and requests corrections if necessary.
[1989] During this process, the emotion engine analyzes the user's feelings and evaluates their level of satisfaction and stress.
[1990] Feedback from the device is sent to the server and corrections are made as needed.
[1991] 7. The server runs automated tests
[1992] The server runs tests against the generated code using automated testing frameworks such as Jest or Supertest.
[1993] Provide test results and ask for feedback at a time that is optimal for the user's emotional state.
[1994] If all tests pass, the final application is delivered to the user, taking into account their emotional state and providing additional support if necessary.
[1995] Specific examples
[1996] Creating a TODO list app and utilizing an emotion engine
[1997] 1. Enter basic information
[1998] The user enters that they want to create a "TODO list app" and then enters key functions such as "add task," "delete task," and "update task."
[1999] The emotion engine analyzes the tone and speed of the user's writing as they type, as well as the frequency of mistakes, to determine whether the user is enjoying themselves or feeling anxious.
[2000] 2. Generate additional questions
[2001] The server generates questions such as "In what format do you want to save the task?" and "Is user authentication required?" and sends them to the user.
[2002] If the user finds a question difficult, the emotion engine can simplify the question or provide additional help information.
[2003] 3. Answering questions and analyzing
[2004] The user answers "database" and "yes."
[2005] The emotion engine analyzes the emotions expressed when a user answers and evaluates whether the content and format of the question were appropriate.
[2006] 4. Automatic code generation
[2007] The server generates the optimal code based on the answers.
[2008] Check that there are no problems with the generated code, and if necessary, adjust it taking into account the emotion engine's evaluation.
[2009] 5. Building a file and folder structure
[2010] The server will place the code in the appropriate directory and auto-generate the configuration.
[2011] The structure is arranged in a format that is easy for users to check.
[2012] 6. Check the configuration and request corrections
[2013] The user checks the configuration and requests modifications if necessary.
[2014] The emotion engine analyzes user feedback and evaluates whether the configuration meets the user's expectations.
[2015] If any modifications are required, the server will regenerate the code and provide it to the user.
[2016] 7. Running automated tests
[2017] The server runs automated tests to ensure the generated code works correctly.
[2018] The emotion engine analyzes the test result feedback and evaluates how satisfied the user is.
[2019] If all tests pass, the final application is made available to the user.
[2020] In this way, the present invention can automatically generate applications in an efficient and user-friendly manner while taking into account the user's feelings.
[2021] The processing flow will be explained below.
[2022] Step 1:
[2023] The user enters basic information.
[2024] A user uses a terminal to access the application Copilot and enters basic information such as the application name, main function, and purpose. For example, it is a "TODO list app" and the functions include "add task," "delete task," and "update task."
[2025] The device sends the user's input information to the server, where the emotion engine monitors the user's input speed and error rate and analyzes the user's emotional state (e.g., stress, satisfaction).
[2026] Step 2:
[2027] The server generates a follow-up question.
[2028] The server generates additional questions based on the basic information to determine detailed specifications, such as "What format should the task be saved in?" or "Does user authentication require?"
[2029] The emotion engine takes into account the analyzed emotional state of the user and decides whether to simplify the question or provide additional clarification.
[2030] The server sends the generated question to the terminal and displays it to the user.
[2031] Step 3:
[2032] The user answers the question.
[2033] The user answers questions from the server through the terminal, for example, by replying "database" and "yes."
[2034] The device then sends the user's response to the server. During this process, the emotion engine analyzes the user's emotions and evaluates their level of satisfaction or dissatisfaction.
[2035] Step 4:
[2036] The server automatically generates the code.
[2037] The server selects the optimal program template based on the user's answers and the results of the emotion engine analysis, for example, using React for the front end, Node.js and Express for the back end, and MongoDB for the database.
[2038] The server uses the selected template to automatically generate the application code, which is stored internally on the server.
[2039] Step 5:
[2040] The server builds the file and folder structure.
[2041] The server will place the generated code in the appropriate directory and automatically create the necessary files and folders, for example:
[2042] / frontend
[2043] App.js
[2044] components /
[2045] services /
[2046] / backend
[2047] server.js
[2048] routes /
[2049] models /
[2050] / database
[2051] mongo.js
[2052] Step 6:
[2053] The user reviews the generated configuration and requests corrections.
[2054] The server sends the generated application configuration to the user.
[2055] The user can check the configuration provided on the device and make correction requests if necessary, for example, by entering a specific request such as "I want the task update function to be simpler."
[2056] The emotion engine analyzes the user's emotions during this confirmation process and evaluates whether the correction request went smoothly or whether there was any dissatisfaction.
[2057] The terminal sends the user's modification request to the server, which generates a new code.
[2058] Step 7:
[2059] The server runs the automated tests.
[2060] The server runs tests on the generated code using an automated testing framework (e.g., Jest, Supertest), ensuring that each API endpoint and front-end functionality works correctly.
[2061] When the emotion engine presents test results to the user, it analyzes how the user will receive the information and provides appropriate feedback.
[2062] If all tests pass, the server delivers the final application to the user. If any tests fail, the server notifies the user of any fixes that need to be made and the application is retested.
[2063] This series of processes allows users to respond flexibly using the emotion engine, while also enabling efficient automatic generation of applications.
[2064] Example 2
[2065] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[2066] Conventional automatic application generation systems ask questions and generate code without considering the user's emotional state, which can lead to stress and confusion for the user. In addition, they lack a feedback mechanism to guarantee the quality and user satisfaction of the generated application, which often results in the final result not meeting the user's expectations.
[2067] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for generating additional questions based on basic information input by the user, means for analyzing the user's emotions and adjusting the content and format of the questions, and means for regenerating new code that reflects the results of the user's emotion analysis. This makes it possible to automatically generate high-quality applications that take the user's emotional state into consideration and improve user satisfaction.
[2068] "Input means" refers to a device or interface that allows a user to input basic information.
[2069] The "generation means" refers to the function of the server to create additional questions based on the information input by the user and send them to the user.
[2070] "Response means" refers to a device or interface that allows a user to respond to questions from the server.
[2071] "Analysis means" refers to the algorithms and models that the server uses to analyze the user's emotions.
[2072] "Automatic generation means" refers to the function of the server to automatically generate code based on the user's input data and analysis results.
[2073] "Building means" refers to the function of the server to automatically organize files and folders based on the generated code.
[2074] The "verification and modification request means" refers to a device or interface that allows a user to verify the generated configuration and request modifications as necessary.
[2075] "Testing means" refers to frameworks and tools that allow the server to run automated tests on the generated code.
[2076] "Basic information" refers to initial setting information such as the name, function, and purpose of the application entered by the user.
[2077] "Additional Information" refers to detailed information required by the application, gathered through server-generated queries.
[2078] "Emotion analysis" refers to the process of inferring and analyzing a user's emotional state from their input and actions.
[2079] "Automatic generation" refers to the process by which the server automatically generates program code based on user input and analysis results.
[2080] "Folder structure" refers to the layout of the directories and file arrangement that contain the generated code.
[2081] "Automated testing" refers to a testing process run by the server to ensure that the generated code works as expected.
[2082] This invention is a system that automatically generates applications based on basic information provided by the user, and combines it with an emotion engine to recognize the user's emotions and improve the experience. This system works as follows.
[2083] Hardware and software used
[2084] The main components of the system include:
[2085] Hardware: The devices used by users (PCs, smartphones, tablets, etc.) and servers
[2086] Software: React (front-end), Node.js and Express (back-end), MongoDB (database), emotion engine, Jest and Supertest (automated testing frameworks)
[2087] Operation explanation
[2088] 1. Enter basic information
[2089] Users access the system using a terminal and enter basic information such as the application name, function, and purpose. During this process, the emotion engine recognizes and analyzes the user's emotions. The basic information entered by the user is sent from the terminal to the server. The emotion engine analyzes and records emotions from the user's sentences and behavioral patterns.
[2090] 2. Generate additional questions
[2091] The server generates questions to identify additional information based on the basic information. The emotion engine evaluates the user's emotional state and adjusts the content and format of the questions to avoid stress or confusion. The generated questions are sent to the device and displayed to the user.
[2092] 3. Answering questions
[2093] The user answers questions from the server via their device. During this answering process, the emotion engine analyzes the user's emotions and evaluates their level of satisfaction or whether they have any problems. The answer data is sent from the device to the server.
[2094] 4. Automatic code generation
[2095] The server considers the user's answers and the analysis results of the emotion engine, selects the optimal program template, and automatically generates application code. Specifically, it uses React for the front end, Node.js and Express for the back end, and MongoDB for the database. The generated code is stored on the server.
[2096] 5. Building a file and folder structure
[2097] The server places the generated code in the appropriate directory and automatically creates a file and folder structure, for example:
[2098] / frontend
[2099] App.js
[2100] components /
[2101] services /
[2102] / backend
[2103] server.js
[2104] routes /
[2105] models /
[2106] / database
[2107] mongo.js
[2108] 6. Check the configuration and request corrections
[2109] The server sends the generated application configuration to the user. The user checks the configuration on their device and requests modifications if necessary. The emotion engine analyzes the user's feelings during this process as well, evaluating their level of satisfaction and stress. Feedback is sent from the device to the server, and modifications are made as necessary.
[2110] 7. Running automated tests
[2111] The server uses automated testing frameworks such as Jest and Supertest to run tests on the generated code. It provides test results at a time that best suits the user's emotional state and asks for feedback. If all tests pass, the final application is delivered to the user. It provides additional support, if necessary, taking into account the user's emotional state.
[2112] Example: Creating a TODO list app
[2113] For example:
[2114] 1. Enter basic information
[2115] Users input that they want to create a "to-do list app" and enter key functions such as "add task," "delete task," and "update task." The emotion engine analyzes the tone, speed, and frequency of mistakes in the writing to determine whether the user is enjoying themselves or feeling impatient.
[2116] 2. Generate additional questions
[2117] The server generates questions such as "What format do you want to save the task in?" and "Does user authentication require?" and sends them to the user. If the user finds a question difficult, the emotion engine simplifies the question or provides additional help information.
[2118] 3. Answering questions and analyzing
[2119] The user answers "database" and "yes." The emotion engine analyzes the user's emotions when answering and evaluates whether the content and format of the question were appropriate.
[2120] 4. Automatic code generation
[2121] Based on the answers, the server generates the optimal code, including React (front-end), Node.js and Express (back-end), and MongoDB (database).
[2122] 5. Building a file and folder structure
[2123] The server places the code in the appropriate directories and auto-generates the configuration, including / frontend, / backend, and / database directories as examples.
[2124] 6. Check the configuration and request corrections
[2125] The user checks the configuration and requests corrections if necessary. The emotion engine analyzes the user's feedback and evaluates whether the configuration meets expectations. If corrections are necessary, the server regenerates the code and provides it to the user.
[2126] 7. Running automated tests
[2127] The server runs automated tests to ensure the generated code works correctly. The emotion engine analyzes the test feedback and evaluates user satisfaction. If all tests pass, the final application is delivered to the user.
[2128] Prompt Sentence Examples
[2129] "We'd like you to create a new task management app. It should have the following features: add task, delete task, and edit task. It should also have user authentication capabilities. The data will be stored in a database."
[2130] In this way, the present invention can automatically generate applications in an efficient and user-friendly manner while taking into account the user's feelings.
[2131] The flow of the identification process in the second embodiment will be described with reference to FIG.
[2132] Step 1: User enters basic information
[2133] Input: The user inputs basic information such as "application name," "function," and "purpose" on the terminal.
[2134] Operation: When the user completes the input, the input data is sent from the terminal to the server.
[2135] Data processing: The server analyzes the received basic information and understands the user's wishes. The emotion engine analyzes the user's emotional state based on the tone of their writing and their typing speed, and records this in a database.
[2136] Output: Basic information data and sentiment analysis data are saved on the server.
[2137] Step 2: The server generates an additional question
[2138] Input: Basic information data and sentiment analysis data
[2139] How it works: The server uses basic information to generate questions to get the details needed by the application.
[2140] Data processing: The emotion engine evaluates the user's emotional state and adapts the content and format of the questions to suit the user's emotions.
[2141] Output: The generated question is sent to the terminal.
[2142] Step 3: User answers questions
[2143] Input: The question sent by the server
[2144] How it works: The user answers questions on the device and sends the answers from the device to the server.
[2145] Data processing: The emotion engine analyzes the answers to questions and the user's emotional state at the time of answering.
[2146] Output: The response data and analyzed emotion data are saved on the server.
[2147] Step 4: The server automatically generates the code
[2148] Input: Response data and sentiment analysis data
[2149] How it works: Based on the answers and the results of the emotion engine analysis, the server selects the most appropriate program template and automatically generates code.
[2150] Data processing: Using generative AI models, we generate code using React (front-end), Node.js and Express (back-end), and MongoDB (database).
[2151] Output: The generated code is saved on the server.
[2152] Step 5: The server builds the file and folder structure
[2153] Input: Generated code
[2154] How it works: The server places the generated code in the appropriate directories and builds a file and folder structure.
[2155] Data processing: Placing the code in the proper directory structure and linking relevant files within the folders.
[2156] Output: Files and folders will be generated with the following structure:
[2157] / frontend
[2158] App.js
[2159] components /
[2160] services /
[2161] / backend
[2162] server.js
[2163] routes /
[2164] models /
[2165] / database
[2166] mongo.js
[2167] Step 6: User reviews the generated configuration and requests modifications
[2168] Input: Generated files and folder structure
[2169] Operation: The server provides the generated configuration to the user, who can then check the configuration on the terminal and request modifications if necessary.
[2170] Data Processing: The emotion engine analyzes the user's feedback and emotional state to evaluate whether the configuration meets expectations.
[2171] Output: The correction request data is sent to the server and corrections are made as necessary.
[2172] Step 7: The server runs the automated tests
[2173] Input: Final generated code and configuration
[2174] How it works: The server runs tests against your code using an automated testing framework like Jest or Supertest.
[2175] Data processing: Analyze the test results and check for defects.
[2176] Output: The test results are reported to the user, and if all tests are passed, the final application is provided to the user. The emotion engine analyzes the test result feedback and evaluates the user's satisfaction.
[2177] (Application example 2)
[2178] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[2179] Conventional automatic application generation systems proceed without considering the user's emotions, which can cause stress and confusion for the user. Furthermore, particularly in brick-and-mortar stores, there is a lack of support tools to help store staff effectively handle customer service, resulting in inconsistent customer service quality. A system that solves these problems and improves the experience for users and store staff is needed.
[2180] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[2181] In this invention, the server includes an input means for the user to input basic information, an emotion analysis means for recognizing the user's emotions, and a generation means for the server to generate additional questions and send the questions to the user. This makes it possible to optimize the question and code generation process while taking the user's emotions into consideration. Furthermore, by including an information provision means for providing information to human service providers in physical stores, it is possible to support store clerks in effectively dealing with customers and improve the quality of customer service.
[2182] An "input means" is a device or software interface that allows a user to input basic information into an application.
[2183] "Emotion analysis means" refers to a technology or system for analyzing a user's input and behavior and recognizing their emotional state.
[2184] The "generation means" is a function that automatically generates necessary follow-up questions based on the basic information received by the server from the user and sends them to the user.
[2185] A "response means" is a device or software interface that allows a user to respond to questions received from the server.
[2186] "Automatic generation means" is a function that allows the server to automatically generate application code based on the user's answers and the results of sentiment analysis.
[2187] The "construction means" is a function that automatically constructs an appropriate file and folder structure based on the code generated by the server.
[2188] The "verification and modification request means" is a device or software interface that allows the user to verify the generated configuration and, if necessary, request modifications from the server.
[2189] A "testing means" is a device or software interface that allows the server to automatically test the generated code to ensure correct operation.
[2190] "Information provision means" is a function that provides real-time information for customer support and product suggestions to human service providers in physical stores.
[2191] The embodiment of the present invention will be described in detail using an example of a system in which a smart customer service assistant app is operated in a physical store.
[2192] System Configuration
[2193] This system consists of the following hardware and software:
[2194] Smart glasses or smartphone: A device used by the user (store clerk) to respond to customers, input basic information, and provide real-time information.
[2195] Server: The central unit for processing input data, sentiment analysis, question generation, code generation, file construction, and automated testing.
[2196] Sentiment analysis engine: A software module that analyzes user input and behavior to recognize emotional states.
[2197] Auto-generation engine: A software module that automatically generates application code based on the user's basic information and answers.
[2198] Test engine: A software module that automatically tests the behavior of generated application code.
[2199] Processing Flow
[2200] First, a user accesses the application using smart glasses or a smartphone and enters basic information such as the store name, the services offered, and the desired customer service style. At this time, the emotion analysis engine analyzes the user's emotions, such as whether they are relaxed or stressed, based on the tone of their writing, typing speed, frequency of mistakes, etc.
[2201] The server generates questions to identify additional information based on the received basic information. The generated questions are displayed on the screen of smart glasses or a smartphone. For example, a question might be, "What is your typical customer demographic?" To this, the user (store clerk) might respond, "Women in their 20s and 30s." The sentiment analysis engine then analyzes this response and evaluates the user's level of satisfaction or stress.
[2202] The server automatically generates appropriate code based on user responses and sentiment analysis results, using React Native for the front end, Node.js and Express for the back end, and Firebase for the database.
[2203] The generated code is automatically placed in the appropriate file and folder structure by the server, and the user is prompted for confirmation. The user can review this structure and request modifications if necessary. The sentiment analysis engine also analyzes the user's emotions and evaluates how the structure affects satisfaction and stress.
[2204] Finally, the server runs automated tests on the generated code. A test engine uses a testing framework such as Jest or Supertest to verify the behavior of the generated application code. If all tests pass, the final application is made available to users.
[2205] Specific examples
[2206] Prompt Sentence Examples
[2207] "Basic information provided by the user:
[2208] 1. Store name: Example: "Stylish Boutique"
[2209] 2. Services offered: Example: "Sale of women's clothing"
[2210] 3. Customer service style: e.g., "friendly and professional"
[2211] Questions generated by the emotion engine:
[2212] 1. What is your typical customer demographic?
[2213] 2. What are the characteristics of your best-selling products?
[2214] 3. What do you pay particular attention to to make your customers feel comfortable?
[2215] Example answer:
[2216] 1. "Women in their 20s and 30s"
[2217] 2. "Designs that reflect the latest trends and affordable prices"
[2218] 3. "Smiles and quick responses"
[2219] In this way, smart customer service assistant apps incorporating sentiment analysis can effectively support customer interactions in brick-and-mortar stores and improve the experience for both store associates and customers.
[2220] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[2221] Step 1:
[2222] A user accesses the application using smart glasses or a smartphone and inputs basic information (e.g., store name, services offered, customer service style, etc.). The input basic information is sent to the server as text data. The server analyzes the received basic information and evaluates the user's emotional state (e.g., whether they are relaxed or excited) using an emotion analysis engine.
[2223] Step 2:
[2224] The server generates questions based on the user's basic information to identify additional information needed. During this generation process, an emotion analysis engine takes the user's emotional state into account and adjusts the difficulty and format of the questions. The generated questions are sent to the user's smart glasses or smartphone and displayed.
[2225] Step 3:
[2226] The user answers questions sent from the server. The user's answers are sent as text data from the device to the server. The server analyzes the received answers and reevaluates the user's emotional state using an emotion analysis engine. This process measures the degree of satisfaction or stress the user feels in response to the questions.
[2227] Step 4:
[2228] The server automatically generates appropriate application code based on the user's answers and the results of sentiment analysis. For example, it uses React Native for the front end, Node.js and Express for the back end, and Firebase for the database. The generated code is stored on the server.
[2229] Step 5:
[2230] The server automatically creates the appropriate directory and file structure based on the generated code. For example, directories such as " / frontend," " / backend," and " / database" are created in the project root folder, and the relevant files are placed in each directory. This structure is then sent to the user's smart glasses or smartphone, where they can view it.
[2231] Step 6:
[2232] The user checks the generated configuration and requests corrections if necessary. If the user requests corrections, the information is sent back to the server from the device. The server analyzes the received feedback, evaluates the user's emotional state using an emotion analysis engine, and regenerates new code that reflects the corrections.
[2233] Step 7:
[2234] The server runs automated tests on the generated code using testing frameworks such as Jest and Supertest. The test results are stored on the server, and if all tests pass, the final application is provided to the user. The test results are then sent to the user's smart glasses or smartphone, where they are fed back to the user.
[2235] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[2236] 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> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with 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.
[2237] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[2238] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[2239] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[2240] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[2241] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[2242] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[2243] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[2244] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[2245] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[2246] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[2247] 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 USB (Universal Serial Bus) 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.
[2248] Alternatively, 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 in response to a request from the data processing device 12.
[2249] 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.
[2250] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[2251] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with 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 processing may be a single processor.
[2252] As an example of a system configured with a single 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 system that uses a processor that realizes the functions of an 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.
[2253] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[2254] The above-described description and illustrations are a detailed explanation 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, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects 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-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[2255] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[2256] The following is further disclosed regarding the above embodiment.
[2257] (Claim 1)
[2258] an input means for a user to input basic information;
[2259] generating means for the server to generate a follow-up question and transmit the question to the user;
[2260] a response means for the user to respond to the question;
[2261] An automatic generation means for the server to automatically generate a code;
[2262] a building means for building a file and folder structure based on the server-generated code;
[2263] A confirmation and modification request means for a user to confirm the generated configuration and request modification;
[2264] a test means for executing automated tests on the server;
[2265] A system including:
[2266] (Claim 2)
[2267] The server has a means for identifying additional information required based on basic information entered by the user.
[2268] 10. The system of claim 1.
[2269] (Claim 3)
[2270] When a user requests a modification, the server has a means to regenerate new code that reflects the modification.
[2271] 10. The system of claim 1.
[2272] "Example 1"
[2273] (Claim 1)
[2274] an input means for a user to input basic information;
[2275] generating means for the server to generate a follow-up question and transmit the question to the user;
[2276] a response means for the user to respond to the question;
[2277] An automatic generation means for the server to automatically generate a code;
[2278] a building means for building a file and folder structure based on the server-generated code;
[2279] A confirmation and modification request means for a user to confirm the generated configuration and request modification;
[2280] a test means for executing automated tests on the server;
[2281] A means of automatically generating questions using generative AI models;
[2282] A means to automatically generate code using generative AI models;
[2283] a means by which the server provides error notification and corrective instructions;
[2284] A system including:
[2285] (Claim 2)
[2286] The server has a means for identifying additional information required based on basic information entered by the user.
[2287] 10. The system of claim 1.
[2288] (Claim 3)
[2289] When a user requests a modification, the server has a means to regenerate new code that reflects the modification.
[2290] 10. The system of claim 1.
[2291] "Application Example 1"
[2292] (Claim 1)
[2293] an input means for a user to input basic information;
[2294] generating means for the server to generate a follow-up question and transmit the question to the user;
[2295] a response means for the user to respond to the question;
[2296] An automatic generation means for the server to automatically generate a code;
[2297] a building means for building a file and folder structure based on the server-generated code;
[2298] A confirmation and modification request means for a user to confirm the generated configuration and request modification;
[2299] a test means for executing automated tests on the server;
[2300] a specialized generation means for acquiring additional information related to the operation of a physical store and generating a store-specific application;
[2301] A function generating means for generating code including each function of the store application (customer information management, inventory management, coupon issuance, push notification, etc.);
[2302] A system including:
[2303] (Claim 2)
[2304] The server has a means for identifying additional information required based on basic information entered by the user.
[2305] 10. The system of claim 1.
[2306] (Claim 3)
[2307] When a user requests a modification, the server has a means to regenerate new code that reflects the modification.
[2308] 10. The system of claim 1.
[2309] "Example 2: Combining Emotion Engines"
[2310] (Claim 1)
[2311] an input means for a user to input basic information;
[2312] generating means for the server to generate a follow-up question and transmit the question to the user;
[2313] a response means for the user to respond to the question;
[2314] an analysis means for the server to analyze the user's emotions;
[2315] An automatic generation means for the server to automatically generate a code;
[2316] a building means for building a file and folder structure based on the server-generated code;
[2317] A confirmation and modification request means for a user to confirm the generated configuration and request modification;
[2318] a test means for executing automated tests on the server;
[2319] A system including:
[2320] (Claim 2)
[2321] 2. The system of claim 1, wherein the server has means for identifying required additional information based on basic information entered by the user, and means for adjusting the content and format of questions taking into account the emotional state of the user.
[2322] (Claim 3)
[2323] 2. The system according to claim 1, wherein the server has a means for regenerating new code that reflects the corrections made by the user, based on the results of sentiment analysis, when the user makes a correction request.
[2324] "Application example 2 when combining emotion engines"
[2325] (Claim 1)
[2326] an input means for a user to input basic information;
[2327] emotion analysis means for recognizing the emotion of a user;
[2328] generating means for the server to generate a follow-up question and transmit the question to the user;
[2329] a response means for the user to respond to the question;
[2330] An automatic generation means for the server to automatically generate a code;
[2331] a building means for building a file and folder structure based on the server-generated code;
[2332] A confirmation and modification request means for a user to confirm the generated configuration and request modification;
[2333] a test means for executing automated tests on the server;
[2334] Including information provision means for providing information to human service providers in physical stores
[2335] system.
[2336] (Claim 2)
[2337] The server has a means for identifying additional information required based on basic information entered by the user.
[2338] 10. The system of claim 1.
[2339] (Claim 3)
[2340] When a user requests a modification, the server has a means to regenerate new code that reflects the modification.
[2341] 10. The system of claim 1. [Explanation of symbols]
[2342] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. an input means for a user to input basic information; generating means for the server to generate a follow-up question and transmit the question to the user; response means for the user to answer questions; An automatic generation means for the server to automatically generate a code; a building means for building a file and folder structure based on the server-generated code; A confirmation and modification request means for a user to confirm the generated configuration and request modification; a test means for executing automated tests on the server; A system including:
2. The server has a means for identifying additional information required based on basic information entered by the user. The system of claim 1 .
3. When a user requests a modification, the server has a means to regenerate new code that reflects the modification. The system of claim 1 .
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A