System

The system uses a generation AI to verify code validity and provide coding examples, addressing the inefficiencies in conventional programming by offering rapid and accurate feedback, thus improving programming efficiency.

JP2026038737APending 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 lack efficient means to quickly check the validity of code and provide coding examples during programming, making development cumbersome.

Method used

A system employing a generation AI as a listener and advisor for pair programming, which verifies code validity, provides coding examples, and asks about the intent of the code, utilizing voice recognition for user interaction.

Benefits of technology

The system quickly checks the correctness of code and coding examples, supporting efficient programming by providing accurate feedback and examples, thereby enhancing user understanding and work efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026038737000001_ABST
    Figure 2026038737000001_ABST
Patent Text Reader

Abstract

An object of a system according to an embodiment is to support efficient development by quickly checking the correctness of code and a coding example at the time of programming.SOLUTION: A system according to an embodiment includes a reception unit, a confirmation unit, a provision unit, an example unit, a first provision unit, an intention confirmation unit, and a second provision unit. The reception unit receives a question from a user. The confirmation unit confirms the validity of the code based on the question received by the reception unit. The providing unit provides the result confirmed by the confirming unit to the user. The exemplification unit provides a coding example based on the question received by the reception unit. The first providing unit provides the coding example provided by the example unit to the user. The intention confirmation unit asks the intention of the code based on the question received by the reception unit. The second providing unit provides the intention confirmed by the intention confirming unit to the user.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 lacked the means to quickly check the validity of code and provide coding examples when programming, making efficient development difficult.

[0005] The system according to the embodiment aims to support efficient development by quickly checking the correctness of code and coding examples during programming. [Means for solving the problem]

[0006] The system according to the embodiment includes a reception unit, a confirmation unit, a providing unit, an exemplification unit, a first providing unit, an intention confirmation unit, and a second providing unit. The reception unit receives questions from a user. The confirmation unit confirms the validity of the code based on the question received by the reception unit. The providing unit provides the user with the results confirmed by the confirmation unit. The exemplification unit provides a coding example based on the question received by the reception unit. The first providing unit provides the coding example provided by the exemplification unit to the user. The intention confirmation unit asks about the intention of the code based on the question received by the reception unit. The second providing unit provides the user with the intention confirmed by the intention confirmation unit. [Effects of the Invention]

