System

The system efficiently converts and implements user natural language requirements into program functions using a reception, generation, and verification unit, addressing complexity issues in conventional technologies by leveraging AI to analyze and verify program functions, facilitating user-friendly program creation.

JP2026038940APending Publication Date: 2026-03-06SOFTBANK GROUP CORP
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-08-23
Publication Date
2026-03-06

AI Technical Summary

Technical Problem

Conventional technologies face challenges in efficiently converting user natural language requirements into program functions and implementing them due to complexity and difficulty in the process.

Method used

A system comprising a reception unit, generation unit, and verification unit that receives natural language requirements, analyzes them, generates appropriate program functions, implements them, and verifies their operation, utilizing a generation AI to learn from past program data and algorithms.

Benefits of technology

Enables efficient conversion and implementation of user natural language requirements into program functions, allowing users to create programs without programming knowledge, with features like real-time suggestions, customizable input methods, and error prevention.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026038940000001_ABST
    Figure 2026038940000001_ABST
Patent Text Reader

Abstract

An object of a system according to an embodiment is to efficiently convert a natural language requirement of a user into a function of a program and implement the function.SOLUTION: A system according to an embodiment includes a reception unit, a generation unit, an implementation unit, and a confirmation unit. The reception unit receives a requirement of a natural language from a user. The generation unit analyzes the requirement received by the reception unit and generates a function of the program. The implementing unit implements the function generated by the generating unit. The confirmation unit performs operation confirmation of the function implemented by the implementation unit.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

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 technologies have had the problem that the process of converting a user's natural language requirements into program functions and implementing them is complicated and difficult to carry out efficiently.

[0005] The system according to the embodiment aims to efficiently convert a user's natural language requirements into program functions and implement them. [Means for solving the problem]

[0006] The system according to the embodiment includes a reception unit, a generation unit, an implementation unit, and a verification unit. The reception unit receives requirements in natural language from a user. The generation unit analyzes the requirements received by the reception unit and generates program functions. The implementation unit implements the functions generated by the generation unit. The verification unit verifies the operation of the functions implemented by the implementation unit. [Effects of the Invention]

[0007] The system according to the embodiment can efficiently convert a user's natural language requirements into program functions and implement them. [Brief explanation of the drawings]

[0008] [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. DETAILED DESCRIPTION OF THE INVENTION

[0009] 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.

[0010] First, the terms used in the following description will be explained.

[0011] 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, the 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), an APU (Accelerated Processing Unit), or a TPU (Tensor Processing Unit).

[0012] 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.

[0013] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.

[0014] In the following embodiments, a communication I / F (Interface) with a 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), and Bluetooth (registered trademark).

[0015] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. 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."

[0016] [First embodiment] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.

[0017] 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.

[0018] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and 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).

[0019] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.

[0020] The reception device 38 includes a touch panel 38A and a microphone 38B, and receives user input. The touch panel 38A detects contact with a pointer (for example, a pen or a finger) to receive user input by the touch of the pointer. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 (see FIG. 2) acquires the data indicating the user input.

[0021] Output device 40 includes a display 40A and a speaker 40B, and presents data to a user by outputting the data in a form of expression that the user can perceive (e.g., audio and / or text). Display 40A displays visible information such as text and images in accordance with instructions from processor 46. Speaker 40B outputs audio in accordance with instructions from processor 46. 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.

[0022] 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.

[0023] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.

[0024] 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.

[0025] 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. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.

[0026] In the smart device 14, the specific processing is performed by the processor 46. The storage 50 stores a specific processing program 60. The specific processing program 60 is used together with the specific processing program 56 by the data processing system 10. The processor 46 reads the specific processing program 60 from the storage 50 and executes the read specific processing program 60 on the RAM 48. The specific processing is realized by the processor 46 operating as the control unit 46A in accordance with the specific processing program 60 executed on the RAM 48. Note that the smart device 14 has a data generation model and an emotion identification model similar to the data generation model 58 and the emotion identification model 59, and can also perform processing similar to that of the specific processing unit 290 using these models.

[0027] Note that a device other than the data processing device 12 may have the data generation model 58. For example, a server device (e.g., a generation server) may have the data generation model 58. In this case, the data processing device 12 obtains a processing result (prediction result, etc.) using the data generation model 58 by communicating with the server device having the data generation model 58. Furthermore, the data processing device 12 may be a server device, or may be a terminal device owned by a user (e.g., a mobile phone, a robot, a home appliance, etc.). Next, an example of processing by the data processing system 10 according to the first embodiment will be described.

[0028] (Example 1) A program generation system according to an embodiment of the present invention accepts requirements entered by a user in natural language, analyzes them with a generation AI, generates appropriate program functions, implements them, and verifies their operation. The program generation system accepts requirements entered by a user in natural language, analyzes them, and generates appropriate program functions. The generated functions are written in a programming language specified by the user. For example, the program generation system accepts a requirement such as "retrieve and display data from a database." The generation AI then analyzes the requirement and generates a function including steps for connecting to the database, retrieving data, and displaying the data. The generated functions are written in a language specified by the user, such as Python or JavaScript (registered trademark). Finally, the generated functions are automatically implemented and their operation is verified. The generation AI executes the generated functions and verifies their operation. For example, it verifies whether a function that retrieves and displays data from a database operates correctly. This allows the user to verify the program's operation and make necessary modifications. This allows the program generation system to easily create programs even without programming knowledge. For example, a user simply enters requirements in natural language, and the generation AI automatically generates and implements the functions. This eliminates the need to learn programming and check for bugs, allowing you to create programs more efficiently.

[0029] A program generation system according to an embodiment includes a receiving unit, a generating unit, an implementing unit, and a verifying unit. The receiving unit receives natural language requirements from a user. For example, the user inputs a requirement such as "retrieve and display data from a database." The generating unit uses a generation AI to analyze the requirements received by the receiving unit and generate a program function. For example, the generation AI learns past program data and algorithms and generates an optimal function based on the input requirements. The generated function is written in a programming language specified by the user. For example, the function is generated in a language specified by the user, such as Python or JavaScript. The implementing unit automatically implements the function generated by the generating unit. For example, the implementing unit converts the generated function into executable code and deploys it. The verifying unit checks the operation of the function implemented by the implementing unit. For example, the verifying unit executes the generated function and checks whether it operates correctly. As a result, the program generation system according to an embodiment accepts and analyzes natural language requirements from a user, generates functions, implements them, and checks their operation, allowing users to easily create programs without any programming knowledge.

[0030] The generation unit can generate a function by learning past program data or algorithms. The generation unit generates a function by learning, for example, past program data. For example, the generation unit learns data from a specific project or publicly available open source data. The generation unit can also generate a function by learning an algorithm. For example, the generation unit learns a machine learning algorithm or a deep learning algorithm. In this way, by learning past program data and algorithms, a more appropriate function can be generated.

[0031] The generation unit can generate a function in a programming language specified by the user. The generation unit generates a function in Python, for example. For example, a function in Python that includes steps for connecting to a database, retrieving data, and displaying data is generated. The generation unit can also generate a function in JavaScript. For example, a function is generated in a language specified by the user. This allows the user to create a program in a language that they are comfortable with.

[0032] The verification unit can check the operation of the generated function and provide the result to the user. For example, the verification unit executes the generated function and checks whether it operates correctly. For example, it checks whether a function that retrieves and displays data from a database operates correctly. The verification unit can also provide the user with the results of the operation check. For example, it provides the user with a test result report or error log. In this way, by checking the operation of the generated function and providing the results to the user, the user can check the operation of the program and make corrections as necessary.

