system
A system that automates the comparison and display of data differences between past and current website updates enhances efficiency and accuracy by reducing manual checks, addressing labor shortages in the web production industry.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-20
- Publication Date
- 2026-03-05
Smart Images

Figure 2026036042000001_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] When updating websites and other sites, having a human check visually to ensure that modifications have been made correctly is time-consuming and unproductive. In particular, the web production industry, where updates are frequently required, is facing a chronic labor shortage. Therefore, there is a need to reduce the burden on workers and create an environment where they can work efficiently. [Means for solving the problem]
[0005] The present invention solves the above problem with a system including a means for receiving past data and current update data, a means for comparing the past data with the current update data and extracting differences, a means for displaying the extracted differences, and a means for transmitting the extracted differences to a terminal. This system eliminates the need for manual confirmation by humans, significantly improving work efficiency. It also improves the accuracy of update work and significantly reduces the burden on workers.
[0006] "Historical Data" refers to previously stored information or content.
[0007] "Current Updates" refers to the information and content generated by the most recent modifications and additions.
[0008] "Means for receiving" refers to a method or device for obtaining data.
[0009] A "comparison tool" refers to a method or device for comparing two or more data sets and finding differences.
[0010] "Differences" refer to differences between the compared data.
[0011] "Displaying means" refers to a method or device for visually presenting information.
[0012] "Transmitting means" refers to a method or device for transferring data to another device or system.
[0013] A "system" refers to a collection of integrated electronic devices and software in which multiple parts and processes work together.
[0014] An "algorithm" refers to a procedure or computational method for solving a specific problem. [Brief explanation of the drawings]
[0015] [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
[0016] 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.
[0017] First, the terms used in the following description will be explained.
[0018] 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).
[0019] 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.
[0020] 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.
[0021] 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.
[0022] 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."
[0023] [First embodiment]
[0024] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0025] 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.
[0026] 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).
[0027] 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.
[0028] 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.
[0029] 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.
[0030] 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.
[0031] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0032] 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.
[0033] 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.
[0034] 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.
[0035] 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."
[0036] The present invention relates to a system that uses AI to check whether modifications have been made correctly when updating a website, etc. A specific embodiment of this system will be described below.
[0037] System configuration
[0038] This system consists of three elements: a server, a terminal, and a user. The server receives past data and current updated data, compares them, and extracts differences. The terminal allows the user to input updated data and displays the response from the server. The user then makes changes to the homepage and checks the changes.
[0039] Server-side processing
[0040] The server first receives the previous data (old_content) and the current updated data (new_content) sent from the device. Then, the server creates an instance of the UpdateChecker class and initializes this data. Next, the server calls the find_differences method to extract the differences between the previous data and the current data. These differences indicate the specific changes made on a line-by-line basis. Finally, the server sends the extracted differences to the device.
[0041] Terminal side processing
[0042] When the user completes the update process, the device sends the previous data and the revised data to the server. The device receives the differences returned by the server and displays them to the user. For example, a dedicated component or library can be used to visually display the HTML differences in an easy-to-understand manner.
[0043] User processing
[0044] The user edits the homepage on the editing screen of the device. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, allowing the user to review them and confirm that the edits were made correctly.
[0045] Specific examples
[0046] For example, consider the case where the contents of a homepage are updated as follows:
[0047] Past data (old_content)
[0048] html
[0049] <!DOCTYPE html>
[0050]
[0051]
[0052] <title> Old title< / title>
[0053]
[0054]
[0055] Hello World!
[0056]
[0057]
[0058] Updated data (new_content)
[0059] html
[0060] <!DOCTYPE html>
[0061]
[0062]
[0063] <title> New Title< / title>
[0064]
[0065]
[0066] Hello, users!
[0067]
[0068]
[0069] At this time, the server generates the following differential data and sends it to the terminal:
[0070] diff
[0071] --- old_version
[0072] +++new_version
[0073] @@ -2,7 +2,7 @@
[0074]
[0075]
[0076] <title> Old title< / title>
[0077] + <title> New Title< / title>
[0078]
[0079]
[0080] Hello World!
[0081] + Hello, users!
[0082]
[0083]
[0084] The terminal receives this difference data, and the user visually checks it. In this way, the present invention makes the work of correcting homepages more efficient and relieves the user from the need for manual checking.
[0085] The processing flow will be explained below.
[0086] Server-side processing
[0087] Step 1:
[0088] The server receives the past data (old_content) and the current updated data (new_content) sent from the terminal. Specifically, it receives this information as form data of the HTTP request.
[0089] Step 2:
[0090] The server creates an instance of the UpdateChecker class and initializes it with the received data, which keeps the original data and the updated data in memory.
[0091] Step 3:
[0092] The server calls the find_differences method of the UpdateChecker instance to extract the differences between the past and current data. This method compares the data row by row and generates the deltas.
[0093] Step 4:
[0094] The server sends the extracted differences to the terminal. Specifically, it converts the difference data into JSON format and returns it as an HTTP response.
[0095] Terminal side processing
[0096] Step 1:
[0097] When the user has completed editing the homepage, they press the "Save" or "Send" button on the editing screen of the device, which saves the edited data in the device.
[0098] Step 2:
[0099] The terminal sends the previous data (old_content) and the revised data (new_content) to the server. Specifically, it sends this data using the POST method using an AJAX request.
[0100] Step 3:
[0101] The device receives the difference data (differences) returned from the server and processes the difference data when it is returned as a response using the AJAX request callback function.
[0102] Step 4:
[0103] The terminal then displays the received difference data to the user. Specifically, the difference data is converted into HTML and inserted into a dedicated display area on the editing screen so that the user can visually check it.
[0104] User processing
[0105] Step 1:
[0106] The user edits the homepage on the editing screen of the device, inputs the corrections, and after completing all the necessary changes, presses the "Save" or "Submit" button.
[0107] Step 2:
[0108] The user checks the difference data displayed on the terminal, thereby confirming whether the corrections have been made correctly and checking for any omissions or errors.
[0109] In this way, the elements of the server, terminal, and user work together to build a system in which homepage revision work can be carried out efficiently and accurately.
[0110] Example 1
[0111] 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."
[0112] Previously, updating websites required manual confirmation that changes had been made appropriately, which required a great deal of time and effort. There was also a high risk of incorrect changes being overlooked, making the process unreliable.
[0113] 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.
[0114] In this invention, the server includes means for receiving past data and current update data, means for comparing the past data with the current update data and extracting differences, means for transmitting the extracted differences to the terminal, means for initializing the past data and current update data transmitted from the terminal, and means for visually displaying the extracted differences. This makes it possible to streamline homepage updating work and eliminate the need for manual confirmation work.
[0115] "Historical Data" refers to the content of previous versions of the homepage.
[0116] "Current update data" refers to the content of the new version of the homepage after it has been updated.
[0117] "Means for receiving" refers to the mechanism by which the server obtains past data and current updated data.
[0118] "Means for comparing and extracting differences" refers to a function for comparing past data with current updated data to identify changes.
[0119] "Means for transmitting to the terminal" refers to a mechanism by which the server transmits the extracted differences to the terminal used by the user.
[0120] "Means for initialization" refers to the function of setting up past data sent from the terminal and current updated data, and making it suitable for analysis.
[0121] The "visual display means" refers to a display mechanism for displaying the extracted differences in a format that is easy for the user to understand.
[0122] This invention relates to a system that uses AI to check whether modifications have been made correctly when updating a website, etc. This system consists of three elements: a server, a terminal, and a user.
[0123] Server Roles
[0124] The server receives the past data and the current updated data. Specifically, the past data (old_content) and the current updated data (new_content) are sent from the terminal via an HTTP POST request. After receiving this data, the server creates an instance of the UpdateChecker class and initializes this data. Once initialization is complete, it then calls the find_differences method to extract the differences between the past data and the current data. These differences indicate the specific changes made on a line-by-line basis. Finally, the server sends the extracted differences to the terminal.
[0125] Device Role
[0126] When the user completes the update, the terminal sends the previous data and the revised data to the server. The terminal can use dedicated components or libraries to receive the differences sent back from the server and display them to the user. For example, the Diff2Html library can be used to visually display the differences in HTML in an easy-to-understand manner.
[0127] User Roles
[0128] The user edits the homepage on the editing screen of the device. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, allowing the user to check them and visually verify that the edits were made correctly.
[0129] Specific examples
[0130] For example, consider the case where the contents of a homepage are updated as follows.
[0131] Past data (old_content)
[0132] html
[0133] <!DOCTYPE html>
[0134]
[0135]
[0136] <title> Old title< / title>
[0137]
[0138]
[0139] Hello World!
[0140]
[0141]
[0142] Updated data (new_content)
[0143] html
[0144] <!DOCTYPE html>
[0145]
[0146]
[0147] <title> New Title< / title>
[0148]
[0149]
[0150] Hello, users!
[0151]
[0152]
[0153] The server generates the following differential data and sends it to the device:
[0154] diff
[0155] --- old_version
[0156] +++new_version
[0157] @@ -2,7 +2,7 @@
[0158]
[0159]
[0160] <title> Old title< / title>
[0161] + <title> New Title< / title>
[0162]
[0163]
[0164] Hello World!
[0165] + Hello, users!
[0166]
[0167]
[0168] The terminal receives this difference data and visually displays it to the user. The user can check the difference and confirm whether the corrections were made correctly. In this way, the present invention makes the work of correcting homepages more efficient and relieves the user of the need for manual confirmation work.
[0169] Example prompts for generative AI models
[0170] You can use the following prompts to ask the generative AI model for specific clarification:
[0171] Example prompt:
[0172] AI model, please generate the differences between the following HTML sentences.
[0173] Historical data (old_content):
[0174] <!DOCTYPE html>
[0175]
[0176]
[0177] <title> Old title< / title>
[0178]
[0179]
[0180] Hello World!
[0181]
[0182]
[0183] Updated data (new_content):
[0184] <!DOCTYPE html>
[0185]
[0186]
[0187] <title> New Title< / title>
[0188]
[0189]
[0190] Hello, users!
[0191]
[0192]
[0193] Output a diff-style result showing the differences.
[0194] By inputting this prompt into the generative AI model, the AI analyzes the differences between past data and updated data and outputs them in a visually easy-to-understand format.
[0195] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0196] Step 1:
[0197] The server receives past data and current updated data from the terminal. Specifically, the terminal sends the past data (old_content) and the current updated data (new_content) using an HTTP POST request, and the server receives it. The input at this stage is old_content and new_content, and the received data is stored in the server's memory as output.
[0198] Step 2:
[0199] The server creates an instance of the UpdateChecker class. Specifically, it uses the received old_content and new_content as arguments and creates an instance in the form checker = UpdateChecker(old_content, new_content). This instance contains the data necessary for comparison. The inputs are old_content and new_content, and the generated UpdateChecker instance is obtained as output.
[0200] Step 3:
[0201] The server performs initialization processing on the UpdateChecker instance. Specifically, it calls the checker.initialize_data() method to initialize the past data and current data. This operation prepares the internal data structure and formats the data. The input is the UpdateChecker instance, and the initialized data is set as the output to the UpdateChecker instance.
[0202] Step 4:
[0203] The server calls the find_differences method of UpdateChecker to extract the differences between the past and current data. Specifically, differences = checker.find_differences() is executed, and the internal data comparison algorithm is executed to generate the difference data. The input is an initialized UpdateChecker instance, and the difference data is obtained as the output.
[0204] Step 5:
[0205] The server sends the extracted differences to the terminal as an HTTP response. Specifically, it converts the difference data into JSON format and generates an HTTP response. The input is the difference data, and the output is an HTTP response that is sent to the terminal.
[0206] Step 6:
[0207] The terminal receives the difference data returned from the server. Specifically, it extracts the difference data from the HTTP response and stores it in a local variable. The input is the HTTP response, and the difference data is stored in the terminal as the output.
[0208] Step 7:
[0209] The terminal visually displays the received difference data to the user. Specifically, it uses a library such as diff2html to render the difference data in HTML format and displays it on the screen operated by the user. The input is the difference data, and the output is a visually displayed difference.
[0210] Step 8:
[0211] The user edits the homepage on the editing screen of the terminal. Specifically, they edit the HTML code using a text editor. The input is the HTML code before editing, and the output is the edited HTML code.
[0212] Step 9:
[0213] After completing the modifications, the user uses the terminal's send function to send the data to the server. Specifically, by clicking the "Send" button, the modified HTML code is sent to the server as an HTTP POST request. The input is the modified HTML code, and the output is the sent HTTP request.
[0214] Step 10:
[0215] After the differences returned from the server are displayed on the terminal, the user can check them and confirm whether the corrections have been made correctly. Specifically, the user visually checks the difference data displayed on the terminal and makes further corrections as necessary. The input is the visually displayed difference data, and the user's confirmation results are obtained as the output.
[0216] (Application example 1)
[0217] 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."
[0218] Existing update monitoring systems pose the risk of unintended changes or errors occurring when updating websites or configuration files. Furthermore, particularly in fields requiring high levels of security, such as electronic payment services, such changes can lead to serious security and operational risks. Therefore, a method is needed to efficiently and reliably detect these risks and prompt appropriate responses.
[0219] 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.
[0220] In this invention, the server includes means for receiving past data and current update data, means for comparing the past data with the current update data and extracting differences, means for displaying the extracted differences, means for transmitting the extracted differences to a terminal, means for saving the past data and the current update data in a database, means for detecting unintended changes using the saved data, and means for displaying a warning based on the detected unintended changes. This makes it possible to efficiently detect unintended changes and errors in update work and ensure high security and operational reliability.
[0221] "Past data" refers to existing data before any update work was performed.
[0222] "Current updated data" refers to new data after the update work has been performed.
[0223] "Means for receiving" refers to the functions and devices for inputting data into the server.
[0224] "Means for comparing and extracting differences" refers to algorithms or procedures for detecting differences between past data and current updated data.
[0225] The "display means" refers to an interface or tool that allows the user to visually confirm the extracted differences.
[0226] "Transmission means" refers to the communication means or protocol for sending data from the server to the terminal.
[0227] A "means for storing data in a database" is a system or method for permanently storing data.
[0228] "Detection methods" are functions and technologies that analyze stored data and detect unintended changes.
[0229] The "means for displaying a warning" refers to a function or device for alerting the user to the detected unintended change.
[0230] A "system" is the totality of components that integrate these means to automate tasks and improve reliability.
[0231] The system for realizing this invention consists of three elements: a server, a terminal, and a user. The server receives past data and current updated data, compares them, and extracts differences. The terminal allows the user to input updated data and displays the response from the server. The user performs the update and confirms it.
[0232] In a specific example, the server uses an API endpoint to receive past data and current update data. This can be achieved using a web framework such as Python's Flask or Django. Once received, this data is fed into the UpdateChecker class, which uses the find_differences method to extract differences. This difference data is calculated using the difflib module.
[0233] The server can store the extracted differences in a database, for example, using SQLite or PostgreSQL, which can then be used to detect any unintended changes that may have occurred, using AI models or rule-based algorithms.
[0234] After the user completes the update process, the device provides an interface for sending the past data and the current updated data to the server using a front-end framework such as React or Vue.js. Any differences or warning messages returned by the server are visually displayed on the device screen.
[0235] For example, consider a change to a configuration file for an electronic payment service. The previous version of the configuration file contained a sandbox environment and an old API key, and the current version has been changed to a production environment and a new API key. In this case, the server compares the previous version with the new version to check for any unintended changes.
[0236] Example prompt sentence:
[0237] Generate an example prompt using the SecurePay Updates Checker to compare a previous version of a configuration file with the current version and check for unintended changes. Use the following JSON object: the previous version contains a sandbox environment and an old API key, and the current version is changed to a production environment and a new API key.
[0238] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0239] Step 1:
[0240] The device inputs data updated by the user (current updated data) as well as past data, and sends these to the server. The input data is configured as a JSON format API request when sent to the server. Specifically, it uses an input form in a browser or application, and utilizes front-end frameworks such as React and Vue.js.
[0241] Input: Past data, current updated data
[0242] Output: Data sent to the server in JSON format
[0243] Step 2:
[0244] The server receives past data and current updated data sent from the device. The received data is temporarily stored in memory and prepared for the next processing step. Specifically, the data is received at the endpoint of a web framework such as Flask or Django and passed to processing.
[0245] Input: JSON data sent from the terminal
[0246] Output: Past data stored in memory and current updated data
[0247] Step 3:
[0248] The server passes the received past data and the current update data to the UpdateChecker class and initializes it. An instance of the UpdateChecker class is created and the two pieces of data are saved in internal variables.
[0249] Input: Past data, current updated data
[0250] Output: An initialized UpdateChecker object
[0251] Step 4:
[0252] The server calls the find_differences method of the UpdateChecker class to extract the differences between the past data and the current update data. Specifically, the difflib module is used to calculate the differences for each line and generate a unified format of the difference data.
[0253] Input: UpdateChecker object
[0254] Output: Differential data
[0255] Step 5:
[0256] The server saves the extracted differential data in a database using a relational database such as SQLite or PostgreSQL. The database stores past data, current updated data, and differential data.
[0257] Input: differential data
[0258] Output: Differential data stored in the database
[0259] Step 6:
[0260] The server detects unintended changes to the stored data by using AI models and rule-based algorithms to analyze it for anomalous patterns or suspicious changes. This process can be performed using machine learning models (e.g., Tensorflow® or PyTorch).
[0261] Input: Past data stored in the database, current updated data, differential data
[0262] Output: Unintended changes detected
[0263] Step 7:
[0264] The server generates a warning message based on the detected unintended changes, which is then structured in JSON and ready to be sent to the device.
[0265] Input: Unintended change detection result
[0266] Output: Warning message
[0267] Step 8:
[0268] The terminal receives the warning messages and difference data sent from the server and displays them visually to the user. Front-end frameworks such as React and Vue.js are used to display the warnings and difference data in an easy-to-read user interface.
[0269] Input: warning message, differential data
[0270] Output: Warning messages and diff data displayed to the user
[0271] The above processing steps allow the user to quickly identify unintended changes or errors in the update work, improving the reliability and security of the system.
[0272] 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.
[0273] This invention relates to a system that uses AI to check whether modifications have been made correctly when updating a website, etc. By adding an emotion engine, this system recognizes the user's emotions, improving the efficiency of the modification process and the user experience.
[0274] System configuration
[0275] This system consists of a server, a terminal, and a user. It also integrates an emotion engine that recognizes the user's emotions and adjusts the way data is displayed and the support functions.
[0276] Server-side processing
[0277] The server first receives the previous data (old_content) and the current updated data (new_content) sent from the device. The server creates an instance of the UpdateChecker class and initializes the received data. It then calls the find_differences method to extract the differences between the previous data and the current data. The extracted differences are converted to JSON format and sent to the device. The emotion engine also processes the user's emotion data and provides appropriate feedback.
[0278] Terminal side processing
[0279] When the user completes editing the homepage, the device sends the previous data and the updated data to the server. The device receives the difference data returned from the server and displays it to the user. The display method changes depending on the user's emotion. For example, if the user expresses frustration, the system displays it using a softer color tone or additional explanation. The emotion engine recognizes emotions from the user's facial expressions, voice, input patterns, etc.
[0280] User processing
[0281] The user edits the homepage on the device's editing screen. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, and the display is adjusted according to the user's emotional state. If the user is emotional, the system will provide additional advice and warnings to support them.
[0282] Specific examples
[0283] For example, consider the case where the contents of a homepage are updated as follows:
[0284] Past data (old_content)
[0285] html
[0286] <!DOCTYPE html>
[0287]
[0288]
[0289] <title> Old title< / title>
[0290]
[0291]
[0292] Hello World!
[0293]
[0294]
[0295] Updated data (new_content)
[0296] html
[0297] <!DOCTYPE html>
[0298]
[0299]
[0300] <title> New Title< / title>
[0301]
[0302]
[0303] Hello, users!
[0304]
[0305]
[0306] At this time, the server generates the following differential data and sends it to the terminal:
[0307] diff
[0308] --- old_version
[0309] +++new_version
[0310] @@ -2,7 +2,7 @@
[0311]
[0312]
[0313] <title> Old title< / title>
[0314] + <title> New Title< / title>
[0315]
[0316]
[0317] Hello World!
[0318] + Hello, users!
[0319]
[0320]
[0321] The device receives this difference data and uses an emotion engine to present it to the user in a way that reflects their emotional state. For example, if the user expresses surprise or confusion, the system can provide a detailed explanation of the difference and hints on how to fix it to help the user understand.
[0322] In this way, the server, terminal, emotion engine, and user elements work together to create a system that allows homepage revisions to be performed efficiently and accurately. The introduction of the emotion engine improves the user experience, as well as work efficiency and accuracy.
[0323] The processing flow will be explained below.
[0324] Server-side processing
[0325] Step 1:
[0326] The server receives the past data (old_content) and the current updated data (new_content) sent from the terminal. Specifically, it receives them as form data of the HTTP request.
[0327] Step 2:
[0328] The server creates an instance of the UpdateChecker class and initializes it with the received data, which stores the past data and updated data in memory.
[0329] Step 3:
[0330] The server calls the find_differences method of the UpdateChecker instance to extract the differences between the past and current data. This method compares the data row by row and calculates the differences.
[0331] Step 4:
[0332] The server converts the extracted differences into JSON format and sends it to the terminal as an HTTP response, allowing the terminal to receive the differences.
[0333] Step 5:
[0334] The server uses an emotion engine to analyze the user's emotion data. Specifically, the emotion engine analyzes the received data and the user's input data.
[0335] Step 6:
[0336] The server generates feedback and advice based on the analyzed emotional data and sends it to the device, thereby providing support according to the user's emotional state.
[0337] Terminal side processing
[0338] Step 1:
[0339] When the user has completed editing the homepage, they press the "Save" or "Send" button on the editing screen of the device, which saves the edited data in the device.
[0340] Step 2:
[0341] The terminal sends the previous data (old_content) and the revised data (new_content) to the server. Specifically, it sends this data using the POST method using an AJAX request.
[0342] Step 3:
[0343] The device receives the difference data (differences) returned from the server and processes the difference data when it is returned as a response using the AJAX request callback function.
[0344] Step 4:
[0345] The terminal then displays the received difference data to the user, using dedicated HTML components and libraries to visually show the changes line by line.
[0346] Step 5:
[0347] The emotion engine analyzes the user's facial expressions, voice, and input patterns to understand their emotional state, and adjusts the color and format of the difference display accordingly.
[0348] Step 6:
[0349] The emotion engine generates feedback and advice that is displayed on the device. For example, if the user expresses frustration, a "further explanation of what needs to be fixed" message will be displayed on the screen.
[0350] User processing
[0351] Step 1:
[0352] The user edits the homepage on the editing screen of the device, inputs the changes, and when all changes are complete, presses the "Save" or "Submit" button.
[0353] Step 2:
[0354] The user checks the difference data displayed on the terminal and checks whether the modifications made by the user are accurately reflected.
[0355] Step 3:
[0356] The user can then take the feedback and advice provided by the emotion engine into consideration and make further corrections as needed, and proceed by checking warnings and additional information from the system.
[0357] In this way, the server, terminal, emotion engine, and user elements work together to create a system that allows homepage revisions to be performed efficiently and accurately. The introduction of the emotion engine improves the user experience, as well as increasing work efficiency and accuracy.
[0358] Example 2
[0359] 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."
[0360] Conventional website update check systems only extract and display the differences between past data and current updated data, and are unable to flexibly respond to user emotions or operational situations. This makes it difficult to reduce the frustration and confusion users feel during the update process, and there has been a demand for improved work efficiency and user experience.
[0361] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for receiving past data and current update data, means for comparing the past data and the current update data and extracting differences, means for displaying the extracted differences, means for transmitting the extracted differences to the terminal, means for recognizing the user's emotion, and means for adjusting the display method according to the emotion. This allows the user to receive appropriate feedback according to their emotional state, making it possible to improve the efficiency of correction work and the user experience.
[0362] "Past data" refers to old versions of data from before updates were made to a website or the like.
[0363] "Current updated data" refers to the new version of data after updates to the homepage or the like have been made.
[0364] "Means for receiving" refers to the interface or protocol for transmitting past data and current update data to the server.
[0365] "Means for comparison and extraction of differences" refers to the process of using an algorithm to compare past data with current updated data and detect differences between them.
[0366] The "display means" refers to an interface for visually presenting the extracted differences to the user.
[0367] "Means for transmitting to the terminal" refers to an interface or protocol for transmitting the extracted differences from the server to the terminal.
[0368] "Means for recognizing user emotions" refers to technology that uses an emotion engine or similar to analyze a user's facial expressions, voice, and input patterns to identify the user's emotional state.
[0369] "Means for adjusting the display method according to emotions" refers to a process for changing the display method of differences and the feedback content based on the recognized emotional state of the user.
[0370] This invention relates to a system that uses AI (artificial intelligence) to check whether modifications have been made correctly when updating a website, etc. By adding an emotion engine, this system recognizes the user's emotions, improving the efficiency of the modification process and the user experience.
[0371] System configuration
[0372] This system consists of a server, a terminal, and a user. It also integrates an emotion engine that recognizes the user's emotions and adjusts the way data is displayed and the support functions.
[0373] Server-side processing
[0374] The server first receives the previous data (old_content) and the current updated data (new_content) sent from the device. The server creates an instance of the UpdateChecker class and initializes the received data. It then calls the find_differences method to extract the differences between the previous data and the current data. The extracted differences are converted to JSON format and sent to the device. The emotion engine then processes the user's emotion data and provides appropriate feedback. Specifically, the emotion engine recognizes emotions from the user's facial expressions, voice, input patterns, etc., and changes the feedback content as necessary. For this, Python facial recognition libraries such as OpenCV and DeepFace can be used.
[0375] Terminal side processing
[0376] When the user completes editing the homepage, the device sends the previous data and the updated data to the server. The device receives the difference data returned from the server and displays it to the user. The display method changes depending on the user's emotion. For example, if the user expresses frustration, the system displays it using a softer color tone or additional explanation. The emotion engine recognizes emotions from the user's facial expressions, voice, input patterns, etc.
[0377] User processing
[0378] The user edits the homepage on the editing screen of the device. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, and the display method is adjusted according to the user's emotional state. If the user is emotional, the system will provide additional advice and warnings to support them. Specifically, the user can use the following prompts after making edits:
[0379] Please update your homepage and check the difference between the data before and after the update. Please also refer to the sentiment data below to provide a more user-friendly display.
[0380] Specific examples
[0381] For example, consider the case where the contents of a homepage are updated as follows:
[0382] 1. Past data (old_content)
[0383] html
[0384] <!DOCTYPE html>
[0385]
[0386]
[0387] <title> Old title< / title>
[0388]
[0389]
[0390] Hello World!
[0391]
[0392]
[0393] 2. Updated data (new_content)
[0394] html
[0395] <!DOCTYPE html>
[0396]
[0397]
[0398] <title> New Title< / title>
[0399]
[0400]
[0401] Hello, users!
[0402]
[0403]
[0404] The server receives this data and extracts the differences as follows:
[0405] diff
[0406] --- old_version
[0407] +++new_version
[0408] @@ -2,7 +2,7 @@
[0409]
[0410]
[0411] <title> Old title< / title>
[0412] + <title> New Title< / title>
[0413]
[0414]
[0415] Hello World!
[0416] + Hello, users!
[0417]
[0418]
[0419] The device receives this difference data and uses an emotion engine to present it to the user in a display format based on the user's emotional state. For example, if the user expresses surprise or confusion, the system will display a detailed explanation of the difference and additional correction tips.
[0420] In this way, the server, terminal, emotion engine, and user elements work together to create a system that allows homepage revisions to be performed efficiently and accurately. The introduction of the emotion engine improves the user experience, as well as work efficiency and accuracy.
[0421] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0422] Step 1: Send data
[0423] When the user completes the homepage modification work, the terminal sends the previous data (old_content) and the modified data (new_content) to the server. Specifically, it uses the JavaScript (registered trademark) fetch API to send this data to the server in JSON format. The input at this time is the data before and after the user's modification, and the output is an HTTP request to the server.
[0424] javascript
[0425] fetch('https: / / example.com / check-update', {
[0426] method: 'POST',
[0427] headers: {
[0428] 'Content-Type': 'application / json'
[0429] },
[0430] body: JSON.stringify({
[0431] old_content: oldContent,
[0432] new_content: newContent
[0433] })
[0434] });
[0435] Step 2: Receiving data
[0436] The server receives the HTTP request sent from the device and analyzes the attached past data (old_content) and current updated data (new_content). Specifically, it receives data using a framework (such as Python's Flask or Django). The input is the HTTP request from the device, and the output is the analyzed old_content and new_content.
[0437] Step 3: Factory Data Reset
[0438] The server creates an instance of the UpdateChecker class and initializes it with the received data. This sets the data needed for comparison. The inputs are old_content and new_content, and the output is the initialized UpdateChecker instance.
[0439] Step 4: Difference Extraction
[0440] The server calls the find_differences method of the UpdateChecker class to extract the differences between the past data and the current data. Specifically, it calculates the data differences using the Python difflib library. The input is an initialized UpdateChecker instance, and the output is the extracted differences.
[0441] Step 5: Convert the differences to JSON
[0442] The server converts the extracted differences into JSON format. It uses the Python json module to convert the extracted difference data into a JSON string. The input is the difference data and the output is a JSON formatted string.
[0443] python
[0444] import json
[0445] diff_json = json.dumps(differences)
[0446] Step 6: Submitting the Difference Data
[0447] The server returns the difference data converted to JSON format to the terminal. Specifically, it is returned as an HTTP response. The input is the difference data in JSON format, and the output is an HTTP response to the terminal.
[0448] python
[0449] return jsonify({"differences": diff_json})
[0450] Step 7: Receive difference data from the server
[0451] The terminal receives the difference data in JSON format returned from the server. It uses the JavaScript fetch API to receive the response and parses the data using the response.json() method. The input is the HTTP response from the server, and the output is the parsed difference data.
[0452] javascript
[0453] fetch('https: / / example.com / check-update')
[0454] .then(response => response.json())
[0455] .then(data => {
[0456] let diff = data.differences;
[0457] document.getElementById('diff-output').innerText = diff;
[0458] });
[0459] Step 8: Show the differences to the user
[0460] The device visually presents the received difference data to the user, performing DOM manipulation and displaying the differences on the screen. The input is the parsed difference data, and the output is a visual diff display that the user can see on the screen.
[0461] javascript
[0462] document.getElementById('diff-output').innerText = diff;
[0463] Step 9: Display adjustment using the emotion engine
[0464] The emotion engine analyzes the user's facial expressions, voice, and input patterns and adjusts the display accordingly. For example, if the user expresses frustration, the system will display them using a milder color tone or additional explanations. The input is the user's emotional data, and the output is the adjusted display. Specifically, the display is dynamically changed using CSS and JavaScript.
[0465] javascript
[0466] if (userEmotion === 'frustrated') {
[0467] document.getElementById('diff-output').style.color = 'blue';
[0468] / / Show additional explanation
[0469] document.getElementById('additional-info').innerText = 'Detailed description of the diff';
[0470] }
[0471]
[0472] (Application example 2)
[0473] 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."
[0474] When updating websites or online shopping sites, accurate data updates and an improved user experience are required. However, checks during updates are often performed manually, which is inefficient and prone to errors. Furthermore, feedback that ignores the emotions felt by users during the update process can degrade the user experience. For this reason, a system that takes user emotions into account while maintaining the accuracy of the update process is needed.
[0475] The specification process by the specification 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 past data and current update data, means for comparing the past data with the current update data and extracting differences, and means for displaying the extracted differences. As a result, by including emotion recognition means for recognizing the user's emotion and means for adjusting the display method based on the recognized emotional state, not only can the updating work of a homepage or mail order site be performed accurately and efficiently, but feedback according to the user's emotion can also be provided.
[0476] "Past data" refers to information that indicates a previous state or content acquired by the system.
[0477] "Current update data" is information indicating the state or content after the update newly acquired by the system.
[0478] "Means for receiving" refers to a function or device for incorporating past data and current updated data into the system.
[0479] The "means for comparing and extracting differences" is a function or algorithm that compares past data with current updated data and finds the differences.
[0480] The "display means" is a function or device for visually notifying the user of the extracted differences.
[0481] The "means for transmitting to the terminal" is a function or protocol for sending information about the extracted differences to another device.
[0482] The "emotion recognition means for recognizing the user's emotions" is a function or system that analyzes the user's facial expressions, voice, input patterns, etc. to determine the user's emotional state.
[0483] A "means for adjusting the display manner" is a function or algorithm that changes the way differences are displayed based on the perceived emotional state of the user.
[0484] This invention is a system that uses AI to check whether update data is correctly reflected when updating an online shopping site, and provides feedback according to the user's emotions. Below, we will explain how to specifically implement this system.
[0485] 1. System Overview
[0486] This system consists of three elements: a server, a terminal, and a user. The server processes data, and the terminal accepts user operations and displays the results. The user updates the homepage and product pages and checks the results.
[0487] 2. Hardware and Software Used
[0488] Hardware:
[0489] Server: A computer with high processing power
[0490] Device: Smartphone or tablet
[0491] software:
[0492] Emotion recognition libraries: e.g., DeepMoji
[0493] A diff comparison library: e.g., difflib
[0494] Programming language: Python
[0495] 3. Data processing flow
[0496] Server-side processing
[0497] The server receives past data and current update data from the device. It then compares these data using the UpdateChecker class and extracts differences. These differences are converted into JSON format and sent to the device. At the same time, it analyzes the user's emotional state using an emotion recognition library. Based on the analysis results, appropriate feedback is generated and sent to the device.
[0498] Terminal side processing
[0499] When the user completes the update process, the device sends the previous data and the updated data to the server. The device receives the difference data returned from the server and displays it to the user. The display method is adjusted according to the user's emotional state; for example, if the user shows surprise, detailed explanations or hints are displayed.
[0500] User operations
[0501] Users edit their homepages and product pages on the screen. When they are done, they press the submit button to send the data to the server. They then check the feedback displayed on their device and make further edits as needed.
[0502] Specific examples
[0503] For example, consider updating the "review section" of an online shopping site. The previous data is the "old review content," and the updated data is the "new review content." In this case, the server generates the following differential data and sends it to the device:
[0504] diff
[0505] --- old_version
[0506] +++new_version
[0507] @@ -1,1 +1,1 @@
[0508] Previous review content
[0509] + New review content
[0510] Example prompts for generative AI models
[0511] "When updating a user's review, the changes shown are as follows: Old review: Previous review content What's new in the review: New review content The user seems surprised. Please generate appropriate feedback in this situation."
[0512] The system described above allows for efficient and accurate updating of homepages and product pages, improving the user experience. In particular, feedback that takes into account the user's emotions reduces stress during work and provides a better user experience.
[0513] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0514] Step 1:
[0515] User enters and submits data:
[0516] The user completes the update of the homepage or product page on the terminal. Specifically, they edit the review content and product information and press the send button. The previous data and updated data are generated as input data and sent to the server.
[0517] Input: Past data, updated data
[0518] Output: Data sent to the server
[0519] Step 2:
[0520] Server receives data and initializes:
[0521] The server receives the past data and update data sent from the device, and then initializes this data using the UpdateChecker class.
[0522] Input: Past data and updated data sent from the device
[0523] Output: Initialized data
[0524] Step 3:
[0525] Server-based data comparison and difference detection:
[0526] The initialized past data and the updated data are compared using the find_differences method of the UpdateChecker class to extract the differences. These differences are calculated using a difference comparison library (e.g., difflib).
[0527] Input: Initialized past data, updated data
[0528] Output: Extracted differences (diff data)
[0529] Step 4:
[0530] Server converts and sends differences:
[0531] The extracted differences are converted into JSON format and sent to the terminal. The converted differential data is displayed in a user-friendly format.
[0532] Input: Extracted differences
[0533] Output: JSON formatted diff data sent to the terminal
[0534] Step 5:
[0535] Server-based user emotion recognition:
[0536] To recognize user emotions, an emotion recognition library (e.g., DeepMoji) is used to analyze user input data, which includes facial expressions, voice, and text content.
[0537] Input: User-entered data
[0538] Output: User's emotional state
[0539] Step 6:
[0540] Server-generated and sent feedback:
[0541] Based on the recognized emotional state, appropriate feedback is generated, for example, if the user expresses surprise, detailed explanations or hints are added, and this feedback is sent to the device.
[0542] Input: User's emotional state
[0543] Output: Feedback sent to the device
[0544] Step 7:
[0545] Display feedback by device:
[0546] The terminal receives the difference data and feedback sent from the server and displays them to the user, adjusting the display method according to the user's emotional state.
[0547] Input: Differential data sent from the server, feedback
[0548] Output: Diff data and feedback displayed to the user
[0549] 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.
[0550] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (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.
[0551] 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.
[0552] [Second embodiment]
[0553] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0554] 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.
[0555] 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).
[0556] 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.
[0557] 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.
[0558] 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).
[0559] 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.
[0560] 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.
[0561] 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.
[0562] 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.
[0563] 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.
[0564] 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."
[0565] The present invention relates to a system that uses AI to check whether modifications have been made correctly when updating a website, etc. A specific embodiment of this system will be described below.
[0566] System configuration
[0567] This system consists of three elements: a server, a terminal, and a user. The server receives past data and current updated data, compares them, and extracts differences. The terminal allows the user to input updated data and displays the response from the server. The user then makes changes to the homepage and checks the changes.
[0568] Server-side processing
[0569] The server first receives the previous data (old_content) and the current updated data (new_content) sent from the device. Then, the server creates an instance of the UpdateChecker class and initializes this data. Next, the server calls the find_differences method to extract the differences between the previous data and the current data. These differences indicate the specific changes made on a line-by-line basis. Finally, the server sends the extracted differences to the device.
[0570] Terminal side processing
[0571] When the user completes the update process, the device sends the previous data and the revised data to the server. The device receives the differences returned by the server and displays them to the user. For example, a dedicated component or library can be used to visually display the HTML differences in an easy-to-understand manner.
[0572] User processing
[0573] The user edits the homepage on the editing screen of the device. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, allowing the user to review them and confirm that the edits were made correctly.
[0574] Specific examples
[0575] For example, consider the case where the contents of a homepage are updated as follows:
[0576] Past data (old_content)
[0577] html
[0578] <!DOCTYPE html>
[0579]
[0580]
[0581] <title> Old title< / title>
[0582]
[0583]
[0584] Hello World!
[0585]
[0586]
[0587] Updated data (new_content)
[0588] html
[0589] <!DOCTYPE html>
[0590]
[0591]
[0592] <title> New Title< / title>
[0593]
[0594]
[0595] Hello, users!
[0596]
[0597]
[0598] At this time, the server generates the following differential data and sends it to the terminal:
[0599] diff
[0600] --- old_version
[0601] +++new_version
[0602] @@ -2,7 +2,7 @@
[0603]
[0604]
[0605] <title> Old title< / title>
[0606] + <title> New Title< / title>
[0607]
[0608]
[0609] Hello World!
[0610] + Hello, users!
[0611]
[0612]
[0613] The terminal receives this difference data, and the user visually checks it. In this way, the present invention makes the work of correcting homepages more efficient and relieves the user from the need for manual checking.
[0614] The processing flow will be explained below.
[0615] Server-side processing
[0616] Step 1:
[0617] The server receives the past data (old_content) and the current updated data (new_content) sent from the terminal. Specifically, it receives this information as form data of the HTTP request.
[0618] Step 2:
[0619] The server creates an instance of the UpdateChecker class and initializes it with the received data, which keeps the original data and the updated data in memory.
[0620] Step 3:
[0621] The server calls the find_differences method of the UpdateChecker instance to extract the differences between the past and current data. This method compares the data row by row and generates the deltas.
[0622] Step 4:
[0623] The server sends the extracted differences to the terminal. Specifically, it converts the difference data into JSON format and returns it as an HTTP response.
[0624] Terminal side processing
[0625] Step 1:
[0626] When the user has completed editing the homepage, they press the "Save" or "Send" button on the editing screen of the device, which saves the edited data in the device.
[0627] Step 2:
[0628] The terminal sends the previous data (old_content) and the revised data (new_content) to the server. Specifically, it sends this data using the POST method using an AJAX request.
[0629] Step 3:
[0630] The device receives the difference data (differences) returned from the server and processes the difference data when it is returned as a response using the AJAX request callback function.
[0631] Step 4:
[0632] The terminal then displays the received difference data to the user. Specifically, the difference data is converted into HTML and inserted into a dedicated display area on the editing screen so that the user can visually check it.
[0633] User processing
[0634] Step 1:
[0635] The user edits the homepage on the editing screen of the device, inputs the corrections, and after completing all the necessary changes, presses the "Save" or "Submit" button.
[0636] Step 2:
[0637] The user checks the difference data displayed on the terminal, thereby confirming whether the corrections have been made correctly and checking for any omissions or errors.
[0638] In this way, the elements of the server, terminal, and user work together to build a system in which homepage revision work can be carried out efficiently and accurately.
[0639] Example 1
[0640] 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."
[0641] Previously, updating websites required manual confirmation that changes had been made appropriately, which required a great deal of time and effort. There was also a high risk of incorrect changes being overlooked, making the process unreliable.
[0642] 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.
[0643] In this invention, the server includes means for receiving past data and current update data, means for comparing the past data with the current update data and extracting differences, means for transmitting the extracted differences to the terminal, means for initializing the past data and current update data transmitted from the terminal, and means for visually displaying the extracted differences. This makes it possible to streamline homepage updating work and eliminate the need for manual confirmation work.
[0644] "Historical Data" refers to the content of previous versions of the homepage.
[0645] "Current update data" refers to the content of the new version of the homepage after it has been updated.
[0646] "Means for receiving" refers to the mechanism by which the server obtains past data and current updated data.
[0647] "Means for comparing and extracting differences" refers to a function for comparing past data with current updated data to identify changes.
[0648] "Means for transmitting to the terminal" refers to a mechanism by which the server transmits the extracted differences to the terminal used by the user.
[0649] "Means for initialization" refers to the function of setting up past data sent from the terminal and current updated data, and making it suitable for analysis.
[0650] The "visual display means" refers to a display mechanism for displaying the extracted differences in a format that is easy for the user to understand.
[0651] This invention relates to a system that uses AI to check whether modifications have been made correctly when updating a website, etc. This system consists of three elements: a server, a terminal, and a user.
[0652] Server Roles
[0653] The server receives the past data and the current updated data. Specifically, the past data (old_content) and the current updated data (new_content) are sent from the terminal via an HTTP POST request. After receiving this data, the server creates an instance of the UpdateChecker class and initializes this data. Once initialization is complete, it then calls the find_differences method to extract the differences between the past data and the current data. These differences indicate the specific changes made on a line-by-line basis. Finally, the server sends the extracted differences to the terminal.
[0654] Device Role
[0655] When the user completes the update, the terminal sends the previous data and the revised data to the server. The terminal can use dedicated components or libraries to receive the differences sent back from the server and display them to the user. For example, the Diff2Html library can be used to visually display the differences in HTML in an easy-to-understand manner.
[0656] User Roles
[0657] The user edits the homepage on the editing screen of the device. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, allowing the user to check them and visually verify that the edits were made correctly.
[0658] Specific examples
[0659] For example, consider the case where the contents of a homepage are updated as follows.
[0660] Past data (old_content)
[0661] html
[0662] <!DOCTYPE html>
[0663]
[0664]
[0665] <title> Old title< / title>
[0666]
[0667]
[0668] Hello World!
[0669]
[0670]
[0671] Updated data (new_content)
[0672] html
[0673] <!DOCTYPE html>
[0674]
[0675]
[0676] <title> New Title< / title>
[0677]
[0678]
[0679] Hello, users!
[0680]
[0681]
[0682] The server generates the following differential data and sends it to the device:
[0683] diff
[0684] --- old_version
[0685] +++new_version
[0686] @@ -2,7 +2,7 @@
[0687]
[0688]
[0689] <title> Old title< / title>
[0690] + <title> New Title< / title>
[0691]
[0692]
[0693] Hello World!
[0694] + Hello, users!
[0695]
[0696]
[0697] The terminal receives this difference data and visually displays it to the user. The user can check the difference and confirm whether the corrections were made correctly. In this way, the present invention makes the work of correcting homepages more efficient and relieves the user of the need for manual confirmation work.
[0698] Example prompts for generative AI models
[0699] You can use the following prompts to ask the generative AI model for specific clarification:
[0700] Example prompt:
[0701] AI model, please generate the differences between the following HTML sentences.
[0702] Historical data (old_content):
[0703] <!DOCTYPE html>
[0704]
[0705]
[0706] <title> Old title< / title>
[0707]
[0708]
[0709] Hello World!
[0710]
[0711]
[0712] Updated data (new_content):
[0713] <!DOCTYPE html>
[0714]
[0715]
[0716] <title> New Title< / title>
[0717]
[0718]
[0719] Hello, users!
[0720]
[0721]
[0722] Output a diff-style result showing the differences.
[0723] By inputting this prompt into the generative AI model, the AI analyzes the differences between past data and updated data and outputs them in a visually easy-to-understand format.
[0724] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0725] Step 1:
[0726] The server receives past data and current updated data from the terminal. Specifically, the terminal sends the past data (old_content) and the current updated data (new_content) using an HTTP POST request, and the server receives it. The input at this stage is old_content and new_content, and the received data is stored in the server's memory as output.
[0727] Step 2:
[0728] The server creates an instance of the UpdateChecker class. Specifically, it uses the received old_content and new_content as arguments and creates an instance in the form checker = UpdateChecker(old_content, new_content). This instance contains the data necessary for comparison. The inputs are old_content and new_content, and the generated UpdateChecker instance is obtained as output.
[0729] Step 3:
[0730] The server performs initialization processing on the UpdateChecker instance. Specifically, it calls the checker.initialize_data() method to initialize the past data and current data. This operation prepares the internal data structure and formats the data. The input is the UpdateChecker instance, and the initialized data is set as the output to the UpdateChecker instance.
[0731] Step 4:
[0732] The server calls the find_differences method of UpdateChecker to extract the differences between the past and current data. Specifically, differences = checker.find_differences() is executed, and the internal data comparison algorithm is executed to generate the difference data. The input is an initialized UpdateChecker instance, and the difference data is obtained as the output.
[0733] Step 5:
[0734] The server sends the extracted differences to the terminal as an HTTP response. Specifically, it converts the difference data into JSON format and generates an HTTP response. The input is the difference data, and the output is an HTTP response that is sent to the terminal.
[0735] Step 6:
[0736] The terminal receives the difference data returned from the server. Specifically, it extracts the difference data from the HTTP response and stores it in a local variable. The input is the HTTP response, and the difference data is stored in the terminal as the output.
[0737] Step 7:
[0738] The terminal visually displays the received difference data to the user. Specifically, it uses a library such as diff2html to render the difference data in HTML format and displays it on the screen operated by the user. The input is the difference data, and the output is a visually displayed difference.
[0739] Step 8:
[0740] The user edits the homepage on the editing screen of the terminal. Specifically, they edit the HTML code using a text editor. The input is the HTML code before editing, and the output is the edited HTML code.
[0741] Step 9:
[0742] After completing the modifications, the user uses the terminal's send function to send the data to the server. Specifically, by clicking the "Send" button, the modified HTML code is sent to the server as an HTTP POST request. The input is the modified HTML code, and the output is the sent HTTP request.
[0743] Step 10:
[0744] After the differences returned from the server are displayed on the terminal, the user can check them and confirm whether the corrections have been made correctly. Specifically, the user visually checks the difference data displayed on the terminal and makes further corrections as necessary. The input is the visually displayed difference data, and the user's confirmation results are obtained as the output.
[0745] (Application example 1)
[0746] 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."
[0747] Existing update monitoring systems pose the risk of unintended changes or errors occurring when updating websites or configuration files. Furthermore, particularly in fields requiring high levels of security, such as electronic payment services, such changes can lead to serious security and operational risks. Therefore, a method is needed to efficiently and reliably detect these risks and prompt appropriate responses.
[0748] 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.
[0749] In this invention, the server includes means for receiving past data and current update data, means for comparing the past data with the current update data and extracting differences, means for displaying the extracted differences, means for transmitting the extracted differences to a terminal, means for saving the past data and the current update data in a database, means for detecting unintended changes using the saved data, and means for displaying a warning based on the detected unintended changes. This makes it possible to efficiently detect unintended changes and errors in update work and ensure high security and operational reliability.
[0750] "Past data" refers to existing data before any update work was performed.
[0751] "Current updated data" refers to new data after the update work has been performed.
[0752] "Means for receiving" refers to the functions and devices for inputting data into the server.
[0753] "Means for comparing and extracting differences" refers to algorithms or procedures for detecting differences between past data and current updated data.
[0754] The "display means" refers to an interface or tool that allows the user to visually confirm the extracted differences.
[0755] "Transmission means" refers to the communication means or protocol for sending data from the server to the terminal.
[0756] A "means for storing data in a database" is a system or method for permanently storing data.
[0757] "Detection methods" are functions and technologies that analyze stored data and detect unintended changes.
[0758] The "means for displaying a warning" refers to a function or device for alerting the user to the detected unintended change.
[0759] A "system" is the totality of components that integrate these means to automate tasks and improve reliability.
[0760] The system for realizing this invention consists of three elements: a server, a terminal, and a user. The server receives past data and current updated data, compares them, and extracts differences. The terminal allows the user to input updated data and displays the response from the server. The user performs the update and confirms it.
[0761] In a specific example, the server uses an API endpoint to receive past data and current update data. This can be achieved using a web framework such as Python's Flask or Django. Once received, this data is fed into the UpdateChecker class, which uses the find_differences method to extract differences. This difference data is calculated using the difflib module.
[0762] The server can store the extracted differences in a database, for example, using SQLite or PostgreSQL, which can then be used to detect any unintended changes that may have occurred, using AI models or rule-based algorithms.
[0763] After the user completes the update process, the device provides an interface for sending the past data and the current updated data to the server using a front-end framework such as React or Vue.js. Any differences or warning messages returned by the server are visually displayed on the device screen.
[0764] For example, consider a change to a configuration file for an electronic payment service. The previous version of the configuration file contained a sandbox environment and an old API key, and the current version has been changed to a production environment and a new API key. In this case, the server compares the previous version with the new version to check for any unintended changes.
[0765] Example prompt sentence:
[0766] Generate an example prompt using the SecurePay Updates Checker to compare a previous version of a configuration file with the current version and check for unintended changes. Use the following JSON object: the previous version contains a sandbox environment and an old API key, and the current version is changed to a production environment and a new API key.
[0767] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0768] Step 1:
[0769] The device inputs data updated by the user (current updated data) as well as past data, and sends these to the server. The input data is configured as a JSON format API request when sent to the server. Specifically, it uses an input form in a browser or application, and utilizes front-end frameworks such as React and Vue.js.
[0770] Input: Past data, current updated data
[0771] Output: Data sent to the server in JSON format
[0772] Step 2:
[0773] The server receives past data and current updated data sent from the device. The received data is temporarily stored in memory and prepared for the next processing step. Specifically, the data is received at the endpoint of a web framework such as Flask or Django and passed to processing.
[0774] Input: JSON data sent from the terminal
[0775] Output: Past data stored in memory and current updated data
[0776] Step 3:
[0777] The server passes the received past data and the current update data to the UpdateChecker class and initializes it. An instance of the UpdateChecker class is created and the two pieces of data are saved in internal variables.
[0778] Input: Past data, current updated data
[0779] Output: An initialized UpdateChecker object
[0780] Step 4:
[0781] The server calls the find_differences method of the UpdateChecker class to extract the differences between the past data and the current update data. Specifically, the difflib module is used to calculate the differences for each line and generate a unified format of the difference data.
[0782] Input: UpdateChecker object
[0783] Output: Differential data
[0784] Step 5:
[0785] The server saves the extracted differential data in a database using a relational database such as SQLite or PostgreSQL. The database stores past data, current updated data, and differential data.
[0786] Input: differential data
[0787] Output: Differential data stored in the database
[0788] Step 6:
[0789] The server detects unintended changes to the stored data by using AI models and rule-based algorithms to analyze it for anomalous patterns or suspicious changes. This process can be performed using machine learning models (e.g., TensorFlow or PyTorch).
[0790] Input: Past data stored in the database, current updated data, differential data
[0791] Output: Unintended changes detected
[0792] Step 7:
[0793] The server generates a warning message based on the detected unintended changes, which is then structured in JSON and ready to be sent to the device.
[0794] Input: Unintended change detection result
[0795] Output: Warning message
[0796] Step 8:
[0797] The terminal receives the warning messages and difference data sent from the server and displays them visually to the user. Front-end frameworks such as React and Vue.js are used to display the warnings and difference data in an easy-to-read user interface.
[0798] Input: warning message, differential data
[0799] Output: Warning messages and diff data displayed to the user
[0800] The above processing steps allow the user to quickly identify unintended changes or errors in the update work, improving the reliability and security of the system.
[0801] 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.
[0802] This invention relates to a system that uses AI to check whether modifications have been made correctly when updating a website, etc. By adding an emotion engine, this system recognizes the user's emotions, improving the efficiency of the modification process and the user experience.
[0803] System configuration
[0804] This system consists of a server, a terminal, and a user. It also integrates an emotion engine that recognizes the user's emotions and adjusts the way data is displayed and the support functions.
[0805] Server-side processing
[0806] The server first receives the previous data (old_content) and the current updated data (new_content) sent from the device. The server creates an instance of the UpdateChecker class and initializes the received data. It then calls the find_differences method to extract the differences between the previous data and the current data. The extracted differences are converted to JSON format and sent to the device. The emotion engine also processes the user's emotion data and provides appropriate feedback.
[0807] Terminal side processing
[0808] When the user completes editing the homepage, the device sends the previous data and the updated data to the server. The device receives the difference data returned from the server and displays it to the user. The display method changes depending on the user's emotion. For example, if the user expresses frustration, the system displays it using a softer color tone or additional explanation. The emotion engine recognizes emotions from the user's facial expressions, voice, input patterns, etc.
[0809] User processing
[0810] The user edits the homepage on the device's editing screen. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, and the display is adjusted according to the user's emotional state. If the user is emotional, the system will provide additional advice and warnings to support them.
[0811] Specific examples
[0812] For example, consider the case where the contents of a homepage are updated as follows:
[0813] Past data (old_content)
[0814] html
[0815] <!DOCTYPE html>
[0816]
[0817]
[0818] <title> Old title< / title>
[0819]
[0820]
[0821] Hello World!
[0822]
[0823]
[0824] Updated data (new_content)
[0825] html
[0826] <!DOCTYPE html>
[0827]
[0828]
[0829] <title> New Title< / title>
[0830]
[0831]
[0832] Hello, users!
[0833]
[0834]
[0835] At this time, the server generates the following differential data and sends it to the terminal:
[0836] diff
[0837] --- old_version
[0838] +++new_version
[0839] @@ -2,7 +2,7 @@
[0840]
[0841]
[0842] <title> Old title< / title>
[0843] + <title> New Title< / title>
[0844]
[0845]
[0846] Hello World!
[0847] + Hello, users!
[0848]
[0849]
[0850] The device receives this difference data and uses an emotion engine to present it to the user in a way that reflects their emotional state. For example, if the user expresses surprise or confusion, the system can provide a detailed explanation of the difference and hints on how to fix it to help the user understand.
[0851] In this way, the server, terminal, emotion engine, and user elements work together to create a system that allows homepage revisions to be performed efficiently and accurately. The introduction of the emotion engine improves the user experience, as well as work efficiency and accuracy.
[0852] The processing flow will be explained below.
[0853] Server-side processing
[0854] Step 1:
[0855] The server receives the past data (old_content) and the current updated data (new_content) sent from the terminal. Specifically, it receives them as form data of the HTTP request.
[0856] Step 2:
[0857] The server creates an instance of the UpdateChecker class and initializes it with the received data, which stores the past data and updated data in memory.
[0858] Step 3:
[0859] The server calls the find_differences method of the UpdateChecker instance to extract the differences between the past and current data. This method compares the data row by row and calculates the differences.
[0860] Step 4:
[0861] The server converts the extracted differences into JSON format and sends it to the terminal as an HTTP response, allowing the terminal to receive the differences.
[0862] Step 5:
[0863] The server uses an emotion engine to analyze the user's emotion data. Specifically, the emotion engine analyzes the received data and the user's input data.
[0864] Step 6:
[0865] The server generates feedback and advice based on the analyzed emotional data and sends it to the device, thereby providing support according to the user's emotional state.
[0866] Terminal side processing
[0867] Step 1:
[0868] When the user has completed editing the homepage, they press the "Save" or "Send" button on the editing screen of the device, which saves the edited data in the device.
[0869] Step 2:
[0870] The terminal sends the previous data (old_content) and the revised data (new_content) to the server. Specifically, it sends this data using the POST method using an AJAX request.
[0871] Step 3:
[0872] The device receives the difference data (differences) returned from the server and processes the difference data when it is returned as a response using the AJAX request callback function.
[0873] Step 4:
[0874] The terminal then displays the received difference data to the user, using dedicated HTML components and libraries to visually show the changes line by line.
[0875] Step 5:
[0876] The emotion engine analyzes the user's facial expressions, voice, and input patterns to understand their emotional state, and adjusts the color and format of the difference display accordingly.
[0877] Step 6:
[0878] The emotion engine generates feedback and advice that is displayed on the device. For example, if the user expresses frustration, a "further explanation of what needs to be fixed" message will be displayed on the screen.
[0879] User processing
[0880] Step 1:
[0881] The user edits the homepage on the editing screen of the device, inputs the changes, and when all changes are complete, presses the "Save" or "Submit" button.
[0882] Step 2:
[0883] The user checks the difference data displayed on the terminal and checks whether the modifications made by the user are accurately reflected.
[0884] Step 3:
[0885] The user can then take the feedback and advice provided by the emotion engine into consideration and make further corrections as needed, and proceed by checking warnings and additional information from the system.
[0886] In this way, the server, terminal, emotion engine, and user elements work together to create a system that allows homepage revisions to be performed efficiently and accurately. The introduction of the emotion engine improves the user experience, as well as increasing work efficiency and accuracy.
[0887] Example 2
[0888] 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."
[0889] Conventional website update check systems only extract and display the differences between past data and current updated data, and are unable to flexibly respond to user emotions or operational situations. This makes it difficult to reduce the frustration and confusion users feel during the update process, and there has been a demand for improved work efficiency and user experience.
[0890] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for receiving past data and current update data, means for comparing the past data and the current update data and extracting differences, means for displaying the extracted differences, means for transmitting the extracted differences to the terminal, means for recognizing the user's emotion, and means for adjusting the display method according to the emotion. This allows the user to receive appropriate feedback according to their emotional state, making it possible to improve the efficiency of correction work and the user experience.
[0891] "Past data" refers to old versions of data from before updates were made to a website or the like.
[0892] "Current updated data" refers to the new version of data after updates to the homepage or the like have been made.
[0893] "Means for receiving" refers to the interface or protocol for transmitting past data and current update data to the server.
[0894] "Means for comparison and extraction of differences" refers to the process of using an algorithm to compare past data with current updated data and detect differences between them.
[0895] The "display means" refers to an interface for visually presenting the extracted differences to the user.
[0896] "Means for transmitting to the terminal" refers to an interface or protocol for transmitting the extracted differences from the server to the terminal.
[0897] "Means for recognizing user emotions" refers to technology that uses an emotion engine or similar to analyze a user's facial expressions, voice, and input patterns to identify the user's emotional state.
[0898] "Means for adjusting the display method according to emotions" refers to a process for changing the display method of differences and the feedback content based on the recognized emotional state of the user.
[0899] This invention relates to a system that uses AI (artificial intelligence) to check whether modifications have been made correctly when updating a website, etc. By adding an emotion engine, this system recognizes the user's emotions, improving the efficiency of the modification process and the user experience.
[0900] System configuration
[0901] This system consists of a server, a terminal, and a user. It also integrates an emotion engine that recognizes the user's emotions and adjusts the way data is displayed and the support functions.
[0902] Server-side processing
[0903] The server first receives the previous data (old_content) and the current updated data (new_content) sent from the device. The server creates an instance of the UpdateChecker class and initializes the received data. It then calls the find_differences method to extract the differences between the previous data and the current data. The extracted differences are converted to JSON format and sent to the device. The emotion engine then processes the user's emotion data and provides appropriate feedback. Specifically, the emotion engine recognizes emotions from the user's facial expressions, voice, input patterns, etc., and changes the feedback content as necessary. For this, Python facial recognition libraries such as OpenCV and DeepFace can be used.
[0904] Terminal side processing
[0905] When the user completes editing the homepage, the device sends the previous data and the updated data to the server. The device receives the difference data returned from the server and displays it to the user. The display method changes depending on the user's emotion. For example, if the user expresses frustration, the system displays it using a softer color tone or additional explanation. The emotion engine recognizes emotions from the user's facial expressions, voice, input patterns, etc.
[0906] User processing
[0907] The user edits the homepage on the editing screen of the device. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, and the display method is adjusted according to the user's emotional state. If the user is emotional, the system will provide additional advice and warnings to support them. Specifically, the user can use the following prompts after making edits:
[0908] Please update your homepage and check the difference between the data before and after the update. Please also refer to the sentiment data below to provide a more user-friendly display.
[0909] Specific examples
[0910] For example, consider the case where the contents of a homepage are updated as follows:
[0911] 1. Past data (old_content)
[0912] html
[0913] <!DOCTYPE html>
[0914]
[0915]
[0916] <title> Old title< / title>
[0917]
[0918]
[0919] Hello World!
[0920]
[0921]
[0922] 2. Updated data (new_content)
[0923] html
[0924] <!DOCTYPE html>
[0925]
[0926]
[0927] <title> New Title< / title>
[0928]
[0929]
[0930] Hello, users!
[0931]
[0932]
[0933] The server receives this data and extracts the differences as follows:
[0934] diff
[0935] --- old_version
[0936] +++new_version
[0937] @@ -2,7 +2,7 @@
[0938]
[0939]
[0940] <title> Old title< / title>
[0941] + <title> New Title< / title>
[0942]
[0943]
[0944] Hello World!
[0945] + Hello, users!
[0946]
[0947]
[0948] The device receives this difference data and uses an emotion engine to present it to the user in a display format based on the user's emotional state. For example, if the user expresses surprise or confusion, the system will display a detailed explanation of the difference and additional correction tips.
[0949] In this way, the server, terminal, emotion engine, and user elements work together to create a system that allows homepage revisions to be performed efficiently and accurately. The introduction of the emotion engine improves the user experience, as well as work efficiency and accuracy.
[0950] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0951] Step 1: Send data
[0952] When the user completes the homepage modification work, the device sends the previous data (old_content) and the modified data (new_content) to the server. Specifically, it uses the JavaScript fetch API to send this data to the server in JSON format. The input at this time is the data before and after the user's modification, and the output is an HTTP request to the server.
[0953] javascript
[0954] fetch('https: / / example.com / check-update', {
[0955] method: 'POST',
[0956] headers: {
[0957] 'Content-Type': 'application / json'
[0958] },
[0959] body: JSON.stringify({
[0960] old_content: oldContent,
[0961] new_content: newContent
[0962] })
[0963] });
[0964] Step 2: Receiving data
[0965] The server receives the HTTP request sent from the device and analyzes the attached past data (old_content) and current updated data (new_content). Specifically, it receives data using a framework (such as Python's Flask or Django). The input is the HTTP request from the device, and the output is the analyzed old_content and new_content.
[0966] Step 3: Factory Data Reset
[0967] The server creates an instance of the UpdateChecker class and initializes it with the received data. This sets the data needed for comparison. The inputs are old_content and new_content, and the output is the initialized UpdateChecker instance.
[0968] Step 4: Difference Extraction
[0969] The server calls the find_differences method of the UpdateChecker class to extract the differences between the past data and the current data. Specifically, it calculates the data differences using the Python difflib library. The input is an initialized UpdateChecker instance, and the output is the extracted differences.
[0970] Step 5: Convert the differences to JSON
[0971] The server converts the extracted differences into JSON format. It uses the Python json module to convert the extracted difference data into a JSON string. The input is the difference data and the output is a JSON formatted string.
[0972] python
[0973] import json
[0974] diff_json = json.dumps(differences)
[0975] Step 6: Submitting the Difference Data
[0976] The server returns the difference data converted to JSON format to the terminal. Specifically, it is returned as an HTTP response. The input is the difference data in JSON format, and the output is an HTTP response to the terminal.
[0977] python
[0978] return jsonify({"differences": diff_json})
[0979] Step 7: Receive difference data from the server
[0980] The terminal receives the difference data in JSON format returned from the server. It uses the JavaScript fetch API to receive the response and parses the data using the response.json() method. The input is the HTTP response from the server, and the output is the parsed difference data.
[0981] javascript
[0982] fetch('https: / / example.com / check-update')
[0983] .then(response => response.json())
[0984] .then(data => {
[0985] let diff = data.differences;
[0986] document.getElementById('diff-output').innerText = diff;
[0987] });
[0988] Step 8: Show the differences to the user
[0989] The device visually presents the received difference data to the user, performing DOM manipulation and displaying the differences on the screen. The input is the parsed difference data, and the output is a visual diff display that the user can see on the screen.
[0990] javascript
[0991] document.getElementById('diff-output').innerText = diff;
[0992] Step 9: Display adjustment using the emotion engine
[0993] The emotion engine analyzes the user's facial expressions, voice, and input patterns and adjusts the display accordingly. For example, if the user expresses frustration, the system will display them using a milder color tone or additional explanations. The input is the user's emotional data, and the output is the adjusted display. Specifically, the display is dynamically changed using CSS and JavaScript.
[0994] javascript
[0995] if (userEmotion === 'frustrated') {
[0996] document.getElementById('diff-output').style.color = 'blue';
[0997] / / Show additional explanation
[0998] document.getElementById('additional-info').innerText = 'Detailed description of the diff';
[0999] }
[1000]
[1001] (Application example 2)
[1002] 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."
[1003] When updating websites or online shopping sites, accurate data updates and an improved user experience are required. However, checks during updates are often performed manually, which is inefficient and prone to errors. Furthermore, feedback that ignores the emotions felt by users during the update process can degrade the user experience. For this reason, a system that takes user emotions into account while maintaining the accuracy of the update process is needed.
[1004] The specification process by the specification 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 past data and current update data, means for comparing the past data with the current update data and extracting differences, and means for displaying the extracted differences. As a result, by including emotion recognition means for recognizing the user's emotion and means for adjusting the display method based on the recognized emotional state, not only can the updating work of a homepage or mail order site be performed accurately and efficiently, but feedback according to the user's emotion can also be provided.
[1005] "Past data" refers to information that indicates a previous state or content acquired by the system.
[1006] "Current update data" is information indicating the state or content after the update newly acquired by the system.
[1007] "Means for receiving" refers to a function or device for incorporating past data and current updated data into the system.
[1008] The "means for comparing and extracting differences" is a function or algorithm that compares past data with current updated data and finds the differences.
[1009] The "display means" is a function or device for visually notifying the user of the extracted differences.
[1010] The "means for transmitting to the terminal" is a function or protocol for sending information about the extracted differences to another device.
[1011] The "emotion recognition means for recognizing the user's emotions" is a function or system that analyzes the user's facial expressions, voice, input patterns, etc. to determine the user's emotional state.
[1012] A "means for adjusting the display manner" is a function or algorithm that changes the way differences are displayed based on the perceived emotional state of the user.
[1013] This invention is a system that uses AI to check whether update data is correctly reflected when updating an online shopping site, and provides feedback according to the user's emotions. Below, we will explain how to specifically implement this system.
[1014] 1. System Overview
[1015] This system consists of three elements: a server, a terminal, and a user. The server processes data, and the terminal accepts user operations and displays the results. The user updates the homepage and product pages and checks the results.
[1016] 2. Hardware and Software Used
[1017] Hardware:
[1018] Server: A computer with high processing power
[1019] Device: Smartphone or tablet
[1020] software:
[1021] Emotion recognition libraries: e.g., DeepMoji
[1022] A diff comparison library: e.g., difflib
[1023] Programming language: Python
[1024] 3. Data processing flow
[1025] Server-side processing
[1026] The server receives past data and current update data from the device. It then compares these data using the UpdateChecker class and extracts differences. These differences are converted into JSON format and sent to the device. At the same time, it analyzes the user's emotional state using an emotion recognition library. Based on the analysis results, appropriate feedback is generated and sent to the device.
[1027] Terminal side processing
[1028] When the user completes the update process, the device sends the previous data and the updated data to the server. The device receives the difference data returned from the server and displays it to the user. The display method is adjusted according to the user's emotional state; for example, if the user shows surprise, detailed explanations or hints are displayed.
[1029] User operations
[1030] Users edit their homepages and product pages on the screen. When they are done, they press the submit button to send the data to the server. They then check the feedback displayed on their device and make further edits as needed.
[1031] Specific examples
[1032] For example, consider updating the "review section" of an online shopping site. The previous data is the "old review content," and the updated data is the "new review content." In this case, the server generates the following differential data and sends it to the device:
[1033] diff
[1034] --- old_version
[1035] +++new_version
[1036] @@ -1,1 +1,1 @@
[1037] Previous review content
[1038] + New review content
[1039] Example prompts for generative AI models
[1040] "When updating a user's review, the changes shown are as follows: Old review: Previous review content What's new in the review: New review content The user seems surprised. Please generate appropriate feedback in this situation."
[1041] The system described above allows for efficient and accurate updating of homepages and product pages, improving the user experience. In particular, feedback that takes into account the user's emotions reduces stress during work and provides a better user experience.
[1042] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1043] Step 1:
[1044] User enters and submits data:
[1045] The user completes the update of the homepage or product page on the terminal. Specifically, they edit the review content and product information and press the send button. The previous data and updated data are generated as input data and sent to the server.
[1046] Input: Past data, updated data
[1047] Output: Data sent to the server
[1048] Step 2:
[1049] Server receives data and initializes:
[1050] The server receives the past data and update data sent from the device, and then initializes this data using the UpdateChecker class.
[1051] Input: Past data and updated data sent from the device
[1052] Output: Initialized data
[1053] Step 3:
[1054] Server-based data comparison and difference detection:
[1055] The initialized past data and the updated data are compared using the find_differences method of the UpdateChecker class to extract the differences. These differences are calculated using a difference comparison library (e.g., difflib).
[1056] Input: Initialized past data, updated data
[1057] Output: Extracted differences (diff data)
[1058] Step 4:
[1059] Server converts and sends differences:
[1060] The extracted differences are converted into JSON format and sent to the terminal. The converted differential data is displayed in a user-friendly format.
[1061] Input: Extracted differences
[1062] Output: JSON formatted diff data sent to the terminal
[1063] Step 5:
[1064] Server-based user emotion recognition:
[1065] To recognize user emotions, an emotion recognition library (e.g., DeepMoji) is used to analyze user input data, which includes facial expressions, voice, and text content.
[1066] Input: User-entered data
[1067] Output: User's emotional state
[1068] Step 6:
[1069] Server-generated and sent feedback:
[1070] Based on the recognized emotional state, appropriate feedback is generated, for example, if the user expresses surprise, detailed explanations or hints are added, and this feedback is sent to the device.
[1071] Input: User's emotional state
[1072] Output: Feedback sent to the device
[1073] Step 7:
[1074] Display feedback by device:
[1075] The terminal receives the difference data and feedback sent from the server and displays them to the user, adjusting the display method according to the user's emotional state.
[1076] Input: Differential data sent from the server, feedback
[1077] Output: Diff data and feedback displayed to the user
[1078] 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.
[1079] 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.
[1080] 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.
[1081] [Third embodiment]
[1082] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[1083] 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.
[1084] 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).
[1085] 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.
[1086] 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.
[1087] 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).
[1088] 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.
[1089] 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.
[1090] 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.
[1091] 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.
[1092] 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.
[1093] 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."
[1094] The present invention relates to a system that uses AI to check whether modifications have been made correctly when updating a website, etc. A specific embodiment of this system will be described below.
[1095] System configuration
[1096] This system consists of three elements: a server, a terminal, and a user. The server receives past data and current updated data, compares them, and extracts differences. The terminal allows the user to input updated data and displays the response from the server. The user then makes changes to the homepage and checks the changes.
[1097] Server-side processing
[1098] The server first receives the previous data (old_content) and the current updated data (new_content) sent from the device. Then, the server creates an instance of the UpdateChecker class and initializes this data. Next, the server calls the find_differences method to extract the differences between the previous data and the current data. These differences indicate the specific changes made on a line-by-line basis. Finally, the server sends the extracted differences to the device.
[1099] Terminal side processing
[1100] When the user completes the update process, the device sends the previous data and the revised data to the server. The device receives the differences returned by the server and displays them to the user. For example, a dedicated component or library can be used to visually display the HTML differences in an easy-to-understand manner.
[1101] User processing
[1102] The user edits the homepage on the editing screen of the device. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, allowing the user to review them and confirm that the edits were made correctly.
[1103] Specific examples
[1104] For example, consider the case where the contents of a homepage are updated as follows:
[1105] Past data (old_content)
[1106] html
[1107] <!DOCTYPE html>
[1108]
[1109]
[1110] <title> Old title< / title>
[1111]
[1112]
[1113] Hello World!
[1114]
[1115]
[1116] Updated data (new_content)
[1117] html
[1118] <!DOCTYPE html>
[1119]
[1120]
[1121] <title> New Title< / title>
[1122]
[1123]
[1124] Hello, users!
[1125]
[1126]
[1127] At this time, the server generates the following differential data and sends it to the terminal:
[1128] diff
[1129] --- old_version
[1130] +++new_version
[1131] @@ -2,7 +2,7 @@
[1132]
[1133]
[1134] <title> Old title< / title>
[1135] + <title> New Title< / title>
[1136]
[1137]
[1138] Hello World!
[1139] + Hello, users!
[1140]
[1141]
[1142] The terminal receives this difference data, and the user visually checks it. In this way, the present invention makes the work of correcting homepages more efficient and relieves the user from the need for manual checking.
[1143] The processing flow will be explained below.
[1144] Server-side processing
[1145] Step 1:
[1146] The server receives the past data (old_content) and the current updated data (new_content) sent from the terminal. Specifically, it receives this information as form data of the HTTP request.
[1147] Step 2:
[1148] The server creates an instance of the UpdateChecker class and initializes it with the received data, which keeps the original data and the updated data in memory.
[1149] Step 3:
[1150] The server calls the find_differences method of the UpdateChecker instance to extract the differences between the past and current data. This method compares the data row by row and generates the deltas.
[1151] Step 4:
[1152] The server sends the extracted differences to the terminal. Specifically, it converts the difference data into JSON format and returns it as an HTTP response.
[1153] Terminal side processing
[1154] Step 1:
[1155] When the user has completed editing the homepage, they press the "Save" or "Send" button on the editing screen of the device, which saves the edited data in the device.
[1156] Step 2:
[1157] The terminal sends the previous data (old_content) and the revised data (new_content) to the server. Specifically, it sends this data using the POST method using an AJAX request.
[1158] Step 3:
[1159] The device receives the difference data (differences) returned from the server and processes the difference data when it is returned as a response using the AJAX request callback function.
[1160] Step 4:
[1161] The terminal then displays the received difference data to the user. Specifically, the difference data is converted into HTML and inserted into a dedicated display area on the editing screen so that the user can visually check it.
[1162] User processing
[1163] Step 1:
[1164] The user edits the homepage on the editing screen of the device, inputs the corrections, and after completing all the necessary changes, presses the "Save" or "Submit" button.
[1165] Step 2:
[1166] The user checks the difference data displayed on the terminal, thereby confirming whether the corrections have been made correctly and checking for any omissions or errors.
[1167] In this way, the elements of the server, terminal, and user work together to build a system in which homepage revision work can be carried out efficiently and accurately.
[1168] Example 1
[1169] 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."
[1170] Previously, updating websites required manual confirmation that changes had been made appropriately, which required a great deal of time and effort. There was also a high risk of incorrect changes being overlooked, making the process unreliable.
[1171] 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.
[1172] In this invention, the server includes means for receiving past data and current update data, means for comparing the past data with the current update data and extracting differences, means for transmitting the extracted differences to the terminal, means for initializing the past data and current update data transmitted from the terminal, and means for visually displaying the extracted differences. This makes it possible to streamline homepage updating work and eliminate the need for manual confirmation work.
[1173] "Historical Data" refers to the content of previous versions of the homepage.
[1174] "Current update data" refers to the content of the new version of the homepage after it has been updated.
[1175] "Means for receiving" refers to the mechanism by which the server obtains past data and current updated data.
[1176] "Means for comparing and extracting differences" refers to a function for comparing past data with current updated data to identify changes.
[1177] "Means for transmitting to the terminal" refers to a mechanism by which the server transmits the extracted differences to the terminal used by the user.
[1178] "Means for initialization" refers to the function of setting up past data sent from the terminal and current updated data, and making it suitable for analysis.
[1179] The "visual display means" refers to a display mechanism for displaying the extracted differences in a format that is easy for the user to understand.
[1180] This invention relates to a system that uses AI to check whether modifications have been made correctly when updating a website, etc. This system consists of three elements: a server, a terminal, and a user.
[1181] Server Roles
[1182] The server receives the past data and the current updated data. Specifically, the past data (old_content) and the current updated data (new_content) are sent from the terminal via an HTTP POST request. After receiving this data, the server creates an instance of the UpdateChecker class and initializes this data. Once initialization is complete, it then calls the find_differences method to extract the differences between the past data and the current data. These differences indicate the specific changes made on a line-by-line basis. Finally, the server sends the extracted differences to the terminal.
[1183] Device Role
[1184] When the user completes the update, the terminal sends the previous data and the revised data to the server. The terminal can use dedicated components or libraries to receive the differences sent back from the server and display them to the user. For example, the Diff2Html library can be used to visually display the differences in HTML in an easy-to-understand manner.
[1185] User Roles
[1186] The user edits the homepage on the editing screen of the device. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, allowing the user to check them and visually verify that the edits were made correctly.
[1187] Specific examples
[1188] For example, consider the case where the contents of a homepage are updated as follows.
[1189] Past data (old_content)
[1190] html
[1191] <!DOCTYPE html>
[1192]
[1193]
[1194] <title> Old title< / title>
[1195]
[1196]
[1197] Hello World!
[1198]
[1199]
[1200] Updated data (new_content)
[1201] html
[1202] <!DOCTYPE html>
[1203]
[1204]
[1205] <title> New Title< / title>
[1206]
[1207]
[1208] Hello, users!
[1209]
[1210]
[1211] The server generates the following differential data and sends it to the device:
[1212] diff
[1213] --- old_version
[1214] +++new_version
[1215] @@ -2,7 +2,7 @@
[1216]
[1217]
[1218] <title> Old title< / title>
[1219] + <title> New Title< / title>
[1220]
[1221]
[1222] Hello World!
[1223] + Hello, users!
[1224]
[1225]
[1226] The terminal receives this difference data and visually displays it to the user. The user can check the difference and confirm whether the corrections were made correctly. In this way, the present invention makes the work of correcting homepages more efficient and relieves the user of the need for manual confirmation work.
[1227] Example prompts for generative AI models
[1228] You can use the following prompts to ask the generative AI model for specific clarification:
[1229] Example prompt:
[1230] AI model, please generate the differences between the following HTML sentences.
[1231] Historical data (old_content):
[1232] <!DOCTYPE html>
[1233]
[1234]
[1235] <title> Old title< / title>
[1236]
[1237]
[1238] Hello World!
[1239]
[1240]
[1241] Updated data (new_content):
[1242] <!DOCTYPE html>
[1243]
[1244]
[1245] <title> New Title< / title>
[1246]
[1247]
[1248] Hello, users!
[1249]
[1250]
[1251] Output a diff-style result showing the differences.
[1252] By inputting this prompt into the generative AI model, the AI analyzes the differences between past data and updated data and outputs them in a visually easy-to-understand format.
[1253] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1254] Step 1:
[1255] The server receives past data and current updated data from the terminal. Specifically, the terminal sends the past data (old_content) and the current updated data (new_content) using an HTTP POST request, and the server receives it. The input at this stage is old_content and new_content, and the received data is stored in the server's memory as output.
[1256] Step 2:
[1257] The server creates an instance of the UpdateChecker class. Specifically, it uses the received old_content and new_content as arguments and creates an instance in the form checker = UpdateChecker(old_content, new_content). This instance contains the data necessary for comparison. The inputs are old_content and new_content, and the generated UpdateChecker instance is obtained as output.
[1258] Step 3:
[1259] The server performs initialization processing on the UpdateChecker instance. Specifically, it calls the checker.initialize_data() method to initialize the past data and current data. This operation prepares the internal data structure and formats the data. The input is the UpdateChecker instance, and the initialized data is set as the output to the UpdateChecker instance.
[1260] Step 4:
[1261] The server calls the find_differences method of UpdateChecker to extract the differences between the past and current data. Specifically, differences = checker.find_differences() is executed, and the internal data comparison algorithm is executed to generate the difference data. The input is an initialized UpdateChecker instance, and the difference data is obtained as the output.
[1262] Step 5:
[1263] The server sends the extracted differences to the terminal as an HTTP response. Specifically, it converts the difference data into JSON format and generates an HTTP response. The input is the difference data, and the output is an HTTP response that is sent to the terminal.
[1264] Step 6:
[1265] The terminal receives the difference data returned from the server. Specifically, it extracts the difference data from the HTTP response and stores it in a local variable. The input is the HTTP response, and the difference data is stored in the terminal as the output.
[1266] Step 7:
[1267] The terminal visually displays the received difference data to the user. Specifically, it uses a library such as diff2html to render the difference data in HTML format and displays it on the screen operated by the user. The input is the difference data, and the output is a visually displayed difference.
[1268] Step 8:
[1269] The user edits the homepage on the editing screen of the terminal. Specifically, they edit the HTML code using a text editor. The input is the HTML code before editing, and the output is the edited HTML code.
[1270] Step 9:
[1271] After completing the modifications, the user uses the terminal's send function to send the data to the server. Specifically, by clicking the "Send" button, the modified HTML code is sent to the server as an HTTP POST request. The input is the modified HTML code, and the output is the sent HTTP request.
[1272] Step 10:
[1273] After the differences returned from the server are displayed on the terminal, the user can check them and confirm whether the corrections have been made correctly. Specifically, the user visually checks the difference data displayed on the terminal and makes further corrections as necessary. The input is the visually displayed difference data, and the user's confirmation results are obtained as the output.
[1274] (Application example 1)
[1275] 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."
[1276] Existing update monitoring systems pose the risk of unintended changes or errors occurring when updating websites or configuration files. Furthermore, particularly in fields requiring high levels of security, such as electronic payment services, such changes can lead to serious security and operational risks. Therefore, a method is needed to efficiently and reliably detect these risks and prompt appropriate responses.
[1277] 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.
[1278] In this invention, the server includes means for receiving past data and current update data, means for comparing the past data with the current update data and extracting differences, means for displaying the extracted differences, means for transmitting the extracted differences to a terminal, means for saving the past data and the current update data in a database, means for detecting unintended changes using the saved data, and means for displaying a warning based on the detected unintended changes. This makes it possible to efficiently detect unintended changes and errors in update work and ensure high security and operational reliability.
[1279] "Past data" refers to existing data before any update work was performed.
[1280] "Current updated data" refers to new data after the update work has been performed.
[1281] "Means for receiving" refers to the functions and devices for inputting data into the server.
[1282] "Means for comparing and extracting differences" refers to algorithms or procedures for detecting differences between past data and current updated data.
[1283] The "display means" refers to an interface or tool that allows the user to visually confirm the extracted differences.
[1284] "Transmission means" refers to the communication means or protocol for sending data from the server to the terminal.
[1285] A "means for storing data in a database" is a system or method for permanently storing data.
[1286] "Detection methods" are functions and technologies that analyze stored data and detect unintended changes.
[1287] The "means for displaying a warning" refers to a function or device for alerting the user to the detected unintended change.
[1288] A "system" is the totality of components that integrate these means to automate tasks and improve reliability.
[1289] The system for realizing this invention consists of three elements: a server, a terminal, and a user. The server receives past data and current updated data, compares them, and extracts differences. The terminal allows the user to input updated data and displays the response from the server. The user performs the update and confirms it.
[1290] In a specific example, the server uses an API endpoint to receive past data and current update data. This can be achieved using a web framework such as Python's Flask or Django. Once received, this data is fed into the UpdateChecker class, which uses the find_differences method to extract differences. This difference data is calculated using the difflib module.
[1291] The server can store the extracted differences in a database, for example, using SQLite or PostgreSQL, which can then be used to detect any unintended changes that may have occurred, using AI models or rule-based algorithms.
[1292] After the user completes the update process, the device provides an interface for sending the past data and the current updated data to the server using a front-end framework such as React or Vue.js. Any differences or warning messages returned by the server are visually displayed on the device screen.
[1293] For example, consider a change to a configuration file for an electronic payment service. The previous version of the configuration file contained a sandbox environment and an old API key, and the current version has been changed to a production environment and a new API key. In this case, the server compares the previous version with the new version to check for any unintended changes.
[1294] Example prompt sentence:
[1295] Generate an example prompt using the SecurePay Updates Checker to compare a previous version of a configuration file with the current version and check for unintended changes. Use the following JSON object: the previous version contains a sandbox environment and an old API key, and the current version is changed to a production environment and a new API key.
[1296] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1297] Step 1:
[1298] The device inputs data updated by the user (current updated data) as well as past data, and sends these to the server. The input data is configured as a JSON format API request when sent to the server. Specifically, it uses an input form in a browser or application, and utilizes front-end frameworks such as React and Vue.js.
[1299] Input: Past data, current updated data
[1300] Output: Data sent to the server in JSON format
[1301] Step 2:
[1302] The server receives past data and current updated data sent from the device. The received data is temporarily stored in memory and prepared for the next processing step. Specifically, the data is received at the endpoint of a web framework such as Flask or Django and passed to processing.
[1303] Input: JSON data sent from the terminal
[1304] Output: Past data stored in memory and current updated data
[1305] Step 3:
[1306] The server passes the received past data and the current update data to the UpdateChecker class and initializes it. An instance of the UpdateChecker class is created and the two pieces of data are saved in internal variables.
[1307] Input: Past data, current updated data
[1308] Output: An initialized UpdateChecker object
[1309] Step 4:
[1310] The server calls the find_differences method of the UpdateChecker class to extract the differences between the past data and the current update data. Specifically, the difflib module is used to calculate the differences for each line and generate a unified format of the difference data.
[1311] Input: UpdateChecker object
[1312] Output: Differential data
[1313] Step 5:
[1314] The server saves the extracted differential data in a database using a relational database such as SQLite or PostgreSQL. The database stores past data, current updated data, and differential data.
[1315] Input: differential data
[1316] Output: Differential data stored in the database
[1317] Step 6:
[1318] The server detects unintended changes to the stored data by using AI models and rule-based algorithms to analyze it for anomalous patterns or suspicious changes. This process can be performed using machine learning models (e.g., TensorFlow or PyTorch).
[1319] Input: Past data stored in the database, current updated data, differential data
[1320] Output: Unintended changes detected
[1321] Step 7:
[1322] The server generates a warning message based on the detected unintended changes, which is then structured in JSON and ready to be sent to the device.
[1323] Input: Unintended change detection result
[1324] Output: Warning message
[1325] Step 8:
[1326] The terminal receives the warning messages and difference data sent from the server and displays them visually to the user. Front-end frameworks such as React and Vue.js are used to display the warnings and difference data in an easy-to-read user interface.
[1327] Input: warning message, differential data
[1328] Output: Warning messages and diff data displayed to the user
[1329] The above processing steps allow the user to quickly identify unintended changes or errors in the update work, improving the reliability and security of the system.
[1330] 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.
[1331] This invention relates to a system that uses AI to check whether modifications have been made correctly when updating a website, etc. By adding an emotion engine, this system recognizes the user's emotions, improving the efficiency of the modification process and the user experience.
[1332] System configuration
[1333] This system consists of a server, a terminal, and a user. It also integrates an emotion engine that recognizes the user's emotions and adjusts the way data is displayed and the support functions.
[1334] Server-side processing
[1335] The server first receives the previous data (old_content) and the current updated data (new_content) sent from the device. The server creates an instance of the UpdateChecker class and initializes the received data. It then calls the find_differences method to extract the differences between the previous data and the current data. The extracted differences are converted to JSON format and sent to the device. The emotion engine also processes the user's emotion data and provides appropriate feedback.
[1336] Terminal side processing
[1337] When the user completes editing the homepage, the device sends the previous data and the updated data to the server. The device receives the difference data returned from the server and displays it to the user. The display method changes depending on the user's emotion. For example, if the user expresses frustration, the system displays it using a softer color tone or additional explanation. The emotion engine recognizes emotions from the user's facial expressions, voice, input patterns, etc.
[1338] User processing
[1339] The user edits the homepage on the device's editing screen. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, and the display is adjusted according to the user's emotional state. If the user is emotional, the system will provide additional advice and warnings to support them.
[1340] Specific examples
[1341] For example, consider the case where the contents of a homepage are updated as follows:
[1342] Past data (old_content)
[1343] html
[1344] <!DOCTYPE html>
[1345]
[1346]
[1347] <title> Old title< / title>
[1348]
[1349]
[1350] Hello World!
[1351]
[1352]
[1353] Updated data (new_content)
[1354] html
[1355] <!DOCTYPE html>
[1356]
[1357]
[1358] <title> New Title< / title>
[1359]
[1360]
[1361] Hello, users!
[1362]
[1363]
[1364] At this time, the server generates the following differential data and sends it to the terminal:
[1365] diff
[1366] --- old_version
[1367] +++new_version
[1368] @@ -2,7 +2,7 @@
[1369]
[1370]
[1371] <title> Old title< / title>
[1372] + <title> New Title< / title>
[1373]
[1374]
[1375] Hello World!
[1376] + Hello, users!
[1377]
[1378]
[1379] The device receives this difference data and uses an emotion engine to present it to the user in a way that reflects their emotional state. For example, if the user expresses surprise or confusion, the system can provide a detailed explanation of the difference and hints on how to fix it to help the user understand.
[1380] In this way, the server, terminal, emotion engine, and user elements work together to create a system that allows homepage revisions to be performed efficiently and accurately. The introduction of the emotion engine improves the user experience, as well as work efficiency and accuracy.
[1381] The processing flow will be explained below.
[1382] Server-side processing
[1383] Step 1:
[1384] The server receives the past data (old_content) and the current updated data (new_content) sent from the terminal. Specifically, it receives them as form data of the HTTP request.
[1385] Step 2:
[1386] The server creates an instance of the UpdateChecker class and initializes it with the received data, which stores the past data and updated data in memory.
[1387] Step 3:
[1388] The server calls the find_differences method of the UpdateChecker instance to extract the differences between the past and current data. This method compares the data row by row and calculates the differences.
[1389] Step 4:
[1390] The server converts the extracted differences into JSON format and sends it to the terminal as an HTTP response, allowing the terminal to receive the differences.
[1391] Step 5:
[1392] The server uses an emotion engine to analyze the user's emotion data. Specifically, the emotion engine analyzes the received data and the user's input data.
[1393] Step 6:
[1394] The server generates feedback and advice based on the analyzed emotional data and sends it to the device, thereby providing support according to the user's emotional state.
[1395] Terminal side processing
[1396] Step 1:
[1397] When the user has completed editing the homepage, they press the "Save" or "Send" button on the editing screen of the device, which saves the edited data in the device.
[1398] Step 2:
[1399] The terminal sends the previous data (old_content) and the revised data (new_content) to the server. Specifically, it sends this data using the POST method using an AJAX request.
[1400] Step 3:
[1401] The device receives the difference data (differences) returned from the server and processes the difference data when it is returned as a response using the AJAX request callback function.
[1402] Step 4:
[1403] The terminal then displays the received difference data to the user, using dedicated HTML components and libraries to visually show the changes line by line.
[1404] Step 5:
[1405] The emotion engine analyzes the user's facial expressions, voice, and input patterns to understand their emotional state, and adjusts the color and format of the difference display accordingly.
[1406] Step 6:
[1407] The emotion engine generates feedback and advice that is displayed on the device. For example, if the user expresses frustration, a "further explanation of what needs to be fixed" message will be displayed on the screen.
[1408] User processing
[1409] Step 1:
[1410] The user edits the homepage on the editing screen of the device, inputs the changes, and when all changes are complete, presses the "Save" or "Submit" button.
[1411] Step 2:
[1412] The user checks the difference data displayed on the terminal and checks whether the modifications made by the user are accurately reflected.
[1413] Step 3:
[1414] The user can then take the feedback and advice provided by the emotion engine into consideration and make further corrections as needed, and proceed by checking warnings and additional information from the system.
[1415] In this way, the server, terminal, emotion engine, and user elements work together to create a system that allows homepage revisions to be performed efficiently and accurately. The introduction of the emotion engine improves the user experience, as well as increasing work efficiency and accuracy.
[1416] Example 2
[1417] 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."
[1418] Conventional website update check systems only extract and display the differences between past data and current updated data, and are unable to flexibly respond to user emotions or operational situations. This makes it difficult to reduce the frustration and confusion users feel during the update process, and there has been a demand for improved work efficiency and user experience.
[1419] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for receiving past data and current update data, means for comparing the past data and the current update data and extracting differences, means for displaying the extracted differences, means for transmitting the extracted differences to the terminal, means for recognizing the user's emotion, and means for adjusting the display method according to the emotion. This allows the user to receive appropriate feedback according to their emotional state, making it possible to improve the efficiency of correction work and the user experience.
[1420] "Past data" refers to old versions of data from before updates were made to a website or the like.
[1421] "Current updated data" refers to the new version of data after updates to the homepage or the like have been made.
[1422] "Means for receiving" refers to the interface or protocol for transmitting past data and current update data to the server.
[1423] "Means for comparison and extraction of differences" refers to the process of using an algorithm to compare past data with current updated data and detect differences between them.
[1424] The "display means" refers to an interface for visually presenting the extracted differences to the user.
[1425] "Means for transmitting to the terminal" refers to an interface or protocol for transmitting the extracted differences from the server to the terminal.
[1426] "Means for recognizing user emotions" refers to technology that uses an emotion engine or similar to analyze a user's facial expressions, voice, and input patterns to identify the user's emotional state.
[1427] "Means for adjusting the display method according to emotions" refers to a process for changing the display method of differences and the feedback content based on the recognized emotional state of the user.
[1428] This invention relates to a system that uses AI (artificial intelligence) to check whether modifications have been made correctly when updating a website, etc. By adding an emotion engine, this system recognizes the user's emotions, improving the efficiency of the modification process and the user experience.
[1429] System configuration
[1430] This system consists of a server, a terminal, and a user. It also integrates an emotion engine that recognizes the user's emotions and adjusts the way data is displayed and the support functions.
[1431] Server-side processing
[1432] The server first receives the previous data (old_content) and the current updated data (new_content) sent from the device. The server creates an instance of the UpdateChecker class and initializes the received data. It then calls the find_differences method to extract the differences between the previous data and the current data. The extracted differences are converted to JSON format and sent to the device. The emotion engine then processes the user's emotion data and provides appropriate feedback. Specifically, the emotion engine recognizes emotions from the user's facial expressions, voice, input patterns, etc., and changes the feedback content as necessary. For this, Python facial recognition libraries such as OpenCV and DeepFace can be used.
[1433] Terminal side processing
[1434] When the user completes editing the homepage, the device sends the previous data and the updated data to the server. The device receives the difference data returned from the server and displays it to the user. The display method changes depending on the user's emotion. For example, if the user expresses frustration, the system displays it using a softer color tone or additional explanation. The emotion engine recognizes emotions from the user's facial expressions, voice, input patterns, etc.
[1435] User processing
[1436] The user edits the homepage on the editing screen of the device. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, and the display method is adjusted according to the user's emotional state. If the user is emotional, the system will provide additional advice and warnings to support them. Specifically, the user can use the following prompts after making edits:
[1437] Please update your homepage and check the difference between the data before and after the update. Please also refer to the sentiment data below to provide a more user-friendly display.
[1438] Specific examples
[1439] For example, consider the case where the contents of a homepage are updated as follows:
[1440] 1. Past data (old_content)
[1441] html
[1442] <!DOCTYPE html>
[1443]
[1444]
[1445] <title> Old title< / title>
[1446]
[1447]
[1448] Hello World!
[1449]
[1450]
[1451] 2. Updated data (new_content)
[1452] html
[1453] <!DOCTYPE html>
[1454]
[1455]
[1456] <title> New Title< / title>
[1457]
[1458]
[1459] Hello, users!
[1460]
[1461]
[1462] The server receives this data and extracts the differences as follows:
[1463] diff
[1464] --- old_version
[1465] +++new_version
[1466] @@ -2,7 +2,7 @@
[1467]
[1468]
[1469] <title> Old title< / title>
[1470] + <title> New Title< / title>
[1471]
[1472]
[1473] Hello World!
[1474] + Hello, users!
[1475]
[1476]
[1477] The device receives this difference data and uses an emotion engine to present it to the user in a display format based on the user's emotional state. For example, if the user expresses surprise or confusion, the system will display a detailed explanation of the difference and additional correction tips.
[1478] In this way, the server, terminal, emotion engine, and user elements work together to create a system that allows homepage revisions to be performed efficiently and accurately. The introduction of the emotion engine improves the user experience, as well as work efficiency and accuracy.
[1479] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1480] Step 1: Send data
[1481] When the user completes the homepage modification work, the device sends the previous data (old_content) and the modified data (new_content) to the server. Specifically, it uses the JavaScript fetch API to send this data to the server in JSON format. The input at this time is the data before and after the user's modification, and the output is an HTTP request to the server.
[1482] javascript
[1483] fetch('https: / / example.com / check-update', {
[1484] method: 'POST',
[1485] headers: {
[1486] 'Content-Type': 'application / json'
[1487] },
[1488] body: JSON.stringify({
[1489] old_content: oldContent,
[1490] new_content: newContent
[1491] })
[1492] });
[1493] Step 2: Receiving data
[1494] The server receives the HTTP request sent from the device and analyzes the attached past data (old_content) and current updated data (new_content). Specifically, it receives data using a framework (such as Python's Flask or Django). The input is the HTTP request from the device, and the output is the analyzed old_content and new_content.
[1495] Step 3: Factory Data Reset
[1496] The server creates an instance of the UpdateChecker class and initializes it with the received data. This sets the data needed for comparison. The inputs are old_content and new_content, and the output is the initialized UpdateChecker instance.
[1497] Step 4: Difference Extraction
[1498] The server calls the find_differences method of the UpdateChecker class to extract the differences between the past data and the current data. Specifically, it calculates the data differences using the Python difflib library. The input is an initialized UpdateChecker instance, and the output is the extracted differences.
[1499] Step 5: Convert the differences to JSON
[1500] The server converts the extracted differences into JSON format. It uses the Python json module to convert the extracted difference data into a JSON string. The input is the difference data and the output is a JSON formatted string.
[1501] python
[1502] import json
[1503] diff_json = json.dumps(differences)
[1504] Step 6: Submitting the Difference Data
[1505] The server returns the difference data converted to JSON format to the terminal. Specifically, it is returned as an HTTP response. The input is the difference data in JSON format, and the output is an HTTP response to the terminal.
[1506] python
[1507] return jsonify({"differences": diff_json})
[1508] Step 7: Receive difference data from the server
[1509] The terminal receives the difference data in JSON format returned from the server. It uses the JavaScript fetch API to receive the response and parses the data using the response.json() method. The input is the HTTP response from the server, and the output is the parsed difference data.
[1510] javascript
[1511] fetch('https: / / example.com / check-update')
[1512] .then(response => response.json())
[1513] .then(data => {
[1514] let diff = data.differences;
[1515] document.getElementById('diff-output').innerText = diff;
[1516] });
[1517] Step 8: Show the differences to the user
[1518] The device visually presents the received difference data to the user, performing DOM manipulation and displaying the differences on the screen. The input is the parsed difference data, and the output is a visual diff display that the user can see on the screen.
[1519] javascript
[1520] document.getElementById('diff-output').innerText = diff;
[1521] Step 9: Display adjustment using the emotion engine
[1522] The emotion engine analyzes the user's facial expressions, voice, and input patterns and adjusts the display accordingly. For example, if the user expresses frustration, the system will display them using a milder color tone or additional explanations. The input is the user's emotional data, and the output is the adjusted display. Specifically, the display is dynamically changed using CSS and JavaScript.
[1523] javascript
[1524] if (userEmotion === 'frustrated') {
[1525] document.getElementById('diff-output').style.color = 'blue';
[1526] / / Show additional explanation
[1527] document.getElementById('additional-info').innerText = 'Detailed description of the diff';
[1528] }
[1529]
[1530] (Application example 2)
[1531] 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."
[1532] When updating websites or online shopping sites, accurate data updates and an improved user experience are required. However, checks during updates are often performed manually, which is inefficient and prone to errors. Furthermore, feedback that ignores the emotions felt by users during the update process can degrade the user experience. For this reason, a system that takes user emotions into account while maintaining the accuracy of the update process is needed.
[1533] The specification process by the specification 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 past data and current update data, means for comparing the past data with the current update data and extracting differences, and means for displaying the extracted differences. As a result, by including emotion recognition means for recognizing the user's emotion and means for adjusting the display method based on the recognized emotional state, not only can the updating work of a homepage or mail order site be performed accurately and efficiently, but feedback according to the user's emotion can also be provided.
[1534] "Past data" refers to information that indicates a previous state or content acquired by the system.
[1535] "Current update data" is information indicating the state or content after the update newly acquired by the system.
[1536] "Means for receiving" refers to a function or device for incorporating past data and current updated data into the system.
[1537] The "means for comparing and extracting differences" is a function or algorithm that compares past data with current updated data and finds the differences.
[1538] The "display means" is a function or device for visually notifying the user of the extracted differences.
[1539] The "means for transmitting to the terminal" is a function or protocol for sending information about the extracted differences to another device.
[1540] The "emotion recognition means for recognizing the user's emotions" is a function or system that analyzes the user's facial expressions, voice, input patterns, etc. to determine the user's emotional state.
[1541] A "means for adjusting the display manner" is a function or algorithm that changes the way differences are displayed based on the perceived emotional state of the user.
[1542] This invention is a system that uses AI to check whether update data is correctly reflected when updating an online shopping site, and provides feedback according to the user's emotions. Below, we will explain how to specifically implement this system.
[1543] 1. System Overview
[1544] This system consists of three elements: a server, a terminal, and a user. The server processes data, and the terminal accepts user operations and displays the results. The user updates the homepage and product pages and checks the results.
[1545] 2. Hardware and Software Used
[1546] Hardware:
[1547] Server: A computer with high processing power
[1548] Device: Smartphone or tablet
[1549] software:
[1550] Emotion recognition libraries: e.g., DeepMoji
[1551] A diff comparison library: e.g., difflib
[1552] Programming language: Python
[1553] 3. Data processing flow
[1554] Server-side processing
[1555] The server receives past data and current update data from the device. It then compares these data using the UpdateChecker class and extracts differences. These differences are converted into JSON format and sent to the device. At the same time, it analyzes the user's emotional state using an emotion recognition library. Based on the analysis results, appropriate feedback is generated and sent to the device.
[1556] Terminal side processing
[1557] When the user completes the update process, the device sends the previous data and the updated data to the server. The device receives the difference data returned from the server and displays it to the user. The display method is adjusted according to the user's emotional state; for example, if the user shows surprise, detailed explanations or hints are displayed.
[1558] User operations
[1559] Users edit their homepages and product pages on the screen. When they are done, they press the submit button to send the data to the server. They then check the feedback displayed on their device and make further edits as needed.
[1560] Specific examples
[1561] For example, consider updating the "review section" of an online shopping site. The previous data is the "old review content," and the updated data is the "new review content." In this case, the server generates the following differential data and sends it to the device:
[1562] diff
[1563] --- old_version
[1564] +++new_version
[1565] @@ -1,1 +1,1 @@
[1566] Previous review content
[1567] + New review content
[1568] Example prompts for generative AI models
[1569] "When updating a user's review, the changes shown are as follows: Old review: Previous review content What's new in the review: New review content The user seems surprised. Please generate appropriate feedback in this situation."
[1570] The system described above allows for efficient and accurate updating of homepages and product pages, improving the user experience. In particular, feedback that takes into account the user's emotions reduces stress during work and provides a better user experience.
[1571] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1572] Step 1:
[1573] User enters and submits data:
[1574] The user completes the update of the homepage or product page on the terminal. Specifically, they edit the review content and product information and press the send button. The previous data and updated data are generated as input data and sent to the server.
[1575] Input: Past data, updated data
[1576] Output: Data sent to the server
[1577] Step 2:
[1578] Server receives data and initializes:
[1579] The server receives the past data and update data sent from the device, and then initializes this data using the UpdateChecker class.
[1580] Input: Past data and updated data sent from the device
[1581] Output: Initialized data
[1582] Step 3:
[1583] Server-based data comparison and difference detection:
[1584] The initialized past data and the updated data are compared using the find_differences method of the UpdateChecker class to extract the differences. These differences are calculated using a difference comparison library (e.g., difflib).
[1585] Input: Initialized past data, updated data
[1586] Output: Extracted differences (diff data)
[1587] Step 4:
[1588] Server converts and sends differences:
[1589] The extracted differences are converted into JSON format and sent to the terminal. The converted differential data is displayed in a user-friendly format.
[1590] Input: Extracted differences
[1591] Output: JSON formatted diff data sent to the terminal
[1592] Step 5:
[1593] Server-based user emotion recognition:
[1594] To recognize user emotions, an emotion recognition library (e.g., DeepMoji) is used to analyze user input data, which includes facial expressions, voice, and text content.
[1595] Input: User-entered data
[1596] Output: User's emotional state
[1597] Step 6:
[1598] Server-generated and sent feedback:
[1599] Based on the recognized emotional state, appropriate feedback is generated, for example, if the user expresses surprise, detailed explanations or hints are added, and this feedback is sent to the device.
[1600] Input: User's emotional state
[1601] Output: Feedback sent to the device
[1602] Step 7:
[1603] Display feedback by device:
[1604] The terminal receives the difference data and feedback sent from the server and displays them to the user, adjusting the display method according to the user's emotional state.
[1605] Input: Differential data sent from the server, feedback
[1606] Output: Diff data and feedback displayed to the user
[1607] 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.
[1608] 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.
[1609] 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.
[1610] [Fourth embodiment]
[1611] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1612] 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.
[1613] 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).
[1614] 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.
[1615] 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.
[1616] 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).
[1617] 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.
[1618] 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.
[1619] 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.
[1620] 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.
[1621] 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.
[1622] 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.
[1623] 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."
[1624] The present invention relates to a system that uses AI to check whether modifications have been made correctly when updating a website, etc. A specific embodiment of this system will be described below.
[1625] System configuration
[1626] This system consists of three elements: a server, a terminal, and a user. The server receives past data and current updated data, compares them, and extracts differences. The terminal allows the user to input updated data and displays the response from the server. The user then makes changes to the homepage and checks the changes.
[1627] Server-side processing
[1628] The server first receives the previous data (old_content) and the current updated data (new_content) sent from the device. Then, the server creates an instance of the UpdateChecker class and initializes this data. Next, the server calls the find_differences method to extract the differences between the previous data and the current data. These differences indicate the specific changes made on a line-by-line basis. Finally, the server sends the extracted differences to the device.
[1629] Terminal side processing
[1630] When the user completes the update process, the device sends the previous data and the revised data to the server. The device receives the differences returned by the server and displays them to the user. For example, a dedicated component or library can be used to visually display the HTML differences in an easy-to-understand manner.
[1631] User processing
[1632] The user edits the homepage on the editing screen of the device. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, allowing the user to review them and confirm that the edits were made correctly.
[1633] Specific examples
[1634] For example, consider the case where the contents of a homepage are updated as follows:
[1635] Past data (old_content)
[1636] html
[1637] <!DOCTYPE html>
[1638]
[1639]
[1640] <title> Old title< / title>
[1641]
[1642]
[1643] Hello World!
[1644]
[1645]
[1646] Updated data (new_content)
[1647] html
[1648] <!DOCTYPE html>
[1649]
[1650]
[1651] <title>New Title< / title>
[1652]
[1653]
[1654] Hello, users!
[1655]
[1656]
[1657] At this time, the server generates the following differential data and sends it to the terminal:
[1658] diff
[1659] --- old_version
[1660] +++new_version
[1661] @@ -2,7 +2,7 @@
[1662]
[1663]
[1664] <title> Old title< / title>
[1665] + <title> New Title< / title>
[1666]
[1667]
[1668] Hello World!
[1669] + Hello, users!
[1670]
[1671]
[1672] The terminal receives this difference data, and the user visually checks it. In this way, the present invention makes the work of correcting homepages more efficient and relieves the user from the need for manual checking.
[1673] The processing flow will be explained below.
[1674] Server-side processing
[1675] Step 1:
[1676] The server receives the past data (old_content) and the current updated data (new_content) sent from the terminal. Specifically, it receives this information as form data of the HTTP request.
[1677] Step 2:
[1678] The server creates an instance of the UpdateChecker class and initializes it with the received data, which keeps the original data and the updated data in memory.
[1679] Step 3:
[1680] The server calls the find_differences method of the UpdateChecker instance to extract the differences between the past and current data. This method compares the data row by row and generates the deltas.
[1681] Step 4:
[1682] The server sends the extracted differences to the terminal. Specifically, it converts the difference data into JSON format and returns it as an HTTP response.
[1683] Terminal side processing
[1684] Step 1:
[1685] When the user has completed editing the homepage, they press the "Save" or "Send" button on the editing screen of the device, which saves the edited data in the device.
[1686] Step 2:
[1687] The terminal sends the previous data (old_content) and the revised data (new_content) to the server. Specifically, it sends this data using the POST method using an AJAX request.
[1688] Step 3:
[1689] The device receives the difference data (differences) returned from the server and processes the difference data when it is returned as a response using the AJAX request callback function.
[1690] Step 4:
[1691] The terminal then displays the received difference data to the user. Specifically, the difference data is converted into HTML and inserted into a dedicated display area on the editing screen so that the user can visually check it.
[1692] User processing
[1693] Step 1:
[1694] The user edits the homepage on the editing screen of the device, inputs the corrections, and after completing all the necessary changes, presses the "Save" or "Submit" button.
[1695] Step 2:
[1696] The user checks the difference data displayed on the terminal, thereby confirming whether the corrections have been made correctly and checking for any omissions or errors.
[1697] In this way, the elements of the server, terminal, and user work together to build a system in which homepage revision work can be carried out efficiently and accurately.
[1698] Example 1
[1699] 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."
[1700] Previously, updating websites required manual confirmation that changes had been made appropriately, which required a great deal of time and effort. There was also a high risk of incorrect changes being overlooked, making the process unreliable.
[1701] 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.
[1702] In this invention, the server includes means for receiving past data and current update data, means for comparing the past data with the current update data and extracting differences, means for transmitting the extracted differences to the terminal, means for initializing the past data and current update data transmitted from the terminal, and means for visually displaying the extracted differences. This makes it possible to streamline homepage updating work and eliminate the need for manual confirmation work.
[1703] "Historical Data" refers to the content of previous versions of the homepage.
[1704] "Current update data" refers to the content of the new version of the homepage after it has been updated.
[1705] "Means for receiving" refers to the mechanism by which the server obtains past data and current updated data.
[1706] "Means for comparing and extracting differences" refers to a function for comparing past data with current updated data to identify changes.
[1707] "Means for transmitting to the terminal" refers to a mechanism by which the server transmits the extracted differences to the terminal used by the user.
[1708] "Means for initialization" refers to the function of setting up past data sent from the terminal and current updated data, and making it suitable for analysis.
[1709] The "visual display means" refers to a display mechanism for displaying the extracted differences in a format that is easy for the user to understand.
[1710] This invention relates to a system that uses AI to check whether modifications have been made correctly when updating a website, etc. This system consists of three elements: a server, a terminal, and a user.
[1711] Server Roles
[1712] The server receives the past data and the current updated data. Specifically, the past data (old_content) and the current updated data (new_content) are sent from the terminal via an HTTP POST request. After receiving this data, the server creates an instance of the UpdateChecker class and initializes this data. Once initialization is complete, it then calls the find_differences method to extract the differences between the past data and the current data. These differences indicate the specific changes made on a line-by-line basis. Finally, the server sends the extracted differences to the terminal.
[1713] Device Role
[1714] When the user completes the update, the terminal sends the previous data and the revised data to the server. The terminal can use dedicated components or libraries to receive the differences sent back from the server and display them to the user. For example, the Diff2Html library can be used to visually display the differences in HTML in an easy-to-understand manner.
[1715] User Roles
[1716] The user edits the homepage on the editing screen of the device. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, allowing the user to check them and visually verify that the edits were made correctly.
[1717] Specific examples
[1718] For example, consider the case where the contents of a homepage are updated as follows.
[1719] Past data (old_content)
[1720] html
[1721] <!DOCTYPE html>
[1722]
[1723]
[1724] <title> Old title< / title>
[1725]
[1726]
[1727] Hello World!
[1728]
[1729]
[1730] Updated data (new_content)
[1731] html
[1732] <!DOCTYPE html>
[1733]
[1734]
[1735] <title> New Title< / title>
[1736]
[1737]
[1738] Hello, users!
[1739]
[1740]
[1741] The server generates the following differential data and sends it to the device:
[1742] diff
[1743] --- old_version
[1744] +++new_version
[1745] @@ -2,7 +2,7 @@
[1746]
[1747]
[1748] <title> Old title< / title>
[1749] + <title> New Title< / title>
[1750]
[1751]
[1752] Hello World!
[1753] + Hello, users!
[1754]
[1755]
[1756] The terminal receives this difference data and visually displays it to the user. The user can check the difference and confirm whether the corrections were made correctly. In this way, the present invention makes the work of correcting homepages more efficient and relieves the user of the need for manual confirmation work.
[1757] Example prompts for generative AI models
[1758] You can use the following prompts to ask the generative AI model for specific clarification:
[1759] Example prompt:
[1760] AI model, please generate the differences between the following HTML sentences.
[1761] Historical data (old_content):
[1762] <!DOCTYPE html>
[1763]
[1764]
[1765] <title> Old title< / title>
[1766]
[1767]
[1768] Hello World!
[1769]
[1770]
[1771] Updated data (new_content):
[1772] <!DOCTYPE html>
[1773]
[1774]
[1775] <title> New Title< / title>
[1776]
[1777]
[1778] Hello, users!
[1779]
[1780]
[1781] Output a diff-style result showing the differences.
[1782] By inputting this prompt into the generative AI model, the AI analyzes the differences between past data and updated data and outputs them in a visually easy-to-understand format.
[1783] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1784] Step 1:
[1785] The server receives past data and current updated data from the terminal. Specifically, the terminal sends the past data (old_content) and the current updated data (new_content) using an HTTP POST request, and the server receives it. The input at this stage is old_content and new_content, and the received data is stored in the server's memory as output.
[1786] Step 2:
[1787] The server creates an instance of the UpdateChecker class. Specifically, it uses the received old_content and new_content as arguments and creates an instance in the form checker = UpdateChecker(old_content, new_content). This instance contains the data necessary for comparison. The inputs are old_content and new_content, and the generated UpdateChecker instance is obtained as output.
[1788] Step 3:
[1789] The server performs initialization processing on the UpdateChecker instance. Specifically, it calls the checker.initialize_data() method to initialize the past data and current data. This operation prepares the internal data structure and formats the data. The input is the UpdateChecker instance, and the initialized data is set as the output to the UpdateChecker instance.
[1790] Step 4:
[1791] The server calls the find_differences method of UpdateChecker to extract the differences between the past and current data. Specifically, differences = checker.find_differences() is executed, and the internal data comparison algorithm is executed to generate the difference data. The input is an initialized UpdateChecker instance, and the difference data is obtained as the output.
[1792] Step 5:
[1793] The server sends the extracted differences to the terminal as an HTTP response. Specifically, it converts the difference data into JSON format and generates an HTTP response. The input is the difference data, and the output is an HTTP response that is sent to the terminal.
[1794] Step 6:
[1795] The terminal receives the difference data returned from the server. Specifically, it extracts the difference data from the HTTP response and stores it in a local variable. The input is the HTTP response, and the difference data is stored in the terminal as the output.
[1796] Step 7:
[1797] The terminal visually displays the received difference data to the user. Specifically, it uses a library such as diff2html to render the difference data in HTML format and displays it on the screen operated by the user. The input is the difference data, and the output is a visually displayed difference.
[1798] Step 8:
[1799] The user edits the homepage on the editing screen of the terminal. Specifically, they edit the HTML code using a text editor. The input is the HTML code before editing, and the output is the edited HTML code.
[1800] Step 9:
[1801] After completing the modifications, the user uses the terminal's send function to send the data to the server. Specifically, by clicking the "Send" button, the modified HTML code is sent to the server as an HTTP POST request. The input is the modified HTML code, and the output is the sent HTTP request.
[1802] Step 10:
[1803] After the differences returned from the server are displayed on the terminal, the user can check them and confirm whether the corrections have been made correctly. Specifically, the user visually checks the difference data displayed on the terminal and makes further corrections as necessary. The input is the visually displayed difference data, and the user's confirmation results are obtained as the output.
[1804] (Application example 1)
[1805] 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."
[1806] Existing update monitoring systems pose the risk of unintended changes or errors occurring when updating websites or configuration files. Furthermore, particularly in fields requiring high levels of security, such as electronic payment services, such changes can lead to serious security and operational risks. Therefore, a method is needed to efficiently and reliably detect these risks and prompt appropriate responses.
[1807] 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.
[1808] In this invention, the server includes means for receiving past data and current update data, means for comparing the past data with the current update data and extracting differences, means for displaying the extracted differences, means for transmitting the extracted differences to a terminal, means for saving the past data and the current update data in a database, means for detecting unintended changes using the saved data, and means for displaying a warning based on the detected unintended changes. This makes it possible to efficiently detect unintended changes and errors in update work and ensure high security and operational reliability.
[1809] "Past data" refers to existing data before any update work was performed.
[1810] "Current updated data" refers to new data after the update work has been performed.
[1811] "Means for receiving" refers to the functions and devices for inputting data into the server.
[1812] "Means for comparing and extracting differences" refers to algorithms or procedures for detecting differences between past data and current updated data.
[1813] The "display means" refers to an interface or tool that allows the user to visually confirm the extracted differences.
[1814] "Transmission means" refers to the communication means or protocol for sending data from the server to the terminal.
[1815] A "means for storing data in a database" is a system or method for permanently storing data.
[1816] "Detection methods" are functions and technologies that analyze stored data and detect unintended changes.
[1817] The "means for displaying a warning" refers to a function or device for alerting the user to the detected unintended change.
[1818] A "system" is the totality of components that integrate these means to automate tasks and improve reliability.
[1819] The system for realizing this invention consists of three elements: a server, a terminal, and a user. The server receives past data and current updated data, compares them, and extracts differences. The terminal allows the user to input updated data and displays the response from the server. The user performs the update and confirms it.
[1820] In a specific example, the server uses an API endpoint to receive past data and current update data. This can be achieved using a web framework such as Python's Flask or Django. Once received, this data is fed into the UpdateChecker class, which uses the find_differences method to extract differences. This difference data is calculated using the difflib module.
[1821] The server can store the extracted differences in a database, for example, using SQLite or PostgreSQL, which can then be used to detect any unintended changes that may have occurred, using AI models or rule-based algorithms.
[1822] After the user completes the update process, the device provides an interface for sending the past data and the current updated data to the server using a front-end framework such as React or Vue.js. Any differences or warning messages returned by the server are visually displayed on the device screen.
[1823] For example, consider a change to a configuration file for an electronic payment service. The previous version of the configuration file contained a sandbox environment and an old API key, and the current version has been changed to a production environment and a new API key. In this case, the server compares the previous version with the new version to check for any unintended changes.
[1824] Example prompt sentence:
[1825] Generate an example prompt using the SecurePay Updates Checker to compare a previous version of a configuration file with the current version and check for unintended changes. Use the following JSON object: the previous version contains a sandbox environment and an old API key, and the current version is changed to a production environment and a new API key.
[1826] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1827] Step 1:
[1828] The device inputs data updated by the user (current updated data) as well as past data, and sends these to the server. The input data is configured as a JSON format API request when sent to the server. Specifically, it uses an input form in a browser or application, and utilizes front-end frameworks such as React and Vue.js.
[1829] Input: Past data, current updated data
[1830] Output: Data sent to the server in JSON format
[1831] Step 2:
[1832] The server receives past data and current updated data sent from the device. The received data is temporarily stored in memory and prepared for the next processing step. Specifically, the data is received at the endpoint of a web framework such as Flask or Django and passed to processing.
[1833] Input: JSON data sent from the terminal
[1834] Output: Past data stored in memory and current updated data
[1835] Step 3:
[1836] The server passes the received past data and the current update data to the UpdateChecker class and initializes it. An instance of the UpdateChecker class is created and the two pieces of data are saved in internal variables.
[1837] Input: Past data, current updated data
[1838] Output: An initialized UpdateChecker object
[1839] Step 4:
[1840] The server calls the find_differences method of the UpdateChecker class to extract the differences between the past data and the current update data. Specifically, the difflib module is used to calculate the differences for each line and generate a unified format of the difference data.
[1841] Input: UpdateChecker object
[1842] Output: Differential data
[1843] Step 5:
[1844] The server saves the extracted differential data in a database using a relational database such as SQLite or PostgreSQL. The database stores past data, current updated data, and differential data.
[1845] Input: differential data
[1846] Output: Differential data stored in the database
[1847] Step 6:
[1848] The server detects unintended changes to the stored data by using AI models and rule-based algorithms to analyze it for anomalous patterns or suspicious changes. This process can be performed using machine learning models (e.g., TensorFlow or PyTorch).
[1849] Input: Past data stored in the database, current updated data, differential data
[1850] Output: Unintended changes detected
[1851] Step 7:
[1852] The server generates a warning message based on the detected unintended changes, which is then structured in JSON and ready to be sent to the device.
[1853] Input: Unintended change detection result
[1854] Output: Warning message
[1855] Step 8:
[1856] The terminal receives the warning messages and difference data sent from the server and displays them visually to the user. Front-end frameworks such as React and Vue.js are used to display the warnings and difference data in an easy-to-read user interface.
[1857] Input: warning message, differential data
[1858] Output: Warning messages and diff data displayed to the user
[1859] The above processing steps allow the user to quickly identify unintended changes or errors in the update work, improving the reliability and security of the system.
[1860] 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.
[1861] This invention relates to a system that uses AI to check whether modifications have been made correctly when updating a website, etc. By adding an emotion engine, this system recognizes the user's emotions, improving the efficiency of the modification process and the user experience.
[1862] System configuration
[1863] This system consists of a server, a terminal, and a user. It also integrates an emotion engine that recognizes the user's emotions and adjusts the way data is displayed and the support functions.
[1864] Server-side processing
[1865] The server first receives the previous data (old_content) and the current updated data (new_content) sent from the device. The server creates an instance of the UpdateChecker class and initializes the received data. It then calls the find_differences method to extract the differences between the previous data and the current data. The extracted differences are converted to JSON format and sent to the device. The emotion engine also processes the user's emotion data and provides appropriate feedback.
[1866] Terminal side processing
[1867] When the user completes editing the homepage, the device sends the previous data and the updated data to the server. The device receives the difference data returned from the server and displays it to the user. The display method changes depending on the user's emotion. For example, if the user expresses frustration, the system displays it using a softer color tone or additional explanation. The emotion engine recognizes emotions from the user's facial expressions, voice, input patterns, etc.
[1868] User processing
[1869] The user edits the homepage on the device's editing screen. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, and the display is adjusted according to the user's emotional state. If the user is emotional, the system will provide additional advice and warnings to support them.
[1870] Specific examples
[1871] For example, consider the case where the contents of a homepage are updated as follows:
[1872] Past data (old_content)
[1873] html
[1874] <!DOCTYPE html>
[1875]
[1876]
[1877] <title> Old title< / title>
[1878]
[1879]
[1880] Hello World!
[1881]
[1882]
[1883] Updated data (new_content)
[1884] html
[1885] <!DOCTYPE html>
[1886]
[1887]
[1888] <title> New Title< / title>
[1889]
[1890]
[1891] Hello, users!
[1892]
[1893]
[1894] At this time, the server generates the following differential data and sends it to the terminal:
[1895] diff
[1896] --- old_version
[1897] +++new_version
[1898] @@ -2,7 +2,7 @@
[1899]
[1900]
[1901] <title> Old title< / title>
[1902] + <title> New Title< / title>
[1903]
[1904]
[1905] Hello World!
[1906] + Hello, users!
[1907]
[1908]
[1909] The device receives this difference data and uses an emotion engine to present it to the user in a way that reflects their emotional state. For example, if the user expresses surprise or confusion, the system can provide a detailed explanation of the difference and hints on how to fix it to help the user understand.
[1910] In this way, the server, terminal, emotion engine, and user elements work together to create a system that allows homepage revisions to be performed efficiently and accurately. The introduction of the emotion engine improves the user experience, as well as work efficiency and accuracy.
[1911] The processing flow will be explained below.
[1912] Server-side processing
[1913] Step 1:
[1914] The server receives the past data (old_content) and the current updated data (new_content) sent from the terminal. Specifically, it receives them as form data of the HTTP request.
[1915] Step 2:
[1916] The server creates an instance of the UpdateChecker class and initializes it with the received data, which stores the past data and updated data in memory.
[1917] Step 3:
[1918] The server calls the find_differences method of the UpdateChecker instance to extract the differences between the past and current data. This method compares the data row by row and calculates the differences.
[1919] Step 4:
[1920] The server converts the extracted differences into JSON format and sends it to the terminal as an HTTP response, allowing the terminal to receive the differences.
[1921] Step 5:
[1922] The server uses an emotion engine to analyze the user's emotion data. Specifically, the emotion engine analyzes the received data and the user's input data.
[1923] Step 6:
[1924] The server generates feedback and advice based on the analyzed emotional data and sends it to the device, thereby providing support according to the user's emotional state.
[1925] Terminal side processing
[1926] Step 1:
[1927] When the user has completed editing the homepage, they press the "Save" or "Send" button on the editing screen of the device, which saves the edited data in the device.
[1928] Step 2:
[1929] The terminal sends the previous data (old_content) and the revised data (new_content) to the server. Specifically, it sends this data using the POST method using an AJAX request.
[1930] Step 3:
[1931] The device receives the difference data (differences) returned from the server and processes the difference data when it is returned as a response using the AJAX request callback function.
[1932] Step 4:
[1933] The terminal then displays the received difference data to the user, using dedicated HTML components and libraries to visually show the changes line by line.
[1934] Step 5:
[1935] The emotion engine analyzes the user's facial expressions, voice, and input patterns to understand their emotional state, and adjusts the color and format of the difference display accordingly.
[1936] Step 6:
[1937] The emotion engine generates feedback and advice that is displayed on the device. For example, if the user expresses frustration, a "further explanation of what needs to be fixed" message will be displayed on the screen.
[1938] User processing
[1939] Step 1:
[1940] The user edits the homepage on the editing screen of the device, inputs the changes, and when all changes are complete, presses the "Save" or "Submit" button.
[1941] Step 2:
[1942] The user checks the difference data displayed on the terminal and checks whether the modifications made by the user are accurately reflected.
[1943] Step 3:
[1944] The user can then take the feedback and advice provided by the emotion engine into consideration and make further corrections as needed, and proceed by checking warnings and additional information from the system.
[1945] In this way, the server, terminal, emotion engine, and user elements work together to create a system that allows homepage revisions to be performed efficiently and accurately. The introduction of the emotion engine improves the user experience, as well as increasing work efficiency and accuracy.
[1946] Example 2
[1947] 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."
[1948] Conventional website update check systems only extract and display the differences between past data and current updated data, and are unable to flexibly respond to user emotions or operational situations. This makes it difficult to reduce the frustration and confusion users feel during the update process, and there has been a demand for improved work efficiency and user experience.
[1949] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for receiving past data and current update data, means for comparing the past data and the current update data and extracting differences, means for displaying the extracted differences, means for transmitting the extracted differences to the terminal, means for recognizing the user's emotion, and means for adjusting the display method according to the emotion. This allows the user to receive appropriate feedback according to their emotional state, making it possible to improve the efficiency of correction work and the user experience.
[1950] "Past data" refers to old versions of data from before updates were made to a website or the like.
[1951] "Current updated data" refers to the new version of data after updates to the homepage or the like have been made.
[1952] "Means for receiving" refers to the interface or protocol for transmitting past data and current update data to the server.
[1953] "Means for comparison and extraction of differences" refers to the process of using an algorithm to compare past data with current updated data and detect differences between them.
[1954] The "display means" refers to an interface for visually presenting the extracted differences to the user.
[1955] "Means for transmitting to the terminal" refers to an interface or protocol for transmitting the extracted differences from the server to the terminal.
[1956] "Means for recognizing user emotions" refers to technology that uses an emotion engine or similar to analyze a user's facial expressions, voice, and input patterns to identify the user's emotional state.
[1957] "Means for adjusting the display method according to emotions" refers to a process for changing the display method of differences and the feedback content based on the recognized emotional state of the user.
[1958] This invention relates to a system that uses AI (artificial intelligence) to check whether modifications have been made correctly when updating a website, etc. By adding an emotion engine, this system recognizes the user's emotions, improving the efficiency of the modification process and the user experience.
[1959] System configuration
[1960] This system consists of a server, a terminal, and a user. It also integrates an emotion engine that recognizes the user's emotions and adjusts the way data is displayed and the support functions.
[1961] Server-side processing
[1962] The server first receives the previous data (old_content) and the current updated data (new_content) sent from the device. The server creates an instance of the UpdateChecker class and initializes the received data. It then calls the find_differences method to extract the differences between the previous data and the current data. The extracted differences are converted to JSON format and sent to the device. The emotion engine then processes the user's emotion data and provides appropriate feedback. Specifically, the emotion engine recognizes emotions from the user's facial expressions, voice, input patterns, etc., and changes the feedback content as necessary. For this, Python facial recognition libraries such as OpenCV and DeepFace can be used.
[1963] Terminal side processing
[1964] When the user completes editing the homepage, the device sends the previous data and the updated data to the server. The device receives the difference data returned from the server and displays it to the user. The display method changes depending on the user's emotion. For example, if the user expresses frustration, the system displays it using a softer color tone or additional explanation. The emotion engine recognizes emotions from the user's facial expressions, voice, input patterns, etc.
[1965] User processing
[1966] The user edits the homepage on the editing screen of the device. Once the edits are complete, the data is sent to the server using the device's send function. The differences returned by the server are displayed on the device, and the display method is adjusted according to the user's emotional state. If the user is emotional, the system will provide additional advice and warnings to support them. Specifically, the user can use the following prompts after making edits:
[1967] Please update your homepage and check the difference between the data before and after the update. Please also refer to the sentiment data below to provide a more user-friendly display.
[1968] Specific examples
[1969] For example, consider the case where the contents of a homepage are updated as follows:
[1970] 1. Past data (old_content)
[1971] html
[1972] <!DOCTYPE html>
[1973]
[1974]
[1975] <title> Old title< / title>
[1976]
[1977]
[1978] Hello World!
[1979]
[1980]
[1981] 2. Updated data (new_content)
[1982] html
[1983] <!DOCTYPE html>
[1984]
[1985]
[1986] <title> New Title< / title>
[1987]
[1988]
[1989] Hello, users!
[1990]
[1991]
[1992] The server receives this data and extracts the differences as follows:
[1993] diff
[1994] --- old_version
[1995] +++new_version
[1996] @@ -2,7 +2,7 @@
[1997]
[1998]
[1999] <title> Old title< / title>
[2000] + <title> New Title< / title>
[2001]
[2002]
[2003] Hello World!
[2004] + Hello, users!
[2005]
[2006]
[2007] The device receives this difference data and uses an emotion engine to present it to the user in a display format based on the user's emotional state. For example, if the user expresses surprise or confusion, the system will display a detailed explanation of the difference and additional correction tips.
[2008] In this way, the server, terminal, emotion engine, and user elements work together to create a system that allows homepage revisions to be performed efficiently and accurately. The introduction of the emotion engine improves the user experience, as well as work efficiency and accuracy.
[2009] The flow of the identification process in the second embodiment will be described with reference to FIG.
[2010] Step 1: Send data
[2011] When the user completes the homepage modification work, the device sends the previous data (old_content) and the modified data (new_content) to the server. Specifically, it uses the JavaScript fetch API to send this data to the server in JSON format. The input at this time is the data before and after the user's modification, and the output is an HTTP request to the server.
[2012] javascript
[2013] fetch('https: / / example.com / check-update', {
[2014] method: 'POST',
[2015] headers: {
[2016] 'Content-Type': 'application / json'
[2017] },
[2018] body: JSON.stringify({
[2019] old_content: oldContent,
[2020] new_content: newContent
[2021] })
[2022] });
[2023] Step 2: Receiving data
[2024] The server receives the HTTP request sent from the device and analyzes the attached past data (old_content) and current updated data (new_content). Specifically, it receives data using a framework (such as Python's Flask or Django). The input is the HTTP request from the device, and the output is the analyzed old_content and new_content.
[2025] Step 3: Factory Data Reset
[2026] The server creates an instance of the UpdateChecker class and initializes it with the received data. This sets the data needed for comparison. The inputs are old_content and new_content, and the output is the initialized UpdateChecker instance.
[2027] Step 4: Difference Extraction
[2028] The server calls the find_differences method of the UpdateChecker class to extract the differences between the past data and the current data. Specifically, it calculates the data differences using the Python difflib library. The input is an initialized UpdateChecker instance, and the output is the extracted differences.
[2029] Step 5: Convert the differences to JSON
[2030] The server converts the extracted differences into JSON format. It uses the Python json module to convert the extracted difference data into a JSON string. The input is the difference data and the output is a JSON formatted string.
[2031] python
[2032] import json
[2033] diff_json = json.dumps(differences)
[2034] Step 6: Submitting the Difference Data
[2035] The server returns the difference data converted to JSON format to the terminal. Specifically, it is returned as an HTTP response. The input is the difference data in JSON format, and the output is an HTTP response to the terminal.
[2036] python
[2037] return jsonify({"differences": diff_json})
[2038] Step 7: Receive difference data from the server
[2039] The terminal receives the difference data in JSON format returned from the server. It uses the JavaScript fetch API to receive the response and parses the data using the response.json() method. The input is the HTTP response from the server, and the output is the parsed difference data.
[2040] javascript
[2041] fetch('https: / / example.com / check-update')
[2042] .then(response => response.json())
[2043] .then(data => {
[2044] let diff = data.differences;
[2045] document.getElementById('diff-output').innerText = diff;
[2046] });
[2047] Step 8: Show the differences to the user
[2048] The device visually presents the received difference data to the user, performing DOM manipulation and displaying the differences on the screen. The input is the parsed difference data, and the output is a visual diff display that the user can see on the screen.
[2049] javascript
[2050] document.getElementById('diff-output').innerText = diff;
[2051] Step 9: Display adjustment using the emotion engine
[2052] The emotion engine analyzes the user's facial expressions, voice, and input patterns and adjusts the display accordingly. For example, if the user expresses frustration, the system will display them using a milder color tone or additional explanations. The input is the user's emotional data, and the output is the adjusted display. Specifically, the display is dynamically changed using CSS and JavaScript.
[2053] javascript
[2054] if (userEmotion === 'frustrated') {
[2055] document.getElementById('diff-output').style.color = 'blue';
[2056] / / Show additional explanation
[2057] document.getElementById('additional-info').innerText = 'Detailed description of the diff';
[2058] }
[2059]
[2060] (Application example 2)
[2061] 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."
[2062] When updating websites or online shopping sites, accurate data updates and an improved user experience are required. However, checks during updates are often performed manually, which is inefficient and prone to errors. Furthermore, feedback that ignores the emotions felt by users during the update process can degrade the user experience. For this reason, a system that takes user emotions into account while maintaining the accuracy of the update process is needed.
[2063] The specification process by the specification 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 past data and current update data, means for comparing the past data with the current update data and extracting differences, and means for displaying the extracted differences. As a result, by including emotion recognition means for recognizing the user's emotion and means for adjusting the display method based on the recognized emotional state, not only can the updating work of a homepage or mail order site be performed accurately and efficiently, but feedback according to the user's emotion can also be provided.
[2064] "Past data" refers to information that indicates a previous state or content acquired by the system.
[2065] "Current update data" is information indicating the state or content after the update newly acquired by the system.
[2066] "Means for receiving" refers to a function or device for incorporating past data and current updated data into the system.
[2067] The "means for comparing and extracting differences" is a function or algorithm that compares past data with current updated data and finds the differences.
[2068] The "display means" is a function or device for visually notifying the user of the extracted differences.
[2069] The "means for transmitting to the terminal" is a function or protocol for sending information about the extracted differences to another device.
[2070] The "emotion recognition means for recognizing the user's emotions" is a function or system that analyzes the user's facial expressions, voice, input patterns, etc. to determine the user's emotional state.
[2071] A "means for adjusting the display manner" is a function or algorithm that changes the way differences are displayed based on the perceived emotional state of the user.
[2072] This invention is a system that uses AI to check whether update data is correctly reflected when updating an online shopping site, and provides feedback according to the user's emotions. Below, we will explain how to specifically implement this system.
[2073] 1. System Overview
[2074] This system consists of three elements: a server, a terminal, and a user. The server processes data, and the terminal accepts user operations and displays the results. The user updates the homepage and product pages and checks the results.
[2075] 2. Hardware and Software Used
[2076] Hardware:
[2077] Server: A computer with high processing power
[2078] Device: Smartphone or tablet
[2079] software:
[2080] Emotion recognition libraries: e.g., DeepMoji
[2081] A diff comparison library: e.g., difflib
[2082] Programming language: Python
[2083] 3. Data processing flow
[2084] Server-side processing
[2085] The server receives past data and current update data from the device. It then compares these data using the UpdateChecker class and extracts differences. These differences are converted into JSON format and sent to the device. At the same time, it analyzes the user's emotional state using an emotion recognition library. Based on the analysis results, appropriate feedback is generated and sent to the device.
[2086] Terminal side processing
[2087] When the user completes the update process, the device sends the previous data and the updated data to the server. The device receives the difference data returned from the server and displays it to the user. The display method is adjusted according to the user's emotional state; for example, if the user shows surprise, detailed explanations or hints are displayed.
[2088] User operations
[2089] Users edit their homepages and product pages on the screen. When they are done, they press the submit button to send the data to the server. They then check the feedback displayed on their device and make further edits as needed.
[2090] Specific examples
[2091] For example, consider updating the "review section" of an online shopping site. The previous data is the "old review content," and the updated data is the "new review content." In this case, the server generates the following differential data and sends it to the device:
[2092] diff
[2093] --- old_version
[2094] +++new_version
[2095] @@ -1,1 +1,1 @@
[2096] Previous review content
[2097] + New review content
[2098] Example prompts for generative AI models
[2099] "When updating a user's review, the changes shown are as follows: Old review: Previous review content What's new in the review: New review content The user seems surprised. Please generate appropriate feedback in this situation."
[2100] The system described above allows for efficient and accurate updating of homepages and product pages, improving the user experience. In particular, feedback that takes into account the user's emotions reduces stress during work and provides a better user experience.
[2101] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[2102] Step 1:
[2103] User enters and submits data:
[2104] The user completes the update of the homepage or product page on the terminal. Specifically, they edit the review content and product information and press the send button. The previous data and updated data are generated as input data and sent to the server.
[2105] Input: Past data, updated data
[2106] Output: Data sent to the server
[2107] Step 2:
[2108] Server receives data and initializes:
[2109] The server receives the past data and update data sent from the device, and then initializes this data using the UpdateChecker class.
[2110] Input: Past data and updated data sent from the device
[2111] Output: Initialized data
[2112] Step 3:
[2113] Server-based data comparison and difference detection:
[2114] The initialized past data and the updated data are compared using the find_differences method of the UpdateChecker class to extract the differences. These differences are calculated using a difference comparison library (e.g., difflib).
[2115] Input: Initialized past data, updated data
[2116] Output: Extracted differences (diff data)
[2117] Step 4:
[2118] Server converts and sends differences:
[2119] The extracted differences are converted into JSON format and sent to the terminal. The converted differential data is displayed in a user-friendly format.
[2120] Input: Extracted differences
[2121] Output: JSON formatted diff data sent to the terminal
[2122] Step 5:
[2123] Server-based user emotion recognition:
[2124] To recognize user emotions, an emotion recognition library (e.g., DeepMoji) is used to analyze user input data, which includes facial expressions, voice, and text content.
[2125] Input: User-entered data
[2126] Output: User's emotional state
[2127] Step 6:
[2128] Server-generated and sent feedback:
[2129] Based on the recognized emotional state, appropriate feedback is generated, for example, if the user expresses surprise, detailed explanations or hints are added, and this feedback is sent to the device.
[2130] Input: User's emotional state
[2131] Output: Feedback sent to the device
[2132] Step 7:
[2133] Display feedback by device:
[2134] The terminal receives the difference data and feedback sent from the server and displays them to the user, adjusting the display method according to the user's emotional state.
[2135] Input: Differential data sent from the server, feedback
[2136] Output: Diff data and feedback displayed to the user
[2137] 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.
[2138] 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.
[2139] 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.
[2140] 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.
[2141] 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.
[2142] 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.
[2143] 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).
[2144] 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.
[2145] 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."
[2146] 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.
[2147] 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).
[2148] 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.
[2149] 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.
[2150] 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.
[2151] 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.
[2152] 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.
[2153] 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.
[2154] 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.
[2155] 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.
[2156] 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.
[2157] 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.
[2158] The following is further disclosed regarding the above embodiment.
[2159] (Claim 1)
[2160] means for receiving historical data and current updates;
[2161] means for comparing the past data with the current updated data and extracting differences;
[2162] a means for displaying the extracted differences;
[2163] means for transmitting the extracted differences to a terminal;
[2164] A system including:
[2165] (Claim 2)
[2166] 2. The system of claim 1, further comprising means for initializing the past data and the current update data, respectively.
[2167] (Claim 3)
[2168] 2. The system of claim 1, wherein the extraction of the differences is performed using an algorithm that calculates the difference between the data.
[2169] "Example 1"
[2170] (Claim 1)
[2171] means for receiving historical data and current updates;
[2172] means for comparing the past data with the current updated data and extracting differences;
[2173] means for transmitting the extracted differences to a terminal;
[2174] A means for initializing past data and current update data transmitted from the terminal;
[2175] a means for visually displaying the extracted differences;
[2176] A system including:
[2177] (Claim 2)
[2178] 2. The system of claim 1, further comprising means for initializing the past data and the current update data, respectively.
[2179] (Claim 3)
[2180] 2. The system of claim 1, wherein the extraction of the differences is performed using an algorithm that calculates the difference between the data.
[2181] "Application Example 1"
[2182] (Claim 1)
[2183] means for receiving historical data and current updates;
[2184] means for comparing the past data with the current updated data and extracting differences;
[2185] a means for displaying the extracted differences;
[2186] means for transmitting the extracted differences to a terminal;
[2187] means for storing the past data and the current updated data in a database;
[2188] means for detecting unintended modifications using the stored data;
[2189] a means for displaying warnings based on detected unintended changes;
[2190] A system including:
[2191] (Claim 2)
[2192] 2. The system of claim 1, further comprising means for initializing the past data and the current update data, respectively.
[2193] (Claim 3)
[2194] 2. The system of claim 1, wherein the extraction of the differences is performed using an algorithm that calculates the difference between the data.
[2195] "Example 2: Combining Emotion Engines"
[2196] (Claim 1)
[2197] means for receiving historical data and current updates;
[2198] means for comparing the past data with the current updated data and extracting differences;
[2199] a means for displaying the extracted differences;
[2200] means for transmitting the extracted differences to a terminal;
[2201] means for recognizing a user's emotion;
[2202] means for adjusting a display method according to the emotion;
[2203] A system including:
[2204] (Claim 2)
[2205] 2. The system of claim 1, further comprising means for initializing the past data and the current update data, respectively.
[2206] (Claim 3)
[2207] 2. The system of claim 1, wherein the extraction of the differences is performed using an algorithm that calculates the difference between the data.
[2208] "Application example 2 when combining emotion engines"
[2209] (Claim 1)
[2210] means for receiving historical data and current updates;
[2211] means for comparing the past data with the current updated data and extracting differences;
[2212] a means for displaying the extracted differences;
[2213] means for transmitting the extracted differences to a terminal;
[2214] emotion recognition means for recognizing an emotion of a user;
[2215] means for adjusting a display method based on the emotional state of the user recognized by the emotion recognition means;
[2216] A system including:
[2217] (Claim 2)
[2218] 2. The system of claim 1, further comprising means for initializing the past data and the current update data, respectively.
[2219] (Claim 3)
[2220] 2. The system of claim 1, wherein the extraction of the differences is performed using an algorithm that calculates the difference between the data. [Explanation of symbols]
[2221] 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 historical data and current updates; means for comparing the past data with the current updated data and extracting differences; a means for displaying the extracted differences; means for transmitting the extracted differences to a terminal; A system including:
2. 2. The system of claim 1, further comprising means for initializing the past data and the current update data, respectively.
3. 2. The system of claim 1, wherein the extraction of the differences is performed using an algorithm that calculates the difference between the data.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A