[0007] The system according to the embodiment can quickly check the correctness of code and coding examples during programming, thereby supporting efficient development. [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 pair programming support system according to an embodiment of the present invention employs a generation AI as a listener and advisor for pair programming. The pair programming support system accepts questions from users, and the generation AI verifies the validity of the code, provides coding examples, and asks about the intent of the code. For example, the pair programming support system can ask the user about the validity of the code they are currently writing and for coding examples. The generation AI has a mechanism for studying internal documents and code bases and periodically obtaining the latest information. For example, when a user asks, "Is this code correct?", the generation AI analyzes the code and verifies its validity. Similarly, when a user asks, "Can you give me a coding example for implementing this function?", the generation AI provides an appropriate coding example. Furthermore, the generation AI can also conversely ask the user about the intent of the code. For example, the generation AI can ask, "What is the intent of this part of the code?", allowing the user to organize their thoughts and clarify the intent of the code. Furthermore, voice recognition allows users to communicate with the generation AI via voice. For example, if a user asks "Please tell me the error in this code," the generative AI will recognize the voice and provide appropriate advice. This allows the pair programming support system to provide appropriate advice in response to the user's question, and conversely, by asking the user about the intent of the code, it can deepen the user's understanding. In addition, voice recognition support allows users to communicate with the generative AI by voice, improving work efficiency. This allows users to proceed with programming work more efficiently.

[0029] A pair programming support system according to an embodiment includes a receiving unit, a verifying unit, a providing unit, an example unit, and an intention verifying unit. The receiving unit receives questions from a user. The questions include, but are not limited to, questions about programming and technical topics. The receiving unit, for example, analyzes text or voice input by the user and recognizes the content of the question. The verifying unit uses a generation AI to verify the validity of the code based on the question received by the receiving unit. The generation AI, for example, analyzes the code using a machine learning model or natural language processing technology and performs error and security checks. For example, the generation AI detects grammatical errors in the code and suggests correction methods. The generation AI can also evaluate security risks in the code and point out areas for improvement. The providing unit provides the user with the results verified by the verifying unit. For example, the providing unit displays an error message or a success message on the user's screen. The providing unit can also notify the user of the verified results by voice. The example unit uses the generation AI to provide coding examples based on the questions received by the receiving unit. The generation AI generates, for example, sample code and best practices and presents them to the user. For example, the generation AI generates sample code for implementing a specific function and provides it to the user. The generation AI can also suggest efficient coding methods. The intention confirmation unit asks the user about the intention of the code based on the question received by the reception unit. For example, the intention confirmation unit may ask the user, "What is the intention of this part of code?" to organize the user's thoughts and clarify the intention of the code. As a result, the pair programming support system according to the embodiment can provide appropriate advice in response to the user's question and, conversely, deepen the user's understanding by asking the user about the intention of the code. Furthermore, voice recognition support allows the user to communicate with the generation AI via voice, improving work efficiency. This allows the user to more efficiently proceed with programming work.

[0030] The reception unit accepts questions from a user through voice recognition support. Voice recognition support includes, but is not limited to, a voice recognition algorithm and a voice input device. For example, the reception unit collects questions input by voice from the user using a microphone and converts them into text data using a voice recognition algorithm. For example, the voice recognition algorithm analyzes the user's voice and accurately recognizes the content of the question. The reception unit can also recognize the user's voice in real time using a voice input device and accept questions. For example, the voice input device collects the user's voice with high accuracy and inputs it into the voice recognition algorithm. This allows the user to input questions by voice through voice support. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit can cause a generation AI to execute the voice recognition algorithm.

[0031] The verification unit can verify the validity of the code using the generation AI. Examples of the generation AI include, but are not limited to, machine learning models and natural language processing technologies. For example, the verification unit can detect grammatical errors in the code using the generation AI. For example, the generation AI can analyze the grammar of the code and identify the error location. The verification unit can also evaluate the security risk of the code using the generation AI. For example, the generation AI can detect security holes in the code and suggest improvements. The verification unit can also evaluate the performance of the code using the generation AI. For example, the generation AI can analyze the execution speed of the code and suggest optimization methods. In this way, the use of the generation AI improves the accuracy of verifying the validity of the code. Some or all of the above-mentioned processing in the verification unit can be performed using, for example, AI, or can be performed without using AI. For example, the verification unit can cause the generation AI to verify the validity of the code.

[0032] The exemplification unit can provide coding examples using a generation AI. Examples of the generation AI include, but are not limited to, machine learning models and natural language processing technologies. The exemplification unit can, for example, use the generation AI to generate sample code for implementing a specific function. For example, the generation AI generates appropriate sample code based on a user's question and provides it to the user. The exemplification unit can also use the generation AI to suggest efficient coding methods. For example, the generation AI suggests efficient coding methods based on best practices. The exemplification unit can also use the generation AI to suggest code refactoring methods. For example, the generation AI suggests refactoring methods to improve code readability. This improves the accuracy of providing coding examples by using the generation AI. Some or all of the above-described processing in the exemplification unit can be performed using, for example, an AI, or can be performed without using an AI. For example, the exemplification unit can cause the generation AI to generate coding examples.

[0033] The intention confirmation unit can ask the user about the intention of the code. For example, the intention confirmation unit can ask the user, "What is the intention of this part of the code?" to organize the user's thoughts and clarify the intention of the code. For example, the intention confirmation unit can analyze the user's input to confirm the purpose and design intention of the code. The intention confirmation unit can also ask the user about areas for improvement in the code. For example, the intention confirmation unit can ask, "How do you plan to improve this part of the code?" to confirm the user's intention for improvement. The intention confirmation unit can also ask the user about the design intention of the code. For example, the intention confirmation unit can ask, "What design intention is this part of the code based on?" to confirm the user's design intention. In this way, asking the user about the intention of the code can deepen the user's understanding. Some or all of the above-mentioned processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit can cause a generation AI to confirm the intention of the code.

[0034] The providing unit can display the confirmed results, the provided coding example, and the confirmed intention to the user. The providing unit, for example, displays an error message or a success message on the user's screen. For example, the providing unit displays the results confirmed by the confirmation unit on the user's screen. The providing unit can also notify the user of the confirmed results by voice. For example, the providing unit can notify the confirmed results by voice using voice synthesis technology. The providing unit can also display the provided coding example to the user. For example, the providing unit displays the coding example provided by the example unit on the user's screen. The providing unit can also display the confirmed intention to the user. For example, the providing unit displays the intention confirmed by the intention confirmation unit on the user's screen. This allows the user to deepen their understanding by providing appropriate information to the user. Some or all of the above-described processing in the providing unit may be performed using AI, or may be performed without using AI. For example, the providing unit can cause the generation AI to display the information.

[0035] The reception unit can analyze the user's past question history and select an appropriate reception method. The reception unit, for example, analyzes the content of the user's past questions and the frequency of questions. For example, the reception unit automatically displays questions that the user has frequently asked in the past as candidates. The reception unit can also preferentially suggest question formats (voice, text, etc.) that the user has used in the past. For example, the reception unit predicts and suggests question formats to be used in a specific time period based on the user's past question history. In this way, the optimal reception method can be selected by analyzing the user's past question history. Some or all of the above-mentioned processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit can cause a generation AI to analyze the question history.

[0036] When receiving a question, the reception unit can filter the questions based on the user's current project or area of ​​interest. For example, the reception unit preferentially receives only questions related to the project the user is currently working on. For example, the reception unit acquires the user's project information and filters related questions. The reception unit can also automatically filter related questions based on the user's area of ​​interest. For example, the reception unit identifies the user's area of ​​interest based on the user's past question history and project history, and preferentially receives related questions. In this way, by filtering questions based on the user's current project and area of ​​interest, highly relevant questions can be preferentially received. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit can have a generation AI perform filtering of project information and areas of interest.

[0037] When receiving a question, the reception unit can select an appropriate reception means depending on the user's input method. For example, when the user inputs a question by voice, the reception unit receives the question using voice recognition. For example, the reception unit converts the user's voice into text data using a voice recognition algorithm. Furthermore, when the user inputs a question by text, the reception unit can also receive the question using text analysis. For example, the reception unit analyzes the user's text input using a text analysis algorithm to recognize the content of the question. Furthermore, when the user inputs a question using an image, the reception unit can also receive the question using image recognition. For example, the reception unit analyzes the user's image input using an image recognition algorithm to recognize the content of the question. This allows the reception unit to select the optimal reception means depending on the user's input method, thereby improving the efficiency of question reception. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without AI. For example, the reception unit may have a generation AI select the input method.

[0038] When receiving a question, the reception unit can prioritize receiving highly relevant questions by taking into account the user's geographical location information. For example, if the user is in a specific area, the reception unit prioritizes receiving questions related to that area. For example, the reception unit acquires the user's GPS data or IP address and identifies geographical location information. Furthermore, if the user is traveling, the reception unit can prioritize receiving questions related to the user's travel destination. For example, the reception unit acquires the user's travel destination information and filters related questions. Furthermore, if the user is at home, the reception unit can prioritize receiving questions related to the user's home. For example, the reception unit acquires the user's home information and filters related questions. In this way, by taking the user's geographical location information into account, highly relevant questions can be prioritized. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit may cause a generation AI to filter the geographical location information.

[0039] The reception unit can analyze the user's social media activity when receiving a question and receive related questions. The reception unit can receive related questions based on, for example, content shared by the user on social media. For example, the reception unit can obtain the user's social media account and analyze the content of the posts. The reception unit can also analyze the user's social media activity and suggest related questions. For example, the reception unit can analyze the user's number of likes and the content of comments to identify related questions. The reception unit can also receive related questions based on the activity of the user's friends on social media. For example, the reception unit can analyze the content posted by the user's friends and suggest related questions. In this way, by analyzing the user's social media activity, related questions can be preferentially received. Some or all of the above-described processing by the reception unit can be performed using, for example, AI, or can be performed without using AI. For example, the reception unit can cause a generation AI to analyze the social media activity.

[0040] The reception unit can customize the reception method by reflecting the user's past feedback when receiving a question. The reception unit, for example, suggests an optimal reception method based on feedback provided by the user in the past. For example, the reception unit analyzes the user's past feedback and preferentially accepts specific question formats. The reception unit can also customize the reception method based on the user's past feedback. For example, the reception unit analyzes the user's ratings and comments and adjusts the reception method. The reception unit can also adjust the timing of question reception based on the user's past feedback. For example, the reception unit optimizes the timing of question reception based on the user's feedback. This allows the user's past feedback to be reflected, thereby providing an optimal reception method. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit can cause a generation AI to analyze the feedback.

[0041] When verifying the validity of code, the verification unit can adjust the level of verification detail based on the importance of the code. For example, the verification unit performs a detailed verification on important code portions. For example, the verification unit performs a detailed verification based on the scope of impact and urgency of the code. The verification unit can also perform a simplified verification on less important code portions. For example, the verification unit performs a simplified verification when the scope of impact of the code is small. The verification unit can also dynamically adjust the level of verification detail based on the importance. For example, the verification unit adjusts the level of verification detail based on the urgency of the code. This allows for efficient verification by adjusting the level of verification detail based on the importance of the code. Some or all of the above-described processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit can cause the generation AI to adjust the level of verification detail.

[0042] When verifying the validity of code, the verification unit can apply different verification algorithms depending on the category of the code. For example, the verification unit may focus on security checks for security-related code. For example, the verification unit may use a security check algorithm to evaluate the security risk of the code. The verification unit may also focus on performance checks for performance-related code. For example, the verification unit may use a performance check algorithm to evaluate the execution speed of the code. The verification unit may also focus on UI checks for user interface-related code. For example, the verification unit may use a UI check algorithm to evaluate the usability of the code. In this way, by applying different verification algorithms depending on the category of code, highly accurate verification can be performed. Some or all of the above-mentioned processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit may have a generation AI apply the verification algorithm.

[0043] When verifying the validity of code, the verification unit can improve the accuracy of the verification by referring to the user's past verification results. The verification unit, for example, improves the current verification accuracy based on the results of code previously verified by the user. For example, the verification unit analyzes past error logs and success logs and reflects them in the current verification. The verification unit can also analyze the user's past verification history and dynamically adjust the verification accuracy. For example, the verification unit adjusts the verification accuracy based on the past verification history. The verification unit can also improve the verification accuracy by referring to the user's past feedback. For example, the verification unit improves the verification accuracy based on the past feedback. In this way, the verification accuracy is improved by referring to the user's past verification results. Some or all of the above-described processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit can cause the generation AI to analyze past verification results.

[0044] When verifying the validity of a code, the verification unit can determine the verification priority based on the time of submission of the code. For example, the verification unit prioritizes verification of codes with an approaching deadline. For example, the verification unit obtains the submission date and time of the code and prioritizes verification of codes with an approaching deadline. The verification unit can also postpone verification of codes with an earlier submission date and time. For example, the verification unit postpones verification of codes with an earlier submission date and time. The verification unit can also dynamically adjust the verification priority according to the submission date and time. For example, the verification unit adjusts the verification priority based on the submission date and time. This enables efficient verification by determining the verification priority based on the submission date and time of the code. Some or all of the above-described processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit can have a generation AI analyze the submission date and time.

[0045] When verifying the validity of code, the verification unit can adjust the verification order based on the relevance of the code. For example, the verification unit prioritizes verification of code related to important functions. For example, the verification unit evaluates code dependencies and functional relevance, and prioritizes verification of code related to important functions. The verification unit can also postpone verification of less relevant code. For example, the verification unit postpones verification of less relevant code. The verification unit can also dynamically adjust the verification order according to the relevance of the code. For example, the verification unit adjusts the verification order based on the dependency of the code. In this way, efficient verification can be achieved by adjusting the verification order based on the relevance of the code. Some or all of the above-described processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit can cause a generation AI to perform the relevance evaluation.

[0046] When verifying the validity of code, the verification unit can adjust the use of technical terminology in the verification depending on the user's level of expertise. For example, if the user is a beginner, the verification unit can verify the validity of the code using simple language, avoiding technical terminology. For example, the verification unit can verify the validity of the code using simple language, avoiding technical terminology. Furthermore, if the user is an intermediate user, the verification unit can use appropriate technical terminology in the verification. For example, the verification unit can verify the validity of the code using appropriate technical terminology. Furthermore, if the user is an advanced user, the verification unit can use a lot of technical terminology to perform a detailed verification. For example, the verification unit can use a lot of technical terminology to perform a detailed verification. In this way, by adjusting the use of technical terminology in the verification depending on the user's level of expertise, more appropriate verification can be performed. Some or all of the above-mentioned processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit can cause the generation AI to adjust the use of technical terminology.

[0047] The providing unit can adjust the level of detail of the information provided based on the importance of the information when providing the information. For example, the providing unit provides important information with a detailed explanation. For example, the providing unit provides detailed information based on the scope of impact and urgency of the information. The providing unit can also provide simplified information for less important information. For example, the providing unit provides simplified information when the scope of impact of the information is small. The providing unit can also dynamically adjust the level of detail of the information provided based on the importance. For example, the providing unit adjusts the level of detail of the information provided based on the urgency of the information. As a result, efficient information provision can be achieved by adjusting the level of detail of the information provided based on the importance of the information. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit can cause a generation AI to adjust the level of detail of the information provided.

[0048] The providing unit can apply different providing algorithms depending on the category of information when providing the information. For example, the providing unit may focus on security checks for security-related information. For example, the providing unit may evaluate the security risk of the information using a security check algorithm. The providing unit may also focus on performance checks for performance-related information. For example, the providing unit may evaluate the execution speed of the information using a performance check algorithm. The providing unit may also focus on UI checks for user interface-related information. For example, the providing unit may evaluate the usability of the information using a UI check algorithm. In this way, by applying different providing algorithms depending on the category of information, highly accurate information can be provided. Some or all of the above-mentioned processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit may cause a generation AI to apply the providing algorithm.

[0049] The providing unit can improve the accuracy of the information provided by referring to the user's past provision results when providing the information. The providing unit improves the current accuracy of the information provided by the user, for example, based on the results of information provided by the user in the past. For example, the providing unit analyzes past feedback and evaluations and reflects them in the current provision. The providing unit can also analyze the user's past provision history and dynamically adjust the accuracy of the information provided. For example, the providing unit adjusts the accuracy of the information provided by referring to the user's past feedback. For example, the providing unit improves the accuracy of the information provided by referring to the user's past feedback. In this way, the accuracy of the information provided is improved by referring to the user's past provision results. Some or all of the above-described processing in the providing unit may be performed using AI, for example, or may be performed without using AI. For example, the providing unit can cause a generation AI to analyze past provision results.

[0050] The providing unit can determine the priority of provision based on the time of submission of information at the time of provision. For example, the providing unit prioritizes the provision of information whose deadline is approaching. For example, the providing unit acquires the submission date and time of information and prioritizes the provision of information whose deadline is approaching. The providing unit can also postpone the provision of information whose submission date and time is early. For example, the providing unit postpones the provision of information whose submission date and time is early. The providing unit can also dynamically adjust the priority of provision according to the submission time. For example, the providing unit adjusts the priority of provision based on the submission time. This enables efficient information provision by determining the priority of provision based on the submission time of information. Some or all of the above-mentioned processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit can cause a generation AI to analyze the submission time.

[0051] The providing unit can adjust the order of provision based on the relevance of the information when providing the information. For example, the providing unit prioritizes the provision of information related to important functions. For example, the providing unit evaluates the dependency and functional relevance of the information and prioritizes the provision of information related to important functions. The providing unit can also postpone the provision of less relevant information. For example, the providing unit postpones the provision of less relevant information. The providing unit can also dynamically adjust the order of provision according to the relevance of the information. For example, the providing unit adjusts the order of provision based on the dependency of the information. As a result, efficient information provision can be achieved by adjusting the order of provision based on the relevance of the information. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit can cause a generation AI to evaluate the relevance.

[0052] The providing unit can adjust the use of technical terminology in the provided information according to the user's level of expertise when providing the information. For example, if the user is a beginner, the providing unit provides information in simple language, avoiding technical terminology. For example, the providing unit provides information in simple language, avoiding technical terminology. Furthermore, if the user is an intermediate user, the providing unit can provide information using appropriate technical terminology. For example, the providing unit provides information using appropriate technical terminology. Furthermore, if the user is an advanced user, the providing unit can provide detailed information using a lot of technical terminology. For example, the providing unit provides detailed information using a lot of technical terminology. In this way, by adjusting the use of technical terminology in the provided information according to the user's level of expertise, more appropriate information can be provided. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit can cause a generation AI to adjust the use of technical terminology.

[0053] When providing a coding example, the exemplification unit can adjust the level of detail of the example based on the importance of the code. For example, the exemplification unit provides a detailed coding example for an important code portion. For example, the exemplification unit provides a detailed coding example based on the scope of impact and urgency of the code. The exemplification unit can also provide a simplified coding example for a code portion of low importance. For example, the exemplification unit provides a simplified coding example when the scope of impact of the code is small. The exemplification unit can also dynamically adjust the level of detail of the example based on the importance. For example, the exemplification unit adjusts the level of detail of the example based on the urgency of the code. In this way, by adjusting the level of detail of the example based on the importance of the code, efficient coding examples can be provided. Some or all of the above-described processing in the exemplification unit may be performed using, for example, AI, or may be performed without using AI. For example, the exemplification unit can cause a generation AI to adjust the level of detail of the example.

[0054] When providing coding examples, the exemplification unit can apply different exemplification algorithms depending on the category of the code. For example, the exemplification unit may focus on security checks for security-related code. For example, the exemplification unit may use a security check algorithm to evaluate the security risk of the code. The exemplification unit may also focus on performance checks for performance-related code. For example, the exemplification unit may use a performance check algorithm to evaluate the execution speed of the code. The exemplification unit may also focus on UI checks for user interface-related code. For example, the exemplification unit may use a UI check algorithm to evaluate the usability of the code. In this way, by applying different exemplification algorithms depending on the category of the code, highly accurate coding examples are provided. Some or all of the above-mentioned processing in the exemplification unit may be performed using, for example, AI, or may be performed without using AI. For example, the exemplification unit may cause a generation AI to apply the exemplification algorithm.

[0055] When providing coding examples, the exemplification unit can improve the accuracy of the examples by referring to the user's past example results. The exemplification unit, for example, improves the accuracy of the current examples based on the results of coding examples previously provided by the user. For example, the exemplification unit analyzes past feedback and evaluations and reflects them in the current examples. The exemplification unit can also analyze the user's past example history and dynamically adjust the accuracy of the examples. For example, the exemplification unit adjusts the accuracy of the examples based on the past example history. The exemplification unit can also improve the accuracy of the examples by referring to the user's past feedback. For example, the exemplification unit improves the accuracy of the examples based on the past feedback. In this way, the accuracy of the examples is improved by referring to the user's past example results. Some or all of the above-mentioned processing in the exemplification unit may be performed using, for example, AI, or may be performed without using AI. For example, the exemplification unit can cause a generation AI to analyze the past example results.

[0056] When providing coding examples, the exemplification unit can determine the priority of examples based on the time of code submission. For example, the exemplification unit prioritizes providing coding examples for code with an approaching deadline. For example, the exemplification unit obtains the code submission date and time and prioritizes providing examples for code with an approaching deadline. The exemplification unit can also postpone providing examples for code with an earlier submission date and time. For example, the exemplification unit postpones providing examples for code with an earlier submission date and time. The exemplification unit can also dynamically adjust the priority of examples according to the submission date and time. For example, the exemplification unit adjusts the priority of examples based on the submission date and time. In this way, by determining the priority of examples based on the submission date and time of code, efficient coding examples can be provided. Some or all of the above-described processing in the exemplification unit may be performed using, for example, AI, or may be performed without using AI. For example, the exemplification unit can cause a generation AI to analyze the submission date and time.

[0057] When providing coding examples, the exemplification unit can adjust the order of examples based on the relevance of the code. For example, the exemplification unit prioritizes providing coding examples for code related to important functions. For example, the exemplification unit evaluates code dependencies and functional relevance, and prioritizes providing examples for code related to important functions. The exemplification unit can also postpone providing examples for code with low relevance. For example, the exemplification unit postpones providing examples for code with low relevance. The exemplification unit can also dynamically adjust the order of examples according to the relevance of the code. For example, the exemplification unit adjusts the order of examples based on the dependency of the code. In this way, by adjusting the order of examples based on the relevance of the code, efficient coding examples can be provided. Some or all of the above-described processing in the exemplification unit may be performed using, or without, AI. For example, the exemplification unit can cause a generation AI to evaluate the relevance.

[0058] When providing coding examples, the exemplifying unit may adjust the use of technical terminology in the examples according to the user's level of expertise. For example, if the user is a beginner, the exemplifying unit may provide coding examples in simple language, avoiding technical terminology. For example, the exemplifying unit may provide coding examples in simple language, avoiding technical terminology. Furthermore, if the user is an intermediate user, the exemplifying unit may provide coding examples using appropriate technical terminology. For example, the exemplifying unit may provide coding examples using appropriate technical terminology. Furthermore, if the user is an advanced user, the exemplifying unit may provide detailed coding examples using a lot of technical terminology. For example, the exemplifying unit may provide detailed coding examples using a lot of technical terminology. In this way, by adjusting the use of technical terminology in the examples according to the user's level of expertise, more appropriate coding examples are provided. Some or all of the above-described processing in the exemplifying unit may be performed using, for example, AI, or may be performed without AI. For example, the exemplifying unit may cause a generation AI to adjust the use of technical terminology.

[0059] The intention confirmation unit can adjust the level of detail of the confirmation based on the importance of the code when confirming the intention. For example, the intention confirmation unit performs detailed intention confirmation for important code portions. For example, the intention confirmation unit performs detailed intention confirmation based on the scope of impact and urgency of the code. The intention confirmation unit can also perform simplified intention confirmation for less important code portions. For example, the intention confirmation unit performs simplified intention confirmation when the scope of impact of the code is small. The intention confirmation unit can also dynamically adjust the level of detail of the intention confirmation based on the importance. For example, the intention confirmation unit adjusts the level of detail of the intention confirmation based on the urgency of the code. In this way, efficient intention confirmation can be performed by adjusting the level of detail of the confirmation based on the importance of the code. Some or all of the above-described processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit can cause a generation AI to adjust the level of detail of the intention confirmation.

[0060] The intent confirmation unit can apply different confirmation algorithms depending on the category of code when confirming intent. For example, the intent confirmation unit may focus on security checks for security-related code. For example, the intent confirmation unit may use a security check algorithm to evaluate the security risk of the code. The intent confirmation unit may also focus on performance checks for performance-related code. For example, the intent confirmation unit may use a performance check algorithm to evaluate the execution speed of the code. The intent confirmation unit may also focus on UI checks for user interface-related code. For example, the intent confirmation unit may use a UI check algorithm to evaluate the usability of the code. In this way, by applying different confirmation algorithms depending on the category of code, highly accurate intent confirmation can be performed. Some or all of the above-mentioned processing in the intent confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intent confirmation unit may cause a generation AI to apply the confirmation algorithm.

[0061] The intention confirmation unit can improve the accuracy of the confirmation by referring to the user's past confirmation results when confirming the intention. The intention confirmation unit improves the current confirmation accuracy, for example, based on the results of code previously confirmed by the user. For example, the intention confirmation unit analyzes past error logs and success logs and reflects them in the current confirmation. The intention confirmation unit can also analyze the user's past confirmation history and dynamically adjust the confirmation accuracy. For example, the intention confirmation unit adjusts the confirmation accuracy based on the past confirmation history. The intention confirmation unit can also improve the confirmation accuracy by referring to the user's past feedback. For example, the intention confirmation unit improves the confirmation accuracy based on the past feedback. In this way, the confirmation accuracy is improved by referring to the user's past confirmation results. Some or all of the above-described processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit can cause a generation AI to analyze past confirmation results.

[0062] The intention confirmation unit can determine the priority of confirmation based on the time of submission of the code when confirming the intention. For example, the intention confirmation unit prioritizes intention confirmation for code with an approaching deadline. For example, the intention confirmation unit obtains the submission date and time of the code and prioritizes checking the code with an approaching deadline. The intention confirmation unit can also postpone intention confirmation for code with an earlier submission date and time. For example, the intention confirmation unit postpones checking the code with an earlier submission date and time. The intention confirmation unit can also dynamically adjust the priority of intention confirmation according to the submission date. For example, the intention confirmation unit adjusts the priority of intention confirmation based on the submission date and time. In this way, efficient intention confirmation can be performed by determining the priority of confirmation based on the submission date and time of the code. Some or all of the above-described processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit can cause a generation AI to analyze the submission date and time.

[0063] The intention confirmation unit can adjust the order of confirmation based on the relevance of code during intention confirmation. For example, the intention confirmation unit prioritizes intention confirmation for code related to important functions. For example, the intention confirmation unit evaluates code dependencies and functional relevance, and prioritizes checking code related to important functions. The intention confirmation unit can also postpone intention confirmation for code with low relevance. For example, the intention confirmation unit postpones checking code with low relevance. The intention confirmation unit can also dynamically adjust the order of confirmation based on the relevance of code. For example, the intention confirmation unit adjusts the order of confirmation based on the dependency of code. In this way, adjusting the order of confirmation based on the relevance of code enables efficient intention confirmation. Some or all of the above-described processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit can cause a generation AI to evaluate the relevance.

[0064] The intention confirmation unit can adjust the use of technical terminology in the confirmation depending on the user's level of expertise when confirming the intention. For example, if the user is a beginner, the intention confirmation unit can avoid technical terminology and use simple language to confirm the intention. For example, the intention confirmation unit can avoid technical terminology and use simple language to confirm the intention. Furthermore, if the user is an intermediate user, the intention confirmation unit can use appropriate technical terminology to confirm the intention. For example, the intention confirmation unit can use appropriate technical terminology to confirm the intention. Furthermore, if the user is an advanced user, the intention confirmation unit can use a lot of technical terminology to perform detailed intention confirmation. For example, the intention confirmation unit can use a lot of technical terminology to perform detailed intention confirmation. In this way, by adjusting the use of technical terminology in the confirmation depending on the user's level of expertise, more appropriate intention confirmation can be performed. Some or all of the above-mentioned processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit can cause the generation AI to adjust the use of technical terminology.

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

[0066] The reception unit can analyze the user's past question history and determine the priority of questions based on the user's learning progress. For example, the reception unit analyzes what questions the user has asked in the past, and if the current question is related to a past question, it can preferentially accept that question. The reception unit can also evaluate the user's learning progress, and if the progress is lagging, it can preferentially accept related questions. Furthermore, the reception unit can adjust the priority of questions based on the user's learning goals. For example, if the user aims to acquire a specific skill, it can preferentially accept questions related to that skill. This makes it possible to accept questions appropriately according to the user's learning progress.

[0067] When checking the correctness of code, the checking unit can customize the checking feedback based on the user's programming style. For example, the checking unit can analyze the style of code written by the user in the past and provide feedback based on that style. The checking unit can also adjust the feedback based on the user's preferred coding style (e.g., the use of indentation or the naming conventions for variable names). Furthermore, the checking unit can adjust the level of detail of the feedback according to the user's programming style. For example, if the user prefers detailed feedback, the checking unit provides detailed feedback, and if the user prefers concise feedback, the checking unit provides concise feedback. This makes it possible to provide appropriate feedback according to the user's programming style.

[0068] The reception unit can analyze the user's past question history and suggest questions based on the user's interests. For example, the reception unit can analyze topics that the user has frequently asked questions about in the past and suggest questions related to those topics. The reception unit can also identify areas in which the user is interested from the user's past question history and suggest questions related to those areas. Furthermore, the reception unit can predict topics that the user has not yet asked about but may be interested in, based on the user's past question history, and suggest questions related to those topics. This makes it possible to suggest appropriate questions based on the user's interests.

[0069] When checking the validity of the code, the verification unit can analyze the user's past error patterns and provide feedback to prevent similar errors from occurring. For example, the verification unit can identify errors that the user frequently made in the past and provide points to be careful about to prevent those errors from recurring. The verification unit can also suggest error prevention measures based on the user's past error patterns. Furthermore, the verification unit can analyze the user's past error patterns, identify areas where errors are likely to occur, and provide feedback to urge particular attention to those areas. This makes it possible to provide appropriate feedback based on the user's past error patterns.

[0070] The example unit can analyze the user's past usage history of coding examples and provide coding examples based on the user's preferred coding style. For example, the example unit can analyze the style of coding examples used by the user in the past and provide new coding examples based on that style. The example unit can also provide coding examples based on the user's preferred programming language or framework. Furthermore, the example unit can identify the user's preferred coding pattern based on the user's past usage history of coding examples and provide coding examples based on that pattern. This makes it possible to provide appropriate coding examples according to the user's preferences.

[0071] The intention confirmation unit can analyze the user's past intention confirmation history and perform intention confirmation in a format that is easy for the user to understand. For example, the intention confirmation unit can analyze the format in which the user has previously confirmed their intention, and perform new intention confirmation based on that format. The intention confirmation unit can also perform intention confirmation based on a question format that the user prefers (e.g., multiple choice format or free description format). Furthermore, the intention confirmation unit can identify wording and expressions that are easy for the user to understand based on the user's past intention confirmation history, and perform intention confirmation based on those wording and expressions. This makes it possible to appropriately confirm intention in a format that is easy for the user to understand.

[0072] The providing unit can analyze the user's past feedback and provide information based on the user's preferred information format. For example, the providing unit can analyze the format in which the user has received information in the past and provide new information based on that format. The providing unit can also provide information based on the user's preferred information format (e.g., text format or visual format). Furthermore, the providing unit can identify an information format that is easy for the user to understand based on the user's past feedback and provide information based on that format. This makes it possible to provide appropriate information according to the user's preferences.

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

[0074] Step 1: The reception unit receives questions from users. Questions include programming-related questions and technical questions. The reception unit analyzes the text and voice input by the user and recognizes the content of the question. Step 2: The verification unit uses the generation AI to verify the validity of the code based on the questions received by the reception unit. The generation AI analyzes the code using machine learning models and natural language processing technology to perform error and security checks. For example, it can detect grammatical errors in the code and suggest ways to fix them. It can also evaluate the security risks of the code and suggest areas for improvement. Step 3: The providing unit provides the user with the results confirmed by the confirming unit. The providing unit displays an error message or a success message on the user's screen. The providing unit can also notify the user of the confirmed results by voice. Step 4: The example unit uses the generation AI to provide coding examples based on the questions received by the reception unit. The generation AI generates sample code and best practices and presents them to the user. For example, it may generate sample code for implementing a specific function and provide it to the user. It can also suggest efficient coding methods. Step 5: The first providing unit provides the coding example provided by the example unit to the user, so that the user can refer to the specific coding example. Step 6: The intent confirmation unit asks the user about the intent of the code based on the question received by the reception unit. For example, by asking the user, "What is the intent of this part of code?", the unit organizes the user's thoughts and clarifies the intent of the code. Step 7: The second providing unit provides the user with the intention confirmed by the intention confirming unit, thereby enabling the user to reconfirm the intention of their code and deepen their understanding.

[0075] (Example 2) A pair programming support system according to an embodiment of the present invention employs a generation AI as a listener and advisor for pair programming. The pair programming support system accepts questions from users, and the generation AI verifies the validity of the code, provides coding examples, and asks about the intent of the code. For example, the pair programming support system can ask the user about the validity of the code they are currently writing and for coding examples. The generation AI has a mechanism for studying internal documents and code bases and periodically obtaining the latest information. For example, when a user asks, "Is this code correct?", the generation AI analyzes the code and verifies its validity. Similarly, when a user asks, "Can you give me a coding example for implementing this function?", the generation AI provides an appropriate coding example. Furthermore, the generation AI can also conversely ask the user about the intent of the code. For example, the generation AI can ask, "What is the intent of this part of the code?", allowing the user to organize their thoughts and clarify the intent of the code. Furthermore, voice recognition allows users to communicate with the generation AI via voice. For example, if a user asks "Please tell me the error in this code," the generative AI will recognize the voice and provide appropriate advice. This allows the pair programming support system to provide appropriate advice in response to the user's question, and conversely, by asking the user about the intent of the code, it can deepen the user's understanding. In addition, voice recognition support allows users to communicate with the generative AI by voice, improving work efficiency. This allows users to proceed with programming work more efficiently.

[0076] A pair programming support system according to an embodiment includes a receiving unit, a verifying unit, a providing unit, an example unit, and an intention verifying unit. The receiving unit receives questions from a user. The questions include, but are not limited to, questions about programming and technical topics. The receiving unit, for example, analyzes text or voice input by the user and recognizes the content of the question. The verifying unit uses a generation AI to verify the validity of the code based on the question received by the receiving unit. The generation AI, for example, analyzes the code using a machine learning model or natural language processing technology and performs error and security checks. For example, the generation AI detects grammatical errors in the code and suggests correction methods. The generation AI can also evaluate security risks in the code and point out areas for improvement. The providing unit provides the user with the results verified by the verifying unit. For example, the providing unit displays an error message or a success message on the user's screen. The providing unit can also notify the user of the verified results by voice. The example unit uses the generation AI to provide coding examples based on the questions received by the receiving unit. The generation AI generates, for example, sample code and best practices and presents them to the user. For example, the generation AI generates sample code for implementing a specific function and provides it to the user. The generation AI can also suggest efficient coding methods. The intention confirmation unit asks the user about the intention of the code based on the question received by the reception unit. For example, the intention confirmation unit may ask the user, "What is the intention of this part of code?" to organize the user's thoughts and clarify the intention of the code. As a result, the pair programming support system according to the embodiment can provide appropriate advice in response to the user's question and, conversely, deepen the user's understanding by asking the user about the intention of the code. Furthermore, voice recognition support allows the user to communicate with the generation AI via voice, improving work efficiency. This allows the user to more efficiently proceed with programming work.

[0077] The reception unit accepts questions from a user through voice recognition support. Voice recognition support includes, but is not limited to, a voice recognition algorithm and a voice input device. For example, the reception unit collects questions input by voice from the user using a microphone and converts them into text data using a voice recognition algorithm. For example, the voice recognition algorithm analyzes the user's voice and accurately recognizes the content of the question. The reception unit can also recognize the user's voice in real time using a voice input device and accept questions. For example, the voice input device collects the user's voice with high accuracy and inputs it into the voice recognition algorithm. This allows the user to input questions by voice through voice support. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit can cause a generation AI to execute the voice recognition algorithm.

[0078] The verification unit can verify the validity of the code using the generation AI. Examples of the generation AI include, but are not limited to, machine learning models and natural language processing technologies. For example, the verification unit can detect grammatical errors in the code using the generation AI. For example, the generation AI can analyze the grammar of the code and identify the error location. The verification unit can also evaluate the security risk of the code using the generation AI. For example, the generation AI can detect security holes in the code and suggest improvements. The verification unit can also evaluate the performance of the code using the generation AI. For example, the generation AI can analyze the execution speed of the code and suggest optimization methods. In this way, the use of the generation AI improves the accuracy of verifying the validity of the code. Some or all of the above-mentioned processing in the verification unit can be performed using, for example, AI, or can be performed without using AI. For example, the verification unit can cause the generation AI to verify the validity of the code.

[0079] The exemplification unit can provide coding examples using a generation AI. Examples of the generation AI include, but are not limited to, machine learning models and natural language processing technologies. The exemplification unit can, for example, use the generation AI to generate sample code for implementing a specific function. For example, the generation AI generates appropriate sample code based on a user's question and provides it to the user. The exemplification unit can also use the generation AI to suggest efficient coding methods. For example, the generation AI suggests efficient coding methods based on best practices. The exemplification unit can also use the generation AI to suggest code refactoring methods. For example, the generation AI suggests refactoring methods to improve code readability. This improves the accuracy of providing coding examples by using the generation AI. Some or all of the above-described processing in the exemplification unit can be performed using, for example, an AI, or can be performed without using an AI. For example, the exemplification unit can cause the generation AI to generate coding examples.

[0080] The intention confirmation unit can ask the user about the intention of the code. For example, the intention confirmation unit can ask the user, "What is the intention of this part of the code?" to organize the user's thoughts and clarify the intention of the code. For example, the intention confirmation unit can analyze the user's input to confirm the purpose and design intention of the code. The intention confirmation unit can also ask the user about areas for improvement in the code. For example, the intention confirmation unit can ask, "How do you plan to improve this part of the code?" to confirm the user's intention for improvement. The intention confirmation unit can also ask the user about the design intention of the code. For example, the intention confirmation unit can ask, "What design intention is this part of the code based on?" to confirm the user's design intention. In this way, asking the user about the intention of the code can deepen the user's understanding. Some or all of the above-mentioned processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit can cause a generation AI to confirm the intention of the code.

[0081] The providing unit can display the confirmed results, the provided coding example, and the confirmed intention to the user. The providing unit, for example, displays an error message or a success message on the user's screen. For example, the providing unit displays the results confirmed by the confirmation unit on the user's screen. The providing unit can also notify the user of the confirmed results by voice. For example, the providing unit can notify the confirmed results by voice using voice synthesis technology. The providing unit can also display the provided coding example to the user. For example, the providing unit displays the coding example provided by the example unit on the user's screen. The providing unit can also display the confirmed intention to the user. For example, the providing unit displays the intention confirmed by the intention confirmation unit on the user's screen. This allows the user to deepen their understanding by providing appropriate information to the user. Some or all of the above-described processing in the providing unit may be performed using AI, or may be performed without using AI. For example, the providing unit can cause the generation AI to display the information.

[0082] The reception unit can estimate the user's emotions and adjust the timing of question reception based on the estimated user emotions. For example, the reception unit captures the user's facial expression with a camera and estimates the emotion using an emotion estimation algorithm. For example, the reception unit calculates an emotion score based on changes in facial expression. The reception unit can also record the user's voice and estimate the emotion using voice analysis technology. For example, the reception unit analyzes the tone and speed of the voice and calculates the emotion score. The reception unit can also collect the user's biometric data (heart rate and electrodermal activity) with a sensor and estimate the emotion using an emotion estimation algorithm. For example, the reception unit calculates the emotion score based on heart rate fluctuations. This allows the timing of question reception to be adjusted according to the user's emotions, thereby allowing questions to be received at a more appropriate time. Emotion estimation is achieved using an emotion estimation function, for example, an emotion engine or a generative AI. The generative AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit may cause a generation AI to perform emotion estimation.

[0083] The reception unit can analyze the user's past question history and select an appropriate reception method. The reception unit, for example, analyzes the content of the user's past questions and the frequency of questions. For example, the reception unit automatically displays questions that the user has frequently asked in the past as candidates. The reception unit can also preferentially suggest question formats (voice, text, etc.) that the user has used in the past. For example, the reception unit predicts and suggests question formats to be used in a specific time period based on the user's past question history. In this way, the optimal reception method can be selected by analyzing the user's past question history. Some or all of the above-mentioned processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit can cause a generation AI to analyze the question history.

[0084] When receiving a question, the reception unit can filter the questions based on the user's current project or area of ​​interest. For example, the reception unit preferentially receives only questions related to the project the user is currently working on. For example, the reception unit acquires the user's project information and filters related questions. The reception unit can also automatically filter related questions based on the user's area of ​​interest. For example, the reception unit identifies the user's area of ​​interest based on the user's past question history and project history, and preferentially receives related questions. In this way, by filtering questions based on the user's current project and area of ​​interest, highly relevant questions can be preferentially received. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit can have a generation AI perform filtering of project information and areas of interest.

[0085] When receiving a question, the reception unit can select an appropriate reception means depending on the user's input method. For example, when the user inputs a question by voice, the reception unit receives the question using voice recognition. For example, the reception unit converts the user's voice into text data using a voice recognition algorithm. Furthermore, when the user inputs a question by text, the reception unit can also receive the question using text analysis. For example, the reception unit analyzes the user's text input using a text analysis algorithm to recognize the content of the question. Furthermore, when the user inputs a question using an image, the reception unit can also receive the question using image recognition. For example, the reception unit analyzes the user's image input using an image recognition algorithm to recognize the content of the question. This allows the reception unit to select the optimal reception means depending on the user's input method, thereby improving the efficiency of question reception. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without AI. For example, the reception unit may have a generation AI select the input method.

[0086] The reception unit can estimate the user's emotions and determine the priority of questions to be received based on the estimated user emotions. For example, the reception unit captures the user's facial expression with a camera and estimates the emotion using an emotion estimation algorithm. For example, the reception unit calculates an emotion score based on changes in facial expression. The reception unit can also record the user's voice and estimate the emotion using voice analysis technology. For example, the reception unit analyzes the tone and speed of the voice and calculates the emotion score. The reception unit can also collect the user's biometric data (heart rate and electrodermal activity) with a sensor and estimate the emotion using an emotion estimation algorithm. For example, the reception unit calculates the emotion score based on heart rate fluctuations. This allows the priority of questions to be determined according to the user's emotions, thereby allowing important questions to be received preferentially. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generative AI. The generative AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit may cause a generation AI to perform emotion estimation.

[0087] When receiving a question, the reception unit can prioritize receiving highly relevant questions by taking into account the user's geographical location information. For example, if the user is in a specific area, the reception unit prioritizes receiving questions related to that area. For example, the reception unit acquires the user's GPS data or IP address and identifies geographical location information. Furthermore, if the user is traveling, the reception unit can prioritize receiving questions related to the user's travel destination. For example, the reception unit acquires the user's travel destination information and filters related questions. Furthermore, if the user is at home, the reception unit can prioritize receiving questions related to the user's home. For example, the reception unit acquires the user's home information and filters related questions. In this way, by taking the user's geographical location information into account, highly relevant questions can be prioritized. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit may cause a generation AI to filter the geographical location information.

[0088] The reception unit can analyze the user's social media activity when receiving a question and receive related questions. The reception unit can receive related questions based on, for example, content shared by the user on social media. For example, the reception unit can obtain the user's social media account and analyze the content of the posts. The reception unit can also analyze the user's social media activity and suggest related questions. For example, the reception unit can analyze the user's number of likes and the content of comments to identify related questions. The reception unit can also receive related questions based on the activity of the user's friends on social media. For example, the reception unit can analyze the content posted by the user's friends and suggest related questions. In this way, by analyzing the user's social media activity, related questions can be preferentially received. Some or all of the above-described processing by the reception unit can be performed using, for example, AI, or can be performed without using AI. For example, the reception unit can cause a generation AI to analyze the social media activity.

[0089] The reception unit can customize the reception method by reflecting the user's past feedback when receiving a question. The reception unit, for example, suggests an optimal reception method based on feedback provided by the user in the past. For example, the reception unit analyzes the user's past feedback and preferentially accepts specific question formats. The reception unit can also customize the reception method based on the user's past feedback. For example, the reception unit analyzes the user's ratings and comments and adjusts the reception method. The reception unit can also adjust the timing of question reception based on the user's past feedback. For example, the reception unit optimizes the timing of question reception based on the user's feedback. This allows the user's past feedback to be reflected, thereby providing an optimal reception method. Some or all of the above-described processing in the reception unit may be performed using, for example, AI, or may be performed without using AI. For example, the reception unit can cause a generation AI to analyze the feedback.

[0090] The verification unit can estimate the user's emotion and adjust the expression method for confirming the validity of the code based on the estimated user emotion. For example, the verification unit captures the user's facial expression with a camera and estimates the emotion using an emotion estimation algorithm. For example, the verification unit calculates an emotion score based on changes in facial expression. The verification unit can also record the user's voice and estimate the emotion using voice analysis technology. For example, the verification unit analyzes the tone and speed of the voice and calculates an emotion score. The verification unit can also collect the user's biometric data (heart rate and electrodermal activity) with a sensor and estimate the emotion using an emotion estimation algorithm. For example, the verification unit calculates an emotion score based on heart rate fluctuations. This allows for more appropriate confirmation by adjusting the expression method for confirming the validity of the code according to the user's emotion. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generative AI. The generative AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI. Some or all of the above-described processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit may cause a generation AI to perform emotion estimation.

[0091] When verifying the validity of code, the verification unit can adjust the level of verification detail based on the importance of the code. For example, the verification unit performs a detailed verification on important code portions. For example, the verification unit performs a detailed verification based on the scope of impact and urgency of the code. The verification unit can also perform a simplified verification on less important code portions. For example, the verification unit performs a simplified verification when the scope of impact of the code is small. The verification unit can also dynamically adjust the level of verification detail based on the importance. For example, the verification unit adjusts the level of verification detail based on the urgency of the code. This allows for efficient verification by adjusting the level of verification detail based on the importance of the code. Some or all of the above-described processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit can cause the generation AI to adjust the level of verification detail.

[0092] When verifying the validity of code, the verification unit can apply different verification algorithms depending on the category of the code. For example, the verification unit may focus on security checks for security-related code. For example, the verification unit may use a security check algorithm to evaluate the security risk of the code. The verification unit may also focus on performance checks for performance-related code. For example, the verification unit may use a performance check algorithm to evaluate the execution speed of the code. The verification unit may also focus on UI checks for user interface-related code. For example, the verification unit may use a UI check algorithm to evaluate the usability of the code. In this way, by applying different verification algorithms depending on the category of code, highly accurate verification can be performed. Some or all of the above-mentioned processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit may have a generation AI apply the verification algorithm.

[0093] When verifying the validity of code, the verification unit can improve the accuracy of the verification by referring to the user's past verification results. The verification unit, for example, improves the current verification accuracy based on the results of code previously verified by the user. For example, the verification unit analyzes past error logs and success logs and reflects them in the current verification. The verification unit can also analyze the user's past verification history and dynamically adjust the verification accuracy. For example, the verification unit adjusts the verification accuracy based on the past verification history. The verification unit can also improve the verification accuracy by referring to the user's past feedback. For example, the verification unit improves the verification accuracy based on the past feedback. In this way, the verification accuracy is improved by referring to the user's past verification results. Some or all of the above-described processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit can cause the generation AI to analyze past verification results.

[0094] The confirmation unit can estimate the user's emotion and adjust the length of the confirmation based on the estimated user emotion. For example, the confirmation unit captures the user's facial expression with a camera and estimates the emotion using an emotion estimation algorithm. For example, the confirmation unit calculates an emotion score based on changes in facial expression. The confirmation unit can also record the user's voice and estimate the emotion using voice analysis technology. For example, the confirmation unit analyzes the tone and speed of the voice and calculates an emotion score. The confirmation unit can also collect the user's biometric data (heart rate and electrodermal activity) with a sensor and estimate the emotion using an emotion estimation algorithm. For example, the confirmation unit calculates an emotion score based on heart rate fluctuations. This allows for more appropriate confirmation by adjusting the length of the confirmation based on 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. Some or all of the above-mentioned processing in the confirmation unit can be performed using, for example, AI, or without AI. For example, the verification unit can cause the generation AI to perform emotion estimation.

[0095] When verifying the validity of a code, the verification unit can determine the verification priority based on the time of submission of the code. For example, the verification unit prioritizes verification of codes with an approaching deadline. For example, the verification unit obtains the submission date and time of the code and prioritizes verification of codes with an approaching deadline. The verification unit can also postpone verification of codes with an earlier submission date and time. For example, the verification unit postpones verification of codes with an earlier submission date and time. The verification unit can also dynamically adjust the verification priority according to the submission date and time. For example, the verification unit adjusts the verification priority based on the submission date and time. This enables efficient verification by determining the verification priority based on the submission date and time of the code. Some or all of the above-described processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit can have a generation AI analyze the submission date and time.

[0096] When verifying the validity of code, the verification unit can adjust the verification order based on the relevance of the code. For example, the verification unit prioritizes verification of code related to important functions. For example, the verification unit evaluates code dependencies and functional relevance, and prioritizes verification of code related to important functions. The verification unit can also postpone verification of less relevant code. For example, the verification unit postpones verification of less relevant code. The verification unit can also dynamically adjust the verification order according to the relevance of the code. For example, the verification unit adjusts the verification order based on the dependency of the code. In this way, efficient verification can be achieved by adjusting the verification order based on the relevance of the code. Some or all of the above-described processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit can cause a generation AI to perform the relevance evaluation.

[0097] When verifying the validity of code, the verification unit can adjust the use of technical terminology in the verification depending on the user's level of expertise. For example, if the user is a beginner, the verification unit can verify the validity of the code using simple language, avoiding technical terminology. For example, the verification unit can verify the validity of the code using simple language, avoiding technical terminology. Furthermore, if the user is an intermediate user, the verification unit can use appropriate technical terminology in the verification. For example, the verification unit can verify the validity of the code using appropriate technical terminology. Furthermore, if the user is an advanced user, the verification unit can use a lot of technical terminology to perform a detailed verification. For example, the verification unit can use a lot of technical terminology to perform a detailed verification. In this way, by adjusting the use of technical terminology in the verification depending on the user's level of expertise, more appropriate verification can be performed. Some or all of the above-mentioned processing in the verification unit may be performed using, for example, AI, or may be performed without using AI. For example, the verification unit can cause the generation AI to adjust the use of technical terminology.

[0098] The providing unit can estimate the user's emotion and adjust the way information is presented based on the estimated user's emotion. The providing unit, for example, captures the user's facial expression with a camera and estimates the emotion using an emotion estimation algorithm. For example, the providing unit calculates an emotion score based on changes in facial expression. The providing unit can also record the user's voice and estimate the emotion using voice analysis technology. For example, the providing unit analyzes the tone and speed of the voice and calculates an emotion score. The providing unit can also collect the user's biometric data (heart rate and electrodermal activity) with a sensor and estimate the emotion using an emotion estimation algorithm. For example, the providing unit calculates an emotion score based on heart rate fluctuations. This allows the information presentation method to be adjusted according to the user's emotion, thereby providing more appropriate information. The emotion estimation is realized using an emotion estimation function, for example, 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. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit may cause a generation AI to perform emotion estimation.

[0099] The providing unit can adjust the level of detail of the information provided based on the importance of the information when providing the information. For example, the providing unit provides important information with a detailed explanation. For example, the providing unit provides detailed information based on the scope of impact and urgency of the information. The providing unit can also provide simplified information for less important information. For example, the providing unit provides simplified information when the scope of impact of the information is small. The providing unit can also dynamically adjust the level of detail of the information provided based on the importance. For example, the providing unit adjusts the level of detail of the information provided based on the urgency of the information. As a result, efficient information provision can be achieved by adjusting the level of detail of the information provided based on the importance of the information. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit can cause a generation AI to adjust the level of detail of the information provided.

[0100] The providing unit can apply different providing algorithms depending on the category of information when providing the information. For example, the providing unit may focus on security checks for security-related information. For example, the providing unit may evaluate the security risk of the information using a security check algorithm. The providing unit may also focus on performance checks for performance-related information. For example, the providing unit may evaluate the execution speed of the information using a performance check algorithm. The providing unit may also focus on UI checks for user interface-related information. For example, the providing unit may evaluate the usability of the information using a UI check algorithm. In this way, by applying different providing algorithms depending on the category of information, highly accurate information can be provided. Some or all of the above-mentioned processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit may cause a generation AI to apply the providing algorithm.

[0101] The providing unit can improve the accuracy of the information provided by referring to the user's past provision results when providing the information. The providing unit improves the current accuracy of the information provided by the user, for example, based on the results of information provided by the user in the past. For example, the providing unit analyzes past feedback and evaluations and reflects them in the current provision. The providing unit can also analyze the user's past provision history and dynamically adjust the accuracy of the information provided. For example, the providing unit adjusts the accuracy of the information provided by referring to the user's past feedback. For example, the providing unit improves the accuracy of the information provided by referring to the user's past feedback. In this way, the accuracy of the information provided is improved by referring to the user's past provision results. Some or all of the above-described processing in the providing unit may be performed using AI, for example, or may be performed without using AI. For example, the providing unit can cause a generation AI to analyze past provision results.

[0102] The providing unit can estimate the user's emotion and adjust the length of information to be provided based on the estimated user's emotion. For example, the providing unit captures the user's facial expression with a camera and estimates the emotion using an emotion estimation algorithm. For example, the providing unit calculates an emotion score based on changes in facial expression. The providing unit can also record the user's voice and estimate the emotion using voice analysis technology. For example, the providing unit analyzes the tone and speed of the voice and calculates an emotion score. The providing unit can also collect the user's biometric data (heart rate and electrodermal activity) with a sensor and estimate the emotion using an emotion estimation algorithm. For example, the providing unit calculates an emotion score based on heart rate fluctuations. This allows the length of information to be adjusted according to the user's emotion, thereby providing more appropriate information. Emotion estimation is realized using an emotion estimation function, for example, using an emotion engine or a 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. Some or all of the above-mentioned processing in the providing unit can be performed using, for example, AI, or without AI. For example, the providing unit can cause the generation AI to perform emotion estimation.

[0103] The providing unit can determine the priority of provision based on the time of submission of information at the time of provision. For example, the providing unit prioritizes the provision of information whose deadline is approaching. For example, the providing unit acquires the submission date and time of information and prioritizes the provision of information whose deadline is approaching. The providing unit can also postpone the provision of information whose submission date and time is early. For example, the providing unit postpones the provision of information whose submission date and time is early. The providing unit can also dynamically adjust the priority of provision according to the submission time. For example, the providing unit adjusts the priority of provision based on the submission time. This enables efficient information provision by determining the priority of provision based on the submission time of information. Some or all of the above-mentioned processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit can cause a generation AI to analyze the submission time.

[0104] The providing unit can adjust the order of provision based on the relevance of the information when providing the information. For example, the providing unit prioritizes the provision of information related to important functions. For example, the providing unit evaluates the dependency and functional relevance of the information and prioritizes the provision of information related to important functions. The providing unit can also postpone the provision of less relevant information. For example, the providing unit postpones the provision of less relevant information. The providing unit can also dynamically adjust the order of provision according to the relevance of the information. For example, the providing unit adjusts the order of provision based on the dependency of the information. As a result, efficient information provision can be achieved by adjusting the order of provision based on the relevance of the information. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit can cause a generation AI to evaluate the relevance.

[0105] The providing unit can adjust the use of technical terminology in the provided information according to the user's level of expertise when providing the information. For example, if the user is a beginner, the providing unit provides information in simple language, avoiding technical terminology. For example, the providing unit provides information in simple language, avoiding technical terminology. Furthermore, if the user is an intermediate user, the providing unit can provide information using appropriate technical terminology. For example, the providing unit provides information using appropriate technical terminology. Furthermore, if the user is an advanced user, the providing unit can provide detailed information using a lot of technical terminology. For example, the providing unit provides detailed information using a lot of technical terminology. In this way, by adjusting the use of technical terminology in the provided information according to the user's level of expertise, more appropriate information can be provided. Some or all of the above-described processing in the providing unit may be performed using, for example, AI, or may be performed without using AI. For example, the providing unit can cause a generation AI to adjust the use of technical terminology.

[0106] The exemplification unit can estimate the user's emotion and adjust the expression method of the coding example based on the estimated user's emotion. For example, the exemplification unit captures the user's facial expression with a camera and estimates the emotion using an emotion estimation algorithm. For example, the exemplification unit calculates an emotion score based on changes in facial expression. The exemplification unit can also record the user's voice and estimate the emotion using voice analysis technology. For example, the exemplification unit analyzes the tone and speed of the voice and calculates an emotion score. The exemplification unit can also collect the user's biometric data (heart rate and electrodermal activity) with a sensor and estimate the emotion using an emotion estimation algorithm. For example, the exemplification unit calculates an emotion score based on heart rate fluctuations. This allows the expression method of the coding example to be adjusted according to the user's emotion, thereby providing a more appropriate coding example. Emotion estimation is achieved using an emotion estimation function, for example, using 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. Some or all of the above-described processing in the example unit may be performed using, for example, AI, or may be performed without using AI. For example, the example unit may cause a generation AI to perform emotion estimation.

[0107] When providing a coding example, the exemplification unit can adjust the level of detail of the example based on the importance of the code. For example, the exemplification unit provides a detailed coding example for an important code portion. For example, the exemplification unit provides a detailed coding example based on the scope of impact and urgency of the code. The exemplification unit can also provide a simplified coding example for a code portion of low importance. For example, the exemplification unit provides a simplified coding example when the scope of impact of the code is small. The exemplification unit can also dynamically adjust the level of detail of the example based on the importance. For example, the exemplification unit adjusts the level of detail of the example based on the urgency of the code. In this way, by adjusting the level of detail of the example based on the importance of the code, efficient coding examples can be provided. Some or all of the above-described processing in the exemplification unit may be performed using, for example, AI, or may be performed without using AI. For example, the exemplification unit can cause a generation AI to adjust the level of detail of the example.

[0108] When providing coding examples, the exemplification unit can apply different exemplification algorithms depending on the category of the code. For example, the exemplification unit may focus on security checks for security-related code. For example, the exemplification unit may use a security check algorithm to evaluate the security risk of the code. The exemplification unit may also focus on performance checks for performance-related code. For example, the exemplification unit may use a performance check algorithm to evaluate the execution speed of the code. The exemplification unit may also focus on UI checks for user interface-related code. For example, the exemplification unit may use a UI check algorithm to evaluate the usability of the code. In this way, by applying different exemplification algorithms depending on the category of the code, highly accurate coding examples are provided. Some or all of the above-mentioned processing in the exemplification unit may be performed using, for example, AI, or may be performed without using AI. For example, the exemplification unit may cause a generation AI to apply the exemplification algorithm.

[0109] When providing coding examples, the exemplification unit can improve the accuracy of the examples by referring to the user's past example results. The exemplification unit, for example, improves the accuracy of the current examples based on the results of coding examples previously provided by the user. For example, the exemplification unit analyzes past feedback and evaluations and reflects them in the current examples. The exemplification unit can also analyze the user's past example history and dynamically adjust the accuracy of the examples. For example, the exemplification unit adjusts the accuracy of the examples based on the past example history. The exemplification unit can also improve the accuracy of the examples by referring to the user's past feedback. For example, the exemplification unit improves the accuracy of the examples based on the past feedback. In this way, the accuracy of the examples is improved by referring to the user's past example results. Some or all of the above-mentioned processing in the exemplification unit may be performed using, for example, AI, or may be performed without using AI. For example, the exemplification unit can cause a generation AI to analyze the past example results.

[0110] The exemplifying unit can estimate the user's emotion and adjust the length of the coding example based on the estimated user's emotion. For example, the exemplifying unit captures the user's facial expression with a camera and estimates the emotion using an emotion estimation algorithm. For example, the exemplifying unit calculates an emotion score based on changes in facial expression. The exemplifying unit can also record the user's voice and estimate the emotion using voice analysis technology. For example, the exemplifying unit analyzes the tone and speed of the voice and calculates an emotion score. The exemplifying unit can also collect the user's biometric data (heart rate and electrodermal activity) with a sensor and estimate the emotion using an emotion estimation algorithm. For example, the exemplifying unit calculates an emotion score based on heart rate fluctuations. This allows the length of the coding example to be adjusted according to the user's emotion, thereby providing a more appropriate coding example. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or a generation AI. The generation AI can be a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to such examples. Some or all of the above-mentioned processing in the exemplifying unit can be performed using, for example, AI, or without AI. For example, the example unit can cause the generation AI to perform emotion estimation.

[0111] When providing coding examples, the exemplification unit can determine the priority of examples based on the time of code submission. For example, the exemplification unit prioritizes providing coding examples for code with an approaching deadline. For example, the exemplification unit obtains the code submission date and time and prioritizes providing examples for code with an approaching deadline. The exemplification unit can also postpone providing examples for code with an earlier submission date and time. For example, the exemplification unit postpones providing examples for code with an earlier submission date and time. The exemplification unit can also dynamically adjust the priority of examples according to the submission date and time. For example, the exemplification unit adjusts the priority of examples based on the submission date and time. In this way, by determining the priority of examples based on the submission date and time of code, efficient coding examples can be provided. Some or all of the above-described processing in the exemplification unit may be performed using, for example, AI, or may be performed without using AI. For example, the exemplification unit can cause a generation AI to analyze the submission date and time.

[0112] When providing coding examples, the exemplification unit can adjust the order of examples based on the relevance of the code. For example, the exemplification unit prioritizes providing coding examples for code related to important functions. For example, the exemplification unit evaluates code dependencies and functional relevance, and prioritizes providing examples for code related to important functions. The exemplification unit can also postpone providing examples for code with low relevance. For example, the exemplification unit postpones providing examples for code with low relevance. The exemplification unit can also dynamically adjust the order of examples according to the relevance of the code. For example, the exemplification unit adjusts the order of examples based on the dependency of the code. In this way, by adjusting the order of examples based on the relevance of the code, efficient coding examples can be provided. Some or all of the above-described processing in the exemplification unit may be performed using, or without, AI. For example, the exemplification unit can cause a generation AI to evaluate the relevance.

[0113] When providing coding examples, the exemplifying unit may adjust the use of technical terminology in the examples according to the user's level of expertise. For example, if the user is a beginner, the exemplifying unit may provide coding examples in simple language, avoiding technical terminology. For example, the exemplifying unit may provide coding examples in simple language, avoiding technical terminology. Furthermore, if the user is an intermediate user, the exemplifying unit may provide coding examples using appropriate technical terminology. For example, the exemplifying unit may provide coding examples using appropriate technical terminology. Furthermore, if the user is an advanced user, the exemplifying unit may provide detailed coding examples using a lot of technical terminology. For example, the exemplifying unit may provide detailed coding examples using a lot of technical terminology. In this way, by adjusting the use of technical terminology in the examples according to the user's level of expertise, more appropriate coding examples are provided. Some or all of the above-described processing in the exemplifying unit may be performed using, for example, AI, or may be performed without AI. For example, the exemplifying unit may cause a generation AI to adjust the use of technical terminology.

[0114] The intention confirmation unit can estimate the user's emotion and adjust the way in which the intention confirmation is expressed based on the estimated user's emotion. For example, the intention confirmation unit captures the user's facial expression with a camera and estimates the emotion using an emotion estimation algorithm. For example, the intention confirmation unit can calculate an emotion score based on changes in facial expression. The intention confirmation unit can also record the user's voice and estimate the emotion using voice analysis technology. For example, the intention confirmation unit can analyze the tone and speed of the voice and calculate an emotion score. The intention confirmation unit can also collect the user's biometric data (heart rate and electrodermal activity) with a sensor and estimate the emotion using an emotion estimation algorithm. For example, the intention confirmation unit can calculate an emotion score based on fluctuations in heart rate. This allows for more appropriate intention confirmation by adjusting the way in which the intention confirmation is expressed based on the user's emotion. Emotion estimation is achieved using an emotion estimation function, for example, using 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. Some or all of the above-described processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit may cause the generation AI to perform emotion estimation.

[0115] The intention confirmation unit can adjust the level of detail of the confirmation based on the importance of the code when confirming the intention. For example, the intention confirmation unit performs detailed intention confirmation for important code portions. For example, the intention confirmation unit performs detailed intention confirmation based on the scope of impact and urgency of the code. The intention confirmation unit can also perform simplified intention confirmation for less important code portions. For example, the intention confirmation unit performs simplified intention confirmation when the scope of impact of the code is small. The intention confirmation unit can also dynamically adjust the level of detail of the intention confirmation based on the importance. For example, the intention confirmation unit adjusts the level of detail of the intention confirmation based on the urgency of the code. In this way, efficient intention confirmation can be performed by adjusting the level of detail of the confirmation based on the importance of the code. Some or all of the above-described processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit can cause a generation AI to adjust the level of detail of the intention confirmation.

[0116] The intent confirmation unit can apply different confirmation algorithms depending on the category of code when confirming intent. For example, the intent confirmation unit may focus on security checks for security-related code. For example, the intent confirmation unit may use a security check algorithm to evaluate the security risk of the code. The intent confirmation unit may also focus on performance checks for performance-related code. For example, the intent confirmation unit may use a performance check algorithm to evaluate the execution speed of the code. The intent confirmation unit may also focus on UI checks for user interface-related code. For example, the intent confirmation unit may use a UI check algorithm to evaluate the usability of the code. In this way, by applying different confirmation algorithms depending on the category of code, highly accurate intent confirmation can be performed. Some or all of the above-mentioned processing in the intent confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intent confirmation unit may cause a generation AI to apply the confirmation algorithm.

[0117] The intention confirmation unit can improve the accuracy of the confirmation by referring to the user's past confirmation results when confirming the intention. The intention confirmation unit improves the current confirmation accuracy, for example, based on the results of code previously confirmed by the user. For example, the intention confirmation unit analyzes past error logs and success logs and reflects them in the current confirmation. The intention confirmation unit can also analyze the user's past confirmation history and dynamically adjust the confirmation accuracy. For example, the intention confirmation unit adjusts the confirmation accuracy based on the past confirmation history. The intention confirmation unit can also improve the confirmation accuracy by referring to the user's past feedback. For example, the intention confirmation unit improves the confirmation accuracy based on the past feedback. In this way, the confirmation accuracy is improved by referring to the user's past confirmation results. Some or all of the above-described processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit can cause a generation AI to analyze past confirmation results.

[0118] The intention confirmation unit can estimate the user's emotion and adjust the length of the intention confirmation based on the estimated user emotion. The intention confirmation unit, for example, captures the user's facial expression with a camera and estimates the emotion using an emotion estimation algorithm. For example, the intention confirmation unit can calculate an emotion score based on changes in facial expression. The intention confirmation unit can also record the user's voice and estimate the emotion using voice analysis technology. For example, the intention confirmation unit can analyze the tone and speed of the voice and calculate an emotion score. The intention confirmation unit can also collect the user's biometric data (heart rate and electrodermal activity) with a sensor and estimate the emotion using an emotion estimation algorithm. For example, the intention confirmation unit can calculate an emotion score based on heart rate fluctuations. This allows for more appropriate intention confirmation by adjusting the length of the intention confirmation 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, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI. Some or all of the above-described processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit may cause the generation AI to perform emotion estimation.

[0119] The intention confirmation unit can determine the priority of confirmation based on the time of submission of the code when confirming the intention. For example, the intention confirmation unit prioritizes intention confirmation for code with an approaching deadline. For example, the intention confirmation unit obtains the submission date and time of the code and prioritizes checking the code with an approaching deadline. The intention confirmation unit can also postpone intention confirmation for code with an earlier submission date and time. For example, the intention confirmation unit postpones checking the code with an earlier submission date and time. The intention confirmation unit can also dynamically adjust the priority of intention confirmation according to the submission date. For example, the intention confirmation unit adjusts the priority of intention confirmation based on the submission date and time. In this way, efficient intention confirmation can be performed by determining the priority of confirmation based on the submission date and time of the code. Some or all of the above-described processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit can cause a generation AI to analyze the submission date and time.

[0120] The intention confirmation unit can adjust the order of confirmation based on the relevance of code during intention confirmation. For example, the intention confirmation unit prioritizes intention confirmation for code related to important functions. For example, the intention confirmation unit evaluates code dependencies and functional relevance, and prioritizes checking code related to important functions. The intention confirmation unit can also postpone intention confirmation for code with low relevance. For example, the intention confirmation unit postpones checking code with low relevance. The intention confirmation unit can also dynamically adjust the order of confirmation based on the relevance of code. For example, the intention confirmation unit adjusts the order of confirmation based on the dependency of code. In this way, adjusting the order of confirmation based on the relevance of code enables efficient intention confirmation. Some or all of the above-described processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit can cause a generation AI to evaluate the relevance.

[0121] The intention confirmation unit can adjust the use of technical terminology in the confirmation depending on the user's level of expertise when confirming the intention. For example, if the user is a beginner, the intention confirmation unit can avoid technical terminology and use simple language to confirm the intention. For example, the intention confirmation unit can avoid technical terminology and use simple language to confirm the intention. Furthermore, if the user is an intermediate user, the intention confirmation unit can use appropriate technical terminology to confirm the intention. For example, the intention confirmation unit can use appropriate technical terminology to confirm the intention. Furthermore, if the user is an advanced user, the intention confirmation unit can use a lot of technical terminology to perform detailed intention confirmation. For example, the intention confirmation unit can use a lot of technical terminology to perform detailed intention confirmation. In this way, by adjusting the use of technical terminology in the confirmation depending on the user's level of expertise, more appropriate intention confirmation can be performed. Some or all of the above-mentioned processing in the intention confirmation unit may be performed using, for example, AI, or may be performed without using AI. For example, the intention confirmation unit can cause the generation AI to adjust the use of technical terminology. === Hard Collateral 1-1 === Each of the multiple elements, including the above-mentioned reception unit, confirmation unit, provision unit, example unit, and intention confirmation 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 receives a question from a user using the microphone 38B or touch panel 38A of the smart device 14, and analyzes the voice and text using the control unit 46A. The confirmation unit is realized, for example, by the specific processing unit 290 of the data processing device 12 and confirms the validity of the code using a generation AI. The provision unit provides the confirmation result to the user using, for example, the display 40A or speaker 40B of the smart device 14. The example unit is realized, for example, by the specific processing unit 290 of the data processing device 12 and provides coding examples using a generation AI. The intention confirmation unit is realized, for example, by the control unit 46A of the smart device 14 and asks the user about the intention of the code. === Hard Collateral 1-2 === Each of the multiple elements, including the above-mentioned reception unit, confirmation unit, provision unit, example unit, and intention confirmation 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 receives a question from the user using the microphone 238 of the smart glasses 214 and analyzes the voice using the control unit 46A. The confirmation unit is realized, for example, by the specific processing unit 290 of the data processing device 12 and confirms the validity of the code using a generation AI. The provision unit provides the confirmation result to the user using, for example, the speaker 240 of the smart glasses 214. The example unit is realized, for example, by the specific processing unit 290 of the data processing device 12 and provides coding examples using a generation AI. The intention confirmation unit is realized, for example, by the control unit 46A of the smart glasses 214 and asks the user about the intention of the code. === Hard Collateral 1-3 === Each of the multiple elements including the above-mentioned reception unit, confirmation unit, provision unit, example unit, and intention confirmation 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 receives a question from the user using the microphone 238 of the headset-type terminal 314 and analyzes the voice using the control unit 46A. The confirmation unit is realized, for example, by the specific processing unit 290 of the data processing device 12 and confirms the validity of the code using a generation AI. The provision unit provides the confirmation result to the user using, for example, the speaker 240 of the headset-type terminal 314. The example unit is realized, for example, by the specific processing unit 290 of the data processing device 12 and provides coding examples using a generation AI. The intention confirmation unit is realized, for example, by the control unit 46A of the headset-type terminal 314 and asks the user about the intention of the code. === Hard Collateral 1-4 === Each of the multiple elements including the above-mentioned reception unit, confirmation unit, provision unit, example unit, and intention confirmation unit is realized, for example, by at least one of the robot 414 and the data processing device 12. For example, the reception unit receives a question from a user using the microphone 238 of the robot 414 and analyzes the voice using the control unit 46A. The confirmation unit is realized, for example, by the specific processing unit 290 of the data processing device 12 and confirms the validity of the code using a generation AI. The provision unit provides the confirmation result to the user using, for example, the speaker 240 of the robot 414. The example unit is realized, for example, by the specific processing unit 290 of the data processing device 12 and provides coding examples using a generation AI. The intention confirmation unit is realized, for example, by the control unit 46A of the robot 414 and asks the user about the intention of the code.

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

[0123] The reception unit can analyze the user's past question history and determine the priority of questions based on the user's learning progress. For example, the reception unit analyzes what questions the user has asked in the past, and if the current question is related to a past question, it can preferentially accept that question. The reception unit can also evaluate the user's learning progress, and if the progress is lagging, it can preferentially accept related questions. Furthermore, the reception unit can adjust the priority of questions based on the user's learning goals. For example, if the user aims to acquire a specific skill, it can preferentially accept questions related to that skill. This makes it possible to accept questions appropriately according to the user's learning progress.

[0124] When checking the correctness of code, the checking unit can customize the checking feedback based on the user's programming style. For example, the checking unit can analyze the style of code written by the user in the past and provide feedback based on that style. The checking unit can also adjust the feedback based on the user's preferred coding style (e.g., the use of indentation or the naming conventions for variable names). Furthermore, the checking unit can adjust the level of detail of the feedback according to the user's programming style. For example, if the user prefers detailed feedback, the checking unit provides detailed feedback, and if the user prefers concise feedback, the checking unit provides concise feedback. This makes it possible to provide appropriate feedback according to the user's programming style.

[0125] The exemplifying unit can estimate the user's emotions and adjust the difficulty of the coding examples based on the estimated user's emotions. For example, the exemplifying unit provides easy coding examples when the user is stressed, and provides more difficult coding examples when the user is relaxed. The exemplifying unit can also adjust the level of detail of the coding example explanations according to the user's emotions. For example, if the user is anxious, the exemplifying unit provides a concise explanation, and if the user is calm, the exemplifying unit provides a detailed explanation. Furthermore, the exemplifying unit can increase or decrease the number of coding example options based on the user's emotions. For example, if the user is confident, the exemplifying unit provides multiple options, and if the user is anxious, the exemplifying unit narrows the options. This makes it possible to provide appropriate coding examples according to the user's emotions.

[0126] The intention confirmation unit can estimate the user's emotions and adjust the timing of intention confirmation based on the estimated user's emotions. For example, the intention confirmation unit delays the timing of intention confirmation when the user is concentrating, and advances the timing of intention confirmation when the user is relaxed. The intention confirmation unit can also adjust the frequency of intention confirmation according to the user's emotions. For example, the intention confirmation unit reduces the frequency of intention confirmation when the user is stressed, and increases the frequency of intention confirmation when the user is relaxed. Furthermore, the intention confirmation unit can change the method of intention confirmation based on the user's emotions. For example, if the user is impatient, the intention confirmation unit asks simple questions, and if the user is calm, the intention confirmation unit asks detailed questions. This makes it possible to appropriately confirm the user's emotions.

[0127] The providing unit can estimate the user's emotions and adjust the format of the information to be provided based on the estimated user's emotions. For example, if the user prefers visual information, the providing unit can provide information using graphs or diagrams, and if the user prefers text information, the providing unit can provide information in sentences. The providing unit can also adjust the speed at which the information is provided based on the user's emotions. For example, if the user is anxious, the providing unit can provide information quickly, and if the user is relaxed, the providing unit can provide information slowly. Furthermore, the providing unit can change the method of providing information based on the user's emotions. For example, if the user is stressed, the providing unit can provide concise information, and if the user is calm, the providing unit can provide detailed information. This makes it possible to provide appropriate information according to the user's emotions.

[0128] The reception unit can analyze the user's past question history and suggest questions based on the user's interests. For example, the reception unit can analyze topics that the user has frequently asked questions about in the past and suggest questions related to those topics. The reception unit can also identify areas in which the user is interested from the user's past question history and suggest questions related to those areas. Furthermore, the reception unit can predict topics that the user has not yet asked about but may be interested in, based on the user's past question history, and suggest questions related to those topics. This makes it possible to suggest appropriate questions based on the user's interests.

[0129] When checking the validity of the code, the verification unit can analyze the user's past error patterns and provide feedback to prevent similar errors from occurring. For example, the verification unit can identify errors that the user frequently made in the past and provide points to be careful about to prevent those errors from recurring. The verification unit can also suggest error prevention measures based on the user's past error patterns. Furthermore, the verification unit can analyze the user's past error patterns, identify areas where errors are likely to occur, and provide feedback to urge particular attention to those areas. This makes it possible to provide appropriate feedback based on the user's past error patterns.

[0130] The example unit can analyze the user's past usage history of coding examples and provide coding examples based on the user's preferred coding style. For example, the example unit can analyze the style of coding examples used by the user in the past and provide new coding examples based on that style. The example unit can also provide coding examples based on the user's preferred programming language or framework. Furthermore, the example unit can identify the user's preferred coding pattern based on the user's past usage history of coding examples and provide coding examples based on that pattern. This makes it possible to provide appropriate coding examples according to the user's preferences.

[0131] The intention confirmation unit can analyze the user's past intention confirmation history and perform intention confirmation in a format that is easy for the user to understand. For example, the intention confirmation unit can analyze the format in which the user has previously confirmed their intention, and perform new intention confirmation based on that format. The intention confirmation unit can also perform intention confirmation based on a question format that the user prefers (e.g., multiple choice format or free description format). Furthermore, the intention confirmation unit can identify wording and expressions that are easy for the user to understand based on the user's past intention confirmation history, and perform intention confirmation based on those wording and expressions. This makes it possible to appropriately confirm intention in a format that is easy for the user to understand.

[0132] The providing unit can analyze the user's past feedback and provide information based on the user's preferred information format. For example, the providing unit can analyze the format in which the user has received information in the past and provide new information based on that format. The providing unit can also provide information based on the user's preferred information format (e.g., text format or visual format). Furthermore, the providing unit can identify an information format that is easy for the user to understand based on the user's past feedback and provide information based on that format. This makes it possible to provide appropriate information according to the user's preferences.

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

[0134] Step 1: The reception unit receives questions from users. Questions include programming-related questions and technical questions. The reception unit analyzes the text and voice input by the user and recognizes the content of the question. Step 2: The verification unit uses the generation AI to verify the validity of the code based on the questions received by the reception unit. The generation AI analyzes the code using machine learning models and natural language processing technology to perform error and security checks. For example, it can detect grammatical errors in the code and suggest ways to fix them. It can also evaluate the security risks of the code and suggest areas for improvement. Step 3: The providing unit provides the user with the results confirmed by the confirming unit. The providing unit displays an error message or a success message on the user's screen. The providing unit can also notify the user of the confirmed results by voice. Step 4: The example unit uses the generation AI to provide coding examples based on the questions received by the reception unit. The generation AI generates sample code and best practices and presents them to the user. For example, it may generate sample code for implementing a specific function and provide it to the user. It can also suggest efficient coding methods. Step 5: The first providing unit provides the coding example provided by the example unit to the user, so that the user can refer to the specific coding example. Step 6: The intent confirmation unit asks the user about the intent of the code based on the question received by the reception unit. For example, by asking the user, "What is the intent of this part of code?", the unit organizes the user's thoughts and clarifies the intent of the code. Step 7: The second providing unit provides the user with the intention confirmed by the intention confirming unit, thereby enabling the user to reconfirm the intention of their code and deepen their understanding.

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

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

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

[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] [Second embodiment] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.

[0140] 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. 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 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.

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

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

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

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

[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] [Third embodiment] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.

[0156] 5, the data processing system 310 includes the data processing device 12 and a headset terminal 314. 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 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.

[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 (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).

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

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

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

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

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

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

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

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

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

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

[0172] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

[0206] [Explanation of symbols]

[0207] 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 that receives questions from users; a verification unit that verifies the validity of the code based on the question received by the reception unit; a providing unit that provides a user with a result confirmed by the confirming unit; an example unit that provides coding examples based on the questions received by the reception unit; a first providing unit that provides the coding example provided by the example unit to a user; an intention confirmation unit that asks about the intention of the code based on the question received by the reception unit; a second providing unit that provides the intention confirmed by the intention confirming unit to the user; Equipped with A system characterized by:

2. The reception unit Accepts questions from users through voice recognition 2. The system of claim 1.

3. The confirmation unit Verify the validity of the code using generative AI 2. The system of claim 1.

4. The example part is Generative AI provides coding examples 2. The system of claim 1.

5. The intention confirmation unit Ask the user what the code means 2. The system of claim 1.

6. The providing unit Show users the results, provided examples, and confirmed intent 2. The system of claim 1.

7. The reception unit Estimates the user's emotions and adjusts the timing of accepting questions based on the estimated user emotions.

2. The system of claim 1.

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

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A