[0033] The implementation unit can automatically implement the generated functions. For example, the implementation unit converts the generated functions into executable code and deploys them. For example, a script generation or automatic deployment tool is used. Furthermore, by automatically implementing the generated functions, the implementation unit can save the user the trouble of manually implementing them. By automatically implementing the generated functions, the implementation unit can save the user the trouble of manually implementing them.

[0034] The reception unit can receive requirements input by the user in natural language. For example, the reception unit receives a requirement such as "retrieve and display data from a database" from the user. For example, the reception unit receives requirements in text format or voice format. By receiving requirements input by the user in natural language, requirements can be input even if the user does not have programming knowledge.

[0035] The reception unit can analyze the user's past requirement input history and select the optimal reception method. For example, the reception unit automatically displays requirements that the user has frequently input in the past as candidates. The reception unit can also preferentially suggest input methods (voice, text, etc.) that the user has used in the past. The reception unit can also predict and suggest requirements that will be used in a specific time period based on the user's past input history. In this way, the optimal reception method can be selected by analyzing the user's past requirement input history.

[0036] The reception unit can filter requirements based on the user's current project or area of ​​interest when receiving requirements. For example, the reception unit preferentially displays requirements related to the project the user is currently working on. The reception unit can also filter and display related requirements based on the user's area of ​​interest. The reception unit can also suggest related requirements by referring to the user's past project history. In this way, by filtering requirements based on the user's current project or area of ​​interest, highly relevant requirements can be preferentially received.

[0037] When accepting requirements, the acceptance unit can select the optimal acceptance means depending on the user's input method. For example, when the user inputs requirements by voice, the acceptance unit accepts the requirements using voice recognition technology. Furthermore, when the user inputs requirements by text, the acceptance unit can also accept the requirements using text analysis technology. Furthermore, when the user inputs requirements by image, the acceptance unit can also accept the requirements using image recognition technology. In this way, by selecting the optimal acceptance means depending on the user's input method, requirements can be accepted more efficiently.

[0038] When accepting requirements, the acceptance unit can prioritize accepting highly relevant requirements by taking into account the user's geographical location information. For example, when the user is in a specific area, the acceptance unit prioritizes accepting requirements related to that area. Furthermore, when the user is moving, the acceptance unit can also prioritize accepting related requirements based on the user's current location. Furthermore, when the user is in a specific location, the acceptance unit can also prioritize accepting requirements related to that location. In this way, by taking into account the user's geographical location information, highly relevant requirements can be prioritized.

[0039] When receiving a requirement, the reception unit can analyze the user's social media activity and receive related requirements. The reception unit can receive related requirements based on, for example, information shared by the user on social media. The reception unit can also analyze the user's social media activity history and receive related requirements. The reception unit can also receive related requirements by referring to the activities of the user's friends on social media. In this way, related requirements can be received by analyzing the user's social media activity.

[0040] The reception unit can customize the reception method by reflecting the user's past feedback when receiving requirements. The reception unit can improve the reception method based on, for example, feedback provided by the user in the past. The reception unit can also analyze the user's past feedback and propose the optimal reception method. The reception unit can also customize the reception method by referring to the user's feedback history. In this way, the reception method can be customized by reflecting the user's past feedback.

[0041] The generator can adjust the level of detail of the generation based on the importance of the requirement when generating the function. For example, the generator generates a detailed function for a requirement with high importance. The generator can also generate a simple function for a requirement with low importance. The generator can also adjust the level of detail of comments and error handling according to the importance of the requirement. In this way, by adjusting the level of detail of the generation based on the importance of the requirement, it is possible to generate a more appropriate function.

[0042] When generating a function, the generator can apply different generation algorithms depending on the category of the requirement. For example, the generator applies a database-specific generation algorithm to requirements related to database operations. The generator can also apply a UI-specific generation algorithm to requirements related to the user interface. The generator can also apply a communication-specific generation algorithm to requirements related to network communication. In this way, by applying different generation algorithms depending on the category of the requirement, more appropriate functions can be generated.

[0043] When generating a function, the generation unit can improve the accuracy of the generation by referring to the user's past generation results. For example, the generation unit generates an optimal function for similar requirements by referring to functions generated by the user in the past. The generation unit can also analyze the user's past generation results and improve the generation algorithm. The generation unit can also learn error patterns from the user's past generation results and generate functions with fewer errors. In this way, the generation accuracy can be improved by referring to the user's past generation results.

[0044] When generating functions, the generation unit can determine the priority of generation based on the submission time of the requirements. For example, the generation unit generates functions with priority for requirements whose deadlines are approaching. The generation unit can also postpone the generation of functions for requirements whose submission time is far away. The generation unit can also adjust the order of generation according to the submission time. In this way, by determining the priority of generation based on the submission time of the requirements, functions can be generated more efficiently.

[0045] The generation unit can adjust the order of generation based on the relevance of requirements when generating functions. For example, the generation unit generates functions with priority for highly relevant requirements. The generation unit can also postpone the generation of functions for less relevant requirements. The generation unit can also adjust the order of generation according to the relevance of requirements. In this way, by adjusting the order of generation based on the relevance of requirements, functions can be generated more efficiently.

[0046] When generating a function, the generator can adjust the use of technical terminology in the generation according to the user's level of expertise. For example, if the user is a beginner, the generator can generate a concise function that avoids technical terminology. If the user is an intermediate user, the generator can also generate a function that uses technical terminology appropriately. If the user is an advanced user, the generator can also generate a detailed function that uses a lot of technical terminology. In this way, by adjusting the use of technical terminology according to the user's level of expertise, a more appropriate function can be generated.

[0047] The implementation unit can adjust the level of detail of the implementation based on the importance of the generated function during implementation. For example, the implementation unit performs detailed implementation for functions with high importance. The implementation unit can also perform simple implementation for functions with low importance. The implementation unit can also adjust the level of detail of comments and error handling according to the importance of the function. This allows for more appropriate implementation by adjusting the level of detail of the implementation based on the importance of the generated function.

[0048] The implementation unit can apply different implementation algorithms depending on the category of the function during implementation. For example, the implementation unit applies a database-specific implementation algorithm to a function related to database operations. The implementation unit can also apply a UI-specific implementation algorithm to a function related to a user interface. The implementation unit can also apply a communication-specific implementation algorithm to a function related to network communication. This allows for more appropriate implementation by applying different implementation algorithms depending on the category of the function.

[0049] During implementation, the implementation unit can improve the accuracy of the implementation by referring to the user's past implementation results. For example, the implementation unit can refer to functions that the user has implemented in the past to perform the optimal implementation for similar requirements. The implementation unit can also analyze the user's past implementation results and improve the implementation algorithm. The implementation unit can also learn error patterns from the user's past implementation results and perform implementation with fewer errors. In this way, the accuracy of the implementation can be improved by referring to the user's past implementation results.

[0050] During implementation, the implementation unit can determine the priority of implementation based on the submission date of the functions. For example, the implementation unit prioritizes implementation for functions with an approaching deadline. The implementation unit can also postpone implementation for functions with a distant submission date. The implementation unit can also adjust the order of implementation depending on the submission date. Thus, by determining the priority of implementation based on the submission date of the functions, more efficient implementation is possible.

