System
The system uses a generative AI module to analyze source code, improve accuracy, and format results for user-friendly display, addressing system maintenance challenges and supporting digital transformation by automating technical explanations and code suggestions.
Patent Information
- Application Number
- JP2024131305
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-07
- Publication Date
- 2026-02-20
AI Technical Summary
Existing systems face challenges in system maintenance and modification due to dependency on individual users and black boxes, hindering company-wide digital transformation (DX) and increasing reliance on development vendors, with difficulties in data utilization between systems and resistance to management's enthusiasm for DX.
A system that includes a generative artificial intelligence module to analyze source code, improve analysis accuracy with external APIs, format results for user-friendly display, and store analysis results for future improvements, automating technical explanations and code suggestions.
Eliminates dependency on individual users and black boxes, enhances system maintenance efficiency, and supports digital transformation by providing accurate, user-friendly technical explanations and future code improvements.
Smart Images

Figure 2026028689000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] Many companies are struggling with the dependency on individual users and black boxes in their existing systems. This makes system maintenance and modification difficult, resulting in increased dependency on development vendors. Furthermore, it becomes difficult to utilize data between systems built for each business division, hindering progress in company-wide digital transformation (DX). Furthermore, resistance from the field to management's enthusiasm for promoting DX and the high level of technical difficulty are also issues. There is a need to resolve these issues and support companies in promoting DX. [Means for solving the problem]
[0005] The present invention provides a system including a means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation for it, and a means for returning the analysis results to a user terminal. The system also includes a means for improving the accuracy of the analysis results generated by the generative artificial intelligence module using an external API, and a means for automatically formatting the analysis results and converting them into a user-friendly display format. This system automates the technical analysis and explanation of source code, eliminating the dependency on individual users and the black box nature of the system. Furthermore, the system includes a database means for storing the technical explanation of the analyzed source code and allowing past analysis results to be referenced, and a means for generating future source code improvement proposals based on the stored analysis results, thereby improving the efficiency of a company's system operations.
[0006] A "user" is an entity that uses the system to input source code and receives the analysis results.
[0007] "Source code" means text code in which a computer program is written, and is the subject of analysis.
[0008] "Analysis" is the process of understanding the contents of source code and generating a technical description of it.
[0009] A "generative artificial intelligence module" is an AI system used to automatically generate technical descriptions of source code.
[0010] An "external API" is an interface that allows the generative artificial intelligence module to use external AI services when performing analysis.
[0011] "Accuracy" is an indicator of how accurate the generated analysis results are.
[0012] "Formatting" is a conversion process that arranges the generated analysis results in a form that is easy for the user to understand.
[0013] A "user-friendly display format" is a display format that is designed to be easily understandable by the user.
[0014] The "database means" is a system element that stores the technical description of the analyzed source code and allows easy reference to past analysis results.
[0015] "Improvement Suggestions" refers to providing future source code improvements and recommendations based on the saved analysis results. [Brief explanation of the drawings]
[0016] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11]FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0017] 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.
[0018] First, the terms used in the following description will be explained.
[0019] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0020] 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.
[0021] 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.
[0022] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0023] 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."
[0024] [First embodiment]
[0025] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0026] 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.
[0027] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0028] 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.
[0029] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0030] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0031] 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.
[0032] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0033] 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.
[0034] 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.
[0035] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0036] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0037] The present invention is a system that analyzes source code entered by a user and provides technical explanations of it. The following shows the implementation of this system. The system is mainly composed of three elements: a server, a terminal, and a user.
[0038] System Components
[0039] User
[0040] The user is the entity that inputs the source code to be analyzed and receives the analysis results. The user interacts with the system through a terminal.
[0041] Terminal
[0042] The terminal is a device used by the user, and serves to input source code and display the analysis results. The terminal has an interface for inputting source code and an interface for displaying the analysis results.
[0043] server
[0044] The server receives the source code sent from the terminal, analyzes the source code using a generative artificial intelligence module, generates the analysis results, and returns them to the terminal.
[0045] Program processing explanation
[0046] server
[0047] The server first receives the source code sent from the terminal. To analyze this source code, the server sends a request to a generative artificial intelligence module. The generative artificial intelligence module analyzes the contents of the source code and generates a technical explanation for it. The server then receives this explanation, formats it for display, and sends it back to the terminal.
[0048] Terminal
[0049] The terminal accepts source code input from the user and sends it to the server, which then displays the analysis results in a format that is easy for the user to understand.
[0050] User
[0051] First, the user inputs the source code they want to analyze into the terminal. Then, the analysis results are displayed on the terminal and the user can check the contents. For example, if you input the following Python function, the system will provide the analysis results:
[0052] python
[0053] def add(a, b):
[0054] return a + b
[0055] When this function is input, the generative artificial intelligence module generates an explanation such as, "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The server then receives the analysis result and sends it back to the device, allowing the user to check it.
[0056] Specific examples
[0057] Specifically, the user enters the following source code:
[0058] python
[0059] def multiply(x, y):
[0060] return xy
[0061] The terminal sends this source code to the server. The server sends an analysis request to the generative artificial intelligence module and receives the analysis result: "This function 'multiply' multiplies two arguments 'x' and 'y' and returns the result." The server then sends the result back to the terminal, which displays it to the user. The user can check the analysis result on the terminal screen.
[0062] In this way, the system of the present invention automatically analyzes source code and provides explanations of the source code, eliminating the dependency on individual users and the black box nature of the system, and providing an effective means for promoting digital transformation in companies.
[0063] The processing flow will be explained below.
[0064] Step 1:
[0065] The user inputs the source code they want to analyze into the terminal's input interface. For example, they input the following code:
[0066] python
[0067] def add(a, b):
[0068] return a + b
[0069] Step 2:
[0070] The terminal accepts the user's input and checks whether the source code has been entered correctly. After checking, it creates an HTTP request to the server and sends it, including the entered source code.
[0071] Step 3:
[0072] The server receives the request from the terminal and extracts the source code from the request body.
[0073] Step 4:
[0074] The server sends a request to the generative artificial intelligence module to analyze the extracted source code. Specifically, it constructs and sends an API request to the generative artificial intelligence module.
[0075] Step 5:
[0076] The generative AI module receives requests from the server, analyzes the content of the source code, and generates a technical description of the source code as a result of the analysis.
[0077] Step 6:
[0078] The generative AI module returns the generated analysis results to the server, which receives the results and checks their contents.
[0079] Step 7:
[0080] Once the server receives the analysis results, it formats them into a user-friendly display format, adding additional context and explanation where necessary.
[0081] Step 8:
[0082] The server sends the formatted analysis results as a response to the terminal.
[0083] Step 9:
[0084] The terminal receives the response from the server and displays the analysis results in an easy-to-read format for the user, allowing the user to check the analysis results and gain the necessary understanding.
[0085] This processing flow allows users to easily obtain the analysis results of source code, helping to eliminate personalization and black boxing.
[0086] Example 1
[0087] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0088] Understanding the technical details of source code is important for developers, but it can be complex and time-consuming. It is also challenging to effectively display the results of source code analysis in a way that is intuitive for users. Furthermore, it is difficult to save past analysis results and use them for future code improvements.
[0089] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0090] In this invention, the server includes a means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation for it, a means for returning the analysis results to a user terminal, and a terminal means for inputting the source code and displaying the analysis results. This allows the user to automatically obtain a technical explanation of the source code and display it in an easy-to-understand format. Furthermore, the accuracy of the analysis results is improved and the formatted results are provided to improve intuitive understanding. Past analysis results can also be saved and used to propose future code improvements.
[0091] A "user" is an entity that inputs source code and receives the analysis results.
[0092] "Means" is a broad term that refers to a device or method for achieving a particular function.
[0093] "Source code" means textual instructions that describe the behavior of a program.
[0094] A "generative artificial intelligence module" is a type of artificial intelligence that has the ability to generate new data and information based on given data.
[0095] "Analysis results" are technical explanations and information obtained when the source code is analyzed by the generative artificial intelligence module.
[0096] A "server" is a computer system that provides computer resources connected to a network and is responsible for analytical processing.
[0097] A "terminal" is a computing device operated by a user that provides an interface for inputting source code and displaying analysis results.
[0098] An "external API" is an interface for accessing external software or services and utilizing their functions.
[0099] "Formatting" is the operation or process of arranging data or information into a particular form or presentation.
[0100] A "database" is a system built for the purpose of efficiently storing and retrieving data.
[0101] "Improvement proposals" are advice or suggestions that indicate future improvements or optimization methods based on the current situation and data.
[0102] The present invention is a system that analyzes source code entered by a user and provides a technical explanation of it. The system of the present invention is composed of three elements: a server, a terminal, and a user. Specific embodiments and processes for implementing this system are described below.
[0103] User
[0104] The user is the subject who types the source code they want to analyze into a terminal. For example, the user types the following Python code:
[0105] python
[0106] def add(a, b):
[0107] return a + b
[0108] Even with such a simple function, users can get a technical explanation of the code through the analysis results.
[0109] Terminal
[0110] The terminal is a computing device operated by the user, which provides an interface for inputting source code and an interface for displaying analysis results. It can be implemented on common devices such as PCs, smartphones, and tablets. The terminal accepts source code input from the user and sends it to the server. It also displays the analysis results received from the server in a format that is easy for the user to understand. For example, the analysis result may be displayed on the screen as follows: "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result."
[0111] server
[0112] The server receives the source code sent from the device and analyzes it. The generative artificial intelligence module used can be, for example, OpenAI's GPT-4 model. The server operates in the following steps:
[0113] 1. Receive the source code sent from the terminal.
[0114] 2. Send a prompt to the generative AI module to analyze the source code. For example, send the following prompt:
[0115] "Write a technical description of the following Python function:\ndef add(a, b):\n return a + b"
[0116] 3. Receive a technical description from the generative AI module, for example, "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result."
[0117] 4. The analysis results are formatted in a way that is easy for the user to understand and sent back to the device.
[0118] The server also has a database that stores the analysis results and accumulates data for generating future source code improvement proposals. This function allows users to refer to past analysis results and receive efficient improvement proposals.
[0119] Specific examples
[0120] For example, if a user enters the following source code:
[0121] python
[0122] def multiply(x, y):
[0123] return xy
[0124] The device sends this source code to the server, which then sends the following prompt to the generative AI module:
[0125] "Write a technical description of the following Python function:\ndef multiply(x, y):\n return xy"
[0126] The generative AI module returns the analysis result: "This function 'multiply' multiplies two arguments 'x' and 'y' and returns the result." The server sends this result back to the terminal, which displays it to the user.
[0127] The above is a specific embodiment of the present invention, and this system allows users to easily obtain technical explanations of source code, supporting efficient code development.
[0128] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0129] Step 1:
[0130] The user enters the source code they want to analyze into the terminal. For example, the user enters the following Python code:
[0131] python
[0132] def add(a, b):
[0133] return a + b
[0134] The entered source code is saved in text format on the terminal.
[0135] Step 2:
[0136] The terminal sends the input source code to the server. At this time, the source code data is sent to the specified endpoint of the server using an HTTP POST request. The data to be sent is structured as follows:
[0137] {
[0138] "source_code": "def add(a, b):\n return a + b"
[0139] }
[0140] The input is the source code and the output is the HTTP request sent to the server.
[0141] Step 3:
[0142] The server receives an HTTP POST request from the terminal. The received source code data is temporarily stored on the server and its contents are checked. The input is the source code data sent from the terminal, and the output is the source code data stored on the server.
[0143] Step 4:
[0144] The server sends an analysis request to the generative AI module. Specifically, it sends the following prompt to the generative AI module:
[0145] "Write a technical description of the following Python function:\ndef add(a, b):\n return a + b"
[0146] The input is source code data stored in the server, and the output is a prompt sentence sent to the generative artificial intelligence module.
[0147] Step 5:
[0148] The generative AI module analyzes the received prompt and generates a technical explanation, for example, "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The input is the prompt, and the output is the generated technical explanation.
[0149] Step 6:
[0150] The server parses and formats the technical description received from the generative AI module, adding embellishments and additional information and converting it into a form that is easy for users to understand. The input is the technical description from the generative AI module, and the output is the formatted technical description.
[0151] Step 7:
[0152] The server returns a formatted technical description to the device and sends the parsed results as an HTTP response. The input is the formatted technical description and the output is the HTTP response sent to the device.
[0153] Step 8:
[0154] The terminal receives the technical explanation received from the server and displays it in a format that is easy for the user to understand, for example, displaying the analysis results in a text box or a dedicated view. The input is the technical explanation received from the server, and the output is what is displayed to the user.
[0155] Step 9:
[0156] The user sees the analysis results on the terminal screen. The analysis results are displayed as an explanation: "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The user uses this information to understand the code. The input is the technical explanation displayed on the terminal, and the output is the information the user gets.
[0157] (Application example 1)
[0158] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0159] Conventional systems were limited to analyzing source code entered by users and generating technical descriptions of that code, making it difficult for users to instantly obtain product information and detailed technical descriptions of objects they visually identified. Furthermore, conventional systems had limited methods for efficiently displaying the obtained technical descriptions, making it difficult for users to quickly and intuitively understand the information they needed.
[0160] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0161] In this invention, the server includes: means for receiving source code entered by a user; a generative artificial intelligence module for analyzing the source code and generating a technical description thereof; means for returning the analysis result to a user terminal; means for acquiring a digital image of an object visually recognized by the user; means for analyzing the acquired digital image and identifying product information of the object; a generative artificial intelligence module for generating a technical description related to the identified product; and means for returning the generated technical description to the user terminal so that the user can visually confirm it. This enables the user to quickly acquire technical information related to the visually recognized product and intuitively understand the detailed description.
[0162] "Source code entered by the user" refers to program code that the user provides from a terminal to be analyzed by the system.
[0163] A "generative artificial intelligence module" is artificial intelligence software that analyzes input data and automatically generates technical explanations and information based on that content.
[0164] A "user terminal" is an electronic device, such as a computer, smartphone, or smart glasses, that a user uses to interact with the system.
[0165] A "digital image" is electronic data containing visual information captured by a device such as a camera or scanner.
[0166] "Product information" refers to detailed data about the identified product, such as its name, ingredients, usage, and storage methods.
[0167] "Means for visual confirmation" refers to techniques or methods for displaying the generated technical explanations and product information in a format that is easily understandable to the user.
[0168] An "external API" is an interface for integrating services and functions provided by third parties into a system.
[0169] A "user-friendly presentation" is an interface or design that presents information in a way that is intuitive and easy for users to understand.
[0170] "Database Means" means a system or software that stores information in an organized manner so that it can be later quickly searched and retrieved.
[0171] The "means for generating suggestions for future source code improvements" is a technology that automatically provides suggestions for further optimization and improvement of source code based on past analysis results.
[0172] "Means of storing user history for future reference" refers to a system that stores information and technical explanations that users have previously acquired, allowing them to easily access them later.
[0173] MODE FOR CARRYING OUT THE INVENTION
[0174] This invention is a system that analyzes source code entered by a user or product information visually confirmed by the user, and provides technical explanations. Specifically, the user can acquire digital images using smart glasses or other devices, and analyze them to obtain detailed technical information.
[0175] System Configuration
[0176] server
[0177] The server has the following features:
[0178] 1. Source code receiving function
[0179] A source code input by a user is received.
[0180] 2. Generative AI Module
[0181] It analyzes product information extracted from source code and digital images and generates technical descriptions using software such as OpenAI GPT-4.
[0182] 3. Image Recognition Module
[0183] The digital images captured by the user's smart glasses camera are analyzed to identify product information, using image recognition technologies such as YOLO and Google Cloud Vision API.
[0184] 4. Database Function
[0185] It stores the analysis results and allows users to refer to past data. It also includes a means to suggest future source code improvements and store user history.
[0186] Terminal
[0187] A terminal is a device used by a user that has the following functions:
[0188] 1. Input Interface
[0189] It provides an interface for users to input source code and digital images.
[0190] 2. Display Interface
[0191] A display function that allows the user to visually confirm the generated technical explanation. In the case of smart glasses, the information is displayed overlaid on the user's field of vision.
[0192] User
[0193] The user uses this system and performs the following steps:
[0194] 1. Enter the source code
[0195] Enter the source code to be analyzed into the terminal.
[0196] 2. Digital Image Acquisition
[0197] A digital image of an object is captured using smart glasses.
[0198] 3. Check the analysis results
[0199] View server-generated technical descriptions on your device.
[0200] Specific examples
[0201] For example, if a user captures the label of an "organic jam" with their smart glasses, the image is sent to the server, where the server uses an image recognition module to identify the product, and a generative artificial intelligence module to generate technical information. As a result, the device displays a technical description like this:
[0202] "This organic jam is made from 100% organic fruit. Once opened, it should be stored in the refrigerator and used within two weeks."
[0203] Prompt Sentence Examples
[0204] Below are some examples of prompts that can be input to a generative AI model:
[0205] Product Name: Organic Jam
[0206] Q: Can you provide a technical description of this product? Can you give me more details about the ingredients, how to use it, and how to store it?
[0207] The introduction of this system allows users to intuitively understand visually confirmed product information, making purchasing decisions easier. It also improves the efficiency of the entire system and enables the provision of accurate information.
[0208] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0209] Step 1:
[0210] The user uses the camera in the smart glasses to capture a digital image of the product of interest. The input is the digital image, which is then transmitted to the server by a processor in the smart glasses.
[0211] Step 2:
[0212] The server receives the digital image sent from the smart glasses. The input is the digital image. The server sends this digital image to an image recognition module (YOLO or Google Cloud Vision API) to identify the product information. The output is the identified product information.
[0213] Step 3:
[0214] The server sends a request to the generative artificial intelligence module based on the identified product information. The input is the product information. The generative artificial intelligence module generates a technical description about the product. The output is the generated technical description. In specific operation, the generative artificial intelligence module generates the technical description based on the prompt sentence.
[0215] Step 4:
[0216] The server receives the generated technical description and formats it into a user-friendly display format. The input is the generated technical description. The output is the formatted technical description. Specifically, it converts the generated technical description into HTML or a display format.
[0217] Step 5:
[0218] The server returns the formatted technical description to the smart glasses. The input is the formatted technical description. The output is data transmission to the smart glasses. Specifically, the data is transmitted using the HTTP protocol or a dedicated API.
[0219] Step 6:
[0220] The smart glasses receive the technical explanation sent from the server and display it over the user's field of view. The input is a formatted technical explanation. The output is a display of the technical explanation. Specifically, the smart glasses use the display function within the smart glasses to overlay the information on the user's field of view.
[0221] Step 7:
[0222] The user checks the technical explanation displayed on the smart glasses and obtains the necessary information. The input is the visual technical explanation. The output is the user's understanding. Specifically, the user reads and understands the displayed information and uses it to make purchasing decisions.
[0223] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0224] This invention is a system that analyzes source code entered by a user, provides technical explanations, and adjusts the display method of the analysis results by recognizing the user's emotions. The following shows the configuration for realizing this system. The system is mainly composed of four elements: a server, a terminal, a user, and an emotion engine.
[0225] System Components
[0226] User
[0227] The user is the entity that inputs the source code to be analyzed and receives the analysis results. The user interacts with the system through a terminal.
[0228] Terminal
[0229] The terminal is a device used by the user, and serves to input source code and display analysis results. The terminal has an interface for inputting source code and an interface for displaying analysis results. It also inputs the user's emotions, which are recognized by the emotion engine.
[0230] server
[0231] The server receives the source code sent from the device and analyzes it using a generative artificial intelligence module. It generates the analysis results and sends them back to the device. It also uses an external API to improve the accuracy of the analysis results.
[0232] Emotion Engine
[0233] The emotion engine is responsible for recognizing the user's emotions and adjusting the way the analysis results are presented based on the user's emotions. For example, if the user is stressed, the analysis results will be presented in more detail, and if the user is satisfied, additional information or next steps will be provided.
[0234] Program processing explanation
[0235] server
[0236] The server first receives the source code sent from the terminal. To analyze this source code, it sends a request to a generative artificial intelligence module. The generative artificial intelligence module analyzes the contents of the source code and generates a technical explanation. The server then receives this explanation, formats it for display, and sends it back to the terminal.
[0237] Terminal
[0238] The device accepts source code input from the user and sends it to the server. The analysis results received from the server are displayed in a format that is easy for the user to understand. In addition, the display is adjusted to reflect the user's emotions using an emotion engine.
[0239] Emotion Engine
[0240] The emotion engine receives data about the user's emotions from the device. For example, it analyzes the user's facial expressions, voice, and text input to recognize emotions. Based on the recognized emotions, it adjusts the way the analysis results are displayed. This information is sent to the server, which returns the appropriate analysis result format and additional information.
[0241] User
[0242] First, the user inputs the source code they want to analyze into the terminal. Then, the analysis results are displayed on the terminal, allowing them to check their contents. The system also adjusts the display of the analysis results by recognizing the user's emotions. For example, if you input the following Python function, the system will provide the analysis results:
[0243] python
[0244] def add(a, b):
[0245] return a + b
[0246] When this function is input, the generative AI module generates an explanation such as "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The server then receives the analysis results and sends them back to the device, where the user can check them. The emotion engine recognizes the user's emotions and adds in-depth explanations and hints if the user is feeling stressed, for example.
[0247] In this way, the system of the present invention automatically analyzes and explains source code while taking user emotions into consideration, eliminating the dependency on individual users and the black box nature of the system, thereby providing an effective means for promoting digital transformation in companies.
[0248] The processing flow will be explained below.
[0249] Step 1:
[0250] The user inputs the source code they want to analyze into the terminal's input interface. For example, they input the following code:
[0251] python
[0252] def add(a, b):
[0253] return a + b
[0254] Step 2:
[0255] The terminal accepts the user's input and checks whether the source code has been entered correctly. After checking, it creates an HTTP request to the server and sends it, including the entered source code.
[0256] Step 3:
[0257] The server receives the request from the terminal and extracts the source code from the request body.
[0258] Step 4:
[0259] The server sends the extracted source code to the generative AI module and makes an analysis request. Specifically, it constructs and sends an API request to the generative AI module.
[0260] Step 5:
[0261] The generative AI module receives requests from the server, analyzes the content of the source code, and generates a technical description of the source code as a result of the analysis.
[0262] Step 6:
[0263] The generative AI module returns the generated analysis results to the server, which receives the results and checks their contents.
[0264] Step 7:
[0265] Once the server receives the analysis results, it formats them into a user-friendly display format, adding additional context and explanation where necessary.
[0266] Step 8:
[0267] The server sends the formatted analysis results as a response to the terminal.
[0268] Step 9:
[0269] The terminal receives the response from the server and displays the analysis results in a format that is easy for the user to view.
[0270] Step 10:
[0271] The device analyzes the user's emotions using an emotion engine, using facial expressions and voice data to recognize emotions such as whether the user is satisfied or stressed.
[0272] Step 11:
[0273] The device sends the emotion engine's analysis results to the server, and if the user is feeling stressed, it requests that the server provide detailed analysis results and hints.
[0274] Step 12:
[0275] The server receives the user's emotion data, reformats the analysis results, and, if necessary, generates detailed explanations or additional hints and sends them back to the device.
[0276] Step 13:
[0277] The terminal receives the reformatted analysis results and displays them to the user, who can review the final analysis results and additional information for further understanding.
[0278] Example 2
[0279] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0280] Conventional source code analysis systems only provide technical explanations and do not consider the user's emotions, making it impossible to provide appropriate support based on the user's level of understanding or stress level. This can result in users being unable to effectively utilize the system's analysis results. Furthermore, the accuracy of the analysis results and the user-friendly display format are often insufficient. Therefore, the present invention aims to provide a system that recognizes the user's emotions and adjusts the display method of the analysis results based on those emotions, thereby improving the user's level of understanding and providing a comfortable user experience.
[0281] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0282] In this invention, the server includes a means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation for it, a means for returning the analysis results to the user terminal, and a means for recognizing the user's emotions and adjusting the display method of the analysis results based on the emotions. This allows the analysis results to be displayed in a way that takes the user's emotions into consideration. Furthermore, by including a means for automatically converting the analysis results into a user-friendly display format using an external API to improve the accuracy of the analysis results, an even better user experience can be provided.
[0283] "Means for receiving source code entered by a user" refers to an interface or communication function for transmitting source code entered by a user into a terminal to a server.
[0284] "Generative artificial intelligence module for analyzing source code and generating technical descriptions thereof" refers to a component that utilizes artificial intelligence technology to understand input source code and generate technical descriptions or explanations based on it.
[0285] "Means for returning analysis results to the user terminal" refers to communication and interface functions for sending and displaying the analysis results generated by the server to the user terminal.
[0286] "Means for recognizing a user's emotions and adjusting the display method of analysis results based on those emotions" refers to technologies and approaches for analyzing emotions from a user's facial expressions, voice, text input, etc., and dynamically changing the display format and content of the analysis results based on the results.
[0287] "Means to improve the accuracy of analytical results generated using external APIs" refers to a mechanism for improving the accuracy and usefulness of analytical results by using external data and services to supplement and enrich analytical models.
[0288] "Means for automatically formatting analytical results into a user-friendly display" refers to the processes and techniques used to reformat the analytical results generated so that they can be easily understood by the user and provide an appropriate visual display.
[0289] "Means for obtaining user emotional data through emotion recognition and adjusting display based on that" refers to technology for obtaining the user's current emotional state through devices or sensors and adjusting the display method of the analysis results accordingly.
[0290] "Database means for storing technical descriptions of analyzed source code and enabling past analysis results to be referenced" refers to a mechanism for storing the generated technical descriptions and analysis results in a database and enabling past data to be searched and referenced as needed.
[0291] "Means for generating suggestions for future source code improvements based on stored analysis results" refers to technologies and processes that analyze previously stored analysis results and automatically generate suggestions for improving or optimizing new source code.
[0292] System Overview
[0293] The present invention is a system for performing technical analysis of source code and adjusting the analysis results based on user emotions. The system mainly consists of a server, a user terminal, an emotion engine, and the necessary communication infrastructure.
[0294] Server Processing
[0295] The server has a means for receiving source code entered by a user, a means for sending the source code to a generative artificial intelligence module (e.g., OpenAI's GPT-4) for analysis, and a means for returning the generated analysis results to the user's device. It also includes a means for improving the accuracy of the analysis results using external APIs (e.g., code auto-completion services).
[0296] Examples:
[0297] The user types the following Python function into the terminal:
[0298] python
[0299] def add(a, b):
[0300] return a + b
[0301] The server receives this source code and sends a prompt to the generative AI module:
[0302] "Analyze the following Python function and provide a technical explanation:
[0303] python
[0304] def add(a, b):
[0305] return a + b
[0306] "
[0307] The generative AI module generates a technical description such as "This function 'add' takes two arguments 'a' and 'b', adds them together and returns the result" and sends it back to the server.
[0308] User terminal processing
[0309] The user inputs source code through a terminal and receives the analysis results sent from the server. The terminal has an interface for accepting source code input, an interface for displaying the analysis results, and an interface for sending the user's emotional data to the emotion engine.
[0310] Emotion engine processing
[0311] The emotion engine analyzes emotional data (facial expression recognition, voice analysis, text input, etc.) obtained from the user's device to recognize the user's emotional state. The results are sent to the server, which then adjusts the display method of the analysis results based on the emotional information.
[0312] Examples:
[0313] If the user feels the emotion "stressed," the emotion engine sends this emotion information to the server, which returns the normal analysis results along with more detailed explanations and additional supplementary information.
[0314] Prompt Sentence Examples
[0315] The prompt text is sent as follows:
[0316] "Analyze the following Python function and provide a technical explanation:
[0317] python
[0318] def add(a, b):
[0319] return a + b
[0320] "
[0321] In response to this prompt, a generative artificial intelligence module generates a technical explanation.
[0322] In this way, the system of the present invention not only analyzes source code and provides technical explanations, but also adjusts the analysis results based on the user's emotions, creating a user-friendly interface. By providing support according to the user's emotional state, it is possible to provide a more comfortable and effective learning and working environment.
[0323] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0324] Step 1:
[0325] The user enters the source code into the terminal.
[0326] What happens: The user opens a text editor and enters a Python function like this:
[0327] python
[0328] def add(a, b):
[0329] return a + b
[0330] Input: Source code is entered into the terminal through a user's input device (such as a keyboard).
[0331] Output: The source code is displayed in a text editor in the terminal.
[0332] Step 2:
[0333] The terminal transmits the source code entered by the user to the server.
[0334] Specific operation: When the user presses the "Send" button, the terminal sends the source code to the server.
[0335] Input: The source code entered.
[0336] Output: The source code sent to the server.
[0337] Step 3:
[0338] The server receives the source code sent from the terminal.
[0339] Specific operation: The server receives the source code via the network and stores it in its internal data area.
[0340] Input: Source code sent from the terminal.
[0341] Output: Source code stored in the server's data area.
[0342] Step 4:
[0343] The server sends the source code to the generative artificial intelligence module.
[0344] Specific operation: The server generates a prompt sentence to the generative artificial intelligence module and sends a request to analyze the source code.
[0345] Input: Source code stored on the server.
[0346] Output: The prompt sent to the generative artificial intelligence module.
[0347] Example prompt: "Analyze the following Python function and provide its technical description:
[0348] python
[0349] def add(a, b):
[0350] return a + b
[0351] "
[0352] Step 5:
[0353] A generative artificial intelligence module analyzes the source code and generates a technical description of it.
[0354] Specific operation: A generative artificial intelligence module (e.g., GPT-4) analyzes the source code based on the prompt and generates a detailed technical explanation.
[0355] Input: The source code contained in the prompt statement.
[0356] Output: A technical description (e.g., "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result").
[0357] Step 6:
[0358] The server receives the generated technical description and adjusts the display format.
[0359] Specific operation: The server formats the technical explanation received from the generative artificial intelligence module into a form that is easy for the user to understand.
[0360] Input: Technical description from a generative artificial intelligence module.
[0361] Output: Formatted technical description.
[0362] Step 7:
[0363] The server sends a formatted technical description to the terminal.
[0364] Specific operation: The server returns a formatted technical description to the terminal.
[0365] Input: A formatted technical description.
[0366] Output: Formatted technical description sent to terminal.
[0367] Step 8:
[0368] The terminal displays the technical description received from the server.
[0369] Specific operation: The device displays the received technical explanation on the screen.
[0370] Input: The technical description sent by the server.
[0371] Output: A technical description that the user can see on their device screen.
[0372] Step 9:
[0373] The device acquires emotional data from the user's facial expressions and voice.
[0374] Specific operation: Captures the user's facial expressions and voice using the device's built-in camera and microphone.
[0375] Input: User's facial expression data and voice data.
[0376] Output: The obtained emotion data.
[0377] Step 10:
[0378] The emotion engine analyzes the emotion data and recognizes the user's emotion.
[0379] Specific operation: The emotion engine analyzes the user's emotions through facial expression recognition and voice analysis, and processes the data.
[0380] Input: The acquired emotion data.
[0381] Output: Parsed emotion information (e.g., "The user is feeling stressed").
[0382] Step 11:
[0383] The server adjusts how the analysis results are displayed based on the emotional information.
[0384] Specific operation: Based on the emotional information, the server adds additional information and detailed explanations to the analysis results.
[0385] Input: Parsed emotion information.
[0386] Output: Adjusted analysis results.
[0387] Step 12:
[0388] The device finally displays the adjusted analysis results.
[0389] Specific operation: The terminal finally displays the adjusted analysis results returned from the server to the user.
[0390] Input: The adjusted analysis results sent from the server.
[0391] Output: The final refined analysis results that the user can see.
[0392] By going through each step in this way, users receive a technical explanation of the source code in an easy-to-understand format, as well as emotionally sensitive support.
[0393] (Application example 2)
[0394] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0395] Conventional source code analysis systems lacked the ability to adjust the display method of analysis results based on user emotions, which meant that information could not be provided in accordance with user stress or satisfaction, resulting in issues with the user experience.In addition, the accuracy of analysis results and the display format could not be improved appropriately based on user emotions.
[0396] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation thereof, means for returning the analysis results to the user terminal, and emotion recognition means for recognizing the user's emotion and adjusting the display method of the analysis results. This makes it possible to provide the source code analysis results in an appropriate display format according to the user's emotional state, thereby improving the user experience.
[0397] A "user terminal" is a device used by a user to input source code and display the analysis results.
[0398] A "generative artificial intelligence module" is a system that includes machine learning models and algorithms to analyze source code entered by a user and generate technical explanations for it.
[0399] "Emotion recognition means" refers to a device that includes sensors and software for analyzing and recognizing emotions from a user's facial expressions, voice, text input, etc.
[0400] An "external API" is an interface for using data and functions provided by other systems or services.
[0401] The "database means" refers to a storage device or management system that stores technical explanations of the analyzed source code and user emotional data, and allows them to be referenced as needed.
[0402] The "display format" refers to the layout and format used to present analysis results and additional information in a way that is easy for users to understand.
[0403] "Source code" is textual code that constitutes a program and contains instructions for a computer to execute.
[0404] "Analysis results" are technical explanations and information generated by the generative artificial intelligence module after analyzing the source code.
[0405] "Emotion data" is information that indicates the user's emotional state, and is data collected by emotion recognition means based on facial expressions, voice, text input, and the like.
[0406] "Display history" is a record of previously displayed analysis results and any additional information contained therein, and is data that is saved for future reference.
[0407] This invention describes a specific embodiment for realizing a system that analyzes source code entered by a user and provides technical explanations of it. This system is mainly composed of four elements: a server, a terminal, a user, and emotion recognition means.
[0408] server
[0409] The server plays a central role in analyzing the source code entered by the user and generating the results. The server has the following functions:
[0410] 1. Receiving the Source Code:
[0411] The source code transmitted from the user terminal is received.
[0412] 2. Analysis by generative artificial intelligence module:
[0413] The received source code is analyzed by a generative artificial intelligence module to generate a technical description of it, using open-source machine learning libraries and external APIs.
[0414] 3. Sending analysis results:
[0415] The generated analysis results are sent to the user's device. To improve the accuracy of the analysis results, it is also possible to utilize external APIs.
[0416] 4. Result format:
[0417] The analysis results are automatically converted into a user-friendly display format and presented in a way that is easy for users to understand.
[0418] Terminal
[0419] The terminal is a device where the user inputs source code and receives and displays the analysis results. The terminal has the following functions:
[0420] 1. Code input interface:
[0421] It provides an interface for users to input source code, using multiple methods such as voice input or text input.
[0422] 2. Emotion recognition means:
[0423] The system recognizes emotions from the user's facial expressions, voice, input text, etc. This recognition is achieved using the built-in camera, microphone, and emotion recognition software.
[0424] 3. Result display interface:
[0425] The system displays the analysis results it receives. It also has the ability to adjust the display method based on the user's emotions. For example, if the user is feeling stressed, it will display detailed explanations and hints.
[0426] User
[0427] The user is responsible for inputting source code and checking the analysis results. The user's operation flow is as follows:
[0428] 1. Enter the source code:
[0429] The user uses the terminal's input interface to input source code, for example, a Python function such as "def add(a, b): return a + b".
[0430] 2. Check the analysis results:
[0431] The analysis results are displayed in the terminal, including a technical description of the Python function you entered: "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result."
[0432] 3. Display adjustment based on emotion recognition:
[0433] The app recognizes the user's emotions and provides additional hints and details if, for example, they are feeling stressed. For example, it displays "Hint: Think about the meaning of variable names in functions. Using meaningful variable names improves code readability."
[0434] In a concrete example of this system, the following prompt sentence is input to the generative AI model:
[0435] "A user uses smart glasses and enters the following Python function code: 'def add(a, b): return a + b'. Please provide a technical explanation of this code and show how you can adjust the display based on the user's emotions."
[0436] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0437] Step 1:
[0438] The user inputs source code into the terminal. Through the input interface, the user sends the source code (e.g., def add(a, b): return a + b) to the terminal. This input is stored in the database on the terminal and prepared for analysis.
[0439] Step 2:
[0440] The device sends the source code to the server. The device retrieves the stored source code and sends it to the server. The server receives the source code and prepares it for analysis.
[0441] Step 3:
[0442] The server uses a generative artificial intelligence module to analyze the source code. The server inputs the received source code into the generative artificial intelligence module, which generates a technical explanation. The generated analysis result (e.g., "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result") is obtained.
[0443] Step 4:
[0444] The server returns the analysis results to the terminal. The server formats the generated analysis results and sends them to the user terminal. The terminal receives the analysis results.
[0445] Step 5:
[0446] The device recognizes the user's emotions using an emotion recognition means. The device's built-in camera and microphone are used to capture the user's facial expressions and voice data, which are then input into an emotion recognition algorithm. The algorithm analyzes whether the user is feeling stressed or satisfied, and generates emotion data.
[0447] Step 6:
[0448] The device adjusts how the analysis results are displayed. Based on the received analysis results and the recognized emotion data, the device determines how to display the analysis results. If the user is stressed, it will display detailed explanations and additional tips, and if the user is satisfied, it will only display basic information.
[0449] Step 7:
[0450] The user checks the analysis results. The user checks the analysis results and additional information displayed on the terminal screen and takes the next step (e.g., inputting correction code) as necessary. This allows the user to efficiently understand the source code analysis results and move on to the next task.
[0451] 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.
[0452] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0453] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0454] [Second embodiment]
[0455] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0456] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0457] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0458] 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.
[0459] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0460] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0461] 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.
[0462] 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.
[0463] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0464] 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.
[0465] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0466] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."
[0467] The present invention is a system that analyzes source code entered by a user and provides technical explanations of it. The following shows the implementation of this system. The system is mainly composed of three elements: a server, a terminal, and a user.
[0468] System Components
[0469] User
[0470] The user is the entity that inputs the source code to be analyzed and receives the analysis results. The user interacts with the system through a terminal.
[0471] Terminal
[0472] The terminal is a device used by the user, and serves to input source code and display the analysis results. The terminal has an interface for inputting source code and an interface for displaying the analysis results.
[0473] server
[0474] The server receives the source code sent from the terminal, analyzes the source code using a generative artificial intelligence module, generates the analysis results, and returns them to the terminal.
[0475] Program processing explanation
[0476] server
[0477] The server first receives the source code sent from the terminal. To analyze this source code, the server sends a request to a generative artificial intelligence module. The generative artificial intelligence module analyzes the contents of the source code and generates a technical explanation for it. The server then receives this explanation, formats it for display, and sends it back to the terminal.
[0478] Terminal
[0479] The terminal accepts source code input from the user and sends it to the server, which then displays the analysis results in a format that is easy for the user to understand.
[0480] User
[0481] First, the user inputs the source code they want to analyze into the terminal. Then, the analysis results are displayed on the terminal and the user can check the contents. For example, if you input the following Python function, the system will provide the analysis results:
[0482] python
[0483] def add(a, b):
[0484] return a + b
[0485] When this function is input, the generative artificial intelligence module generates an explanation such as, "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The server then receives the analysis result and sends it back to the device, allowing the user to check it.
[0486] Specific examples
[0487] Specifically, the user enters the following source code:
[0488] python
[0489] def multiply(x, y):
[0490] return xy
[0491] The terminal sends this source code to the server. The server sends an analysis request to the generative artificial intelligence module and receives the analysis result: "This function 'multiply' multiplies two arguments 'x' and 'y' and returns the result." The server then sends the result back to the terminal, which displays it to the user. The user can check the analysis result on the terminal screen.
[0492] In this way, the system of the present invention automatically analyzes source code and provides explanations of the source code, eliminating the dependency on individual users and the black box nature of the system, and providing an effective means for promoting digital transformation in companies.
[0493] The processing flow will be explained below.
[0494] Step 1:
[0495] The user inputs the source code they want to analyze into the terminal's input interface. For example, they input the following code:
[0496] python
[0497] def add(a, b):
[0498] return a + b
[0499] Step 2:
[0500] The terminal accepts the user's input and checks whether the source code has been entered correctly. After checking, it creates an HTTP request to the server and sends it, including the entered source code.
[0501] Step 3:
[0502] The server receives the request from the terminal and extracts the source code from the request body.
[0503] Step 4:
[0504] The server sends a request to the generative artificial intelligence module to analyze the extracted source code. Specifically, it constructs and sends an API request to the generative artificial intelligence module.
[0505] Step 5:
[0506] The generative AI module receives requests from the server, analyzes the content of the source code, and generates a technical description of the source code as a result of the analysis.
[0507] Step 6:
[0508] The generative AI module returns the generated analysis results to the server, which receives the results and checks their contents.
[0509] Step 7:
[0510] Once the server receives the analysis results, it formats them into a user-friendly display format, adding additional context and explanation where necessary.
[0511] Step 8:
[0512] The server sends the formatted analysis results as a response to the terminal.
[0513] Step 9:
[0514] The terminal receives the response from the server and displays the analysis results in an easy-to-read format for the user, allowing the user to check the analysis results and gain the necessary understanding.
[0515] This processing flow allows users to easily obtain the analysis results of source code, helping to eliminate personalization and black boxing.
[0516] Example 1
[0517] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0518] Understanding the technical details of source code is important for developers, but it can be complex and time-consuming. It is also challenging to effectively display the results of source code analysis in a way that is intuitive for users. Furthermore, it is difficult to save past analysis results and use them for future code improvements.
[0519] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0520] In this invention, the server includes a means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation for it, a means for returning the analysis results to a user terminal, and a terminal means for inputting the source code and displaying the analysis results. This allows the user to automatically obtain a technical explanation of the source code and display it in an easy-to-understand format. Furthermore, the accuracy of the analysis results is improved and the formatted results are provided to improve intuitive understanding. Past analysis results can also be saved and used to propose future code improvements.
[0521] A "user" is an entity that inputs source code and receives the analysis results.
[0522] "Means" is a broad term that refers to a device or method for achieving a particular function.
[0523] "Source code" means textual instructions that describe the behavior of a program.
[0524] A "generative artificial intelligence module" is a type of artificial intelligence that has the ability to generate new data and information based on given data.
[0525] "Analysis results" are technical explanations and information obtained when the source code is analyzed by the generative artificial intelligence module.
[0526] A "server" is a computer system that provides computer resources connected to a network and is responsible for analytical processing.
[0527] A "terminal" is a computing device operated by a user that provides an interface for inputting source code and displaying analysis results.
[0528] An "external API" is an interface for accessing external software or services and utilizing their functions.
[0529] "Formatting" is the operation or process of arranging data or information into a particular form or presentation.
[0530] A "database" is a system built for the purpose of efficiently storing and retrieving data.
[0531] "Improvement proposals" are advice or suggestions that indicate future improvements or optimization methods based on the current situation and data.
[0532] The present invention is a system that analyzes source code entered by a user and provides a technical explanation of it. The system of the present invention is composed of three elements: a server, a terminal, and a user. Specific embodiments and processes for implementing this system are described below.
[0533] User
[0534] The user is the subject who types the source code they want to analyze into a terminal. For example, the user types the following Python code:
[0535] python
[0536] def add(a, b):
[0537] return a + b
[0538] Even with such a simple function, users can get a technical explanation of the code through the analysis results.
[0539] Terminal
[0540] The terminal is a computing device operated by the user, which provides an interface for inputting source code and an interface for displaying analysis results. It can be implemented on common devices such as PCs, smartphones, and tablets. The terminal accepts source code input from the user and sends it to the server. It also displays the analysis results received from the server in a format that is easy for the user to understand. For example, the analysis result may be displayed on the screen as follows: "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result."
[0541] server
[0542] The server receives the source code sent from the device and analyzes it. The generative artificial intelligence module used can be, for example, OpenAI's GPT-4 model. The server operates in the following steps:
[0543] 1. Receive the source code sent from the terminal.
[0544] 2. Send a prompt to the generative AI module to analyze the source code. For example, send the following prompt:
[0545] "Write a technical description of the following Python function:\ndef add(a, b):\n return a + b"
[0546] 3. Receive a technical description from the generative AI module, for example, "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result."
[0547] 4. The analysis results are formatted in a way that is easy for the user to understand and sent back to the device.
[0548] The server also has a database that stores the analysis results and accumulates data for generating future source code improvement proposals. This function allows users to refer to past analysis results and receive efficient improvement proposals.
[0549] Specific examples
[0550] For example, if a user enters the following source code:
[0551] python
[0552] def multiply(x, y):
[0553] return xy
[0554] The device sends this source code to the server, which then sends the following prompt to the generative AI module:
[0555] "Write a technical description of the following Python function:\ndef multiply(x, y):\n return xy"
[0556] The generative AI module returns the analysis result: "This function 'multiply' multiplies two arguments 'x' and 'y' and returns the result." The server sends this result back to the terminal, which displays it to the user.
[0557] The above is a specific embodiment of the present invention, and this system allows users to easily obtain technical explanations of source code, supporting efficient code development.
[0558] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0559] Step 1:
[0560] The user enters the source code they want to analyze into the terminal. For example, the user enters the following Python code:
[0561] python
[0562] def add(a, b):
[0563] return a + b
[0564] The entered source code is saved in text format on the terminal.
[0565] Step 2:
[0566] The terminal sends the input source code to the server. At this time, the source code data is sent to the specified endpoint of the server using an HTTP POST request. The data to be sent is structured as follows:
[0567] {
[0568] "source_code": "def add(a, b):\n return a + b"
[0569] }
[0570] The input is the source code and the output is the HTTP request sent to the server.
[0571] Step 3:
[0572] The server receives an HTTP POST request from the terminal. The received source code data is temporarily stored on the server and its contents are checked. The input is the source code data sent from the terminal, and the output is the source code data stored on the server.
[0573] Step 4:
[0574] The server sends an analysis request to the generative AI module. Specifically, it sends the following prompt to the generative AI module:
[0575] "Write a technical description of the following Python function:\ndef add(a, b):\n return a + b"
[0576] The input is source code data stored in the server, and the output is a prompt sentence sent to the generative artificial intelligence module.
[0577] Step 5:
[0578] The generative AI module analyzes the received prompt and generates a technical explanation, for example, "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The input is the prompt, and the output is the generated technical explanation.
[0579] Step 6:
[0580] The server parses and formats the technical description received from the generative AI module, adding embellishments and additional information and converting it into a form that is easy for users to understand. The input is the technical description from the generative AI module, and the output is the formatted technical description.
[0581] Step 7:
[0582] The server returns a formatted technical description to the device and sends the parsed results as an HTTP response. The input is the formatted technical description and the output is the HTTP response sent to the device.
[0583] Step 8:
[0584] The terminal receives the technical explanation received from the server and displays it in a format that is easy for the user to understand, for example, displaying the analysis results in a text box or a dedicated view. The input is the technical explanation received from the server, and the output is what is displayed to the user.
[0585] Step 9:
[0586] The user sees the analysis results on the terminal screen. The analysis results are displayed as an explanation: "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The user uses this information to understand the code. The input is the technical explanation displayed on the terminal, and the output is the information the user gets.
[0587] (Application example 1)
[0588] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0589] Conventional systems were limited to analyzing source code entered by users and generating technical descriptions of that code, making it difficult for users to instantly obtain product information and detailed technical descriptions of objects they visually identified. Furthermore, conventional systems had limited methods for efficiently displaying the obtained technical descriptions, making it difficult for users to quickly and intuitively understand the information they needed.
[0590] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0591] In this invention, the server includes: means for receiving source code entered by a user; a generative artificial intelligence module for analyzing the source code and generating a technical description thereof; means for returning the analysis result to a user terminal; means for acquiring a digital image of an object visually recognized by the user; means for analyzing the acquired digital image and identifying product information of the object; a generative artificial intelligence module for generating a technical description related to the identified product; and means for returning the generated technical description to the user terminal so that the user can visually confirm it. This enables the user to quickly acquire technical information related to the visually recognized product and intuitively understand the detailed description.
[0592] "Source code entered by the user" refers to program code that the user provides from a terminal to be analyzed by the system.
[0593] A "generative artificial intelligence module" is artificial intelligence software that analyzes input data and automatically generates technical explanations and information based on that content.
[0594] A "user terminal" is an electronic device, such as a computer, smartphone, or smart glasses, that a user uses to interact with the system.
[0595] A "digital image" is electronic data containing visual information captured by a device such as a camera or scanner.
[0596] "Product information" refers to detailed data about the identified product, such as its name, ingredients, usage, and storage methods.
[0597] "Means for visual confirmation" refers to techniques or methods for displaying the generated technical explanations and product information in a format that is easily understandable to the user.
[0598] An "external API" is an interface for integrating services and functions provided by third parties into a system.
[0599] A "user-friendly presentation" is an interface or design that presents information in a way that is intuitive and easy for users to understand.
[0600] "Database Means" means a system or software that stores information in an organized manner so that it can be later quickly searched and retrieved.
[0601] The "means for generating suggestions for future source code improvements" is a technology that automatically provides suggestions for further optimization and improvement of source code based on past analysis results.
[0602] "Means of storing user history for future reference" refers to a system that stores information and technical explanations that users have previously acquired, allowing them to easily access them later.
[0603] MODE FOR CARRYING OUT THE INVENTION
[0604] This invention is a system that analyzes source code entered by a user or product information visually confirmed by the user, and provides technical explanations. Specifically, the user can acquire digital images using smart glasses or other devices, and analyze them to obtain detailed technical information.
[0605] System Configuration
[0606] server
[0607] The server has the following features:
[0608] 1. Source code receiving function
[0609] A source code input by a user is received.
[0610] 2. Generative AI Module
[0611] It analyzes product information extracted from source code and digital images and generates technical descriptions using software such as OpenAI GPT-4.
[0612] 3. Image Recognition Module
[0613] The digital images captured by the user's smart glasses camera are analyzed to identify product information, using image recognition technologies such as YOLO and Google Cloud Vision API.
[0614] 4. Database Function
[0615] It stores the analysis results and allows users to refer to past data. It also includes a means to suggest future source code improvements and store user history.
[0616] Terminal
[0617] A terminal is a device used by a user that has the following functions:
[0618] 1. Input Interface
[0619] It provides an interface for users to input source code and digital images.
[0620] 2. Display Interface
[0621] A display function that allows the user to visually confirm the generated technical explanation. In the case of smart glasses, the information is displayed overlaid on the user's field of vision.
[0622] User
[0623] The user uses this system and performs the following steps:
[0624] 1. Enter the source code
[0625] Enter the source code to be analyzed into the terminal.
[0626] 2. Digital Image Acquisition
[0627] A digital image of an object is captured using smart glasses.
[0628] 3. Check the analysis results
[0629] View server-generated technical descriptions on your device.
[0630] Specific examples
[0631] For example, if a user captures the label of an "organic jam" with their smart glasses, the image is sent to the server, where the server uses an image recognition module to identify the product, and a generative artificial intelligence module to generate technical information. As a result, the device displays a technical description like this:
[0632] "This organic jam is made from 100% organic fruit. Once opened, it should be stored in the refrigerator and used within two weeks."
[0633] Prompt Sentence Examples
[0634] Below are some examples of prompts that can be input to a generative AI model:
[0635] Product Name: Organic Jam
[0636] Q: Can you provide a technical description of this product? Can you give me more details about the ingredients, how to use it, and how to store it?
[0637] The introduction of this system allows users to intuitively understand visually confirmed product information, making purchasing decisions easier. It also improves the efficiency of the entire system and enables the provision of accurate information.
[0638] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0639] Step 1:
[0640] The user uses the camera in the smart glasses to capture a digital image of the product of interest. The input is the digital image, which is then transmitted to the server by a processor in the smart glasses.
[0641] Step 2:
[0642] The server receives the digital image sent from the smart glasses. The input is the digital image. The server sends this digital image to an image recognition module (YOLO or Google Cloud Vision API) to identify the product information. The output is the identified product information.
[0643] Step 3:
[0644] The server sends a request to the generative artificial intelligence module based on the identified product information. The input is the product information. The generative artificial intelligence module generates a technical description about the product. The output is the generated technical description. In specific operation, the generative artificial intelligence module generates the technical description based on the prompt sentence.
[0645] Step 4:
[0646] The server receives the generated technical description and formats it into a user-friendly display format. The input is the generated technical description. The output is the formatted technical description. Specifically, it converts the generated technical description into HTML or a display format.
[0647] Step 5:
[0648] The server returns the formatted technical description to the smart glasses. The input is the formatted technical description. The output is data transmission to the smart glasses. Specifically, the data is transmitted using the HTTP protocol or a dedicated API.
[0649] Step 6:
[0650] The smart glasses receive the technical explanation sent from the server and display it over the user's field of view. The input is a formatted technical explanation. The output is a display of the technical explanation. Specifically, the smart glasses use the display function within the smart glasses to overlay the information on the user's field of view.
[0651] Step 7:
[0652] The user checks the technical explanation displayed on the smart glasses and obtains the necessary information. The input is the visual technical explanation. The output is the user's understanding. Specifically, the user reads and understands the displayed information and uses it to make purchasing decisions.
[0653] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0654] This invention is a system that analyzes source code entered by a user, provides technical explanations, and adjusts the display method of the analysis results by recognizing the user's emotions. The following shows the configuration for realizing this system. The system is mainly composed of four elements: a server, a terminal, a user, and an emotion engine.
[0655] System Components
[0656] User
[0657] The user is the entity that inputs the source code to be analyzed and receives the analysis results. The user interacts with the system through a terminal.
[0658] Terminal
[0659] The terminal is a device used by the user, and serves to input source code and display analysis results. The terminal has an interface for inputting source code and an interface for displaying analysis results. It also inputs the user's emotions, which are recognized by the emotion engine.
[0660] server
[0661] The server receives the source code sent from the device and analyzes it using a generative artificial intelligence module. It generates the analysis results and sends them back to the device. It also uses an external API to improve the accuracy of the analysis results.
[0662] Emotion Engine
[0663] The emotion engine is responsible for recognizing the user's emotions and adjusting the way the analysis results are presented based on the user's emotions. For example, if the user is stressed, the analysis results will be presented in more detail, and if the user is satisfied, additional information or next steps will be provided.
[0664] Program processing explanation
[0665] server
[0666] The server first receives the source code sent from the terminal. To analyze this source code, it sends a request to a generative artificial intelligence module. The generative artificial intelligence module analyzes the contents of the source code and generates a technical explanation. The server then receives this explanation, formats it for display, and sends it back to the terminal.
[0667] Terminal
[0668] The device accepts source code input from the user and sends it to the server. The analysis results received from the server are displayed in a format that is easy for the user to understand. In addition, the display is adjusted to reflect the user's emotions using an emotion engine.
[0669] Emotion Engine
[0670] The emotion engine receives data about the user's emotions from the device. For example, it analyzes the user's facial expressions, voice, and text input to recognize emotions. Based on the recognized emotions, it adjusts the way the analysis results are displayed. This information is sent to the server, which returns the appropriate analysis result format and additional information.
[0671] User
[0672] First, the user inputs the source code they want to analyze into the terminal. Then, the analysis results are displayed on the terminal, allowing them to check their contents. The system also adjusts the display of the analysis results by recognizing the user's emotions. For example, if you input the following Python function, the system will provide the analysis results:
[0673] python
[0674] def add(a, b):
[0675] return a + b
[0676] When this function is input, the generative AI module generates an explanation such as "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The server then receives the analysis results and sends them back to the device, where the user can check them. The emotion engine recognizes the user's emotions and adds in-depth explanations and hints if the user is feeling stressed, for example.
[0677] In this way, the system of the present invention automatically analyzes and explains source code while taking user emotions into consideration, eliminating the dependency on individual users and the black box nature of the system, thereby providing an effective means for promoting digital transformation in companies.
[0678] The processing flow will be explained below.
[0679] Step 1:
[0680] The user inputs the source code they want to analyze into the terminal's input interface. For example, they input the following code:
[0681] python
[0682] def add(a, b):
[0683] return a + b
[0684] Step 2:
[0685] The terminal accepts the user's input and checks whether the source code has been entered correctly. After checking, it creates an HTTP request to the server and sends it, including the entered source code.
[0686] Step 3:
[0687] The server receives the request from the terminal and extracts the source code from the request body.
[0688] Step 4:
[0689] The server sends the extracted source code to the generative AI module and makes an analysis request. Specifically, it constructs and sends an API request to the generative AI module.
[0690] Step 5:
[0691] The generative AI module receives requests from the server, analyzes the content of the source code, and generates a technical description of the source code as a result of the analysis.
[0692] Step 6:
[0693] The generative AI module returns the generated analysis results to the server, which receives the results and checks their contents.
[0694] Step 7:
[0695] Once the server receives the analysis results, it formats them into a user-friendly display format, adding additional context and explanation where necessary.
[0696] Step 8:
[0697] The server sends the formatted analysis results as a response to the terminal.
[0698] Step 9:
[0699] The terminal receives the response from the server and displays the analysis results in a format that is easy for the user to view.
[0700] Step 10:
[0701] The device analyzes the user's emotions using an emotion engine, using facial expressions and voice data to recognize emotions such as whether the user is satisfied or stressed.
[0702] Step 11:
[0703] The device sends the emotion engine's analysis results to the server, and if the user is feeling stressed, it requests that the server provide detailed analysis results and hints.
[0704] Step 12:
[0705] The server receives the user's emotion data, reformats the analysis results, and, if necessary, generates detailed explanations or additional hints and sends them back to the device.
[0706] Step 13:
[0707] The terminal receives the reformatted analysis results and displays them to the user, who can review the final analysis results and additional information for further understanding.
[0708] Example 2
[0709] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0710] Conventional source code analysis systems only provide technical explanations and do not consider the user's emotions, making it impossible to provide appropriate support based on the user's level of understanding or stress level. This can result in users being unable to effectively utilize the system's analysis results. Furthermore, the accuracy of the analysis results and the user-friendly display format are often insufficient. Therefore, the present invention aims to provide a system that recognizes the user's emotions and adjusts the display method of the analysis results based on those emotions, thereby improving the user's level of understanding and providing a comfortable user experience.
[0711] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[0712] In this invention, the server includes a means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation for it, a means for returning the analysis results to the user terminal, and a means for recognizing the user's emotions and adjusting the display method of the analysis results based on the emotions. This allows the analysis results to be displayed in a way that takes the user's emotions into consideration. Furthermore, by including a means for automatically converting the analysis results into a user-friendly display format using an external API to improve the accuracy of the analysis results, an even better user experience can be provided.
[0713] "Means for receiving source code entered by a user" refers to an interface or communication function for transmitting source code entered by a user into a terminal to a server.
[0714] "Generative artificial intelligence module for analyzing source code and generating technical descriptions thereof" refers to a component that utilizes artificial intelligence technology to understand input source code and generate technical descriptions or explanations based on it.
[0715] "Means for returning analysis results to the user terminal" refers to communication and interface functions for sending and displaying the analysis results generated by the server to the user terminal.
[0716] "Means for recognizing a user's emotions and adjusting the display method of analysis results based on those emotions" refers to technologies and approaches for analyzing emotions from a user's facial expressions, voice, text input, etc., and dynamically changing the display format and content of the analysis results based on the results.
[0717] "Means to improve the accuracy of analytical results generated using external APIs" refers to a mechanism for improving the accuracy and usefulness of analytical results by using external data and services to supplement and enrich analytical models.
[0718] "Means for automatically formatting analytical results into a user-friendly display" refers to the processes and techniques used to reformat the analytical results generated so that they can be easily understood by the user and provide an appropriate visual display.
[0719] "Means for obtaining user emotional data through emotion recognition and adjusting display based on that" refers to technology for obtaining the user's current emotional state through devices or sensors and adjusting the display method of the analysis results accordingly.
[0720] "Database means for storing technical descriptions of analyzed source code and enabling past analysis results to be referenced" refers to a mechanism for storing the generated technical descriptions and analysis results in a database and enabling past data to be searched and referenced as needed.
[0721] "Means for generating suggestions for future source code improvements based on stored analysis results" refers to technologies and processes that analyze previously stored analysis results and automatically generate suggestions for improving or optimizing new source code.
[0722] System Overview
[0723] The present invention is a system for performing technical analysis of source code and adjusting the analysis results based on user emotions. The system mainly consists of a server, a user terminal, an emotion engine, and the necessary communication infrastructure.
[0724] Server Processing
[0725] The server has a means for receiving source code entered by a user, a means for sending the source code to a generative artificial intelligence module (e.g., OpenAI's GPT-4) for analysis, and a means for returning the generated analysis results to the user's device. It also includes a means for improving the accuracy of the analysis results using external APIs (e.g., code auto-completion services).
[0726] Examples:
[0727] The user types the following Python function into the terminal:
[0728] python
[0729] def add(a, b):
[0730] return a + b
[0731] The server receives this source code and sends a prompt to the generative AI module:
[0732] "Analyze the following Python function and provide a technical explanation:
[0733] python
[0734] def add(a, b):
[0735] return a + b
[0736] "
[0737] The generative AI module generates a technical description such as "This function 'add' takes two arguments 'a' and 'b', adds them together and returns the result" and sends it back to the server.
[0738] User terminal processing
[0739] The user inputs source code through a terminal and receives the analysis results sent from the server. The terminal has an interface for accepting source code input, an interface for displaying the analysis results, and an interface for sending the user's emotional data to the emotion engine.
[0740] Emotion engine processing
[0741] The emotion engine analyzes emotional data (facial expression recognition, voice analysis, text input, etc.) obtained from the user's device to recognize the user's emotional state. The results are sent to the server, which then adjusts the display method of the analysis results based on the emotional information.
[0742] Examples:
[0743] If the user feels the emotion "stressed," the emotion engine sends this emotion information to the server, which returns the normal analysis results along with more detailed explanations and additional supplementary information.
[0744] Prompt Sentence Examples
[0745] The prompt text is sent as follows:
[0746] "Analyze the following Python function and provide a technical explanation:
[0747] python
[0748] def add(a, b):
[0749] return a + b
[0750] "
[0751] In response to this prompt, a generative artificial intelligence module generates a technical explanation.
[0752] In this way, the system of the present invention not only analyzes source code and provides technical explanations, but also adjusts the analysis results based on the user's emotions, creating a user-friendly interface. By providing support according to the user's emotional state, it is possible to provide a more comfortable and effective learning and working environment.
[0753] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0754] Step 1:
[0755] The user enters the source code into the terminal.
[0756] What happens: The user opens a text editor and enters a Python function like this:
[0757] python
[0758] def add(a, b):
[0759] return a + b
[0760] Input: Source code is entered into the terminal through a user's input device (such as a keyboard).
[0761] Output: The source code is displayed in a text editor in the terminal.
[0762] Step 2:
[0763] The terminal transmits the source code entered by the user to the server.
[0764] Specific operation: When the user presses the "Send" button, the terminal sends the source code to the server.
[0765] Input: The source code entered.
[0766] Output: The source code sent to the server.
[0767] Step 3:
[0768] The server receives the source code sent from the terminal.
[0769] Specific operation: The server receives the source code via the network and stores it in its internal data area.
[0770] Input: Source code sent from the terminal.
[0771] Output: Source code stored in the server's data area.
[0772] Step 4:
[0773] The server sends the source code to the generative artificial intelligence module.
[0774] Specific operation: The server generates a prompt sentence to the generative artificial intelligence module and sends a request to analyze the source code.
[0775] Input: Source code stored on the server.
[0776] Output: The prompt sent to the generative artificial intelligence module.
[0777] Example prompt: "Analyze the following Python function and provide its technical description:
[0778] python
[0779] def add(a, b):
[0780] return a + b
[0781] "
[0782] Step 5:
[0783] A generative artificial intelligence module analyzes the source code and generates a technical description of it.
[0784] Specific operation: A generative artificial intelligence module (e.g., GPT-4) analyzes the source code based on the prompt and generates a detailed technical explanation.
[0785] Input: The source code contained in the prompt statement.
[0786] Output: A technical description (e.g., "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result").
[0787] Step 6:
[0788] The server receives the generated technical description and adjusts the display format.
[0789] Specific operation: The server formats the technical explanation received from the generative artificial intelligence module into a form that is easy for the user to understand.
[0790] Input: Technical description from a generative artificial intelligence module.
[0791] Output: Formatted technical description.
[0792] Step 7:
[0793] The server sends a formatted technical description to the terminal.
[0794] Specific operation: The server returns a formatted technical description to the terminal.
[0795] Input: A formatted technical description.
[0796] Output: Formatted technical description sent to terminal.
[0797] Step 8:
[0798] The terminal displays the technical description received from the server.
[0799] Specific operation: The device displays the received technical explanation on the screen.
[0800] Input: The technical description sent by the server.
[0801] Output: A technical description that the user can see on their device screen.
[0802] Step 9:
[0803] The device acquires emotional data from the user's facial expressions and voice.
[0804] Specific operation: Captures the user's facial expressions and voice using the device's built-in camera and microphone.
[0805] Input: User's facial expression data and voice data.
[0806] Output: The obtained emotion data.
[0807] Step 10:
[0808] The emotion engine analyzes the emotion data and recognizes the user's emotion.
[0809] Specific operation: The emotion engine analyzes the user's emotions through facial expression recognition and voice analysis, and processes the data.
[0810] Input: The acquired emotion data.
[0811] Output: Parsed emotion information (e.g., "The user is feeling stressed").
[0812] Step 11:
[0813] The server adjusts how the analysis results are displayed based on the emotional information.
[0814] Specific operation: Based on the emotional information, the server adds additional information and detailed explanations to the analysis results.
[0815] Input: Parsed emotion information.
[0816] Output: Adjusted analysis results.
[0817] Step 12:
[0818] The device finally displays the adjusted analysis results.
[0819] Specific operation: The terminal finally displays the adjusted analysis results returned from the server to the user.
[0820] Input: The adjusted analysis results sent from the server.
[0821] Output: The final refined analysis results that the user can see.
[0822] By going through each step in this way, users receive a technical explanation of the source code in an easy-to-understand format, as well as emotionally sensitive support.
[0823] (Application example 2)
[0824] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0825] Conventional source code analysis systems lacked the ability to adjust the display method of analysis results based on user emotions, which meant that information could not be provided in accordance with user stress or satisfaction, resulting in issues with the user experience.In addition, the accuracy of analysis results and the display format could not be improved appropriately based on user emotions.
[0826] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation thereof, means for returning the analysis results to the user terminal, and emotion recognition means for recognizing the user's emotion and adjusting the display method of the analysis results. This makes it possible to provide the source code analysis results in an appropriate display format according to the user's emotional state, thereby improving the user experience.
[0827] A "user terminal" is a device used by a user to input source code and display the analysis results.
[0828] A "generative artificial intelligence module" is a system that includes machine learning models and algorithms to analyze source code entered by a user and generate technical explanations for it.
[0829] "Emotion recognition means" refers to a device that includes sensors and software for analyzing and recognizing emotions from a user's facial expressions, voice, text input, etc.
[0830] An "external API" is an interface for using data and functions provided by other systems or services.
[0831] The "database means" refers to a storage device or management system that stores technical explanations of the analyzed source code and user emotional data, and allows them to be referenced as needed.
[0832] The "display format" refers to the layout and format used to present analysis results and additional information in a way that is easy for users to understand.
[0833] "Source code" is textual code that constitutes a program and contains instructions for a computer to execute.
[0834] "Analysis results" are technical explanations and information generated by the generative artificial intelligence module after analyzing the source code.
[0835] "Emotion data" is information that indicates the user's emotional state, and is data collected by emotion recognition means based on facial expressions, voice, text input, and the like.
[0836] "Display history" is a record of previously displayed analysis results and any additional information contained therein, and is data that is saved for future reference.
[0837] This invention describes a specific embodiment for realizing a system that analyzes source code entered by a user and provides technical explanations of it. This system is mainly composed of four elements: a server, a terminal, a user, and emotion recognition means.
[0838] server
[0839] The server plays a central role in analyzing the source code entered by the user and generating the results. The server has the following functions:
[0840] 1. Receiving the Source Code:
[0841] The source code transmitted from the user terminal is received.
[0842] 2. Analysis by generative artificial intelligence module:
[0843] The received source code is analyzed by a generative artificial intelligence module to generate a technical description of it, using open-source machine learning libraries and external APIs.
[0844] 3. Sending analysis results:
[0845] The generated analysis results are sent to the user's device. To improve the accuracy of the analysis results, it is also possible to utilize external APIs.
[0846] 4. Result format:
[0847] The analysis results are automatically converted into a user-friendly display format and presented in a way that is easy for users to understand.
[0848] Terminal
[0849] The terminal is a device where the user inputs source code and receives and displays the analysis results. The terminal has the following functions:
[0850] 1. Code input interface:
[0851] It provides an interface for users to input source code, using multiple methods such as voice input or text input.
[0852] 2. Emotion recognition means:
[0853] The system recognizes emotions from the user's facial expressions, voice, input text, etc. This recognition is achieved using the built-in camera, microphone, and emotion recognition software.
[0854] 3. Result display interface:
[0855] The system displays the analysis results it receives. It also has the ability to adjust the display method based on the user's emotions. For example, if the user is feeling stressed, it will display detailed explanations and hints.
[0856] User
[0857] The user is responsible for inputting source code and checking the analysis results. The user's operation flow is as follows:
[0858] 1. Enter the source code:
[0859] The user uses the terminal's input interface to input source code, for example, a Python function such as "def add(a, b): return a + b".
[0860] 2. Check the analysis results:
[0861] The analysis results are displayed in the terminal, including a technical description of the Python function you entered: "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result."
[0862] 3. Display adjustment based on emotion recognition:
[0863] The app recognizes the user's emotions and provides additional hints and details if, for example, they are feeling stressed. For example, it displays "Hint: Think about the meaning of variable names in functions. Using meaningful variable names improves code readability."
[0864] In a concrete example of this system, the following prompt sentence is input to the generative AI model:
[0865] "A user uses smart glasses and enters the following Python function code: 'def add(a, b): return a + b'. Please provide a technical explanation of this code and show how you can adjust the display based on the user's emotions."
[0866] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0867] Step 1:
[0868] The user inputs source code into the terminal. Through the input interface, the user sends the source code (e.g., def add(a, b): return a + b) to the terminal. This input is stored in the database on the terminal and prepared for analysis.
[0869] Step 2:
[0870] The device sends the source code to the server. The device retrieves the stored source code and sends it to the server. The server receives the source code and prepares it for analysis.
[0871] Step 3:
[0872] The server uses a generative artificial intelligence module to analyze the source code. The server inputs the received source code into the generative artificial intelligence module, which generates a technical explanation. The generated analysis result (e.g., "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result") is obtained.
[0873] Step 4:
[0874] The server returns the analysis results to the terminal. The server formats the generated analysis results and sends them to the user terminal. The terminal receives the analysis results.
[0875] Step 5:
[0876] The device recognizes the user's emotions using an emotion recognition means. The device's built-in camera and microphone are used to capture the user's facial expressions and voice data, which are then input into an emotion recognition algorithm. The algorithm analyzes whether the user is feeling stressed or satisfied, and generates emotion data.
[0877] Step 6:
[0878] The device adjusts how the analysis results are displayed. Based on the received analysis results and the recognized emotion data, the device determines how to display the analysis results. If the user is stressed, it will display detailed explanations and additional tips, and if the user is satisfied, it will only display basic information.
[0879] Step 7:
[0880] The user checks the analysis results. The user checks the analysis results and additional information displayed on the terminal screen and takes the next step (e.g., inputting correction code) as necessary. This allows the user to efficiently understand the source code analysis results and move on to the next task.
[0881] 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.
[0882] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0883] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[0884] [Third embodiment]
[0885] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0886] 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.
[0887] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0888] 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.
[0889] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0890] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0891] 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.
[0892] 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.
[0893] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0894] 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.
[0895] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0896] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."
[0897] The present invention is a system that analyzes source code entered by a user and provides technical explanations of it. The following shows the implementation of this system. The system is mainly composed of three elements: a server, a terminal, and a user.
[0898] System Components
[0899] User
[0900] The user is the entity that inputs the source code to be analyzed and receives the analysis results. The user interacts with the system through a terminal.
[0901] Terminal
[0902] The terminal is a device used by the user, and serves to input source code and display the analysis results. The terminal has an interface for inputting source code and an interface for displaying the analysis results.
[0903] server
[0904] The server receives the source code sent from the terminal, analyzes the source code using a generative artificial intelligence module, generates the analysis results, and returns them to the terminal.
[0905] Program processing explanation
[0906] server
[0907] The server first receives the source code sent from the terminal. To analyze this source code, the server sends a request to a generative artificial intelligence module. The generative artificial intelligence module analyzes the contents of the source code and generates a technical explanation for it. The server then receives this explanation, formats it for display, and sends it back to the terminal.
[0908] Terminal
[0909] The terminal accepts source code input from the user and sends it to the server, which then displays the analysis results in a format that is easy for the user to understand.
[0910] User
[0911] First, the user inputs the source code they want to analyze into the terminal. Then, the analysis results are displayed on the terminal and the user can check the contents. For example, if you input the following Python function, the system will provide the analysis results:
[0912] python
[0913] def add(a, b):
[0914] return a + b
[0915] When this function is input, the generative artificial intelligence module generates an explanation such as, "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The server then receives the analysis result and sends it back to the device, allowing the user to check it.
[0916] Specific examples
[0917] Specifically, the user enters the following source code:
[0918] python
[0919] def multiply(x, y):
[0920] return xy
[0921] The terminal sends this source code to the server. The server sends an analysis request to the generative artificial intelligence module and receives the analysis result: "This function 'multiply' multiplies two arguments 'x' and 'y' and returns the result." The server then sends the result back to the terminal, which displays it to the user. The user can check the analysis result on the terminal screen.
[0922] In this way, the system of the present invention automatically analyzes source code and provides explanations of the source code, eliminating the dependency on individual users and the black box nature of the system, and providing an effective means for promoting digital transformation in companies.
[0923] The processing flow will be explained below.
[0924] Step 1:
[0925] The user inputs the source code they want to analyze into the terminal's input interface. For example, they input the following code:
[0926] python
[0927] def add(a, b):
[0928] return a + b
[0929] Step 2:
[0930] The terminal accepts the user's input and checks whether the source code has been entered correctly. After checking, it creates an HTTP request to the server and sends it, including the entered source code.
[0931] Step 3:
[0932] The server receives the request from the terminal and extracts the source code from the request body.
[0933] Step 4:
[0934] The server sends a request to the generative artificial intelligence module to analyze the extracted source code. Specifically, it constructs and sends an API request to the generative artificial intelligence module.
[0935] Step 5:
[0936] The generative AI module receives requests from the server, analyzes the content of the source code, and generates a technical description of the source code as a result of the analysis.
[0937] Step 6:
[0938] The generative AI module returns the generated analysis results to the server, which receives the results and checks their contents.
[0939] Step 7:
[0940] Once the server receives the analysis results, it formats them into a user-friendly display format, adding additional context and explanation where necessary.
[0941] Step 8:
[0942] The server sends the formatted analysis results as a response to the terminal.
[0943] Step 9:
[0944] The terminal receives the response from the server and displays the analysis results in an easy-to-read format for the user, allowing the user to check the analysis results and gain the necessary understanding.
[0945] This processing flow allows users to easily obtain the analysis results of source code, helping to eliminate personalization and black boxing.
[0946] Example 1
[0947] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0948] Understanding the technical details of source code is important for developers, but it can be complex and time-consuming. It is also challenging to effectively display the results of source code analysis in a way that is intuitive for users. Furthermore, it is difficult to save past analysis results and use them for future code improvements.
[0949] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0950] In this invention, the server includes a means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation for it, a means for returning the analysis results to a user terminal, and a terminal means for inputting the source code and displaying the analysis results. This allows the user to automatically obtain a technical explanation of the source code and display it in an easy-to-understand format. Furthermore, the accuracy of the analysis results is improved and the formatted results are provided to improve intuitive understanding. Past analysis results can also be saved and used to propose future code improvements.
[0951] A "user" is an entity that inputs source code and receives the analysis results.
[0952] "Means" is a broad term that refers to a device or method for achieving a particular function.
[0953] "Source code" means textual instructions that describe the behavior of a program.
[0954] A "generative artificial intelligence module" is a type of artificial intelligence that has the ability to generate new data and information based on given data.
[0955] "Analysis results" are technical explanations and information obtained when the source code is analyzed by the generative artificial intelligence module.
[0956] A "server" is a computer system that provides computer resources connected to a network and is responsible for analytical processing.
[0957] A "terminal" is a computing device operated by a user that provides an interface for inputting source code and displaying analysis results.
[0958] An "external API" is an interface for accessing external software or services and utilizing their functions.
[0959] "Formatting" is the operation or process of arranging data or information into a particular form or presentation.
[0960] A "database" is a system built for the purpose of efficiently storing and retrieving data.
[0961] "Improvement proposals" are advice or suggestions that indicate future improvements or optimization methods based on the current situation and data.
[0962] The present invention is a system that analyzes source code entered by a user and provides a technical explanation of it. The system of the present invention is composed of three elements: a server, a terminal, and a user. Specific embodiments and processes for implementing this system are described below.
[0963] User
[0964] The user is the subject who types the source code they want to analyze into a terminal. For example, the user types the following Python code:
[0965] python
[0966] def add(a, b):
[0967] return a + b
[0968] Even with such a simple function, users can get a technical explanation of the code through the analysis results.
[0969] Terminal
[0970] The terminal is a computing device operated by the user, which provides an interface for inputting source code and an interface for displaying analysis results. It can be implemented on common devices such as PCs, smartphones, and tablets. The terminal accepts source code input from the user and sends it to the server. It also displays the analysis results received from the server in a format that is easy for the user to understand. For example, the analysis result may be displayed on the screen as follows: "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result."
[0971] server
[0972] The server receives the source code sent from the device and analyzes it. The generative artificial intelligence module used can be, for example, OpenAI's GPT-4 model. The server operates in the following steps:
[0973] 1. Receive the source code sent from the terminal.
[0974] 2. Send a prompt to the generative AI module to analyze the source code. For example, send the following prompt:
[0975] "Write a technical description of the following Python function:\ndef add(a, b):\n return a + b"
[0976] 3. Receive a technical description from the generative AI module, for example, "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result."
[0977] 4. The analysis results are formatted in a way that is easy for the user to understand and sent back to the device.
[0978] The server also has a database that stores the analysis results and accumulates data for generating future source code improvement proposals. This function allows users to refer to past analysis results and receive efficient improvement proposals.
[0979] Specific examples
[0980] For example, if a user enters the following source code:
[0981] python
[0982] def multiply(x, y):
[0983] return xy
[0984] The device sends this source code to the server, which then sends the following prompt to the generative AI module:
[0985] "Write a technical description of the following Python function:\ndef multiply(x, y):\n return xy"
[0986] The generative AI module returns the analysis result: "This function 'multiply' multiplies two arguments 'x' and 'y' and returns the result." The server sends this result back to the terminal, which displays it to the user.
[0987] The above is a specific embodiment of the present invention, and this system allows users to easily obtain technical explanations of source code, supporting efficient code development.
[0988] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0989] Step 1:
[0990] The user enters the source code they want to analyze into the terminal. For example, the user enters the following Python code:
[0991] python
[0992] def add(a, b):
[0993] return a + b
[0994] The entered source code is saved in text format on the terminal.
[0995] Step 2:
[0996] The terminal sends the input source code to the server. At this time, the source code data is sent to the specified endpoint of the server using an HTTP POST request. The data to be sent is structured as follows:
[0997] {
[0998] "source_code": "def add(a, b):\n return a + b"
[0999] }
[1000] The input is the source code and the output is the HTTP request sent to the server.
[1001] Step 3:
[1002] The server receives an HTTP POST request from the terminal. The received source code data is temporarily stored on the server and its contents are checked. The input is the source code data sent from the terminal, and the output is the source code data stored on the server.
[1003] Step 4:
[1004] The server sends an analysis request to the generative AI module. Specifically, it sends the following prompt to the generative AI module:
[1005] "Write a technical description of the following Python function:\ndef add(a, b):\n return a + b"
[1006] The input is source code data stored in the server, and the output is a prompt sentence sent to the generative artificial intelligence module.
[1007] Step 5:
[1008] The generative AI module analyzes the received prompt and generates a technical explanation, for example, "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The input is the prompt, and the output is the generated technical explanation.
[1009] Step 6:
[1010] The server parses and formats the technical description received from the generative AI module, adding embellishments and additional information and converting it into a form that is easy for users to understand. The input is the technical description from the generative AI module, and the output is the formatted technical description.
[1011] Step 7:
[1012] The server returns a formatted technical description to the device and sends the parsed results as an HTTP response. The input is the formatted technical description and the output is the HTTP response sent to the device.
[1013] Step 8:
[1014] The terminal receives the technical explanation received from the server and displays it in a format that is easy for the user to understand, for example, displaying the analysis results in a text box or a dedicated view. The input is the technical explanation received from the server, and the output is what is displayed to the user.
[1015] Step 9:
[1016] The user sees the analysis results on the terminal screen. The analysis results are displayed as an explanation: "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The user uses this information to understand the code. The input is the technical explanation displayed on the terminal, and the output is the information the user gets.
[1017] (Application example 1)
[1018] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1019] Conventional systems were limited to analyzing source code entered by users and generating technical descriptions of that code, making it difficult for users to instantly obtain product information and detailed technical descriptions of objects they visually identified. Furthermore, conventional systems had limited methods for efficiently displaying the obtained technical descriptions, making it difficult for users to quickly and intuitively understand the information they needed.
[1020] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1021] In this invention, the server includes: means for receiving source code entered by a user; a generative artificial intelligence module for analyzing the source code and generating a technical description thereof; means for returning the analysis result to a user terminal; means for acquiring a digital image of an object visually recognized by the user; means for analyzing the acquired digital image and identifying product information of the object; a generative artificial intelligence module for generating a technical description related to the identified product; and means for returning the generated technical description to the user terminal so that the user can visually confirm it. This enables the user to quickly acquire technical information related to the visually recognized product and intuitively understand the detailed description.
[1022] "Source code entered by the user" refers to program code that the user provides from a terminal to be analyzed by the system.
[1023] A "generative artificial intelligence module" is artificial intelligence software that analyzes input data and automatically generates technical explanations and information based on that content.
[1024] A "user terminal" is an electronic device, such as a computer, smartphone, or smart glasses, that a user uses to interact with the system.
[1025] A "digital image" is electronic data containing visual information captured by a device such as a camera or scanner.
[1026] "Product information" refers to detailed data about the identified product, such as its name, ingredients, usage, and storage methods.
[1027] "Means for visual confirmation" refers to techniques or methods for displaying the generated technical explanations and product information in a format that is easily understandable to the user.
[1028] An "external API" is an interface for integrating services and functions provided by third parties into a system.
[1029] A "user-friendly presentation" is an interface or design that presents information in a way that is intuitive and easy for users to understand.
[1030] "Database Means" means a system or software that stores information in an organized manner so that it can be later quickly searched and retrieved.
[1031] The "means for generating suggestions for future source code improvements" is a technology that automatically provides suggestions for further optimization and improvement of source code based on past analysis results.
[1032] "Means of storing user history for future reference" refers to a system that stores information and technical explanations that users have previously acquired, allowing them to easily access them later.
[1033] MODE FOR CARRYING OUT THE INVENTION
[1034] This invention is a system that analyzes source code entered by a user or product information visually confirmed by the user, and provides technical explanations. Specifically, the user can acquire digital images using smart glasses or other devices, and analyze them to obtain detailed technical information.
[1035] System Configuration
[1036] server
[1037] The server has the following features:
[1038] 1. Source code receiving function
[1039] A source code input by a user is received.
[1040] 2. Generative AI Module
[1041] It analyzes product information extracted from source code and digital images and generates technical descriptions using software such as OpenAI GPT-4.
[1042] 3. Image Recognition Module
[1043] The digital images captured by the user's smart glasses camera are analyzed to identify product information, using image recognition technologies such as YOLO and Google Cloud Vision API.
[1044] 4. Database Function
[1045] It stores the analysis results and allows users to refer to past data. It also includes a means to suggest future source code improvements and store user history.
[1046] Terminal
[1047] A terminal is a device used by a user that has the following functions:
[1048] 1. Input Interface
[1049] It provides an interface for users to input source code and digital images.
[1050] 2. Display Interface
[1051] A display function that allows the user to visually confirm the generated technical explanation. In the case of smart glasses, the information is displayed overlaid on the user's field of vision.
[1052] User
[1053] The user uses this system and performs the following steps:
[1054] 1. Enter the source code
[1055] Enter the source code to be analyzed into the terminal.
[1056] 2. Digital Image Acquisition
[1057] A digital image of an object is captured using smart glasses.
[1058] 3. Check the analysis results
[1059] View server-generated technical descriptions on your device.
[1060] Specific examples
[1061] For example, if a user captures the label of an "organic jam" with their smart glasses, the image is sent to the server, where the server uses an image recognition module to identify the product, and a generative artificial intelligence module to generate technical information. As a result, the device displays a technical description like this:
[1062] "This organic jam is made from 100% organic fruit. Once opened, it should be stored in the refrigerator and used within two weeks."
[1063] Prompt Sentence Examples
[1064] Below are some examples of prompts that can be input to a generative AI model:
[1065] Product Name: Organic Jam
[1066] Q: Can you provide a technical description of this product? Can you give me more details about the ingredients, how to use it, and how to store it?
[1067] The introduction of this system allows users to intuitively understand visually confirmed product information, making purchasing decisions easier. It also improves the efficiency of the entire system and enables the provision of accurate information.
[1068] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1069] Step 1:
[1070] The user uses the camera in the smart glasses to capture a digital image of the product of interest. The input is the digital image, which is then transmitted to the server by a processor in the smart glasses.
[1071] Step 2:
[1072] The server receives the digital image sent from the smart glasses. The input is the digital image. The server sends this digital image to an image recognition module (YOLO or Google Cloud Vision API) to identify the product information. The output is the identified product information.
[1073] Step 3:
[1074] The server sends a request to the generative artificial intelligence module based on the identified product information. The input is the product information. The generative artificial intelligence module generates a technical description about the product. The output is the generated technical description. In specific operation, the generative artificial intelligence module generates the technical description based on the prompt sentence.
[1075] Step 4:
[1076] The server receives the generated technical description and formats it into a user-friendly display format. The input is the generated technical description. The output is the formatted technical description. Specifically, it converts the generated technical description into HTML or a display format.
[1077] Step 5:
[1078] The server returns the formatted technical description to the smart glasses. The input is the formatted technical description. The output is data transmission to the smart glasses. Specifically, the data is transmitted using the HTTP protocol or a dedicated API.
[1079] Step 6:
[1080] The smart glasses receive the technical explanation sent from the server and display it over the user's field of view. The input is a formatted technical explanation. The output is a display of the technical explanation. Specifically, the smart glasses use the display function within the smart glasses to overlay the information on the user's field of view.
[1081] Step 7:
[1082] The user checks the technical explanation displayed on the smart glasses and obtains the necessary information. The input is the visual technical explanation. The output is the user's understanding. Specifically, the user reads and understands the displayed information and uses it to make purchasing decisions.
[1083] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1084] This invention is a system that analyzes source code entered by a user, provides technical explanations, and adjusts the display method of the analysis results by recognizing the user's emotions. The following shows the configuration for realizing this system. The system is mainly composed of four elements: a server, a terminal, a user, and an emotion engine.
[1085] System Components
[1086] User
[1087] The user is the entity that inputs the source code to be analyzed and receives the analysis results. The user interacts with the system through a terminal.
[1088] Terminal
[1089] The terminal is a device used by the user, and serves to input source code and display analysis results. The terminal has an interface for inputting source code and an interface for displaying analysis results. It also inputs the user's emotions, which are recognized by the emotion engine.
[1090] server
[1091] The server receives the source code sent from the device and analyzes it using a generative artificial intelligence module. It generates the analysis results and sends them back to the device. It also uses an external API to improve the accuracy of the analysis results.
[1092] Emotion Engine
[1093] The emotion engine is responsible for recognizing the user's emotions and adjusting the way the analysis results are presented based on the user's emotions. For example, if the user is stressed, the analysis results will be presented in more detail, and if the user is satisfied, additional information or next steps will be provided.
[1094] Program processing explanation
[1095] server
[1096] The server first receives the source code sent from the terminal. To analyze this source code, it sends a request to a generative artificial intelligence module. The generative artificial intelligence module analyzes the contents of the source code and generates a technical explanation. The server then receives this explanation, formats it for display, and sends it back to the terminal.
[1097] Terminal
[1098] The device accepts source code input from the user and sends it to the server. The analysis results received from the server are displayed in a format that is easy for the user to understand. In addition, the display is adjusted to reflect the user's emotions using an emotion engine.
[1099] Emotion Engine
[1100] The emotion engine receives data about the user's emotions from the device. For example, it analyzes the user's facial expressions, voice, and text input to recognize emotions. Based on the recognized emotions, it adjusts the way the analysis results are displayed. This information is sent to the server, which returns the appropriate analysis result format and additional information.
[1101] User
[1102] First, the user inputs the source code they want to analyze into the terminal. Then, the analysis results are displayed on the terminal, allowing them to check their contents. The system also adjusts the display of the analysis results by recognizing the user's emotions. For example, if you input the following Python function, the system will provide the analysis results:
[1103] python
[1104] def add(a, b):
[1105] return a + b
[1106] When this function is input, the generative AI module generates an explanation such as "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The server then receives the analysis results and sends them back to the device, where the user can check them. The emotion engine recognizes the user's emotions and adds in-depth explanations and hints if the user is feeling stressed, for example.
[1107] In this way, the system of the present invention automatically analyzes and explains source code while taking user emotions into consideration, eliminating the dependency on individual users and the black box nature of the system, thereby providing an effective means for promoting digital transformation in companies.
[1108] The processing flow will be explained below.
[1109] Step 1:
[1110] The user inputs the source code they want to analyze into the terminal's input interface. For example, they input the following code:
[1111] python
[1112] def add(a, b):
[1113] return a + b
[1114] Step 2:
[1115] The terminal accepts the user's input and checks whether the source code has been entered correctly. After checking, it creates an HTTP request to the server and sends it, including the entered source code.
[1116] Step 3:
[1117] The server receives the request from the terminal and extracts the source code from the request body.
[1118] Step 4:
[1119] The server sends the extracted source code to the generative AI module and makes an analysis request. Specifically, it constructs and sends an API request to the generative AI module.
[1120] Step 5:
[1121] The generative AI module receives requests from the server, analyzes the content of the source code, and generates a technical description of the source code as a result of the analysis.
[1122] Step 6:
[1123] The generative AI module returns the generated analysis results to the server, which receives the results and checks their contents.
[1124] Step 7:
[1125] Once the server receives the analysis results, it formats them into a user-friendly display format, adding additional context and explanation where necessary.
[1126] Step 8:
[1127] The server sends the formatted analysis results as a response to the terminal.
[1128] Step 9:
[1129] The terminal receives the response from the server and displays the analysis results in a format that is easy for the user to view.
[1130] Step 10:
[1131] The device analyzes the user's emotions using an emotion engine, using facial expressions and voice data to recognize emotions such as whether the user is satisfied or stressed.
[1132] Step 11:
[1133] The device sends the emotion engine's analysis results to the server, and if the user is feeling stressed, it requests that the server provide detailed analysis results and hints.
[1134] Step 12:
[1135] The server receives the user's emotion data, reformats the analysis results, and, if necessary, generates detailed explanations or additional hints and sends them back to the device.
[1136] Step 13:
[1137] The terminal receives the reformatted analysis results and displays them to the user, who can review the final analysis results and additional information for further understanding.
[1138] Example 2
[1139] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1140] Conventional source code analysis systems only provide technical explanations and do not consider the user's emotions, making it impossible to provide appropriate support based on the user's level of understanding or stress level. This can result in users being unable to effectively utilize the system's analysis results. Furthermore, the accuracy of the analysis results and the user-friendly display format are often insufficient. Therefore, the present invention aims to provide a system that recognizes the user's emotions and adjusts the display method of the analysis results based on those emotions, thereby improving the user's level of understanding and providing a comfortable user experience.
[1141] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1142] In this invention, the server includes a means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation for it, a means for returning the analysis results to the user terminal, and a means for recognizing the user's emotions and adjusting the display method of the analysis results based on the emotions. This allows the analysis results to be displayed in a way that takes the user's emotions into consideration. Furthermore, by including a means for automatically converting the analysis results into a user-friendly display format using an external API to improve the accuracy of the analysis results, an even better user experience can be provided.
[1143] "Means for receiving source code entered by a user" refers to an interface or communication function for transmitting source code entered by a user into a terminal to a server.
[1144] "Generative artificial intelligence module for analyzing source code and generating technical descriptions thereof" refers to a component that utilizes artificial intelligence technology to understand input source code and generate technical descriptions or explanations based on it.
[1145] "Means for returning analysis results to the user terminal" refers to communication and interface functions for sending and displaying the analysis results generated by the server to the user terminal.
[1146] "Means for recognizing a user's emotions and adjusting the display method of analysis results based on those emotions" refers to technologies and approaches for analyzing emotions from a user's facial expressions, voice, text input, etc., and dynamically changing the display format and content of the analysis results based on the results.
[1147] "Means to improve the accuracy of analytical results generated using external APIs" refers to a mechanism for improving the accuracy and usefulness of analytical results by using external data and services to supplement and enrich analytical models.
[1148] "Means for automatically formatting analytical results into a user-friendly display" refers to the processes and techniques used to reformat the analytical results generated so that they can be easily understood by the user and provide an appropriate visual display.
[1149] "Means for obtaining user emotional data through emotion recognition and adjusting display based on that" refers to technology for obtaining the user's current emotional state through devices or sensors and adjusting the display method of the analysis results accordingly.
[1150] "Database means for storing technical descriptions of analyzed source code and enabling past analysis results to be referenced" refers to a mechanism for storing the generated technical descriptions and analysis results in a database and enabling past data to be searched and referenced as needed.
[1151] "Means for generating suggestions for future source code improvements based on stored analysis results" refers to technologies and processes that analyze previously stored analysis results and automatically generate suggestions for improving or optimizing new source code.
[1152] System Overview
[1153] The present invention is a system for performing technical analysis of source code and adjusting the analysis results based on user emotions. The system mainly consists of a server, a user terminal, an emotion engine, and the necessary communication infrastructure.
[1154] Server Processing
[1155] The server has a means for receiving source code entered by a user, a means for sending the source code to a generative artificial intelligence module (e.g., OpenAI's GPT-4) for analysis, and a means for returning the generated analysis results to the user's device. It also includes a means for improving the accuracy of the analysis results using external APIs (e.g., code auto-completion services).
[1156] Examples:
[1157] The user types the following Python function into the terminal:
[1158] python
[1159] def add(a, b):
[1160] return a + b
[1161] The server receives this source code and sends a prompt to the generative AI module:
[1162] "Analyze the following Python function and provide a technical explanation:
[1163] python
[1164] def add(a, b):
[1165] return a + b
[1166] "
[1167] The generative AI module generates a technical description such as "This function 'add' takes two arguments 'a' and 'b', adds them together and returns the result" and sends it back to the server.
[1168] User terminal processing
[1169] The user inputs source code through a terminal and receives the analysis results sent from the server. The terminal has an interface for accepting source code input, an interface for displaying the analysis results, and an interface for sending the user's emotional data to the emotion engine.
[1170] Emotion engine processing
[1171] The emotion engine analyzes emotional data (facial expression recognition, voice analysis, text input, etc.) obtained from the user's device to recognize the user's emotional state. The results are sent to the server, which then adjusts the display method of the analysis results based on the emotional information.
[1172] Examples:
[1173] If the user feels the emotion "stressed," the emotion engine sends this emotion information to the server, which returns the normal analysis results along with more detailed explanations and additional supplementary information.
[1174] Prompt Sentence Examples
[1175] The prompt text is sent as follows:
[1176] "Analyze the following Python function and provide a technical explanation:
[1177] python
[1178] def add(a, b):
[1179] return a + b
[1180] "
[1181] In response to this prompt, a generative artificial intelligence module generates a technical explanation.
[1182] In this way, the system of the present invention not only analyzes source code and provides technical explanations, but also adjusts the analysis results based on the user's emotions, creating a user-friendly interface. By providing support according to the user's emotional state, it is possible to provide a more comfortable and effective learning and working environment.
[1183] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1184] Step 1:
[1185] The user enters the source code into the terminal.
[1186] What happens: The user opens a text editor and enters a Python function like this:
[1187] python
[1188] def add(a, b):
[1189] return a + b
[1190] Input: Source code is entered into the terminal through a user's input device (such as a keyboard).
[1191] Output: The source code is displayed in a text editor in the terminal.
[1192] Step 2:
[1193] The terminal transmits the source code entered by the user to the server.
[1194] Specific operation: When the user presses the "Send" button, the terminal sends the source code to the server.
[1195] Input: The source code entered.
[1196] Output: The source code sent to the server.
[1197] Step 3:
[1198] The server receives the source code sent from the terminal.
[1199] Specific operation: The server receives the source code via the network and stores it in its internal data area.
[1200] Input: Source code sent from the terminal.
[1201] Output: Source code stored in the server's data area.
[1202] Step 4:
[1203] The server sends the source code to the generative artificial intelligence module.
[1204] Specific operation: The server generates a prompt sentence to the generative artificial intelligence module and sends a request to analyze the source code.
[1205] Input: Source code stored on the server.
[1206] Output: The prompt sent to the generative artificial intelligence module.
[1207] Example prompt: "Analyze the following Python function and provide its technical description:
[1208] python
[1209] def add(a, b):
[1210] return a + b
[1211] "
[1212] Step 5:
[1213] A generative artificial intelligence module analyzes the source code and generates a technical description of it.
[1214] Specific operation: A generative artificial intelligence module (e.g., GPT-4) analyzes the source code based on the prompt and generates a detailed technical explanation.
[1215] Input: The source code contained in the prompt statement.
[1216] Output: A technical description (e.g., "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result").
[1217] Step 6:
[1218] The server receives the generated technical description and adjusts the display format.
[1219] Specific operation: The server formats the technical explanation received from the generative artificial intelligence module into a form that is easy for the user to understand.
[1220] Input: Technical description from a generative artificial intelligence module.
[1221] Output: Formatted technical description.
[1222] Step 7:
[1223] The server sends a formatted technical description to the terminal.
[1224] Specific operation: The server returns a formatted technical description to the terminal.
[1225] Input: A formatted technical description.
[1226] Output: Formatted technical description sent to terminal.
[1227] Step 8:
[1228] The terminal displays the technical description received from the server.
[1229] Specific operation: The device displays the received technical explanation on the screen.
[1230] Input: The technical description sent by the server.
[1231] Output: A technical description that the user can see on their device screen.
[1232] Step 9:
[1233] The device acquires emotional data from the user's facial expressions and voice.
[1234] Specific operation: Captures the user's facial expressions and voice using the device's built-in camera and microphone.
[1235] Input: User's facial expression data and voice data.
[1236] Output: The obtained emotion data.
[1237] Step 10:
[1238] The emotion engine analyzes the emotion data and recognizes the user's emotion.
[1239] Specific operation: The emotion engine analyzes the user's emotions through facial expression recognition and voice analysis, and processes the data.
[1240] Input: The acquired emotion data.
[1241] Output: Parsed emotion information (e.g., "The user is feeling stressed").
[1242] Step 11:
[1243] The server adjusts how the analysis results are displayed based on the emotional information.
[1244] Specific operation: Based on the emotional information, the server adds additional information and detailed explanations to the analysis results.
[1245] Input: Parsed emotion information.
[1246] Output: Adjusted analysis results.
[1247] Step 12:
[1248] The device finally displays the adjusted analysis results.
[1249] Specific operation: The terminal finally displays the adjusted analysis results returned from the server to the user.
[1250] Input: The adjusted analysis results sent from the server.
[1251] Output: The final refined analysis results that the user can see.
[1252] By going through each step in this way, users receive a technical explanation of the source code in an easy-to-understand format, as well as emotionally sensitive support.
[1253] (Application example 2)
[1254] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1255] Conventional source code analysis systems lacked the ability to adjust the display method of analysis results based on user emotions, which meant that information could not be provided in accordance with user stress or satisfaction, resulting in issues with the user experience.In addition, the accuracy of analysis results and the display format could not be improved appropriately based on user emotions.
[1256] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation thereof, means for returning the analysis results to the user terminal, and emotion recognition means for recognizing the user's emotion and adjusting the display method of the analysis results. This makes it possible to provide the source code analysis results in an appropriate display format according to the user's emotional state, thereby improving the user experience.
[1257] A "user terminal" is a device used by a user to input source code and display the analysis results.
[1258] A "generative artificial intelligence module" is a system that includes machine learning models and algorithms to analyze source code entered by a user and generate technical explanations for it.
[1259] "Emotion recognition means" refers to a device that includes sensors and software for analyzing and recognizing emotions from a user's facial expressions, voice, text input, etc.
[1260] An "external API" is an interface for using data and functions provided by other systems or services.
[1261] The "database means" refers to a storage device or management system that stores technical explanations of the analyzed source code and user emotional data, and allows them to be referenced as needed.
[1262] The "display format" refers to the layout and format used to present analysis results and additional information in a way that is easy for users to understand.
[1263] "Source code" is textual code that constitutes a program and contains instructions for a computer to execute.
[1264] "Analysis results" are technical explanations and information generated by the generative artificial intelligence module after analyzing the source code.
[1265] "Emotion data" is information that indicates the user's emotional state, and is data collected by emotion recognition means based on facial expressions, voice, text input, and the like.
[1266] "Display history" is a record of previously displayed analysis results and any additional information contained therein, and is data that is saved for future reference.
[1267] This invention describes a specific embodiment for realizing a system that analyzes source code entered by a user and provides technical explanations of it. This system is mainly composed of four elements: a server, a terminal, a user, and emotion recognition means.
[1268] server
[1269] The server plays a central role in analyzing the source code entered by the user and generating the results. The server has the following functions:
[1270] 1. Receiving the Source Code:
[1271] The source code transmitted from the user terminal is received.
[1272] 2. Analysis by generative artificial intelligence module:
[1273] The received source code is analyzed by a generative artificial intelligence module to generate a technical description of it, using open-source machine learning libraries and external APIs.
[1274] 3. Sending analysis results:
[1275] The generated analysis results are sent to the user's device. To improve the accuracy of the analysis results, it is also possible to utilize external APIs.
[1276] 4. Result format:
[1277] The analysis results are automatically converted into a user-friendly display format and presented in a way that is easy for users to understand.
[1278] Terminal
[1279] The terminal is a device where the user inputs source code and receives and displays the analysis results. The terminal has the following functions:
[1280] 1. Code input interface:
[1281] It provides an interface for users to input source code, using multiple methods such as voice input or text input.
[1282] 2. Emotion recognition means:
[1283] The system recognizes emotions from the user's facial expressions, voice, input text, etc. This recognition is achieved using the built-in camera, microphone, and emotion recognition software.
[1284] 3. Result display interface:
[1285] The system displays the analysis results it receives. It also has the ability to adjust the display method based on the user's emotions. For example, if the user is feeling stressed, it will display detailed explanations and hints.
[1286] User
[1287] The user is responsible for inputting source code and checking the analysis results. The user's operation flow is as follows:
[1288] 1. Enter the source code:
[1289] The user uses the terminal's input interface to input source code, for example, a Python function such as "def add(a, b): return a + b".
[1290] 2. Check the analysis results:
[1291] The analysis results are displayed in the terminal, including a technical description of the Python function you entered: "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result."
[1292] 3. Display adjustment based on emotion recognition:
[1293] The app recognizes the user's emotions and provides additional hints and details if, for example, they are feeling stressed. For example, it displays "Hint: Think about the meaning of variable names in functions. Using meaningful variable names improves code readability."
[1294] In a concrete example of this system, the following prompt sentence is input to the generative AI model:
[1295] "A user uses smart glasses and enters the following Python function code: 'def add(a, b): return a + b'. Please provide a technical explanation of this code and show how you can adjust the display based on the user's emotions."
[1296] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1297] Step 1:
[1298] The user inputs source code into the terminal. Through the input interface, the user sends the source code (e.g., def add(a, b): return a + b) to the terminal. This input is stored in the database on the terminal and prepared for analysis.
[1299] Step 2:
[1300] The device sends the source code to the server. The device retrieves the stored source code and sends it to the server. The server receives the source code and prepares it for analysis.
[1301] Step 3:
[1302] The server uses a generative artificial intelligence module to analyze the source code. The server inputs the received source code into the generative artificial intelligence module, which generates a technical explanation. The generated analysis result (e.g., "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result") is obtained.
[1303] Step 4:
[1304] The server returns the analysis results to the terminal. The server formats the generated analysis results and sends them to the user terminal. The terminal receives the analysis results.
[1305] Step 5:
[1306] The device recognizes the user's emotions using an emotion recognition means. The device's built-in camera and microphone are used to capture the user's facial expressions and voice data, which are then input into an emotion recognition algorithm. The algorithm analyzes whether the user is feeling stressed or satisfied, and generates emotion data.
[1307] Step 6:
[1308] The device adjusts how the analysis results are displayed. Based on the received analysis results and the recognized emotion data, the device determines how to display the analysis results. If the user is stressed, it will display detailed explanations and additional tips, and if the user is satisfied, it will only display basic information.
[1309] Step 7:
[1310] The user checks the analysis results. The user checks the analysis results and additional information displayed on the terminal screen and takes the next step (e.g., inputting correction code) as necessary. This allows the user to efficiently understand the source code analysis results and move on to the next task.
[1311] 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.
[1312] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1313] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1314] [Fourth embodiment]
[1315] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1316] 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.
[1317] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1318] 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.
[1319] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1320] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1321] 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.
[1322] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1323] 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.
[1324] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1325] 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.
[1326] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1327] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1328] The present invention is a system that analyzes source code entered by a user and provides technical explanations of it. The following shows the implementation of this system. The system is mainly composed of three elements: a server, a terminal, and a user.
[1329] System Components
[1330] User
[1331] The user is the entity that inputs the source code to be analyzed and receives the analysis results. The user interacts with the system through a terminal.
[1332] Terminal
[1333] The terminal is a device used by the user, and serves to input source code and display the analysis results. The terminal has an interface for inputting source code and an interface for displaying the analysis results.
[1334] server
[1335] The server receives the source code sent from the terminal, analyzes the source code using a generative artificial intelligence module, generates the analysis results, and returns them to the terminal.
[1336] Program processing explanation
[1337] server
[1338] The server first receives the source code sent from the terminal. To analyze this source code, the server sends a request to a generative artificial intelligence module. The generative artificial intelligence module analyzes the contents of the source code and generates a technical explanation for it. The server then receives this explanation, formats it for display, and sends it back to the terminal.
[1339] Terminal
[1340] The terminal accepts source code input from the user and sends it to the server, which then displays the analysis results in a format that is easy for the user to understand.
[1341] User
[1342] First, the user inputs the source code they want to analyze into the terminal. Then, the analysis results are displayed on the terminal and the user can check the contents. For example, if you input the following Python function, the system will provide the analysis results:
[1343] python
[1344] def add(a, b):
[1345] return a + b
[1346] When this function is input, the generative artificial intelligence module generates an explanation such as, "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The server then receives the analysis result and sends it back to the device, allowing the user to check it.
[1347] Specific examples
[1348] Specifically, the user enters the following source code:
[1349] python
[1350] def multiply(x, y):
[1351] return xy
[1352] The terminal sends this source code to the server. The server sends an analysis request to the generative artificial intelligence module and receives the analysis result: "This function 'multiply' multiplies two arguments 'x' and 'y' and returns the result." The server then sends the result back to the terminal, which displays it to the user. The user can check the analysis result on the terminal screen.
[1353] In this way, the system of the present invention automatically analyzes source code and provides explanations of the source code, eliminating the dependency on individual users and the black box nature of the system, and providing an effective means for promoting digital transformation in companies.
[1354] The processing flow will be explained below.
[1355] Step 1:
[1356] The user inputs the source code they want to analyze into the terminal's input interface. For example, they input the following code:
[1357] python
[1358] def add(a, b):
[1359] return a + b
[1360] Step 2:
[1361] The terminal accepts the user's input and checks whether the source code has been entered correctly. After checking, it creates an HTTP request to the server and sends it, including the entered source code.
[1362] Step 3:
[1363] The server receives the request from the terminal and extracts the source code from the request body.
[1364] Step 4:
[1365] The server sends a request to the generative artificial intelligence module to analyze the extracted source code. Specifically, it constructs and sends an API request to the generative artificial intelligence module.
[1366] Step 5:
[1367] The generative AI module receives requests from the server, analyzes the content of the source code, and generates a technical description of the source code as a result of the analysis.
[1368] Step 6:
[1369] The generative AI module returns the generated analysis results to the server, which receives the results and checks their contents.
[1370] Step 7:
[1371] Once the server receives the analysis results, it formats them into a user-friendly display format, adding additional context and explanation where necessary.
[1372] Step 8:
[1373] The server sends the formatted analysis results as a response to the terminal.
[1374] Step 9:
[1375] The terminal receives the response from the server and displays the analysis results in an easy-to-read format for the user, allowing the user to check the analysis results and gain the necessary understanding.
[1376] This processing flow allows users to easily obtain the analysis results of source code, helping to eliminate personalization and black boxing.
[1377] Example 1
[1378] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1379] Understanding the technical details of source code is important for developers, but it can be complex and time-consuming. It is also challenging to effectively display the results of source code analysis in a way that is intuitive for users. Furthermore, it is difficult to save past analysis results and use them for future code improvements.
[1380] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1381] In this invention, the server includes a means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation for it, a means for returning the analysis results to a user terminal, and a terminal means for inputting the source code and displaying the analysis results. This allows the user to automatically obtain a technical explanation of the source code and display it in an easy-to-understand format. Furthermore, the accuracy of the analysis results is improved and the formatted results are provided to improve intuitive understanding. Past analysis results can also be saved and used to propose future code improvements.
[1382] A "user" is an entity that inputs source code and receives the analysis results.
[1383] "Means" is a broad term that refers to a device or method for achieving a particular function.
[1384] "Source code" means textual instructions that describe the behavior of a program.
[1385] A "generative artificial intelligence module" is a type of artificial intelligence that has the ability to generate new data and information based on given data.
[1386] "Analysis results" are technical explanations and information obtained when the source code is analyzed by the generative artificial intelligence module.
[1387] A "server" is a computer system that provides computer resources connected to a network and is responsible for analytical processing.
[1388] A "terminal" is a computing device operated by a user that provides an interface for inputting source code and displaying analysis results.
[1389] An "external API" is an interface for accessing external software or services and utilizing their functions.
[1390] "Formatting" is the operation or process of arranging data or information into a particular form or presentation.
[1391] A "database" is a system built for the purpose of efficiently storing and retrieving data.
[1392] "Improvement proposals" are advice or suggestions that indicate future improvements or optimization methods based on the current situation and data.
[1393] The present invention is a system that analyzes source code entered by a user and provides a technical explanation of it. The system of the present invention is composed of three elements: a server, a terminal, and a user. Specific embodiments and processes for implementing this system are described below.
[1394] User
[1395] The user is the subject who types the source code they want to analyze into a terminal. For example, the user types the following Python code:
[1396] python
[1397] def add(a, b):
[1398] return a + b
[1399] Even with such a simple function, users can get a technical explanation of the code through the analysis results.
[1400] Terminal
[1401] The terminal is a computing device operated by the user, which provides an interface for inputting source code and an interface for displaying analysis results. It can be implemented on common devices such as PCs, smartphones, and tablets. The terminal accepts source code input from the user and sends it to the server. It also displays the analysis results received from the server in a format that is easy for the user to understand. For example, the analysis result may be displayed on the screen as follows: "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result."
[1402] server
[1403] The server receives the source code sent from the device and analyzes it. The generative artificial intelligence module used can be, for example, OpenAI's GPT-4 model. The server operates in the following steps:
[1404] 1. Receive the source code sent from the terminal.
[1405] 2. Send a prompt to the generative AI module to analyze the source code. For example, send the following prompt:
[1406] "Write a technical description of the following Python function:\ndef add(a, b):\n return a + b"
[1407] 3. Receive a technical description from the generative AI module, for example, "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result."
[1408] 4. The analysis results are formatted in a way that is easy for the user to understand and sent back to the device.
[1409] The server also has a database that stores the analysis results and accumulates data for generating future source code improvement proposals. This function allows users to refer to past analysis results and receive efficient improvement proposals.
[1410] Specific examples
[1411] For example, if a user enters the following source code:
[1412] python
[1413] def multiply(x, y):
[1414] return xy
[1415] The device sends this source code to the server, which then sends the following prompt to the generative AI module:
[1416] "Write a technical description of the following Python function:\ndef multiply(x, y):\n return xy"
[1417] The generative AI module returns the analysis result: "This function 'multiply' multiplies two arguments 'x' and 'y' and returns the result." The server sends this result back to the terminal, which displays it to the user.
[1418] The above is a specific embodiment of the present invention, and this system allows users to easily obtain technical explanations of source code, supporting efficient code development.
[1419] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1420] Step 1:
[1421] The user enters the source code they want to analyze into the terminal. For example, the user enters the following Python code:
[1422] python
[1423] def add(a, b):
[1424] return a + b
[1425] The entered source code is saved in text format on the terminal.
[1426] Step 2:
[1427] The terminal sends the input source code to the server. At this time, the source code data is sent to the specified endpoint of the server using an HTTP POST request. The data to be sent is structured as follows:
[1428] {
[1429] "source_code": "def add(a, b):\n return a + b"
[1430] }
[1431] The input is the source code and the output is the HTTP request sent to the server.
[1432] Step 3:
[1433] The server receives an HTTP POST request from the terminal. The received source code data is temporarily stored on the server and its contents are checked. The input is the source code data sent from the terminal, and the output is the source code data stored on the server.
[1434] Step 4:
[1435] The server sends an analysis request to the generative AI module. Specifically, it sends the following prompt to the generative AI module:
[1436] "Write a technical description of the following Python function:\ndef add(a, b):\n return a + b"
[1437] The input is source code data stored in the server, and the output is a prompt sentence sent to the generative artificial intelligence module.
[1438] Step 5:
[1439] The generative AI module analyzes the received prompt and generates a technical explanation, for example, "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The input is the prompt, and the output is the generated technical explanation.
[1440] Step 6:
[1441] The server parses and formats the technical description received from the generative AI module, adding embellishments and additional information and converting it into a form that is easy for users to understand. The input is the technical description from the generative AI module, and the output is the formatted technical description.
[1442] Step 7:
[1443] The server returns a formatted technical description to the device and sends the parsed results as an HTTP response. The input is the formatted technical description and the output is the HTTP response sent to the device.
[1444] Step 8:
[1445] The terminal receives the technical explanation received from the server and displays it in a format that is easy for the user to understand, for example, displaying the analysis results in a text box or a dedicated view. The input is the technical explanation received from the server, and the output is what is displayed to the user.
[1446] Step 9:
[1447] The user sees the analysis results on the terminal screen. The analysis results are displayed as an explanation: "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The user uses this information to understand the code. The input is the technical explanation displayed on the terminal, and the output is the information the user gets.
[1448] (Application example 1)
[1449] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1450] Conventional systems were limited to analyzing source code entered by users and generating technical descriptions of that code, making it difficult for users to instantly obtain product information and detailed technical descriptions of objects they visually identified. Furthermore, conventional systems had limited methods for efficiently displaying the obtained technical descriptions, making it difficult for users to quickly and intuitively understand the information they needed.
[1451] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1452] In this invention, the server includes: means for receiving source code entered by a user; a generative artificial intelligence module for analyzing the source code and generating a technical description thereof; means for returning the analysis result to a user terminal; means for acquiring a digital image of an object visually recognized by the user; means for analyzing the acquired digital image and identifying product information of the object; a generative artificial intelligence module for generating a technical description related to the identified product; and means for returning the generated technical description to the user terminal so that the user can visually confirm it. This enables the user to quickly acquire technical information related to the visually recognized product and intuitively understand the detailed description.
[1453] "Source code entered by the user" refers to program code that the user provides from a terminal to be analyzed by the system.
[1454] A "generative artificial intelligence module" is artificial intelligence software that analyzes input data and automatically generates technical explanations and information based on that content.
[1455] A "user terminal" is an electronic device, such as a computer, smartphone, or smart glasses, that a user uses to interact with the system.
[1456] A "digital image" is electronic data containing visual information captured by a device such as a camera or scanner.
[1457] "Product information" refers to detailed data about the identified product, such as its name, ingredients, usage, and storage methods.
[1458] "Means for visual confirmation" refers to techniques or methods for displaying the generated technical explanations and product information in a format that is easily understandable to the user.
[1459] An "external API" is an interface for integrating services and functions provided by third parties into a system.
[1460] A "user-friendly presentation" is an interface or design that presents information in a way that is intuitive and easy for users to understand.
[1461] "Database Means" means a system or software that stores information in an organized manner so that it can be later quickly searched and retrieved.
[1462] The "means for generating suggestions for future source code improvements" is a technology that automatically provides suggestions for further optimization and improvement of source code based on past analysis results.
[1463] "Means of storing user history for future reference" refers to a system that stores information and technical explanations that users have previously acquired, allowing them to easily access them later.
[1464] MODE FOR CARRYING OUT THE INVENTION
[1465] This invention is a system that analyzes source code entered by a user or product information visually confirmed by the user, and provides technical explanations. Specifically, the user can acquire digital images using smart glasses or other devices, and analyze them to obtain detailed technical information.
[1466] System Configuration
[1467] server
[1468] The server has the following features:
[1469] 1. Source code receiving function
[1470] A source code input by a user is received.
[1471] 2. Generative AI Module
[1472] It analyzes product information extracted from source code and digital images and generates technical descriptions using software such as OpenAI GPT-4.
[1473] 3. Image Recognition Module
[1474] The digital images captured by the user's smart glasses camera are analyzed to identify product information, using image recognition technologies such as YOLO and Google Cloud Vision API.
[1475] 4. Database Function
[1476] It stores the analysis results and allows users to refer to past data. It also includes a means to suggest future source code improvements and store user history.
[1477] Terminal
[1478] A terminal is a device used by a user that has the following functions:
[1479] 1. Input Interface
[1480] It provides an interface for users to input source code and digital images.
[1481] 2. Display Interface
[1482] A display function that allows the user to visually confirm the generated technical explanation. In the case of smart glasses, the information is displayed overlaid on the user's field of vision.
[1483] User
[1484] The user uses this system and performs the following steps:
[1485] 1. Enter the source code
[1486] Enter the source code to be analyzed into the terminal.
[1487] 2. Digital Image Acquisition
[1488] A digital image of an object is captured using smart glasses.
[1489] 3. Check the analysis results
[1490] View server-generated technical descriptions on your device.
[1491] Specific examples
[1492] For example, if a user captures the label of an "organic jam" with their smart glasses, the image is sent to the server, where the server uses an image recognition module to identify the product, and a generative artificial intelligence module to generate technical information. As a result, the device displays a technical description like this:
[1493] "This organic jam is made from 100% organic fruit. Once opened, it should be stored in the refrigerator and used within two weeks."
[1494] Prompt Sentence Examples
[1495] Below are some examples of prompts that can be input to a generative AI model:
[1496] Product Name: Organic Jam
[1497] Q: Can you provide a technical description of this product? Can you give me more details about the ingredients, how to use it, and how to store it?
[1498] The introduction of this system allows users to intuitively understand visually confirmed product information, making purchasing decisions easier. It also improves the efficiency of the entire system and enables the provision of accurate information.
[1499] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1500] Step 1:
[1501] The user uses the camera in the smart glasses to capture a digital image of the product of interest. The input is the digital image, which is then transmitted to the server by a processor in the smart glasses.
[1502] Step 2:
[1503] The server receives the digital image sent from the smart glasses. The input is the digital image. The server sends this digital image to an image recognition module (YOLO or Google Cloud Vision API) to identify the product information. The output is the identified product information.
[1504] Step 3:
[1505] The server sends a request to the generative artificial intelligence module based on the identified product information. The input is the product information. The generative artificial intelligence module generates a technical description about the product. The output is the generated technical description. In specific operation, the generative artificial intelligence module generates the technical description based on the prompt sentence.
[1506] Step 4:
[1507] The server receives the generated technical description and formats it into a user-friendly display format. The input is the generated technical description. The output is the formatted technical description. Specifically, it converts the generated technical description into HTML or a display format.
[1508] Step 5:
[1509] The server returns the formatted technical description to the smart glasses. The input is the formatted technical description. The output is data transmission to the smart glasses. Specifically, the data is transmitted using the HTTP protocol or a dedicated API.
[1510] Step 6:
[1511] The smart glasses receive the technical explanation sent from the server and display it over the user's field of view. The input is a formatted technical explanation. The output is a display of the technical explanation. Specifically, the smart glasses use the display function within the smart glasses to overlay the information on the user's field of view.
[1512] Step 7:
[1513] The user checks the technical explanation displayed on the smart glasses and obtains the necessary information. The input is the visual technical explanation. The output is the user's understanding. Specifically, the user reads and understands the displayed information and uses it to make purchasing decisions.
[1514] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1515] This invention is a system that analyzes source code entered by a user, provides technical explanations, and adjusts the display method of the analysis results by recognizing the user's emotions. The following shows the configuration for realizing this system. The system is mainly composed of four elements: a server, a terminal, a user, and an emotion engine.
[1516] System Components
[1517] User
[1518] The user is the entity that inputs the source code to be analyzed and receives the analysis results. The user interacts with the system through a terminal.
[1519] Terminal
[1520] The terminal is a device used by the user, and serves to input source code and display analysis results. The terminal has an interface for inputting source code and an interface for displaying analysis results. It also inputs the user's emotions, which are recognized by the emotion engine.
[1521] server
[1522] The server receives the source code sent from the device and analyzes it using a generative artificial intelligence module. It generates the analysis results and sends them back to the device. It also uses an external API to improve the accuracy of the analysis results.
[1523] Emotion Engine
[1524] The emotion engine is responsible for recognizing the user's emotions and adjusting the way the analysis results are presented based on the user's emotions. For example, if the user is stressed, the analysis results will be presented in more detail, and if the user is satisfied, additional information or next steps will be provided.
[1525] Program processing explanation
[1526] server
[1527] The server first receives the source code sent from the terminal. To analyze this source code, it sends a request to a generative artificial intelligence module. The generative artificial intelligence module analyzes the contents of the source code and generates a technical explanation. The server then receives this explanation, formats it for display, and sends it back to the terminal.
[1528] Terminal
[1529] The device accepts source code input from the user and sends it to the server. The analysis results received from the server are displayed in a format that is easy for the user to understand. In addition, the display is adjusted to reflect the user's emotions using an emotion engine.
[1530] Emotion Engine
[1531] The emotion engine receives data about the user's emotions from the device. For example, it analyzes the user's facial expressions, voice, and text input to recognize emotions. Based on the recognized emotions, it adjusts the way the analysis results are displayed. This information is sent to the server, which returns the appropriate analysis result format and additional information.
[1532] User
[1533] First, the user inputs the source code they want to analyze into the terminal. Then, the analysis results are displayed on the terminal, allowing them to check their contents. The system also adjusts the display of the analysis results by recognizing the user's emotions. For example, if you input the following Python function, the system will provide the analysis results:
[1534] python
[1535] def add(a, b):
[1536] return a + b
[1537] When this function is input, the generative AI module generates an explanation such as "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result." The server then receives the analysis results and sends them back to the device, where the user can check them. The emotion engine recognizes the user's emotions and adds in-depth explanations and hints if the user is feeling stressed, for example.
[1538] In this way, the system of the present invention automatically analyzes and explains source code while taking user emotions into consideration, eliminating the dependency on individual users and the black box nature of the system, thereby providing an effective means for promoting digital transformation in companies.
[1539] The processing flow will be explained below.
[1540] Step 1:
[1541] The user inputs the source code they want to analyze into the terminal's input interface. For example, they input the following code:
[1542] python
[1543] def add(a, b):
[1544] return a + b
[1545] Step 2:
[1546] The terminal accepts the user's input and checks whether the source code has been entered correctly. After checking, it creates an HTTP request to the server and sends it, including the entered source code.
[1547] Step 3:
[1548] The server receives the request from the terminal and extracts the source code from the request body.
[1549] Step 4:
[1550] The server sends the extracted source code to the generative AI module and makes an analysis request. Specifically, it constructs and sends an API request to the generative AI module.
[1551] Step 5:
[1552] The generative AI module receives requests from the server, analyzes the content of the source code, and generates a technical description of the source code as a result of the analysis.
[1553] Step 6:
[1554] The generative AI module returns the generated analysis results to the server, which receives the results and checks their contents.
[1555] Step 7:
[1556] Once the server receives the analysis results, it formats them into a user-friendly display format, adding additional context and explanation where necessary.
[1557] Step 8:
[1558] The server sends the formatted analysis results as a response to the terminal.
[1559] Step 9:
[1560] The terminal receives the response from the server and displays the analysis results in a format that is easy for the user to view.
[1561] Step 10:
[1562] The device analyzes the user's emotions using an emotion engine, using facial expressions and voice data to recognize emotions such as whether the user is satisfied or stressed.
[1563] Step 11:
[1564] The device sends the emotion engine's analysis results to the server, and if the user is feeling stressed, it requests that the server provide detailed analysis results and hints.
[1565] Step 12:
[1566] The server receives the user's emotion data, reformats the analysis results, and, if necessary, generates detailed explanations or additional hints and sends them back to the device.
[1567] Step 13:
[1568] The terminal receives the reformatted analysis results and displays them to the user, who can review the final analysis results and additional information for further understanding.
[1569] Example 2
[1570] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1571] Conventional source code analysis systems only provide technical explanations and do not consider the user's emotions, making it impossible to provide appropriate support based on the user's level of understanding or stress level. This can result in users being unable to effectively utilize the system's analysis results. Furthermore, the accuracy of the analysis results and the user-friendly display format are often insufficient. Therefore, the present invention aims to provide a system that recognizes the user's emotions and adjusts the display method of the analysis results based on those emotions, thereby improving the user's level of understanding and providing a comfortable user experience.
[1572] The specific processing by the specific processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means.
[1573] In this invention, the server includes a means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation for it, a means for returning the analysis results to the user terminal, and a means for recognizing the user's emotions and adjusting the display method of the analysis results based on the emotions. This allows the analysis results to be displayed in a way that takes the user's emotions into consideration. Furthermore, by including a means for automatically converting the analysis results into a user-friendly display format using an external API to improve the accuracy of the analysis results, an even better user experience can be provided.
[1574] "Means for receiving source code entered by a user" refers to an interface or communication function for transmitting source code entered by a user into a terminal to a server.
[1575] "Generative artificial intelligence module for analyzing source code and generating technical descriptions thereof" refers to a component that utilizes artificial intelligence technology to understand input source code and generate technical descriptions or explanations based on it.
[1576] "Means for returning analysis results to the user terminal" refers to communication and interface functions for sending and displaying the analysis results generated by the server to the user terminal.
[1577] "Means for recognizing a user's emotions and adjusting the display method of analysis results based on those emotions" refers to technologies and approaches for analyzing emotions from a user's facial expressions, voice, text input, etc., and dynamically changing the display format and content of the analysis results based on the results.
[1578] "Means to improve the accuracy of analytical results generated using external APIs" refers to a mechanism for improving the accuracy and usefulness of analytical results by using external data and services to supplement and enrich analytical models.
[1579] "Means for automatically formatting analytical results into a user-friendly display" refers to the processes and techniques used to reformat the analytical results generated so that they can be easily understood by the user and provide an appropriate visual display.
[1580] "Means for obtaining user emotional data through emotion recognition and adjusting display based on that" refers to technology for obtaining the user's current emotional state through devices or sensors and adjusting the display method of the analysis results accordingly.
[1581] "Database means for storing technical descriptions of analyzed source code and enabling past analysis results to be referenced" refers to a mechanism for storing the generated technical descriptions and analysis results in a database and enabling past data to be searched and referenced as needed.
[1582] "Means for generating suggestions for future source code improvements based on stored analysis results" refers to technologies and processes that analyze previously stored analysis results and automatically generate suggestions for improving or optimizing new source code.
[1583] System Overview
[1584] The present invention is a system for performing technical analysis of source code and adjusting the analysis results based on user emotions. The system mainly consists of a server, a user terminal, an emotion engine, and the necessary communication infrastructure.
[1585] Server Processing
[1586] The server has a means for receiving source code entered by a user, a means for sending the source code to a generative artificial intelligence module (e.g., OpenAI's GPT-4) for analysis, and a means for returning the generated analysis results to the user's device. It also includes a means for improving the accuracy of the analysis results using external APIs (e.g., code auto-completion services).
[1587] Examples:
[1588] The user types the following Python function into the terminal:
[1589] python
[1590] def add(a, b):
[1591] return a + b
[1592] The server receives this source code and sends a prompt to the generative AI module:
[1593] "Analyze the following Python function and provide a technical explanation:
[1594] python
[1595] def add(a, b):
[1596] return a + b
[1597] "
[1598] The generative AI module generates a technical description such as "This function 'add' takes two arguments 'a' and 'b', adds them together and returns the result" and sends it back to the server.
[1599] User terminal processing
[1600] The user inputs source code through a terminal and receives the analysis results sent from the server. The terminal has an interface for accepting source code input, an interface for displaying the analysis results, and an interface for sending the user's emotional data to the emotion engine.
[1601] Emotion engine processing
[1602] The emotion engine analyzes emotional data (facial expression recognition, voice analysis, text input, etc.) obtained from the user's device to recognize the user's emotional state. The results are sent to the server, which then adjusts the display method of the analysis results based on the emotional information.
[1603] Examples:
[1604] If the user feels the emotion "stressed," the emotion engine sends this emotion information to the server, which returns the normal analysis results along with more detailed explanations and additional supplementary information.
[1605] Prompt Sentence Examples
[1606] The prompt text is sent as follows:
[1607] "Analyze the following Python function and provide a technical explanation:
[1608] python
[1609] def add(a, b):
[1610] return a + b
[1611] "
[1612] In response to this prompt, a generative artificial intelligence module generates a technical explanation.
[1613] In this way, the system of the present invention not only analyzes source code and provides technical explanations, but also adjusts the analysis results based on the user's emotions, creating a user-friendly interface. By providing support according to the user's emotional state, it is possible to provide a more comfortable and effective learning and working environment.
[1614] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1615] Step 1:
[1616] The user enters the source code into the terminal.
[1617] What happens: The user opens a text editor and enters a Python function like this:
[1618] python
[1619] def add(a, b):
[1620] return a + b
[1621] Input: Source code is entered into the terminal through a user's input device (such as a keyboard).
[1622] Output: The source code is displayed in a text editor in the terminal.
[1623] Step 2:
[1624] The terminal transmits the source code entered by the user to the server.
[1625] Specific operation: When the user presses the "Send" button, the terminal sends the source code to the server.
[1626] Input: The source code entered.
[1627] Output: The source code sent to the server.
[1628] Step 3:
[1629] The server receives the source code sent from the terminal.
[1630] Specific operation: The server receives the source code via the network and stores it in its internal data area.
[1631] Input: Source code sent from the terminal.
[1632] Output: Source code stored in the server's data area.
[1633] Step 4:
[1634] The server sends the source code to the generative artificial intelligence module.
[1635] Specific operation: The server generates a prompt sentence to the generative artificial intelligence module and sends a request to analyze the source code.
[1636] Input: Source code stored on the server.
[1637] Output: The prompt sent to the generative artificial intelligence module.
[1638] Example prompt: "Analyze the following Python function and provide its technical description:
[1639] python
[1640] def add(a, b):
[1641] return a + b
[1642] "
[1643] Step 5:
[1644] A generative artificial intelligence module analyzes the source code and generates a technical description of it.
[1645] Specific operation: A generative artificial intelligence module (e.g., GPT-4) analyzes the source code based on the prompt and generates a detailed technical explanation.
[1646] Input: The source code contained in the prompt statement.
[1647] Output: A technical description (e.g., "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result").
[1648] Step 6:
[1649] The server receives the generated technical description and adjusts the display format.
[1650] Specific operation: The server formats the technical explanation received from the generative artificial intelligence module into a form that is easy for the user to understand.
[1651] Input: Technical description from a generative artificial intelligence module.
[1652] Output: Formatted technical description.
[1653] Step 7:
[1654] The server sends a formatted technical description to the terminal.
[1655] Specific operation: The server returns a formatted technical description to the terminal.
[1656] Input: A formatted technical description.
[1657] Output: Formatted technical description sent to terminal.
[1658] Step 8:
[1659] The terminal displays the technical description received from the server.
[1660] Specific operation: The device displays the received technical explanation on the screen.
[1661] Input: The technical description sent by the server.
[1662] Output: A technical description that the user can see on their device screen.
[1663] Step 9:
[1664] The device acquires emotional data from the user's facial expressions and voice.
[1665] Specific operation: Captures the user's facial expressions and voice using the device's built-in camera and microphone.
[1666] Input: User's facial expression data and voice data.
[1667] Output: The obtained emotion data.
[1668] Step 10:
[1669] The emotion engine analyzes the emotion data and recognizes the user's emotion.
[1670] Specific operation: The emotion engine analyzes the user's emotions through facial expression recognition and voice analysis, and processes the data.
[1671] Input: The acquired emotion data.
[1672] Output: Parsed emotion information (e.g., "The user is feeling stressed").
[1673] Step 11:
[1674] The server adjusts how the analysis results are displayed based on the emotional information.
[1675] Specific operation: Based on the emotional information, the server adds additional information and detailed explanations to the analysis results.
[1676] Input: Parsed emotion information.
[1677] Output: Adjusted analysis results.
[1678] Step 12:
[1679] The device finally displays the adjusted analysis results.
[1680] Specific operation: The terminal finally displays the adjusted analysis results returned from the server to the user.
[1681] Input: The adjusted analysis results sent from the server.
[1682] Output: The final refined analysis results that the user can see.
[1683] By going through each step in this way, users receive a technical explanation of the source code in an easy-to-understand format, as well as emotionally sensitive support.
[1684] (Application example 2)
[1685] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1686] Conventional source code analysis systems lacked the ability to adjust the display method of analysis results based on user emotions, which meant that information could not be provided in accordance with user stress or satisfaction, resulting in issues with the user experience.In addition, the accuracy of analysis results and the display format could not be improved appropriately based on user emotions.
[1687] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means. In this invention, the server includes means for receiving source code input by a user, a generative artificial intelligence module for analyzing the source code and generating a technical explanation thereof, means for returning the analysis results to the user terminal, and emotion recognition means for recognizing the user's emotion and adjusting the display method of the analysis results. This makes it possible to provide the source code analysis results in an appropriate display format according to the user's emotional state, thereby improving the user experience.
[1688] A "user terminal" is a device used by a user to input source code and display the analysis results.
[1689] A "generative artificial intelligence module" is a system that includes machine learning models and algorithms to analyze source code entered by a user and generate technical explanations for it.
[1690] "Emotion recognition means" refers to a device that includes sensors and software for analyzing and recognizing emotions from a user's facial expressions, voice, text input, etc.
[1691] An "external API" is an interface for using data and functions provided by other systems or services.
[1692] The "database means" refers to a storage device or management system that stores technical explanations of the analyzed source code and user emotional data, and allows them to be referenced as needed.
[1693] The "display format" refers to the layout and format used to present analysis results and additional information in a way that is easy for users to understand.
[1694] "Source code" is textual code that constitutes a program and contains instructions for a computer to execute.
[1695] "Analysis results" are technical explanations and information generated by the generative artificial intelligence module after analyzing the source code.
[1696] "Emotion data" is information that indicates the user's emotional state, and is data collected by emotion recognition means based on facial expressions, voice, text input, and the like.
[1697] "Display history" is a record of previously displayed analysis results and any additional information contained therein, and is data that is saved for future reference.
[1698] This invention describes a specific embodiment for realizing a system that analyzes source code entered by a user and provides technical explanations of it. This system is mainly composed of four elements: a server, a terminal, a user, and emotion recognition means.
[1699] server
[1700] The server plays a central role in analyzing the source code entered by the user and generating the results. The server has the following functions:
[1701] 1. Receiving the Source Code:
[1702] The source code transmitted from the user terminal is received.
[1703] 2. Analysis by generative artificial intelligence module:
[1704] The received source code is analyzed by a generative artificial intelligence module to generate a technical description of it, using open-source machine learning libraries and external APIs.
[1705] 3. Sending analysis results:
[1706] The generated analysis results are sent to the user's device. To improve the accuracy of the analysis results, it is also possible to utilize external APIs.
[1707] 4. Result format:
[1708] The analysis results are automatically converted into a user-friendly display format and presented in a way that is easy for users to understand.
[1709] Terminal
[1710] The terminal is a device where the user inputs source code and receives and displays the analysis results. The terminal has the following functions:
[1711] 1. Code input interface:
[1712] It provides an interface for users to input source code, using multiple methods such as voice input or text input.
[1713] 2. Emotion recognition means:
[1714] The system recognizes emotions from the user's facial expressions, voice, input text, etc. This recognition is achieved using the built-in camera, microphone, and emotion recognition software.
[1715] 3. Result display interface:
[1716] The system displays the analysis results it receives. It also has the ability to adjust the display method based on the user's emotions. For example, if the user is feeling stressed, it will display detailed explanations and hints.
[1717] User
[1718] The user is responsible for inputting source code and checking the analysis results. The user's operation flow is as follows:
[1719] 1. Enter the source code:
[1720] The user uses the terminal's input interface to input source code, for example, a Python function such as "def add(a, b): return a + b".
[1721] 2. Check the analysis results:
[1722] The analysis results are displayed in the terminal, including a technical description of the Python function you entered: "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result."
[1723] 3. Display adjustment based on emotion recognition:
[1724] The app recognizes the user's emotions and provides additional hints and details if, for example, they are feeling stressed. For example, it displays "Hint: Think about the meaning of variable names in functions. Using meaningful variable names improves code readability."
[1725] In a concrete example of this system, the following prompt sentence is input to the generative AI model:
[1726] "A user uses smart glasses and enters the following Python function code: 'def add(a, b): return a + b'. Please provide a technical explanation of this code and show how you can adjust the display based on the user's emotions."
[1727] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1728] Step 1:
[1729] The user inputs source code into the terminal. Through the input interface, the user sends the source code (e.g., def add(a, b): return a + b) to the terminal. This input is stored in the database on the terminal and prepared for analysis.
[1730] Step 2:
[1731] The device sends the source code to the server. The device retrieves the stored source code and sends it to the server. The server receives the source code and prepares it for analysis.
[1732] Step 3:
[1733] The server uses a generative artificial intelligence module to analyze the source code. The server inputs the received source code into the generative artificial intelligence module, which generates a technical explanation. The generated analysis result (e.g., "This function 'add' takes two arguments 'a' and 'b', adds them together, and returns the result") is obtained.
[1734] Step 4:
[1735] The server returns the analysis results to the terminal. The server formats the generated analysis results and sends them to the user terminal. The terminal receives the analysis results.
[1736] Step 5:
[1737] The device recognizes the user's emotions using an emotion recognition means. The device's built-in camera and microphone are used to capture the user's facial expressions and voice data, which are then input into an emotion recognition algorithm. The algorithm analyzes whether the user is feeling stressed or satisfied, and generates emotion data.
[1738] Step 6:
[1739] The device adjusts how the analysis results are displayed. Based on the received analysis results and the recognized emotion data, the device determines how to display the analysis results. If the user is stressed, it will display detailed explanations and additional tips, and if the user is satisfied, it will only display basic information.
[1740] Step 7:
[1741] The user checks the analysis results. The user checks the analysis results and additional information displayed on the terminal screen and takes the next step (e.g., inputting correction code) as necessary. This allows the user to efficiently understand the source code analysis results and move on to the next task.
[1742] 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.
[1743] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1744] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[1745] 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.
[1746] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1747] 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.
[1748] 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).
[1749] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1750] 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."
[1751] 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.
[1752] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1753] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1754] 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.
[1755] 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.
[1756] 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.
[1757] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1758] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[1759] 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.
[1760] 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.
[1761] 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.
[1762] 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.
[1763] The following is further disclosed regarding the above embodiment.
[1764] (Claim 1)
[1765] means for receiving source code input by a user;
[1766] a generative artificial intelligence module for analyzing the source code and generating a technical description thereof;
[1767] means for returning the analysis results to the user terminal;
[1768] A system including:
[1769] (Claim 2)
[1770] A means for improving the accuracy of analysis results generated by the generative artificial intelligence module using an external API;
[1771] A means to automatically format and convert the analysis results into a user-friendly display format;
[1772] The system of claim 1 further comprising:
[1773] (Claim 3)
[1774] a database means for storing technical descriptions of analyzed source code and making past analysis results available for reference;
[1775] a means for generating suggestions for future source code improvements based on the stored analysis results;
[1776] The system of claim 1 further comprising:
[1777] "Example 1"
[1778] (Claim 1)
[1779] means for receiving source code input by a user;
[1780] a generative artificial intelligence module for analyzing the source code and generating a technical description thereof;
[1781] means for returning the analysis results to the user terminal;
[1782] a terminal means for inputting source code and displaying analysis results;
[1783] A system including:
[1784] (Claim 2)
[1785] A means for improving the accuracy of analysis results generated by the generative artificial intelligence module using an external API;
[1786] A means to automatically format and convert the analysis results into a user-friendly display format;
[1787] A means for transmitting source code from the terminal to the server;
[1788] A means for transmitting the analysis results from the server to the terminal;
[1789] The system of claim 1 further comprising:
[1790] (Claim 3)
[1791] a database means for storing technical descriptions of analyzed source code and making past analysis results available for reference;
[1792] a means for generating suggestions for future source code improvements based on the stored analysis results;
[1793] The system of claim 1 further comprising:
[1794] "Application Example 1"
[1795] (Claim 1)
[1796] means for receiving source code input by a user;
[1797] a generative artificial intelligence module for analyzing the source code and generating a technical description thereof;
[1798] means for returning the analysis results to the user terminal;
[1799] means for capturing a digital image of an object viewed by a user;
[1800] A means for analyzing the acquired digital image and identifying product information of the object;
[1801] a generative artificial intelligence module for generating technical descriptions for the identified products;
[1802] means for returning the generated technical explanation to a user terminal so that the user can visually confirm it;
[1803] A system including:
[1804] (Claim 2)
[1805] A means for improving the accuracy of analysis results generated by the generative artificial intelligence module using an external API;
[1806] A means to automatically format and convert the analysis results into a user-friendly display format;
[1807] a means for displaying the generated technical explanation in a manner that is superimposed on the user's field of vision;
[1808] The system of claim 1 further comprising:
[1809] (Claim 3)
[1810] a database means for storing technical descriptions of analyzed source code and making past analysis results available for reference;
[1811] a means for generating suggestions for future source code improvements based on the stored analysis results;
[1812] a database means for storing the generated product information and its technical description as a user history for future reference;
[1813] The system of claim 1 further comprising:
[1814] "Example 2: Combining Emotion Engines"
[1815] (Claim 1)
[1816] means for receiving source code input by a user;
[1817] a generative artificial intelligence module for analyzing the source code and generating a technical description thereof;
[1818] means for returning the analysis results to the user terminal;
[1819] means for recognizing a user's emotion and adjusting the display method of the analysis results based on the emotion;
[1820] A system including:
[1821] (Claim 2)
[1822] A means for improving the accuracy of analysis results generated by the generative artificial intelligence module using an external API;
[1823] A means to automatically format and convert the analysis results into a user-friendly display format;
[1824] means for acquiring user emotion data through emotion recognition and adjusting display based on the data;
[1825] The system of claim 1 further comprising:
[1826] (Claim 3)
[1827] a database means for storing technical descriptions of analyzed source code and making past analysis results available for reference;
[1828] a means for generating suggestions for future source code improvements based on the stored analysis results;
[1829] The system of claim 1 further comprising:
[1830] "Application example 2 when combining emotion engines"
[1831] (Claim 1)
[1832] means for receiving source code input by a user;
[1833] a generative artificial intelligence module for analyzing the source code and generating a technical description thereof;
[1834] means for returning the analysis results to the user terminal;
[1835] emotion recognition means for recognizing a user's emotion and adjusting the display method of the analysis result;
[1836] A system including:
[1837] (Claim 2)
[1838] A means for improving the accuracy of analysis results generated by the generative artificial intelligence module using an external API;
[1839] A means to automatically format and convert the analysis results into a user-friendly display format;
[1840] means for providing additional information or detailed display based on the user's sentiment;
[1841] The system of claim 1 further comprising:
[1842] (Claim 3)
[1843] a database means for storing technical descriptions of analyzed source code and making past analysis results available for reference;
[1844] a means for generating suggestions for future source code improvements based on the stored analysis results;
[1845] A means for saving the user's emotion data and making it possible to refer to it along with the display history of the analysis results;
[1846] The system of claim 1 further comprising: [Explanation of symbols]
[1847] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. means for receiving source code input by a user; a generative artificial intelligence module for analyzing the source code and generating a technical description thereof; means for returning the analysis results to the user terminal; A system including:
2. A means for improving the accuracy of analysis results generated by the generative artificial intelligence module using an external API; A means to automatically format and convert the analysis results into a user-friendly display format; The system of claim 1 further comprising:
3. a database means for storing technical descriptions of analyzed source code and making past analysis results available for reference; a means for generating suggestions for future source code improvements based on the stored analysis results; The system of claim 1 further comprising:
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A