[0051] During implementation, the implementation unit can adjust the order of implementation based on the relevance of functions. For example, the implementation unit prioritizes implementation of highly relevant functions. The implementation unit can also postpone implementation of less relevant functions. The implementation unit can also adjust the order of implementation based on the relevance of functions. This allows for more efficient implementation by adjusting the order of implementation based on the relevance of functions.

[0052] During implementation, the implementation unit can adjust the use of technical terminology in the implementation according to the user's level of expertise. For example, if the user is a beginner, the implementation unit can provide a concise implementation that avoids technical terminology. If the user is an intermediate user, the implementation unit can also provide an implementation that uses a moderate amount of technical terminology. If the user is an advanced user, the implementation unit can also provide a detailed implementation that uses a lot of technical terminology. This allows for more appropriate implementation by adjusting the use of technical terminology according to the user's level of expertise.

[0053] The checking unit can adjust the level of detail of the check based on the importance of the generated function when checking the operation. For example, the checking unit performs a detailed check of the operation for a function with a high level of importance. The checking unit can also perform a simple check of the operation for a function with a low level of importance. The checking unit can also adjust the level of detail of the check according to the importance of the function. This allows for more appropriate operation checking by adjusting the level of detail of the check based on the importance of the generated function.

[0054] When checking operation, the checking unit can apply different checking algorithms depending on the category of the function. For example, the checking unit applies a database-specific checking algorithm to a function related to database operations. The checking unit can also apply a UI-specific checking algorithm to a function related to a user interface. The checking unit can also apply a communication-specific checking algorithm to a function related to network communication. In this way, applying different checking algorithms depending on the category of the function enables more appropriate operation check.

[0055] When checking the operation, the checking unit can improve the accuracy of the check by referring to the user's past check results. For example, the checking unit can refer to functions that the user has checked in the past to perform the optimal check for similar requirements. The checking unit can also analyze the user's past check results and improve the check algorithm. The checking unit can also learn error patterns from the user's past check results and perform checks with fewer errors. In this way, the accuracy of the check can be improved by referring to the user's past check results.

[0056] When checking the operation, the checking unit can determine the priority of the check based on the submission time of the function. For example, the checking unit can check functions with an approaching deadline first. The checking unit can also postpone checking functions with a more distant submission time. The checking unit can also adjust the order of the checks depending on the submission time. In this way, by determining the priority of the check based on the submission time of the function, operation checks can be performed more efficiently.

[0057] The checking unit can adjust the order of checking based on the relevance of functions when checking the operation. For example, the checking unit prioritizes checking of highly related functions. The checking unit can also postpone checking of less related functions. The checking unit can also adjust the order of checking based on the relevance of functions. This allows for more efficient operation checking by adjusting the order of checking based on the relevance of functions.

[0058] The confirmation unit can adjust the use of technical terms in the confirmation depending on the user's level of expertise when confirming the operation. For example, if the user is a beginner, the confirmation unit can perform a concise confirmation that avoids technical terms. If the user is an intermediate user, the confirmation unit can also perform a confirmation that uses technical terms appropriately. If the user is an advanced user, the confirmation unit can also perform a detailed confirmation that uses a lot of technical terms. This allows for more appropriate operation confirmation by adjusting the use of technical terms depending on the user's level of expertise.

[0059] The system according to the embodiment is not limited to the above-described example, and various modifications are possible, for example, as follows.

[0060] The reception unit can analyze the user's input in real time and provide appropriate suggestions as the user enters the information. For example, if the user begins to enter "retrieve and display data from the database," the reception unit will display suggestions such as "database connection," "data retrieval," and "data display" in real time. The reception unit can also present related sample code and templates before the user completes their input. This allows the user to receive appropriate support as they enter their requirements, enabling them to enter their requirements efficiently.

[0061] The generator can analyze the user's past program generation history and optimize the functions to be generated. For example, it collects performance data on functions the user has generated in the past and generates an optimal function for similar requirements. The generator can also improve the generation algorithm based on the user's past feedback. Furthermore, the generator can learn specific patterns from the user's past generation history and generate functions with fewer errors. This makes it possible to generate higher quality functions by utilizing the user's past generation history.

[0062] When generating functions, the generator can determine the generation priority taking into account the progress of the user's current project. For example, if the project deadline is approaching, the generator can generate functions with priority. The generator can also adjust the level of detail of the functions to be generated according to the progress of the project. Furthermore, the generator can optimally allocate required resources based on the progress of the project. This allows functions to be generated efficiently according to the progress of the project.

[0063] When checking the operation of a generated function, the checking unit can improve the accuracy of the check by referring to the user's past check results. For example, the checking unit can learn error patterns of functions checked by the user in the past and check to prevent similar errors from occurring. The checking unit can also improve the checking algorithm based on the user's past feedback. Furthermore, the checking unit can learn specific patterns from the user's past check history and perform operation checks efficiently. This allows for more accurate operation checks to be performed by utilizing the user's past check results.

[0064] When implementing a generated function, the implementation unit can improve the accuracy of the implementation by referring to the user's past implementation results. For example, the implementation unit can collect performance data of functions previously implemented by the user and perform optimal implementation for similar requirements. The implementation unit can also improve the implementation algorithm based on the user's past feedback. Furthermore, the implementation unit can learn specific patterns from the user's past implementation history and perform implementation with fewer errors. This makes it possible to utilize the user's past implementation results to perform higher quality implementation.

[0065] The processing flow of the first embodiment will be briefly explained below.

[0066] Step 1: The reception unit receives a requirement in natural language from the user. For example, the user inputs a requirement such as "retrieve and display data from a database." Step 2: The generator uses a generation AI to analyze the requirements received by the reception unit and generate a program function. For example, the generation AI may learn from past program data and algorithms and generate an optimal function based on the input requirements. The generated function is written in a programming language specified by the user. For example, the function is generated in a language specified by the user, such as Python or JavaScript. Step 3: The implementation unit automatically implements the functions generated by the generation unit, for example, converting the generated functions into executable code and deploying them. Step 4: The verification unit checks the operation of the functions implemented by the implementation unit. For example, it executes the generated functions and checks whether they operate correctly.

[0067] (Example 2) A program generation system according to an embodiment of the present invention accepts requirements entered by a user in natural language, analyzes them with a generation AI, generates appropriate program functions, implements them, and verifies their operation. The program generation system accepts requirements entered by a user in natural language, analyzes them, and generates appropriate program functions. The generated functions are written in a programming language specified by the user. For example, a user may enter a requirement such as "retrieve and display data from a database." The generation AI then analyzes the requirement and generates a function that includes steps for connecting to the database, retrieving data, and displaying the data. The generated functions are written in a language specified by the user, such as Python or JavaScript. Finally, the generated functions are automatically implemented and their operation is verified. The generation AI executes the generated functions and verifies their operation. For example, it verifies whether a function that retrieves and displays data from a database operates correctly. This allows users to verify the program's operation and make necessary modifications. This allows the program generation system to easily create programs even without programming knowledge. For example, a user simply enters requirements in natural language, and the generation AI automatically generates and implements the functions. This eliminates the need to learn programming and check for bugs, allowing you to create programs more efficiently.

[0068] A program generation system according to an embodiment includes a receiving unit, a generating unit, an implementing unit, and a verifying unit. The receiving unit receives natural language requirements from a user. For example, the user inputs a requirement such as "retrieve and display data from a database." The generating unit uses a generation AI to analyze the requirements received by the receiving unit and generate a program function. For example, the generation AI learns past program data and algorithms and generates an optimal function based on the input requirements. The generated function is written in a programming language specified by the user. For example, the function is generated in a language specified by the user, such as Python or JavaScript. The implementing unit automatically implements the function generated by the generating unit. For example, the implementing unit converts the generated function into executable code and deploys it. The verifying unit checks the operation of the function implemented by the implementing unit. For example, the verifying unit executes the generated function and checks whether it operates correctly. As a result, the program generation system according to an embodiment accepts and analyzes natural language requirements from a user, generates functions, implements them, and checks their operation, allowing users to easily create programs without any programming knowledge.

[0069] The generation unit can generate a function by learning past program data or algorithms. The generation unit generates a function by learning, for example, past program data. For example, the generation unit learns data from a specific project or publicly available open source data. The generation unit can also generate a function by learning an algorithm. For example, the generation unit learns a machine learning algorithm or a deep learning algorithm. In this way, by learning past program data and algorithms, a more appropriate function can be generated.

[0070] The generation unit can generate a function in a programming language specified by the user. The generation unit generates a function in Python, for example. For example, a function in Python that includes steps for connecting to a database, retrieving data, and displaying data is generated. The generation unit can also generate a function in JavaScript. For example, a function is generated in a language specified by the user. This allows the user to create a program in a language that they are comfortable with.

[0071] The verification unit can check the operation of the generated function and provide the result to the user. For example, the verification unit executes the generated function and checks whether it operates correctly. For example, it checks whether a function that retrieves and displays data from a database operates correctly. The verification unit can also provide the user with the results of the operation check. For example, it provides the user with a test result report or error log. In this way, by checking the operation of the generated function and providing the results to the user, the user can check the operation of the program and make corrections as necessary.

[0072] The implementation unit can automatically implement the generated functions. For example, the implementation unit converts the generated functions into executable code and deploys them. For example, a script generation or automatic deployment tool is used. Furthermore, by automatically implementing the generated functions, the implementation unit can save the user the trouble of manually implementing them. By automatically implementing the generated functions, the implementation unit can save the user the trouble of manually implementing them.

[0073] The reception unit can receive requirements input by the user in natural language. For example, the reception unit receives a requirement such as "retrieve and display data from a database" from the user. For example, the reception unit receives requirements in text format or voice format. By receiving requirements input by the user in natural language, requirements can be input even if the user does not have programming knowledge.

[0074] The reception unit can estimate the user's emotions and adjust the method for accepting requirements based on the estimated user emotions. For example, if the user is feeling stressed, the reception unit can provide a simple interface and minimize input steps. Furthermore, if the user is relaxed, the reception unit can provide detailed input options and suggest a customizable input method. Furthermore, if the user is in a hurry, the reception unit can prioritize voice input to enable quick input of requirements. This allows for more appropriate requirements acceptance by adjusting the method for accepting requirements according to the user's emotions. The emotion estimation is realized using an emotion estimation function, such as an emotion engine or a generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0075] The reception unit can analyze the user's past requirement input history and select the optimal reception method. For example, the reception unit automatically displays requirements that the user has frequently input in the past as candidates. The reception unit can also preferentially suggest input methods (voice, text, etc.) that the user has used in the past. The reception unit can also predict and suggest requirements that will be used in a specific time period based on the user's past input history. In this way, the optimal reception method can be selected by analyzing the user's past requirement input history.

[0076] The reception unit can filter requirements based on the user's current project or area of ​​interest when receiving requirements. For example, the reception unit preferentially displays requirements related to the project the user is currently working on. The reception unit can also filter and display related requirements based on the user's area of ​​interest. The reception unit can also suggest related requirements by referring to the user's past project history. In this way, by filtering requirements based on the user's current project or area of ​​interest, highly relevant requirements can be preferentially received.

[0077] When accepting requirements, the acceptance unit can select the optimal acceptance means depending on the user's input method. For example, when the user inputs requirements by voice, the acceptance unit accepts the requirements using voice recognition technology. Furthermore, when the user inputs requirements by text, the acceptance unit can also accept the requirements using text analysis technology. Furthermore, when the user inputs requirements by image, the acceptance unit can also accept the requirements using image recognition technology. In this way, by selecting the optimal acceptance means depending on the user's input method, requirements can be accepted more efficiently.

[0078] The reception unit can estimate the user's emotions and determine the priority of requirements to be accepted based on the estimated user emotions. For example, when the user is feeling stressed, the reception unit can prioritize accepting requirements with high importance. Furthermore, when the user is relaxed, the reception unit can prioritize accepting detailed requirements. Furthermore, when the user is in a hurry, the reception unit can prioritize accepting requirements that require quick processing. This allows for more appropriate requirement acceptance by determining the priority of requirements according to the user's emotions. Emotion estimation is realized using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0079] When accepting requirements, the acceptance unit can prioritize accepting highly relevant requirements by taking into account the user's geographical location information. For example, when the user is in a specific area, the acceptance unit prioritizes accepting requirements related to that area. Furthermore, when the user is moving, the acceptance unit can also prioritize accepting related requirements based on the user's current location. Furthermore, when the user is in a specific location, the acceptance unit can also prioritize accepting requirements related to that location. In this way, by taking into account the user's geographical location information, highly relevant requirements can be prioritized.

[0080] When receiving a requirement, the reception unit can analyze the user's social media activity and receive related requirements. The reception unit can receive related requirements based on, for example, information shared by the user on social media. The reception unit can also analyze the user's social media activity history and receive related requirements. The reception unit can also receive related requirements by referring to the activities of the user's friends on social media. In this way, related requirements can be received by analyzing the user's social media activity.

[0081] The reception unit can customize the reception method by reflecting the user's past feedback when receiving requirements. The reception unit can improve the reception method based on, for example, feedback provided by the user in the past. The reception unit can also analyze the user's past feedback and propose the optimal reception method. The reception unit can also customize the reception method by referring to the user's feedback history. In this way, the reception method can be customized by reflecting the user's past feedback.

[0082] The generation unit can estimate the user's emotions and adjust the expression method of function generation based on the estimated user's emotions. For example, if the user is relaxed, the generation unit generates a function with detailed comments. If the user is in a hurry, the generation unit can also generate a concise function. If the user is excited, the generation unit can also generate visually appealing code. This allows for the generation of a more appropriate function by adjusting the expression method of function generation according to the user's emotions. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to these examples.

[0083] The generator can adjust the level of detail of the generation based on the importance of the requirement when generating the function. For example, the generator generates a detailed function for a requirement with high importance. The generator can also generate a simple function for a requirement with low importance. The generator can also adjust the level of detail of comments and error handling according to the importance of the requirement. In this way, by adjusting the level of detail of the generation based on the importance of the requirement, it is possible to generate a more appropriate function.

[0084] When generating a function, the generator can apply different generation algorithms depending on the category of the requirement. For example, the generator applies a database-specific generation algorithm to requirements related to database operations. The generator can also apply a UI-specific generation algorithm to requirements related to the user interface. The generator can also apply a communication-specific generation algorithm to requirements related to network communication. In this way, by applying different generation algorithms depending on the category of the requirement, more appropriate functions can be generated.

[0085] When generating a function, the generation unit can improve the accuracy of the generation by referring to the user's past generation results. For example, the generation unit generates an optimal function for similar requirements by referring to functions generated by the user in the past. The generation unit can also analyze the user's past generation results and improve the generation algorithm. The generation unit can also learn error patterns from the user's past generation results and generate functions with fewer errors. In this way, the generation accuracy can be improved by referring to the user's past generation results.

[0086] The generation unit can estimate the user's emotion and adjust the length of the function to be generated based on the estimated user emotion. For example, if the user is relaxed, the generation unit generates a long function with detailed comments. If the user is in a hurry, the generation unit can also generate a concise and short function. If the user is excited, the generation unit can also generate visually appealing code. This allows for the generation of a more appropriate function by adjusting the length of the function to be generated according to the user's emotion. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to these examples.

[0087] When generating functions, the generation unit can determine the priority of generation based on the submission time of the requirements. For example, the generation unit generates functions with priority for requirements whose deadlines are approaching. The generation unit can also postpone the generation of functions for requirements whose submission time is far away. The generation unit can also adjust the order of generation according to the submission time. In this way, by determining the priority of generation based on the submission time of the requirements, functions can be generated more efficiently.

[0088] The generation unit can adjust the order of generation based on the relevance of requirements when generating functions. For example, the generation unit generates functions with priority for highly relevant requirements. The generation unit can also postpone the generation of functions for less relevant requirements. The generation unit can also adjust the order of generation according to the relevance of requirements. In this way, by adjusting the order of generation based on the relevance of requirements, functions can be generated more efficiently.

[0089] When generating a function, the generator can adjust the use of technical terminology in the generation according to the user's level of expertise. For example, if the user is a beginner, the generator can generate a concise function that avoids technical terminology. If the user is an intermediate user, the generator can also generate a function that uses technical terminology appropriately. If the user is an advanced user, the generator can also generate a detailed function that uses a lot of technical terminology. In this way, by adjusting the use of technical terminology according to the user's level of expertise, a more appropriate function can be generated.

[0090] The implementation unit can estimate the user's emotions and adjust the implementation method based on the estimated user emotions. For example, if the user is relaxed, the implementation unit can provide detailed commentary for the implementation. If the user is in a hurry, the implementation unit can also provide a concise implementation. If the user is excited, the implementation unit can also provide a visually appealing implementation. This allows for more appropriate implementation by adjusting the implementation method according to the user's emotions. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to these examples.

[0091] The implementation unit can adjust the level of detail of the implementation based on the importance of the generated function during implementation. For example, the implementation unit performs detailed implementation for functions with high importance. The implementation unit can also perform simple implementation for functions with low importance. The implementation unit can also adjust the level of detail of comments and error handling according to the importance of the function. This allows for more appropriate implementation by adjusting the level of detail of the implementation based on the importance of the generated function.

[0092] The implementation unit can apply different implementation algorithms depending on the category of the function during implementation. For example, the implementation unit applies a database-specific implementation algorithm to a function related to database operations. The implementation unit can also apply a UI-specific implementation algorithm to a function related to a user interface. The implementation unit can also apply a communication-specific implementation algorithm to a function related to network communication. This allows for more appropriate implementation by applying different implementation algorithms depending on the category of the function.

[0093] During implementation, the implementation unit can improve the accuracy of the implementation by referring to the user's past implementation results. For example, the implementation unit can refer to functions that the user has implemented in the past to perform the optimal implementation for similar requirements. The implementation unit can also analyze the user's past implementation results and improve the implementation algorithm. The implementation unit can also learn error patterns from the user's past implementation results and perform implementation with fewer errors. In this way, the accuracy of the implementation can be improved by referring to the user's past implementation results.

[0094] The implementation unit can estimate the user's emotions and determine the priority of functions to be implemented based on the estimated user's emotions. For example, if the user is feeling stressed, the implementation unit can prioritize implementing functions with high importance. Furthermore, if the user is relaxed, the implementation unit can also prioritize implementing detailed functions. Furthermore, if the user is in a hurry, the implementation unit can also prioritize implementing functions that require quick processing. This enables more appropriate implementation by determining the priority of functions according to the user's emotions. Emotion estimation is realized using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0095] During implementation, the implementation unit can determine the priority of implementation based on the submission date of the functions. For example, the implementation unit prioritizes implementation for functions with an approaching deadline. The implementation unit can also postpone implementation for functions with a distant submission date. The implementation unit can also adjust the order of implementation depending on the submission date. Thus, by determining the priority of implementation based on the submission date of the functions, more efficient implementation is possible.

[0096] During implementation, the implementation unit can adjust the order of implementation based on the relevance of functions. For example, the implementation unit prioritizes implementation of highly relevant functions. The implementation unit can also postpone implementation of less relevant functions. The implementation unit can also adjust the order of implementation based on the relevance of functions. This allows for more efficient implementation by adjusting the order of implementation based on the relevance of functions.

[0097] During implementation, the implementation unit can adjust the use of technical terminology in the implementation according to the user's level of expertise. For example, if the user is a beginner, the implementation unit can provide a concise implementation that avoids technical terminology. If the user is an intermediate user, the implementation unit can also provide an implementation that uses a moderate amount of technical terminology. If the user is an advanced user, the implementation unit can also provide a detailed implementation that uses a lot of technical terminology. This allows for more appropriate implementation by adjusting the use of technical terminology according to the user's level of expertise.

[0098] The confirmation unit can estimate the user's emotions and adjust the operation confirmation method based on the estimated user emotions. For example, if the user is nervous, the confirmation unit can provide a simple, highly visible confirmation method. If the user is relaxed, the confirmation unit can also provide a confirmation method that includes detailed information. If the user is in a hurry, the confirmation unit can also provide a confirmation method that focuses on the main points. This allows for more appropriate operation confirmation by adjusting the operation confirmation method according to the user's emotions. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to these examples.

[0099] The checking unit can adjust the level of detail of the check based on the importance of the generated function when checking the operation. For example, the checking unit performs a detailed check of the operation for a function with a high level of importance. The checking unit can also perform a simple check of the operation for a function with a low level of importance. The checking unit can also adjust the level of detail of the check according to the importance of the function. This allows for more appropriate operation checking by adjusting the level of detail of the check based on the importance of the generated function.

[0100] When checking operation, the checking unit can apply different checking algorithms depending on the category of the function. For example, the checking unit applies a database-specific checking algorithm to a function related to database operations. The checking unit can also apply a UI-specific checking algorithm to a function related to a user interface. The checking unit can also apply a communication-specific checking algorithm to a function related to network communication. In this way, applying different checking algorithms depending on the category of the function enables more appropriate operation check.

[0101] When checking the operation, the checking unit can improve the accuracy of the check by referring to the user's past check results. For example, the checking unit can refer to functions that the user has checked in the past to perform the optimal check for similar requirements. The checking unit can also analyze the user's past check results and improve the check algorithm. The checking unit can also learn error patterns from the user's past check results and perform checks with fewer errors. In this way, the accuracy of the check can be improved by referring to the user's past check results.

[0102] The confirmation unit can estimate the user's emotion and determine the priority of functions to be confirmed based on the estimated user's emotion. For example, if the user is feeling stressed, the confirmation unit can prioritize checking functions with high importance. Furthermore, if the user is relaxed, the confirmation unit can prioritize checking detailed functions. Furthermore, if the user is in a hurry, the confirmation unit can prioritize checking functions that require quick processing. This enables more appropriate operation confirmation by determining the priority of functions according to the user's emotion. Emotion estimation is realized using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0103] When checking the operation, the checking unit can determine the priority of the check based on the submission time of the function. For example, the checking unit can check functions with an approaching deadline first. The checking unit can also postpone checking functions with a more distant submission time. The checking unit can also adjust the order of the checks depending on the submission time. In this way, by determining the priority of the check based on the submission time of the function, operation checks can be performed more efficiently.

[0104] The checking unit can adjust the order of checking based on the relevance of functions when checking the operation. For example, the checking unit prioritizes checking of highly related functions. The checking unit can also postpone checking of less related functions. The checking unit can also adjust the order of checking based on the relevance of functions. This allows for more efficient operation checking by adjusting the order of checking based on the relevance of functions.

[0105] The confirmation unit can adjust the use of technical terms in the confirmation depending on the user's level of expertise when confirming the operation. For example, if the user is a beginner, the confirmation unit can perform a concise confirmation that avoids technical terms. If the user is an intermediate user, the confirmation unit can also perform a confirmation that uses technical terms appropriately. If the user is an advanced user, the confirmation unit can also perform a detailed confirmation that uses a lot of technical terms. This allows for more appropriate operation confirmation by adjusting the use of technical terms depending on the user's level of expertise. === Hard Collateral 1-1 === Each of the multiple elements including the above-mentioned reception unit, generation unit, implementation unit, and verification unit is realized, for example, by at least one of the smart device 14 and the data processing device 12. For example, the reception unit is realized by the reception device 38 of the smart device 14 and receives requirements input by a user in natural language. The generation unit is realized by the specific processing unit 290 of the data processing device 12 and analyzes the requirements using a generation AI to generate program functions. The implementation unit is realized by the specific processing unit 290 of the data processing device 12 and automatically implements the generated functions. The verification unit is realized by the specific processing unit 290 of the data processing device 12 and verifies the operation of the generated functions. === Hard Collateral 1-2 === Each of the multiple elements including the above-mentioned reception unit, generation unit, implementation unit, and verification unit is realized, for example, by at least one of the smart glasses 214 and the data processing device 12. For example, the reception unit is realized by the microphone 238 of the smart glasses 214 and receives requirements input by a user in natural language. The generation unit is realized by the specific processing unit 290 of the data processing device 12 and analyzes the requirements using a generation AI to generate program functions. The implementation unit is realized by the specific processing unit 290 of the data processing device 12 and automatically implements the generated functions. The verification unit is realized by the specific processing unit 290 of the data processing device 12 and verifies the operation of the generated functions. === Hard Collateral 1-3 === Each of the multiple elements including the above-mentioned reception unit, generation unit, implementation unit, and verification unit is realized, for example, by at least one of the headset-type terminal 314 and the data processing device 12. For example, the reception unit is realized by the microphone 238 of the headset-type terminal 314 and receives requirements input by a user in natural language. The generation unit is realized by the specific processing unit 290 of the data processing device 12 and analyzes the requirements using a generation AI to generate program functions. The implementation unit is realized by the specific processing unit 290 of the data processing device 12 and automatically implements the generated functions. The verification unit is realized by the specific processing unit 290 of the data processing device 12 and verifies the operation of the generated functions. === Hard Collateral 1-4 === Each of the multiple elements including the above-mentioned reception unit, generation unit, implementation unit, and verification unit is realized, for example, by at least one of the robot 414 and the data processing device 12. For example, the reception unit is realized by the microphone 238 of the robot 414 and receives requirements input by a user in natural language. The generation unit is realized by the specific processing unit 290 of the data processing device 12 and analyzes the requirements using a generation AI to generate a program function. The implementation unit is realized by the specific processing unit 290 of the data processing device 12 and automatically implements the generated function. The verification unit is realized by the specific processing unit 290 of the data processing device 12 and verifies the operation of the generated function.

[0106] The system according to the embodiment is not limited to the above-described example, and various modifications are possible, for example, as follows.

[0107] The reception unit can analyze the user's input in real time and provide appropriate suggestions as the user enters the information. For example, if the user begins to enter "retrieve and display data from the database," the reception unit will display suggestions such as "database connection," "data retrieval," and "data display" in real time. The reception unit can also present related sample code and templates before the user completes their input. This allows the user to receive appropriate support as they enter their requirements, enabling them to enter their requirements efficiently.

[0108] The generator can analyze the user's past program generation history and optimize the functions to be generated. For example, it collects performance data on functions the user has generated in the past and generates an optimal function for similar requirements. The generator can also improve the generation algorithm based on the user's past feedback. Furthermore, the generator can learn specific patterns from the user's past generation history and generate functions with fewer errors. This makes it possible to generate higher quality functions by utilizing the user's past generation history.

[0109] When generating functions, the generator can determine the generation priority taking into account the progress of the user's current project. For example, if the project deadline is approaching, the generator can generate functions with priority. The generator can also adjust the level of detail of the functions to be generated according to the progress of the project. Furthermore, the generator can optimally allocate required resources based on the progress of the project. This allows functions to be generated efficiently according to the progress of the project.

[0110] When checking the operation of a generated function, the checking unit can improve the accuracy of the check by referring to the user's past check results. For example, the checking unit can learn error patterns of functions checked by the user in the past and check to prevent similar errors from occurring. The checking unit can also improve the checking algorithm based on the user's past feedback. Furthermore, the checking unit can learn specific patterns from the user's past check history and perform operation checks efficiently. This allows for more accurate operation checks to be performed by utilizing the user's past check results.

[0111] When implementing a generated function, the implementation unit can improve the accuracy of the implementation by referring to the user's past implementation results. For example, the implementation unit can collect performance data of functions previously implemented by the user and perform optimal implementation for similar requirements. The implementation unit can also improve the implementation algorithm based on the user's past feedback. Furthermore, the implementation unit can learn specific patterns from the user's past implementation history and perform implementation with fewer errors. This makes it possible to utilize the user's past implementation results to perform higher quality implementation.

[0112] The reception unit can estimate the user's emotions and adjust the method for receiving requirements based on the estimated user emotions. For example, if the user is feeling stressed, the reception unit can provide a simple interface and minimize input steps. If the user is relaxed, the reception unit can provide detailed input options and suggest a customizable input method. If the user is in a hurry, the reception unit can prioritize voice input to enable quick input of requirements. In this way, by adjusting the method for receiving requirements according to the user's emotions, more appropriate requirements can be received.

[0113] The generator can estimate the user's emotions and adjust the expression method of function generation based on the estimated user's emotions. For example, if the user is relaxed, the generator can generate a function with detailed comments. If the user is in a hurry, the generator can also generate a concise function. If the user is excited, the generator can also generate visually appealing code. In this way, by adjusting the expression method of function generation according to the user's emotions, more appropriate functions can be generated.

[0114] The implementation unit can estimate the user's emotions and adjust the implementation method based on the estimated user's emotions. For example, if the user is relaxed, the implementation unit can provide detailed commentary. If the user is in a hurry, the implementation unit can provide concise implementation. If the user is excited, the implementation unit can provide visually appealing implementation. This allows for more appropriate implementation by adjusting the implementation method according to the user's emotions.

[0115] The confirmation unit can estimate the user's emotions and adjust the operation confirmation method based on the estimated user's emotions. For example, if the user is nervous, a simple and highly visible confirmation method is provided. Furthermore, if the user is relaxed, the confirmation unit can also provide a confirmation method that includes detailed information. Furthermore, if the user is in a hurry, the confirmation unit can also provide a confirmation method that focuses on the main points. In this way, by adjusting the operation confirmation method according to the user's emotions, more appropriate operation confirmation is possible.

[0116] The confirmation unit can estimate the user's emotions and determine the priority of functions to be confirmed based on the estimated user's emotions. For example, if the user is feeling stressed, the confirmation unit can prioritize checking functions with high importance. Furthermore, if the user is relaxed, the confirmation unit can prioritize checking detailed functions. Furthermore, if the user is in a hurry, the confirmation unit can prioritize checking functions that require quick processing. In this way, by determining the priority of functions according to the user's emotions, more appropriate operation confirmation is possible.

[0117] The processing flow of the second embodiment will be briefly explained below.

[0118] Step 1: The reception unit receives a requirement in natural language from the user. For example, the user inputs a requirement such as "retrieve and display data from a database." Step 2: The generator uses a generation AI to analyze the requirements received by the reception unit and generate a program function. For example, the generation AI may learn from past program data and algorithms and generate an optimal function based on the input requirements. The generated function is written in a programming language specified by the user. For example, the function is generated in a language specified by the user, such as Python or JavaScript. Step 3: The implementation unit automatically implements the functions generated by the generation unit, for example, converting the generated functions into executable code and deploying them. Step 4: The verification unit checks the operation of the functions implemented by the implementation unit. For example, it executes the generated functions and checks whether they operate correctly.

[0119] 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.

[0120] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> Examples of generative AIs include the data generation model 58, such as a neural network model (e.g., a neural network model), and a neural network model (e.g., a neural network model). 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 speech, text data indicating text, and image data indicating an image is also input to the data generation model 58. 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. The specification processing unit 290 performs the above-mentioned specification processing using the data generation model 58. The data generation model 58 may be a fine-tuned model so as to output an inference result from a prompt that does not include an instruction. In this case, the data generation model 58 can output an inference result from a prompt that does not include an instruction. The data processing device 12 and the like include multiple types of data generation models 58, and the data generation model 58 includes AIs other than the generative AI. The AI ​​other than the generative AI may be, for example, linear regression, logistic regression, decision tree, random forest, support vector machine (SVM), k-means clustering, convolutional neural network (CNN), recurrent neural network (RNN), generative adversarial network (GAN), or naive Bayes, and can perform various processes, but is not limited to these examples. The AI ​​may also be an AI agent. When the processes of each of the above-mentioned parts are performed by AI, the processes may be performed in part or entirely by AI, but are not limited to these examples. The processes performed by AI, including the generative AI, may be replaced with rule-based processes.

[0121] Furthermore, the processing by the data processing system 10 described above is executed by the specific processing unit 290 of the data processing device 12 or the control unit 46A of the smart device 14, but may also be executed by the specific processing unit 290 of the data processing device 12 and the control unit 46A of the smart device 14. Furthermore, the specific processing unit 290 of the data processing device 12 acquires or collects information necessary for processing from the smart device 14 or an external device, and the smart device 14 acquires or collects information necessary for processing from the data processing device 12 or an external device.

[0122] The correspondence between each part and the device or control part is not limited to the example described above, and various modifications are possible.

[0123] [Second embodiment] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.

[0124] 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.

[0125] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and 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 and / or a LAN.

[0126] 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.

[0127] The microphone 238 receives instructions and the like from the user by receiving voice uttered by the user. The microphone 238 captures the voice uttered by the user, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to instructions from the processor 46.

[0128] 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 user's surroundings (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0129] 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.

[0130] 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.

[0131] 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.

[0132] 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. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.

[0133] In the smart glasses 214, the specific processing is performed by the processor 46. A specific processing program 60 is stored in the storage 50. The processor 46 reads the specific processing program 60 from the storage 50 and executes the read specific processing program 60 on the RAM 48. The specific processing is realized by the processor 46 operating as the control unit 46A in accordance with the specific processing program 60 executed on the RAM 48. The smart glasses 214 also have a data generation model and an emotion identification model similar to the data generation model 58 and the emotion identification model 59, and can perform processing similar to that of the specific processing unit 290 using these models.

[0134] Note that a device other than the data processing device 12 may have the data generation model 58. For example, a server device may have the data generation model 58. In this case, the data processing device 12 communicates with the server device having the data generation model 58 to obtain a processing result (such as a prediction result) using the data generation model 58. Furthermore, the data processing device 12 may be a server device, or may be a terminal device (for example, a mobile phone, a robot, a home appliance, etc.) owned by a user.

[0135] 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.

[0136] The data generation model 58 is a so-called generative AI. An example of the data generation model 58 is a generative AI such as ChatGPT. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 receives a prompt containing an instruction, as well as inference data such as voice data representing speech, text data representing text, and image data representing an image. 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. The identification processing unit 290 performs the above-mentioned identification processing using the data generation model 58. The data generation model 58 may be a fine-tuned model so as to output an inference result from a prompt that does not include an instruction. In this case, the data generation model 58 can output an inference result from a prompt that does not include an instruction. The data processing device 12 and the like include multiple types of data generation models 58, and the data generation model 58 includes AIs other than the generative AI. The AI ​​other than the generative AI may be, for example, linear regression, logistic regression, decision tree, random forest, support vector machine (SVM), k-means clustering, convolutional neural network (CNN), recurrent neural network (RNN), generative adversarial network (GAN), or naive Bayes, and can perform various processes, but is not limited to these examples. The AI ​​may also be an AI agent. When the processes of each of the above-mentioned parts are performed by AI, the processes may be performed in part or entirely by AI, but are not limited to these examples. The processes performed by AI, including the generative AI, may be replaced with rule-based processes.

[0137] The data processing system 210 according to the second embodiment performs the same processing as the data processing system 10 according to the first embodiment. The processing by the data processing system 210 is executed by the specific processing unit 290 of the data processing device 12 or the control unit 46A of the smart glasses 214, but may also be executed by the specific processing unit 290 of the data processing device 12 and the control unit 46A of the smart glasses 214. Furthermore, the specific processing unit 290 of the data processing device 12 acquires or collects information required for processing from the smart glasses 214 or an external device, etc., and the smart glasses 214 acquires or collects information required for processing from the data processing device 12 or an external device, etc.

[0138] The correspondence between each part and the device or control part is not limited to the example described above, and various modifications are possible.

[0139] [Third embodiment] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.

[0140] 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.

[0141] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and 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 and / or a LAN.

[0142] 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.

[0143] The microphone 238 receives instructions and the like from the user by receiving voice uttered by the user. The microphone 238 captures the voice uttered by the user, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to instructions from the processor 46.

[0144] 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 user's surroundings (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0145] 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.

[0146] 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.

[0147] 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.

[0148] 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. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.

[0149] In the headset type terminal 314, the identification process is performed by the processor 46. A identification program 60 is stored in the storage 50. The processor 46 reads the identification program 60 from the storage 50 and executes the read identification program 60 on the RAM 48. The identification process is realized by the processor 46 operating as a control unit 46A in accordance with the identification program 60 executed on the RAM 48. Note that the headset type terminal 314 has a data generation model and an emotion identification model similar to the data generation model 58 and the emotion identification model 59, and can also perform processing similar to that of the identification processing unit 290 using these models.

[0150] Note that a device other than the data processing device 12 may have the data generation model 58. For example, a server device may have the data generation model 58. In this case, the data processing device 12 communicates with the server device having the data generation model 58 to obtain a processing result (such as a prediction result) using the data generation model 58. Furthermore, the data processing device 12 may be a server device, or may be a terminal device (for example, a mobile phone, a robot, a home appliance, etc.) owned by a user.

[0151] 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.

[0152] The data generation model 58 is a so-called generative AI. An example of the data generation model 58 is a generative AI such as ChatGPT. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 receives a prompt containing an instruction, as well as inference data such as voice data representing speech, text data representing text, and image data representing an image. 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. The identification processing unit 290 performs the above-mentioned identification processing using the data generation model 58. The data generation model 58 may be a fine-tuned model so as to output an inference result from a prompt that does not include an instruction. In this case, the data generation model 58 can output an inference result from a prompt that does not include an instruction. The data processing device 12 and the like include multiple types of data generation models 58, and the data generation model 58 includes AIs other than the generative AI. The AI ​​other than the generative AI may be, for example, linear regression, logistic regression, decision tree, random forest, support vector machine (SVM), k-means clustering, convolutional neural network (CNN), recurrent neural network (RNN), generative adversarial network (GAN), or naive Bayes, and can perform various processes, but is not limited to these examples. The AI ​​may also be an AI agent. When the processes of each of the above-mentioned parts are performed by AI, the processes may be performed in part or entirely by AI, but are not limited to these examples. The processes performed by AI, including the generative AI, may be replaced with rule-based processes.

[0153] The data processing system 310 according to the third embodiment performs the same processing as the data processing system 10 according to the first embodiment. The processing by the data processing system 310 is executed by the specific processing unit 290 of the data processing device 12 or the control unit 46A of the headset type terminal 314, but may also be executed by the specific processing unit 290 of the data processing device 12 and the control unit 46A of the headset type terminal 314. Furthermore, the specific processing unit 290 of the data processing device 12 acquires or collects information required for processing from the headset type terminal 314 or an external device, etc., and the headset type terminal 314 acquires or collects information required for processing from the data processing device 12 or an external device, etc.

[0154] The correspondence between each part and the device or control part is not limited to the example described above, and various modifications are possible.

[0155] [Fourth embodiment] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.

[0156] 7, the 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.

[0157] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and 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 and / or a LAN.

[0158] 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.

[0159] The microphone 238 receives instructions and the like from the user by receiving voice uttered by the user. The microphone 238 captures the voice uttered by the user, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to instructions from the processor 46.

[0160] 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 image sensor or a CCD image sensor, and captures images of the user's surroundings (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0161] 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.

[0162] The control object 443 includes a display device, LEDs in the eyes, and motors that drive 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.

[0163] 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.

[0164] 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.

[0165] 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. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.

[0166] In the robot 414, the processor 46 performs the identification process. The storage 50 stores the identification program 60. The processor 46 reads the identification program 60 from the storage 50 and executes the read identification program 60 on the RAM 48. The identification process is realized by the processor 46 operating as the control unit 46A in accordance with the identification program 60 executed on the RAM 48. The robot 414 also has a data generation model and an emotion identification model similar to the data generation model 58 and the emotion identification model 59, and can perform the same process as the identification processing unit 290 using these models.

[0167] Note that a device other than the data processing device 12 may have the data generation model 58. For example, a server device may have the data generation model 58. In this case, the data processing device 12 communicates with the server device having the data generation model 58 to obtain a processing result (such as a prediction result) using the data generation model 58. Furthermore, the data processing device 12 may be a server device, or may be a terminal device (for example, a mobile phone, a robot, a home appliance, etc.) owned by a user.

[0168] 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.

[0169] The data generation model 58 is a so-called generative AI. An example of the data generation model 58 is a generative AI such as ChatGPT. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 receives a prompt containing an instruction, as well as inference data such as voice data representing speech, text data representing text, and image data representing an image. 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. The identification processing unit 290 performs the above-mentioned identification processing using the data generation model 58. The data generation model 58 may be a fine-tuned model so as to output an inference result from a prompt that does not include an instruction. In this case, the data generation model 58 can output an inference result from a prompt that does not include an instruction. The data processing device 12 and the like include multiple types of data generation models 58, and the data generation model 58 includes AIs other than the generative AI. The AI ​​other than the generative AI may be, for example, linear regression, logistic regression, decision tree, random forest, support vector machine (SVM), k-means clustering, convolutional neural network (CNN), recurrent neural network (RNN), generative adversarial network (GAN), or naive Bayes, and can perform various processes, but is not limited to these examples. The AI ​​may also be an AI agent. When the processes of each of the above-mentioned parts are performed by AI, the processes may be performed in part or entirely by AI, but are not limited to these examples. The processes performed by AI, including the generative AI, may be replaced with rule-based processes.

[0170] The data processing system 410 according to the fourth embodiment performs the same processing as the data processing system 10 according to the first embodiment. The processing by the data processing system 410 is executed by the specific processing unit 290 of the data processing device 12 or the control unit 46A of the robot 414, but may also be executed by the specific processing unit 290 of the data processing device 12 and the control unit 46A of the robot 414. Furthermore, the specific processing unit 290 of the data processing device 12 acquires or collects information required for processing from the robot 414 or an external device, etc., and the robot 414 acquires or collects information required for processing from the data processing device 12 or an external device, etc.

[0171] The correspondence between each part and the device or control part is not limited to the example described above, and various modifications are possible.

[0172] 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.

[0173] FIG. 9 illustrates 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 behaviors arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion encompasses both emotions 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.

[0174] 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.

[0175] 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).

[0176] 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 expressed, and when they approach the ideal, a state of pleasure is expressed. Emotions can also be created for robots, cars, 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 expressed, and when they approach the ideal, a state of pleasure is expressed. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on speech emotion recognition and brain physiological signal analysis systems for emotions, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the area called "reaction," where sensation is dominant. The right half of the emotion map lists emotions belonging to the area called "situation," where situational awareness is dominant.

[0177] 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."

[0178] 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.

[0179] In the above embodiment, an example was given in which a specific process is performed by one computer 22, but the technology disclosed herein is not limited to this, and distributed processing of the specific process may be performed by multiple computers including computer 22.

[0180] 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.

[0181] 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.

[0182] 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.

[0183] The hardware resource for executing a specific process can be any of the following types of processors: A processor, for example, 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. A processor also includes 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.

[0184] The hardware resource that executes the specific process 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 process may be a single processor.

[0185] 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.

[0186] 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.

[0187] In the above example, the first to fourth embodiments have been described separately, but some or all of these embodiments may be combined. The smart device 14, smart glasses 214, headset terminal 314, and robot 414 are merely examples, and they may be combined, or other devices may be used. In the above example, the first and second embodiments have been described separately, but they may be combined.

[0188] 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.

[0189] 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.

[0190] [Explanation of symbols]

[0191] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot

Claims

1. a reception unit for receiving requirements in natural language from a user; a generation unit that analyzes the requirements received by the reception unit and generates a function of a program; an implementation unit that implements the function generated by the generation unit; a confirmation unit that confirms the operation of the function implemented by the implementation unit; A system characterized by:

2. The generation unit Generate functions by learning past program data or algorithms 2. The system of claim 1.

3. The generation unit Generates a function in a user-specified programming language 2. The system of claim 1.

4. The confirmation unit Test the generated functions and provide the results to the user.

2. The system of claim 1.

5. The mounting section Automatically implement generated functions 2. The system of claim 1.

6. The reception unit Accept requirements entered by the user in natural language 2. The system of claim 1.

7. The reception unit Infer user emotions and adjust the method of accepting requirements based on the estimated user emotions 2. The system of claim 1.

8. The reception unit Analyze the user's past requirement input history and select the appropriate reception method 2. The system of claim 1.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A