system

A system using natural language processing and interactive query generation allows users to extract data intuitively, addressing the challenge of limited SQL skills and specialized knowledge, enhancing data acquisition efficiency.

JP2026105412APending Publication Date: 2026-06-26SOFTBANK GROUP CORP

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
SOFTBANK GROUP CORP
Filing Date
2024-12-16
Publication Date
2026-06-26

AI Technical Summary

Technical Problem

The limited number of employees with SQL creation skills and the lack of specialized knowledge among requesters make it difficult for users to intuitively extract data from databases without technical expertise.

Method used

A system utilizing natural language processing, mapping, and query generation capabilities to allow users to input data requests in natural language, dynamically generate SQL queries, and interactively modify them based on user feedback, enabling intuitive and efficient data extraction.

Benefits of technology

Enables users to query databases intuitively without specialized knowledge, improving internal business efficiency by streamlining data acquisition operations and providing flexible responses to changing requests.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026105412000001_ABST
    Figure 2026105412000001_ABST
Patent Text Reader

Abstract

We provide the system. [Solution] A natural language processing means for analyzing input natural language requests, A mapping means for storing the structure within the data aggregation area and the term correspondence of the stored data, A query generation means for dynamically generating query data based on data requested by the user, An output method for presenting the generated query to the user, A means of interaction for modifying queries based on user feedback, An interface means that provides an application environment for engineers to acquire data in an industrial environment, A system that includes this.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The technology of the present disclosure relates to a system.

Background Art

[0002] Patent Document 1 discloses a persona chatbot control method performed by at least one processor, including steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to an explanation of a 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

Summary of the Invention

Problems to be Solved by the Invention

[0004] The present invention solves problems in data extraction within a company. Specifically, there is a problem that the number of employees with the ability to create SQL statements within the company is limited, and the work is concentrated on specific employees. Also, since the requesters of SQL creation do not have specialized knowledge, there are problems that are difficult in actual requests. Therefore, there is a demand for a system that allows users to intuitively extract data without specialized knowledge of SQL.

Means for Solving the Problems

[0005] This invention provides a system having natural language processing means for analyzing input natural language requests. Furthermore, it includes a mapping means for associating the structure and data items in the database with company terminology, and a query generation means for dynamically generating query data based on the data requested by the user. An output means presents the generated query to the user, allowing the user to review the results and provide feedback as needed. This enables the query generation means to provide an interactive means that can modify the query in response to user feedback, thereby realizing intuitive and efficient data extraction.

[0006] "Natural language processing means" refers to a function that analyzes input natural language and performs processing to extract or transform information.

[0007] A "mapping method" is a function that associates the names of tables and columns in a database with the terminology used within the company.

[0008] A "query generation method" is a function that automatically generates SQL queries to query a database based on the analyzed information.

[0009] "Output method" refers to a function that presents the generated SQL query and its results to the user.

[0010] A "dialogue mechanism" is a function that receives feedback from the user and modifies or supplements SQL queries based on that feedback. [Brief explanation of the drawing]

[0011] [Figure 1] This is a conceptual diagram showing an example of the configuration of a data processing system according to the first embodiment. [Figure 2] This is a conceptual diagram showing an example of the essential functions of a data processing device and a smart device according to the first embodiment. [Figure 3] This is a conceptual diagram showing an example of the configuration of a data processing system according to the second embodiment. [Figure 4] This is a conceptual diagram showing an example of the main functions of a data processing device and smart glasses according to the second embodiment. [Figure 5] This is a conceptual diagram showing an example of the configuration of a data processing system according to the third embodiment. [Figure 6] This is a conceptual diagram showing an example of the main functions of a data processing device and a headset-type terminal according to the third embodiment. [Figure 7] This is a conceptual diagram showing an example of the configuration of a data processing system according to the fourth embodiment. [Figure 8] This is a conceptual diagram showing an example of the main functions of a data processing device and a robot according to the fourth embodiment. [Figure 9] This shows an emotion map where multiple emotions are mapped. [Figure 10] This shows an emotion map where multiple emotions are mapped. [Figure 11] This is a sequence diagram showing the processing flow of the data processing system in Example 1. [Figure 12] This is a sequence diagram showing the processing flow of the data processing system in Application Example 1. [Figure 13] This is a sequence diagram showing the processing flow of the data processing system in Example 2, which incorporates an emotion engine. [Figure 14] This is a sequence diagram showing the processing flow of the data processing system in Application Example 2, which combines an emotion engine. [Modes for carrying out the invention]

[0012] Hereinafter, an example of an embodiment of the system relating to the technology of this disclosure will be described with reference to the attached drawings.

[0013] First, let's explain the terminology used in the following explanation.

[0014] In the following embodiments, the labeled processor (hereinafter simply referred to as "processor") may be a single arithmetic unit or a combination of multiple arithmetic units. Also, the processor may be a single type of arithmetic unit or a combination of multiple types of arithmetic units. Examples of arithmetic units include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), and the like.

[0015] In the following embodiments, the labeled RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a work memory by the processor.

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

[0017] In the following embodiments, the labeled communication I / F (Interface) is an interface including a communication processor, an antenna, and the like. 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), or Bluetooth (registered trademark).

[0018] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." That is, "A and / or B" means that it may be A alone, or B alone, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" applies when expressing three or more things linked by "and / or."

[0019] [First Embodiment]

[0020] Figure 1 shows an example of the configuration of the data processing system 10 according to the first embodiment.

[0021] As shown in Figure 1, the 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.

[0022] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

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

[0024] The reception device 38 is equipped with a touch panel 38A and a microphone 38B, etc., and receives user input. The touch panel 38A receives user input by detecting contact with an object (e.g., a pen or finger). The microphone 38B receives user input by detecting the user's voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and 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.

[0025] 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 perceptible to the user 20 (e.g., audio and / or text). The display 40A displays visible information such as text and images according to instructions from the processor 46. The speaker 40B outputs audio according to instructions from the processor 46. The camera 42 is a small digital camera equipped with an optical system such as a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.

[0026] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various types of information between processor 46 and processor 28 via network 54.

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

[0028] As shown in Figure 2, in the data processing device 12, a specific processing 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" related to the technology of this 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 according to the specific processing program 56 executed on the RAM 30.

[0029] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0030] In the smart device 14, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. The reception output program 60 is used in conjunction with a 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[0031] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".

[0032] This invention relates to a system that allows for database queries without requiring specific technical knowledge, in order to streamline internal data acquisition operations. This system utilizes a server and terminals to enable users to make data requests in natural language.

[0033] The server analyzes the database structure and creates a list of internal terminology corresponding to each table and column. Using this list, it analyzes the input natural language and provides natural language processing capabilities to understand the user's intended data request. Simultaneously, the server has query generation capabilities that automatically generate SQL queries to extract the requested data based on this analysis.

[0034] The terminal provides an interface for the user to input data requests. The user inputs the data they want to retrieve in natural language, and the request is sent to the server. Upon receiving this, the server performs natural language processing and generates an appropriate SQL query. The generated SQL is then sent back to the terminal and presented to the user.

[0035] Furthermore, the server has an interactive mechanism that allows it to modify queries interactively based on user input. This enables flexible responses even when users change their data requests. In addition, the server can provide the user with the actual results retrieved from the database via a terminal, allowing the user to view those results.

[0036] As a concrete example, let's assume a user enters "I want a list of users using the latest device." In this case, the server converts "latest device" into the corresponding model code or ID and generates SQL based on them. As a result, an SQL query like "SELECT UserID FROM UserTable WHERE ModelCode = 'Latest'" is generated and presented to the user. After the user confirms the query, the server executes it, retrieves the requested data, and displays it to the user.

[0037] As described above, this system aims to improve internal business efficiency by providing an environment where users can intuitively query the database using natural language.

[0038] The following describes the processing flow.

[0039] Step 1:

[0040] The user enters a data request in natural language into the terminal's input field. This request is received by the terminal and sent to the server.

[0041] Step 2:

[0042] The server analyzes the received natural language data request. This analysis is performed using natural language processing techniques to identify the intent of the request and the necessary data items.

[0043] Step 3:

[0044] The server refers to an internal glossary of company terminology and maps the parsed request to specific table and column names in the database.

[0045] Step 4:

[0046] The server automatically generates an SQL query to retrieve the requested data based on the mapping information. This query is constructed to satisfy the user's request.

[0047] Step 5:

[0048] The server sends the generated SQL query to the terminal. The terminal displays this query for the user to review.

[0049] Step 6:

[0050] Users can review the displayed SQL queries and, if necessary, send correction requests from their terminal to the server.

[0051] Step 7:

[0052] The server receives correction requests and repeats an interactive process of modifying queries as needed.

[0053] Step 8:

[0054] The server executes the finalized SQL query and retrieves the results from the database.

[0055] Step 9:

[0056] The server sends the acquired data to the terminal, and the user checks the data results on the terminal.

[0057] (Example 1)

[0058] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."

[0059] In today's business environment, effectively retrieving necessary information from databases is crucial. However, it is difficult for the average user to create database queries and retrieve the requested information without specialized technical knowledge. There is a need to solve this problem and provide users with intuitive access to information.

[0060] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[0061] In this invention, the server includes natural language processing means for parsing input natural language requests, mapping means for storing the structure of information storage means and term correspondences of stored information, and query generation means for dynamically generating query queries based on the information requested by the user. This makes it possible for users without technical expertise to query the database in natural language and efficiently retrieve information.

[0062] "Natural language processing means" refers to a device or program that analyzes natural language input by a user and processes it to understand its intent.

[0063] A "mapping method" is a data transformation method used to associate the structure of an information storage means with the information stored therein.

[0064] A "query generation means" is a method or apparatus for generating queries to obtain necessary data from an information storage means based on a user's request.

[0065] "Output means" refers to a device or program for displaying the generated query to the user.

[0066] A "generative AI model" is a model that uses artificial intelligence to enable advanced natural language processing.

[0067] A "dialogue means" is a device or program that enables the dynamic modification of queries in response to user feedback.

[0068] A "terminal device" is a device that provides an interface for a user to input data requests.

[0069] "Result provision means" refers to a method or apparatus for providing data extracted from information storage means to a user.

[0070] This invention is a system that enables users to query a database using natural language. The system consists of a server and a terminal. The server has natural language processing means for analyzing input natural language requests, mapping means for storing the correspondence between database structure and information terminology, query generation means for dynamically generating query data, and a function for performing natural language analysis using a generative AI model. It also includes dialogue means for modifying queries in response to user feedback.

[0071] The terminal provides an interface for users to input data requests in natural language. Users simply need to input requests as text, such as "I want a list of employees who joined the company in 2023." Upon receiving this request, the server uses a generative AI model to parse the text and generate an appropriate SQL query for the database.

[0072] The server sends the generated SQL query to the terminal and presents it to the user. The user can review the displayed query and request modifications if necessary. After modifications, the server executes the query and retrieves the requested information from the database. The retrieved information is then formatted and displayed on the terminal in a user-friendly format.

[0073] For example, if you input "I want a list of users using the latest devices," the server will use an identification code associated with the "latest devices" to generate an SQL query such as "SELECT UserID FROM UserTable WHERE DeviceCode = 'Latest'." This allows users to easily access the information through an intuitive interface.

[0074] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0075] Step 1:

[0076] The user enters data requests in natural language through their device. For example, the input might be text such as, "I would like a list of employees who joined the company in 2023."

[0077] This input will be treated as a prompt message to be sent to the server.

[0078] Step 2:

[0079] The server uses a generative AI model to analyze the prompt messages from the user.

[0080] Analyze the input natural language text, perform data processing to identify the necessary data requests from it, such as identifying that "2023" indicates the year of joining the company, and generate a structured internal request.

[0081] Step 3:

[0082] The server uses mapping means to map each element of the analyzed natural language to the corresponding tables and columns in the database.

[0083] Specifically, convert it into a specific database structure such as "employee table" and "year of joining the company" based on the internal request.

[0084] Step 4:

[0085] The server uses query generation means to dynamically generate an SQL query based on the mapped information.

[0086] For example, generate a query like "SELECT FROM employee table WHERE year of joining the company = '2023'", and hold this query as an output.

[0087] Step 5:

[0088] The server sends the generated query to the terminal and presents it to the user.

[0089] By viewing the presented SQL query, the user can confirm how the data request was interpreted.

[0090] Step 6:

[0091] The user provides feedback from the terminal to the server as needed and requests modification of the query.

[0092] Based on this feedback, the server regenerates the query through interaction means and reflects the modification if necessary.

[0093] Step 7:

[0094] The server ultimately executes the query confirmed by the user against the database and retrieves the requested data.

[0095] The results obtained from the database are formatted and prepared as structured output.

[0096] Step 8:

[0097] The server sends the acquired data to the terminal and displays the final result to the user.

[0098] Users can view the results and obtain the necessary information via their devices.

[0099] (Application Example 1)

[0100] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart device 14 will be referred to as the "terminal."

[0101] In today's industrial environment, engineers working on the front lines lack the means to quickly and intuitively access and analyze data. Traditional database systems require specialized knowledge and are time-consuming, making efficient data utilization difficult. Therefore, there is a need for new methods that can contribute to improving productivity and rapid problem solving within factories.

[0102] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[0103] In this invention, the server includes natural language processing means for parsing input natural language requests, mapping means for storing the correspondence between the structure in the data aggregation area and the terms of the stored data, and query generation means for dynamically generating query queries based on the data requested by the user. This enables engineers to access data through an intuitive interface and solve problems in real time, even without specialized knowledge.

[0104] "Natural language processing means" refers to technologies that analyze natural language requests entered by users and generate appropriate queries.

[0105] A "mapping method" is a technology that stores the structure within a data aggregation area and the correspondence between the stored data and its terminology, thereby supporting efficient query generation.

[0106] A "query generation mechanism" is a function that dynamically creates queries based on user requests and retrieves appropriate information from the database.

[0107] "Output method" refers to a function that presents the generated query to the user for review and modification.

[0108] "Dialogue tools" are functions that support interaction to flexibly modify queries in response to user feedback and guide users toward optimal results.

[0109] "Interface means" refers to user interfaces and designs that enable engineers in industrial environments to easily utilize data.

[0110] The "results provision method" is a function that transmits information acquired from the data aggregation area to the user's portable information terminal and displays it visually.

[0111] This invention is implemented as a system aimed at enabling engineers in industrial environments to intuitively acquire and utilize data. This system consists of a server and terminals, which work together in cooperation.

[0112] The server uses natural language processing (NLTK) to analyze natural language requests input by engineers. It extracts meaning from the input text and generates database queries using Python and the NLTK library. These queries are designed to efficiently retrieve necessary information from the data storage area using SQLAlchemy. The server also has a mapping mechanism to store the correspondence between data structures and terminology, enabling efficient query generation.

[0113] The terminal is a portable information terminal (e.g., a tablet or smartphone) used by engineers. The application interface on the terminal is developed using React Native and is responsible for allowing engineers to input information in natural language and visually display the results retrieved from the database. This interface allows engineers to intuitively manipulate data even without specialized knowledge.

[0114] As a concrete example of this system, when a technician enters a prompt such as, "Tell me which machine has the lowest utilization rate this week," the server analyzes this request and generates the optimal query. The server sends the information obtained from the data aggregation area to the terminal, and the technician can then make decisions based on that information.

[0115] Examples of prompt statements are as follows:

[0116] "I want to know the latest operational status of the factory."

[0117] "Please provide yesterday's data regarding the production of product A."

[0118] "We'll look for lines with a high error rate using last week's data."

[0119] The processes executed in response to these prompts can improve the overall efficiency of the factory by assisting engineers in making decisions in real time.

[0120] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0121] Step 1:

[0122] The user enters a prompt in natural language into the terminal interface. This input could be, for example, "Tell me which machine has the lowest utilization rate this week." The terminal receives the user's input and prepares to send it to the server.

[0123] Step 2:

[0124] The terminal sends the entered prompt text to the server. This is done using the endpoint API, sending the text as text data. The server receives this natural language prompt text.

[0125] Step 3:

[0126] The server parses the received prompt message using natural language processing (NLTK). Specifically, it tokenizes the prompt message using NLTK and extracts keywords. Based on the extracted keywords, it is then ready to generate a database query.

[0127] Step 4:

[0128] The server dynamically generates database queries. SQLAlchemy is used to construct SQL queries using extracted keywords. These queries allow for efficient retrieval of the desired information from the database.

[0129] Step 5:

[0130] The server executes the generated SQL query against the database. The query execution extracts the requested data from the database, and the results are then processed on the server.

[0131] Step 6:

[0132] The server sends the acquired data to the terminal. The data is formatted in JSON and sent to the terminal via the endpoint API.

[0133] Step 7:

[0134] The device displays the received data in a user interface. The data is visually represented using React Native, allowing users to easily review the results. Ultimately, users can make decisions and take subsequent actions based on the displayed information.

[0135] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.

[0136] This invention relates to adding a function to a system for facilitating database queries that recognizes user emotions and adjusts the interface accordingly. The system consists of a server, a terminal, and an emotion engine.

[0137] The server has a mapping mechanism that associates table and column names in the internal database with internal terminology, and uses this information to parse natural language requests entered by users. This parsing is performed by a natural language processing mechanism, which clarifies the user's intended data request. The server also has a query generation mechanism that dynamically generates SQL queries based on the parsed request.

[0138] The terminal provides an input interface for the user to make data requests and sends the requests to the server. The SQL query generated by the server is returned to the terminal and presented to the user. At this time, an interactive mechanism is provided to modify the query in response to user feedback.

[0139] The emotion engine analyzes user input and feedback, recognizing the user's emotions that emerge during the process. Based on this analysis, if the user is feeling frustrated, it can provide helpful guidance through dialogue. For example, if negative emotions are detected due to error messages or ambiguous input, the emotion engine activates notification mechanisms to provide hints for problem solving and step-by-step guidance for the user to reach the desired data.

[0140] For example, if a user enters "I want a list of recently added products," the server analyzes this request using natural language processing and generates a corresponding SQL query. The generated SQL query is then presented to the user via the terminal, and if the user is not satisfied with the query results, an emotion engine intervenes, inferring the user's emotions from their tone of voice and input content, and providing appropriate feedback.

[0141] As described above, this system aims not only to enable efficient data extraction but also to provide a more intuitive and stress-free user experience by being attentive to the user's emotions.

[0142] The following describes the processing flow.

[0143] Step 1:

[0144] The user inputs data requests in natural language through the terminal's interface. These requests are received by the terminal and sent to the server.

[0145] Step 2:

[0146] The server uses natural language processing to analyze user requests. The analysis involves understanding the user's intent based on the input text and identifying the necessary data items.

[0147] Step 3:

[0148] The server uses its built-in mapping mechanism to match the analysis results with the correct table and column names in the database.

[0149] Step 4:

[0150] The server generates a dynamic SQL query using the specified data items. This query is appropriately constructed to satisfy the user's request.

[0151] Step 5:

[0152] The server sends the generated SQL query to the terminal, and the terminal displays that query to the user.

[0153] Step 6:

[0154] The emotion engine analyzes the user's written content and, if possible, their tone of voice when displaying queries or receiving user feedback, and recognizes their emotions.

[0155] Step 7:

[0156] If the sentiment engine determines that the user is not satisfied with the query results and has questions or frustrations, the device will display helpful guidance or additional support messages.

[0157] Step 8:

[0158] Users can provide feedback and request modifications to queries as needed. The server receives this feedback and continues the interactive process to regenerate the queries.

[0159] Step 9:

[0160] The server executes the finalized SQL query and sends the results retrieved from the database to the terminal.

[0161] Step 10:

[0162] Users can review the results displayed on their device and adjust their queries as needed. This process is repeated until the user obtains satisfactory data.

[0163] (Example 2)

[0164] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the smart device 14 as the "terminal".

[0165] The goal is to streamline database queries, improve usability when users make data requests in natural language, and provide an interface that is considerate of user emotions. In particular, it is necessary to consider the correspondence between the database structure and internal terminology, generate appropriate query data, and respond flexibly to user feedback.

[0166] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[0167] In this invention, the server includes information processing means for parsing input natural language requests, association means for storing term correspondences between the structure within a data set and the stored information, and expression generation means for dynamically generating query expressions based on the information requested by the user. This enables efficient and appropriate generation of query queries when a user inputs data requests in natural language, and provides an intuitive interface that also takes user emotions into consideration.

[0168] An "information processing means" is a means of analyzing input natural language requests and clarifying the data requests intended by the user.

[0169] An "association means" is a means for associating and storing terms used between the structure of a data set and the information stored within it.

[0170] A "formula generation means" is a means for dynamically generating query expressions based on the information requested by the user.

[0171] A "display means" is a means that has the function of presenting the generated query expression to the user.

[0172] A "dialogue mechanism" is a means used to modify the generated query expression in response to user feedback.

[0173] "Emotion analysis tools" are means of analyzing user input and feedback to recognize user emotions and adjust the interface accordingly.

[0174] This invention provides a system that streamlines queries to data sets and accurately processes natural language requests entered by users. This system is constructed by combining a server, terminals, and an emotion analysis engine.

[0175] The server is equipped with information processing means for analyzing received requests. Therefore, software including natural language processing algorithms operates to analyze the user's intent. Furthermore, a database is used as a means of association, storing the correspondence between the structure and terminology within the data set. This database maps not only table and column names but also company-specific terminology. In addition, the server is equipped with an expression generation means, dynamically generating SQL queries based on the user's request. This converts the user's request, entered in natural language, into a query that can be directly executed against the database.

[0176] The terminal provides an interface for users to input data requests. Requests entered by the user through the terminal are sent to the server. The generated SQL query is then returned to the terminal and presented to the user. The terminal has an interactive mechanism that allows the query to be modified based on feedback provided by the user.

[0177] The emotion analysis engine has the ability to analyze user input and feedback and recognize the user's emotions. When the user feels frustrated, this engine provides guidance through dialogue. For example, if negative emotions are detected through error messages or ambiguous input, it provides hints for resolution and step-by-step guidance to reach the desired data.

[0178] For example, if a user enters "I want a list of recently added products," the server will analyze this request using natural language processing and generate a corresponding SQL query. This query might be something like "SELECT FROM products WHERE added_date > NOW() - INTERVAL '30 days';". If the user is not satisfied with the result, the sentiment analysis engine will infer and provide feedback. An example of a prompt to input into the generation AI model would be, "Please describe the steps to analyze the user's input request and generate an appropriate SQL query."

[0179] As described above, this system aims to efficiently process data requests in natural language and provide an emotionally sensitive interface.

[0180] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0181] Step 1:

[0182] The user enters data requests in natural language using the terminal interface. This input might take the form of, for example, "I want a list of recently added items." The terminal's role is to receive the user's natural language input and send it to the server. The input is sent as data in string format.

[0183] Step 2:

[0184] The server processes natural language requests received from the terminal. The server aims to understand user requests by analyzing the input using natural language processing algorithms via information processing tools. Data processing includes breaking down the received string into tokens and classifying each token to clarify its intent. The output consists of the analysis results and metadata generated based on the user's intent.

[0185] Step 3:

[0186] Based on the analysis of the request, the server uses association mechanisms to refer to terminology correspondence information in the data set. Specifically, it maps the user's request to the database structure by checking the correspondence with tables and columns in the internal database. The output is mapping information that shows which database element the user's request corresponds to.

[0187] Step 4:

[0188] Based on the mapping information described above, the server uses an expression generation mechanism to create an SQL query. This is a process that dynamically generates an SQL statement to extract the optimal data based on the analyzed user request. The data calculation involves constructing a query expression that incorporates the mapped elements into a logical structure. The output is stored within the server as an SQL query.

[0189] Step 5:

[0190] The generated SQL query is sent from the server to the terminal and presented to the user. The terminal allows the user to visually confirm the query content via a display device. At this stage, the user can refer to the outputted query expression and confirm whether the intended content is reflected. The output is visualized in a format that the user can understand.

[0191] Step 6:

[0192] Users view the results of SQL queries through their terminals and provide feedback as needed. This feedback is received through interactive means. The input is interpreted as user evaluation or correction instructions, and the server initiates a re-analysis or correction process based on this.

[0193] Step 7:

[0194] The emotion analysis engine analyzes user feedback and emotions at the time of input, and adjusts the interface and user guidance as needed. In this process, it analyzes the user's input and tone of voice to recognize emotions. The output is provided to the device and the user as situation-appropriate advice and problem-solving support information.

[0195] (Application Example 2)

[0196] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as a "server" and the smart device 14 as a "terminal".

[0197] Traditional database query systems have a problem in that they struggle to accurately analyze user requests entered in natural language and quickly retrieve the necessary information. Furthermore, they often provide mechanical feedback without considering user emotions, resulting in an unsatisfactory user experience. In such situations, users may experience unnecessary stress in order to effectively use the system.

[0198] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[0199] In this invention, the server includes parsing means for analyzing input natural language requests, correspondence means for storing term correspondences between the structure in the data storage area and the stored information, generation means for dynamically generating query prompts in response to information requested by the user, and emotion recognition means. This makes it possible to recognize the user's emotions in real time and provide appropriate feedback, thereby providing a more intuitive and less stressful user experience.

[0200] "Analysis means for analyzing input natural language requests" refers to technology for structuring natural language information entered by a user and interpreting its intent.

[0201] "Means for storing the correspondence between the structure within the data aggregation area and the terminology of the stored information" refers to a technology for maintaining the correspondence between the data structure within a database and its terminology.

[0202] "Generating means for dynamically generating query prompts in response to information requested by the user" refers to a technology that dynamically creates queries to construct appropriate inquiries based on user requests.

[0203] "Means of displaying generated queries to users" refers to methods and technologies for showing generated queries to users.

[0204] "Interactive means for modifying queries in response to user reactions" refers to technologies for adjusting or modifying queries based on feedback received from users.

[0205] "An emotion recognition means for recognizing user emotions and providing feedback based on the user's emotions during the inquiry process" refers to a technology that analyzes the user's emotional state and provides corresponding feedback.

[0206] The system implementing this invention mainly consists of a server, a user terminal, and an emotion recognition engine. The server receives and analyzes natural language requests entered by the user through the terminal. It also stores terminology correspondences to information stored in a data aggregation area and dynamically generates queries based on the user's requests. The generated queries are then presented to the user. The system also includes dialogue means for modifying queries in response to user feedback.

[0207] In this system, an emotion recognition engine analyzes user input and feedback to recognize the user's emotions. Based on this, it can provide helpful feedback to improve the user experience.

[0208] The implementation utilizes cloud-based AI services such as Google Cloud Natural Language API and Microsoft Azure Text Analytics API. These technologies analyze speech and text data, recognizing it as structured data. The generated SQL queries are then executed against the data aggregation area.

[0209] For example, if a user enters "I want to know my recent purchase history" into their device, the server uses natural language processing to analyze this request and generate the corresponding SQL query. The emotion recognition engine recognizes emotions from the user's input and provides helpful guidance to help the user achieve their goals smoothly.

[0210] By using a generative AI model, it is possible to handle even complex questions, such as, "How can the electronic payment support assistant recognize the user's emotions and help them review their payment history? If the user's tone of voice indicates dissatisfaction, how will it provide a solution?"

[0211] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0212] Step 1:

[0213] The device accepts user requests in natural language, either as voice or text. Input devices include microphones and keyboards. In the case of voice requests, speech recognition technology is used to convert them to text. This conversion generates text data.

[0214] Step 2:

[0215] The server parses the text data it receives as input through the Google Cloud Natural Language API. This API structures the text and clarifies the user's intent. As a result, the request is output as a specific data access request.

[0216] Step 3:

[0217] The server dynamically generates SQL queries using terminology mappings to information stored in the data aggregation area. This generation process identifies appropriate database fields based on the analysis results and constructs queries against them. The generated SQL queries are then output.

[0218] Step 4:

[0219] The server executes the generated SQL query and retrieves the necessary information from the database. The retrieved information is output as a result set.

[0220] Step 5:

[0221] The server sends the result set to the terminal, which then displays the information to the user. This result is displayed in a table or list format, allowing the user to review the information.

[0222] Step 6:

[0223] The emotion recognition engine uses the Microsoft Azure Text Analytics API to analyze user feedback and responses. This analysis recognizes emotions from user input and prepares it to provide appropriate feedback. The recognized emotions are then output.

[0224] Step 7:

[0225] The server provides appropriate feedback to the terminal based on the recognized user's emotions. This feedback is presented to the user as a helpful message or additional guidance tailored to the user's emotions. The feedback content is then output.

[0226] 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 user input for the result of the specific processing. The control unit 46A transmits the audio data indicating 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.

[0227] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). An example of data generation model 58 is ChatGPT (registered trademark) (Internet search).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0228] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart device 14.

[0229] [Second Embodiment]

[0230] Figure 3 shows an example of the configuration of the data processing system 210 according to the second embodiment.

[0231] As shown in Figure 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.

[0232] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0233] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication interface 44. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, and camera 42 are also connected to the bus 52.

[0234] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.

[0235] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).

[0236] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.

[0237] Figure 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Figure 4, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.

[0238] The specific processing program 56 is an example of a "program" relating to the technology of this 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.

[0239] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0240] In the smart glasses 214, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[0241] Next, the identification processing performed by the identification processing unit 290 of the data processing device 12 will be described. 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".

[0242] This invention relates to a system that allows for database queries without requiring specific technical knowledge, in order to streamline internal data acquisition operations. This system utilizes a server and terminals to enable users to make data requests in natural language.

[0243] The server analyzes the database structure and creates a list of internal terminology corresponding to each table and column. Using this list, it analyzes the input natural language and provides natural language processing capabilities to understand the user's intended data request. Simultaneously, the server has query generation capabilities that automatically generate SQL queries to extract the requested data based on this analysis.

[0244] The terminal provides an interface for the user to input data requests. The user inputs the data they want to retrieve in natural language, and the request is sent to the server. Upon receiving this, the server performs natural language processing and generates an appropriate SQL query. The generated SQL is then sent back to the terminal and presented to the user.

[0245] Furthermore, the server has an interactive mechanism that allows it to modify queries interactively based on user input. This enables flexible responses even when users change their data requests. In addition, the server can provide the user with the actual results retrieved from the database via a terminal, allowing the user to view those results.

[0246] As a concrete example, let's assume a user enters "I want a list of users using the latest device." In this case, the server converts "latest device" into the corresponding model code or ID and generates SQL based on them. As a result, an SQL query like "SELECT UserID FROM UserTable WHERE ModelCode = 'Latest'" is generated and presented to the user. After the user confirms the query, the server executes it, retrieves the requested data, and displays it to the user.

[0247] As described above, this system aims to improve internal business efficiency by providing an environment where users can intuitively query the database using natural language.

[0248] The following describes the processing flow.

[0249] Step 1:

[0250] The user enters a data request in natural language into the terminal's input field. This request is received by the terminal and sent to the server.

[0251] Step 2:

[0252] The server analyzes the received natural language data request. This analysis is performed using natural language processing techniques to identify the intent of the request and the necessary data items.

[0253] Step 3:

[0254] The server refers to an internal glossary of company terminology and maps the parsed request to specific table and column names in the database.

[0255] Step 4:

[0256] The server automatically generates an SQL query to retrieve the requested data based on the mapping information. This query is constructed to satisfy the user's request.

[0257] Step 5:

[0258] The server sends the generated SQL query to the terminal. The terminal displays this query for the user to review.

[0259] Step 6:

[0260] Users can review the displayed SQL queries and, if necessary, send correction requests from their terminal to the server.

[0261] Step 7:

[0262] The server receives correction requests and repeats an interactive process of modifying queries as needed.

[0263] Step 8:

[0264] The server executes the finalized SQL query and retrieves the results from the database.

[0265] Step 9:

[0266] The server sends the acquired data to the terminal, and the user checks the data results on the terminal.

[0267] (Example 1)

[0268] Next, we will describe Example 1. 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."

[0269] In today's business environment, effectively retrieving necessary information from databases is crucial. However, it is difficult for the average user to create database queries and retrieve the requested information without specialized technical knowledge. There is a need to solve this problem and provide users with intuitive access to information.

[0270] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[0271] In this invention, the server includes natural language processing means for parsing input natural language requests, mapping means for storing the structure of information storage means and term correspondences of stored information, and query generation means for dynamically generating query queries based on the information requested by the user. This makes it possible for users without technical expertise to query the database in natural language and efficiently retrieve information.

[0272] "Natural language processing means" refers to a device or program that analyzes natural language input by a user and processes it to understand its intent.

[0273] A "mapping method" is a data transformation method used to associate the structure of an information storage means with the information stored therein.

[0274] A "query generation means" is a method or apparatus for generating queries to obtain necessary data from an information storage means based on a user's request.

[0275] "Output means" refers to a device or program for displaying the generated query to the user.

[0276] A "generative AI model" is a model that uses artificial intelligence to enable advanced natural language processing.

[0277] A "dialogue means" is a device or program that enables the dynamic modification of queries in response to user feedback.

[0278] A "terminal device" is a device that provides an interface for a user to input data requests.

[0279] "Result provision means" refers to a method or apparatus for providing data extracted from information storage means to a user.

[0280] This invention is a system that enables users to query a database using natural language. The system consists of a server and a terminal. The server has natural language processing means for analyzing input natural language requests, mapping means for storing the correspondence between database structure and information terminology, query generation means for dynamically generating query data, and a function for performing natural language analysis using a generative AI model. It also includes dialogue means for modifying queries in response to user feedback.

[0281] The terminal provides an interface for the user to input data requests in natural language. The user can simply input a request such as "I want a list of employees who joined the company in 2023" as plain text. When the server receives this request, it uses a generative AI model to analyze the text and generate an appropriate SQL query for the database.

[0282] The server sends the generated SQL query to the terminal and presents it to the user. The user can view the displayed query and request modifications if necessary. After the modifications, the server executes the query and retrieves the requested information from the database. The retrieved information is formatted and displayed on the terminal in a user-friendly manner.

[0283] As a specific example, when inputting "I want a list of users using the latest device", the server uses the identification code related to "the latest device" to generate an SQL query such as "SELECT user ID FROM user table WHERE model code = 'latest'". This enables the user to easily access information through an intuitive interface.

[0284] The flow of the specific process in Example 1 will be described using FIG. 11.

[0285] Step 1:

[0286] The user inputs a data request in natural language through the terminal. The input is text such as "I want a list of employees who joined the company in 2023".

[0287] This input is treated as a prompt sentence for transmission to the server.

[0288] Step 2:

[0289] The server uses a generative AI model to analyze the prompt sentence from the user.

[0290] Analyze the input natural language text, perform data processing to identify necessary data requests, such as identifying that "2023" indicates the year of employment, and generate a structured internal request.

[0291] Step 3:

[0292] The server uses mapping means to map each element of the analyzed natural language to the corresponding table and column in the database.

[0293] Specifically, it is converted into a specific database structure such as the "employee table" and "year of employment" based on the internal request.

[0294] Step 4:

[0295] The server uses query generation means to dynamically generate an SQL query based on the mapped information.

[0296] For example, generate a query such as "SELECT FROM employee table WHERE year of employment = '2023'", and hold this query as an output.

[0297] Step 5:

[0298] The server sends the generated query to the terminal and presents it to the user.

[0299] By viewing the presented SQL query, the user can confirm how the data request was interpreted.

[0300] Step 6:

[0301] The user provides feedback from the terminal to the server as needed and requests modification of the query.

[0302] Based on this feedback, the server regenerates the query through interactive means and reflects the modification if necessary.

[0303] Step 7:

[0304] The server finally executes the query confirmed by the user against the database to obtain the requested data.

[0305] Format the results obtained from the database and prepare them as structured output.

[0306] Step 8:

[0307] The server sends the acquired data to the terminal and displays the final result to the user.

[0308] The user can view the results via the terminal and obtain the necessary information.

[0309] (Application Example 1)

[0310] Next, Application Example 1 will be described. In the following description, the data processing device 12 is referred to as the "server", and the smart glasses 214 are referred to as the "terminal".

[0311] In modern industrial environments, technicians working on the front line at the site lack means to quickly and intuitively access and analyze data. Conventional database systems require specialized knowledge and take a lot of man-hours, making it difficult to efficiently utilize data. Therefore, new methods that contribute to improving productivity and quickly solving problems within the factory are sought.

[0312] The specific processing by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[0313] In this invention, the server includes natural language processing means for parsing input natural language requests, mapping means for storing the correspondence between the structure in the data aggregation area and the terms of the stored data, and query generation means for dynamically generating query queries based on the data requested by the user. This enables engineers to access data through an intuitive interface and solve problems in real time, even without specialized knowledge.

[0314] "Natural language processing means" refers to technologies that analyze natural language requests entered by users and generate appropriate queries.

[0315] A "mapping method" is a technology that stores the structure within a data aggregation area and the correspondence between the stored data and its terminology, thereby supporting efficient query generation.

[0316] A "query generation mechanism" is a function that dynamically creates queries based on user requests and retrieves appropriate information from the database.

[0317] "Output method" refers to a function that presents the generated query to the user for review and modification.

[0318] "Dialogue tools" are functions that support interaction to flexibly modify queries in response to user feedback and guide users toward optimal results.

[0319] "Interface means" refers to user interfaces and designs that enable engineers in industrial environments to easily utilize data.

[0320] The "results provision method" is a function that transmits information acquired from the data aggregation area to the user's portable information terminal and displays it visually.

[0321] This invention is implemented as a system aimed at enabling engineers in industrial environments to intuitively acquire and utilize data. This system consists of a server and terminals, which work together in cooperation.

[0322] The server uses natural language processing (NLTK) to analyze natural language requests input by engineers. It extracts meaning from the input text and generates database queries using Python and the NLTK library. These queries are designed to efficiently retrieve necessary information from the data storage area using SQLAlchemy. The server also has a mapping mechanism to store the correspondence between data structures and terminology, enabling efficient query generation.

[0323] The terminal is a portable information terminal (e.g., a tablet or smartphone) used by engineers. The application interface on the terminal is developed using React Native and is responsible for allowing engineers to input information in natural language and visually display the results retrieved from the database. This interface allows engineers to intuitively manipulate data even without specialized knowledge.

[0324] As a concrete example of this system, when a technician enters a prompt such as, "Tell me which machine has the lowest utilization rate this week," the server analyzes this request and generates the optimal query. The server sends the information obtained from the data aggregation area to the terminal, and the technician can then make decisions based on that information.

[0325] Examples of prompt statements are as follows:

[0326] "I want to know the latest operational status of the factory."

[0327] "Please provide yesterday's data regarding the production of product A."

[0328] "We'll look for lines with a high error rate using last week's data."

[0329] The processes executed in response to these prompts can improve the overall efficiency of the factory by assisting engineers in making decisions in real time.

[0330] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0331] Step 1:

[0332] The user enters a prompt in natural language into the terminal interface. This input could be, for example, "Tell me which machine has the lowest utilization rate this week." The terminal receives the user's input and prepares to send it to the server.

[0333] Step 2:

[0334] The terminal sends the entered prompt text to the server. This is done using the endpoint API, sending the text as text data. The server receives this natural language prompt text.

[0335] Step 3:

[0336] The server parses the received prompt message using natural language processing (NLTK). Specifically, it tokenizes the prompt message using NLTK and extracts keywords. Based on the extracted keywords, it is then ready to generate a database query.

[0337] Step 4:

[0338] The server dynamically generates database queries. SQLAlchemy is used to construct SQL queries using extracted keywords. These queries allow for efficient retrieval of the desired information from the database.

[0339] Step 5:

[0340] The server executes the generated SQL query against the database. The query execution extracts the requested data from the database, and the results are then processed on the server.

[0341] Step 6:

[0342] The server sends the acquired data to the terminal. The data is formatted in JSON and sent to the terminal via the endpoint API.

[0343] Step 7:

[0344] The device displays the received data in a user interface. The data is visually represented using React Native, allowing users to easily review the results. Ultimately, users can make decisions and take subsequent actions based on the displayed information.

[0345] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.

[0346] This invention relates to adding a function to a system for facilitating database queries that recognizes user emotions and adjusts the interface accordingly. The system consists of a server, a terminal, and an emotion engine.

[0347] The server has a mapping mechanism that associates table and column names in the internal database with internal terminology, and uses this information to parse natural language requests entered by users. This parsing is performed by a natural language processing mechanism, which clarifies the user's intended data request. The server also has a query generation mechanism that dynamically generates SQL queries based on the parsed request.

[0348] The terminal provides an input interface for the user to make data requests and sends the requests to the server. The SQL query generated by the server is returned to the terminal and presented to the user. At this time, an interactive mechanism is provided to modify the query in response to user feedback.

[0349] The emotion engine analyzes user input and feedback, recognizing the user's emotions that emerge during the process. Based on this analysis, if the user is feeling frustrated, it can provide helpful guidance through dialogue. For example, if negative emotions are detected due to error messages or ambiguous input, the emotion engine activates notification mechanisms to provide hints for problem solving and step-by-step guidance for the user to reach the desired data.

[0350] For example, if a user enters "I want a list of recently added products," the server analyzes this request using natural language processing and generates a corresponding SQL query. The generated SQL query is then presented to the user via the terminal, and if the user is not satisfied with the query results, an emotion engine intervenes, inferring the user's emotions from their tone of voice and input content, and providing appropriate feedback.

[0351] As described above, this system aims not only to enable efficient data extraction but also to provide a more intuitive and stress-free user experience by being attentive to the user's emotions.

[0352] The following describes the processing flow.

[0353] Step 1:

[0354] The user inputs data requests in natural language through the terminal's interface. These requests are received by the terminal and sent to the server.

[0355] Step 2:

[0356] The server uses natural language processing to analyze user requests. The analysis involves understanding the user's intent based on the input text and identifying the necessary data items.

[0357] Step 3:

[0358] The server uses its built-in mapping mechanism to match the analysis results with the correct table and column names in the database.

[0359] Step 4:

[0360] The server generates a dynamic SQL query using the specified data items. This query is appropriately constructed to satisfy the user's request.

[0361] Step 5:

[0362] The server sends the generated SQL query to the terminal, and the terminal displays that query to the user.

[0363] Step 6:

[0364] The emotion engine analyzes the user's written content and, if possible, their tone of voice when displaying queries or receiving user feedback, and recognizes their emotions.

[0365] Step 7:

[0366] If the sentiment engine determines that the user is not satisfied with the query results and has questions or frustrations, the device will display helpful guidance or additional support messages.

[0367] Step 8:

[0368] Users can provide feedback and request modifications to queries as needed. The server receives this feedback and continues the interactive process to regenerate the queries.

[0369] Step 9:

[0370] The server executes the finalized SQL query and sends the results retrieved from the database to the terminal.

[0371] Step 10:

[0372] Users can review the results displayed on their device and adjust their queries as needed. This process is repeated until the user obtains satisfactory data.

[0373] (Example 2)

[0374] Next, we will describe Example 2. 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".

[0375] The goal is to streamline database queries, improve usability when users make data requests in natural language, and provide an interface that is considerate of user emotions. In particular, it is necessary to consider the correspondence between the database structure and internal terminology, generate appropriate query data, and respond flexibly to user feedback.

[0376] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[0377] In this invention, the server includes information processing means for parsing input natural language requests, association means for storing term correspondences between the structure within a data set and the stored information, and expression generation means for dynamically generating query expressions based on the information requested by the user. This enables efficient and appropriate generation of query queries when a user inputs data requests in natural language, and provides an intuitive interface that also takes user emotions into consideration.

[0378] An "information processing means" is a means of analyzing input natural language requests and clarifying the data requests intended by the user.

[0379] An "association means" is a means for associating and storing terms used between the structure of a data set and the information stored within it.

[0380] A "formula generation means" is a means for dynamically generating query expressions based on the information requested by the user.

[0381] A "display means" is a means that has the function of presenting the generated query expression to the user.

[0382] A "dialogue mechanism" is a means used to modify the generated query expression in response to user feedback.

[0383] "Emotion analysis tools" are means of analyzing user input and feedback to recognize user emotions and adjust the interface accordingly.

[0384] This invention provides a system that streamlines queries to data sets and accurately processes natural language requests entered by users. This system is constructed by combining a server, terminals, and an emotion analysis engine.

[0385] The server is equipped with information processing means for analyzing received requests. Therefore, software including natural language processing algorithms operates to analyze the user's intent. Furthermore, a database is used as a means of association, storing the correspondence between the structure and terminology within the data set. This database maps not only table and column names but also company-specific terminology. In addition, the server is equipped with an expression generation means, dynamically generating SQL queries based on the user's request. This converts the user's request, entered in natural language, into a query that can be directly executed against the database.

[0386] The terminal provides an interface for users to input data requests. Requests entered by the user through the terminal are sent to the server. The generated SQL query is then returned to the terminal and presented to the user. The terminal has an interactive mechanism that allows the query to be modified based on feedback provided by the user.

[0387] The emotion analysis engine has the ability to analyze user input and feedback and recognize the user's emotions. When the user feels frustrated, this engine provides guidance through dialogue. For example, if negative emotions are detected through error messages or ambiguous input, it provides hints for resolution and step-by-step guidance to reach the desired data.

[0388] For example, if a user enters "I want a list of recently added products," the server will analyze this request using natural language processing and generate a corresponding SQL query. This query might be something like "SELECT FROM products WHERE added_date > NOW() - INTERVAL '30 days';". If the user is not satisfied with the result, the sentiment analysis engine will infer and provide feedback. An example of a prompt to input into the generation AI model would be, "Please describe the steps to analyze the user's input request and generate an appropriate SQL query."

[0389] As described above, this system aims to efficiently process data requests in natural language and provide an emotionally sensitive interface.

[0390] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0391] Step 1:

[0392] The user enters data requests in natural language using the terminal interface. This input might take the form of, for example, "I want a list of recently added items." The terminal's role is to receive the user's natural language input and send it to the server. The input is sent as data in string format.

[0393] Step 2:

[0394] The server processes natural language requests received from the terminal. The server aims to understand user requests by analyzing the input using natural language processing algorithms via information processing tools. Data processing includes breaking down the received string into tokens and classifying each token to clarify its intent. The output consists of the analysis results and metadata generated based on the user's intent.

[0395] Step 3:

[0396] Based on the analysis of the request, the server uses association mechanisms to refer to terminology correspondence information in the data set. Specifically, it maps the user's request to the database structure by checking the correspondence with tables and columns in the internal database. The output is mapping information that shows which database element the user's request corresponds to.

[0397] Step 4:

[0398] Based on the mapping information described above, the server uses an expression generation mechanism to create an SQL query. This is a process that dynamically generates an SQL statement to extract the optimal data based on the analyzed user request. The data calculation involves constructing a query expression that incorporates the mapped elements into a logical structure. The output is stored within the server as an SQL query.

[0399] Step 5:

[0400] The generated SQL query is sent from the server to the terminal and presented to the user. The terminal allows the user to visually confirm the query content via a display device. At this stage, the user can refer to the outputted query expression and confirm whether the intended content is reflected. The output is visualized in a format that the user can understand.

[0401] Step 6:

[0402] Users view the results of SQL queries through their terminals and provide feedback as needed. This feedback is received through interactive means. The input is interpreted as user evaluation or correction instructions, and the server initiates a re-analysis or correction process based on this.

[0403] Step 7:

[0404] The emotion analysis engine analyzes user feedback and emotions at the time of input, and adjusts the interface and user guidance as needed. In this process, it analyzes the user's input and tone of voice to recognize emotions. The output is provided to the device and the user as situation-appropriate advice and problem-solving support information.

[0405] (Application Example 2)

[0406] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server," and the smart glasses 214 will be referred to as the "terminal."

[0407] Traditional database query systems have a problem in that they struggle to accurately analyze user requests entered in natural language and quickly retrieve the necessary information. Furthermore, they often provide mechanical feedback without considering user emotions, resulting in an unsatisfactory user experience. In such situations, users may experience unnecessary stress in order to effectively use the system.

[0408] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[0409] In this invention, the server includes parsing means for analyzing input natural language requests, correspondence means for storing term correspondences between the structure in the data storage area and the stored information, generation means for dynamically generating query prompts in response to information requested by the user, and emotion recognition means. This makes it possible to recognize the user's emotions in real time and provide appropriate feedback, thereby providing a more intuitive and less stressful user experience.

[0410] "Analysis means for analyzing input natural language requests" refers to technology for structuring natural language information entered by a user and interpreting its intent.

[0411] "Means for storing the correspondence between the structure within the data aggregation area and the terminology of the stored information" refers to a technology for maintaining the correspondence between the data structure within a database and its terminology.

[0412] "Generating means for dynamically generating query prompts in response to information requested by the user" refers to a technology that dynamically creates queries to construct appropriate inquiries based on user requests.

[0413] "Means of displaying generated queries to users" refers to methods and technologies for showing generated queries to users.

[0414] "Interactive means for modifying queries in response to user reactions" refers to technologies for adjusting or modifying queries based on feedback received from users.

[0415] "An emotion recognition means for recognizing user emotions and providing feedback based on the user's emotions during the inquiry process" refers to a technology that analyzes the user's emotional state and provides corresponding feedback.

[0416] The system implementing this invention mainly consists of a server, a user terminal, and an emotion recognition engine. The server receives and analyzes natural language requests entered by the user through the terminal. It also stores terminology correspondences to information stored in a data aggregation area and dynamically generates queries based on the user's requests. The generated queries are then presented to the user. The system also includes dialogue means for modifying queries in response to user feedback.

[0417] In this system, an emotion recognition engine analyzes user input and feedback to recognize the user's emotions. Based on this, it can provide helpful feedback to improve the user experience.

[0418] The implementation utilizes cloud-based AI services such as the Google Cloud Natural Language API and the Microsoft Azure Text Analytics API. These technologies analyze speech and text data, recognizing it as structured data. The generated SQL queries are then executed against the data aggregation area.

[0419] For example, if a user enters "I want to know my recent purchase history" into their device, the server uses natural language processing to analyze this request and generate the corresponding SQL query. The emotion recognition engine recognizes emotions from the user's input and provides helpful guidance to help the user achieve their goals smoothly.

[0420] By using a generative AI model, it is possible to handle even complex questions, such as, "How can the electronic payment support assistant recognize the user's emotions and help them review their payment history? If the user's tone of voice indicates dissatisfaction, how will it provide a solution?"

[0421] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0422] Step 1:

[0423] The device accepts user requests in natural language, either as voice or text. Input devices include microphones and keyboards. In the case of voice requests, speech recognition technology is used to convert them to text. This conversion generates text data.

[0424] Step 2:

[0425] The server parses the text data it receives as input through the Google Cloud Natural Language API. This API structures the text and clarifies the user's intent. As a result, the request is output as a specific data access request.

[0426] Step 3:

[0427] The server dynamically generates SQL queries using terminology mappings to information stored in the data aggregation area. This generation process identifies appropriate database fields based on the analysis results and constructs queries against them. The generated SQL queries are then output.

[0428] Step 4:

[0429] The server executes the generated SQL query and retrieves the necessary information from the database. The retrieved information is output as a result set.

[0430] Step 5:

[0431] The server sends the result set to the terminal, which then displays the information to the user. This result is displayed in a table or list format, allowing the user to review the information.

[0432] Step 6:

[0433] The emotion recognition engine uses the Microsoft Azure Text Analytics API to analyze user feedback and responses. This analysis recognizes emotions from user input and prepares it to provide appropriate feedback. The recognized emotions are then output.

[0434] Step 7:

[0435] The server provides appropriate feedback to the terminal based on the recognized user's emotions. This feedback is presented to the user as a helpful message or additional guidance tailored to the user's emotions. The feedback content is then output.

[0436] 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 user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[0437] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0438] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the smart glasses 214.

[0439] [Third Embodiment]

[0440] Figure 5 shows an example of the configuration of the data processing system 310 according to the third embodiment.

[0441] As shown in Figure 5, the data processing system 310 includes a data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.

[0442] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0443] The headset terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a display 343. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and display 343 are also connected to the bus 52.

[0444] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.

[0445] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).

[0446] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.

[0447] Figure 6 shows an example of the main functions of the data processing device 12 and the headset terminal 314. As shown in Figure 6, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.

[0448] The specific processing program 56 is an example of a "program" relating to the technology of this 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.

[0449] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0450] In the headset terminal 314, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[0451] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the headset terminal 314 will be referred to as the "terminal".

[0452] This invention relates to a system that allows for database queries without requiring specific technical knowledge, in order to streamline internal data acquisition operations. This system utilizes a server and terminals to enable users to make data requests in natural language.

[0453] The server analyzes the database structure and creates a list of internal terminology corresponding to each table and column. Using this list, it analyzes the input natural language and provides natural language processing capabilities to understand the user's intended data request. Simultaneously, the server has query generation capabilities that automatically generate SQL queries to extract the requested data based on this analysis.

[0454] The terminal provides an interface for the user to input data requests. The user inputs the data they want to retrieve in natural language, and the request is sent to the server. Upon receiving this, the server performs natural language processing and generates an appropriate SQL query. The generated SQL is then sent back to the terminal and presented to the user.

[0455] Furthermore, the server has an interactive mechanism that allows it to modify queries interactively based on user input. This enables flexible responses even when users change their data requests. In addition, the server can provide the user with the actual results retrieved from the database via a terminal, allowing the user to view those results.

[0456] As a concrete example, let's assume a user enters "I want a list of users using the latest device." In this case, the server converts "latest device" into the corresponding model code or ID and generates SQL based on them. As a result, an SQL query like "SELECT UserID FROM UserTable WHERE ModelCode = 'Latest'" is generated and presented to the user. After the user confirms the query, the server executes it, retrieves the requested data, and displays it to the user.

[0457] As described above, this system aims to improve internal business efficiency by providing an environment where users can intuitively query the database using natural language.

[0458] The following describes the processing flow.

[0459] Step 1:

[0460] The user enters a data request in natural language into the terminal's input field. This request is received by the terminal and sent to the server.

[0461] Step 2:

[0462] The server analyzes the received natural language data request. This analysis is performed using natural language processing techniques to identify the intent of the request and the necessary data items.

[0463] Step 3:

[0464] The server refers to an internal glossary of company terminology and maps the parsed request to specific table and column names in the database.

[0465] Step 4:

[0466] The server automatically generates an SQL query to retrieve the requested data based on the mapping information. This query is constructed to satisfy the user's request.

[0467] Step 5:

[0468] The server sends the generated SQL query to the terminal. The terminal displays this query for the user to review.

[0469] Step 6:

[0470] Users can review the displayed SQL queries and, if necessary, send correction requests from their terminal to the server.

[0471] Step 7:

[0472] The server receives correction requests and repeats an interactive process of modifying queries as needed.

[0473] Step 8:

[0474] The server executes the finalized SQL query and retrieves the results from the database.

[0475] Step 9:

[0476] The server sends the acquired data to the terminal, and the user checks the data results on the terminal.

[0477] (Example 1)

[0478] Next, we will describe Example 1. 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."

[0479] In today's business environment, effectively retrieving necessary information from databases is crucial. However, it is difficult for the average user to create database queries and retrieve the requested information without specialized technical knowledge. There is a need to solve this problem and provide users with intuitive access to information.

[0480] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[0481] In this invention, the server includes natural language processing means for parsing input natural language requests, mapping means for storing the structure of information storage means and term correspondences of stored information, and query generation means for dynamically generating query queries based on the information requested by the user. This makes it possible for users without technical expertise to query the database in natural language and efficiently retrieve information.

[0482] "Natural language processing means" refers to a device or program that analyzes natural language input by a user and processes it to understand its intent.

[0483] A "mapping method" is a data transformation method used to associate the structure of an information storage means with the information stored therein.

[0484] A "query generation means" is a method or apparatus for generating queries to obtain necessary data from an information storage means based on a user's request.

[0485] "Output means" refers to a device or program for displaying the generated query to the user.

[0486] A "generative AI model" is a model that uses artificial intelligence to enable advanced natural language processing.

[0487] A "dialogue means" is a device or program that enables the dynamic modification of queries in response to user feedback.

[0488] A "terminal device" is a device that provides an interface for a user to input data requests.

[0489] "Result provision means" refers to a method or apparatus for providing data extracted from information storage means to a user.

[0490] This invention is a system that enables users to query a database using natural language. The system consists of a server and a terminal. The server has natural language processing means for analyzing input natural language requests, mapping means for storing the correspondence between database structure and information terminology, query generation means for dynamically generating query data, and a function for performing natural language analysis using a generative AI model. It also includes dialogue means for modifying queries in response to user feedback.

[0491] The terminal provides an interface for users to input data requests in natural language. Users simply need to input requests as text, such as "I want a list of employees who joined the company in 2023." Upon receiving this request, the server uses a generative AI model to parse the text and generate an appropriate SQL query for the database.

[0492] The server sends the generated SQL query to the terminal and presents it to the user. The user can review the displayed query and request modifications if necessary. After modifications, the server executes the query and retrieves the requested information from the database. The retrieved information is then formatted and displayed on the terminal in a user-friendly format.

[0493] For example, if you input "I want a list of users using the latest devices," the server will use an identification code associated with the "latest devices" to generate an SQL query such as "SELECT UserID FROM UserTable WHERE DeviceCode = 'Latest'." This allows users to easily access the information through an intuitive interface.

[0494] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0495] Step 1:

[0496] The user enters data requests in natural language through their device. For example, the input might be text such as, "I would like a list of employees who joined the company in 2023."

[0497] This input will be treated as a prompt message to be sent to the server.

[0498] Step 2:

[0499] The server uses a generative AI model to analyze the prompt messages from the user.

[0500] Analyze the input natural language text, perform data processing to identify necessary data requests, such as identifying that "2023" indicates the year of joining the company, and generate a structured internal request.

[0501] Step 3:

[0502] The server uses mapping means to map each element of the analyzed natural language to the corresponding table and column in the database.

[0503] Specifically, convert it into a specific database structure such as "employee table" and "year of joining the company" based on the internal request.

[0504] Step 4:

[0505] The server uses query generation means to dynamically generate a SQL query based on the mapped information.

[0506] For example, generate a query such as "SELECT FROM employee table WHERE year of joining the company = '2023'", and hold this query as an output.

[0507] Step 5:

[0508] The server sends the generated query to the terminal and presents it to the user.

[0509] By viewing the presented SQL query, the user can confirm how the data request was interpreted.

[0510] Step 6:

[0511] The user provides feedback from the terminal to the server as needed and requests modification of the query.

[0512] Based on this feedback, the server regenerates the query through interaction means and reflects the modification if necessary.

[0513] Step 7:

[0514] The server ultimately executes the query confirmed by the user against the database and retrieves the requested data.

[0515] The results obtained from the database are formatted and prepared as structured output.

[0516] Step 8:

[0517] The server sends the acquired data to the terminal and displays the final result to the user.

[0518] Users can view the results and obtain the necessary information via their devices.

[0519] (Application Example 1)

[0520] Next, we will explain Application Example 1. In the following explanation, 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."

[0521] In today's industrial environment, engineers working on the front lines lack the means to quickly and intuitively access and analyze data. Traditional database systems require specialized knowledge and are time-consuming, making efficient data utilization difficult. Therefore, there is a need for new methods that can contribute to improving productivity and rapid problem solving within factories.

[0522] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[0523] In this invention, the server includes natural language processing means for parsing input natural language requests, mapping means for storing the correspondence between the structure in the data aggregation area and the terms of the stored data, and query generation means for dynamically generating query queries based on the data requested by the user. This enables engineers to access data through an intuitive interface and solve problems in real time, even without specialized knowledge.

[0524] "Natural language processing means" refers to technologies that analyze natural language requests entered by users and generate appropriate queries.

[0525] A "mapping method" is a technology that stores the structure within a data aggregation area and the correspondence between the stored data and its terminology, thereby supporting efficient query generation.

[0526] A "query generation mechanism" is a function that dynamically creates queries based on user requests and retrieves appropriate information from the database.

[0527] "Output method" refers to a function that presents the generated query to the user for review and modification.

[0528] "Dialogue tools" are functions that support interaction to flexibly modify queries in response to user feedback and guide users toward optimal results.

[0529] "Interface means" refers to user interfaces and designs that enable engineers in industrial environments to easily utilize data.

[0530] The "results provision method" is a function that transmits information acquired from the data aggregation area to the user's portable information terminal and displays it visually.

[0531] This invention is implemented as a system aimed at enabling engineers in industrial environments to intuitively acquire and utilize data. This system consists of a server and terminals, which work together in cooperation.

[0532] The server uses natural language processing (NLTK) to analyze natural language requests input by engineers. It extracts meaning from the input text and generates database queries using Python and the NLTK library. These queries are designed to efficiently retrieve necessary information from the data storage area using SQLAlchemy. The server also has a mapping mechanism to store the correspondence between data structures and terminology, enabling efficient query generation.

[0533] The terminal is a portable information terminal (e.g., a tablet or smartphone) used by engineers. The application interface on the terminal is developed using React Native and is responsible for allowing engineers to input information in natural language and visually display the results retrieved from the database. This interface allows engineers to intuitively manipulate data even without specialized knowledge.

[0534] As a concrete example of this system, when a technician enters a prompt such as, "Tell me which machine has the lowest utilization rate this week," the server analyzes this request and generates the optimal query. The server sends the information obtained from the data aggregation area to the terminal, and the technician can then make decisions based on that information.

[0535] Examples of prompt statements are as follows:

[0536] "I want to know the latest operational status of the factory."

[0537] "Please provide yesterday's data regarding the production of product A."

[0538] "We'll look for lines with a high error rate using last week's data."

[0539] The processes executed in response to these prompts can improve the overall efficiency of the factory by assisting engineers in making decisions in real time.

[0540] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0541] Step 1:

[0542] The user enters a prompt in natural language into the terminal interface. This input could be, for example, "Tell me which machine has the lowest utilization rate this week." The terminal receives the user's input and prepares to send it to the server.

[0543] Step 2:

[0544] The terminal sends the entered prompt text to the server. This is done using the endpoint API, sending the text as text data. The server receives this natural language prompt text.

[0545] Step 3:

[0546] The server parses the received prompt message using natural language processing (NLTK). Specifically, it tokenizes the prompt message using NLTK and extracts keywords. Based on the extracted keywords, it is then ready to generate a database query.

[0547] Step 4:

[0548] The server dynamically generates database queries. SQLAlchemy is used to construct SQL queries using extracted keywords. These queries allow for efficient retrieval of the desired information from the database.

[0549] Step 5:

[0550] The server executes the generated SQL query against the database. The query execution extracts the requested data from the database, and the results are then processed on the server.

[0551] Step 6:

[0552] The server sends the acquired data to the terminal. The data is formatted in JSON and sent to the terminal via the endpoint API.

[0553] Step 7:

[0554] The device displays the received data in a user interface. The data is visually represented using React Native, allowing users to easily review the results. Ultimately, users can make decisions and take subsequent actions based on the displayed information.

[0555] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.

[0556] This invention relates to adding a function to a system for facilitating database queries that recognizes user emotions and adjusts the interface accordingly. The system consists of a server, a terminal, and an emotion engine.

[0557] The server has a mapping mechanism that associates table and column names in the internal database with internal terminology, and uses this information to parse natural language requests entered by users. This parsing is performed by a natural language processing mechanism, which clarifies the user's intended data request. The server also has a query generation mechanism that dynamically generates SQL queries based on the parsed request.

[0558] The terminal provides an input interface for the user to make data requests and sends the requests to the server. The SQL query generated by the server is returned to the terminal and presented to the user. At this time, an interactive mechanism is provided to modify the query in response to user feedback.

[0559] The emotion engine analyzes user input and feedback, recognizing the user's emotions that emerge during the process. Based on this analysis, if the user is feeling frustrated, it can provide helpful guidance through dialogue. For example, if negative emotions are detected due to error messages or ambiguous input, the emotion engine activates notification mechanisms to provide hints for problem solving and step-by-step guidance for the user to reach the desired data.

[0560] For example, if a user enters "I want a list of recently added products," the server analyzes this request using natural language processing and generates a corresponding SQL query. The generated SQL query is then presented to the user via the terminal, and if the user is not satisfied with the query results, an emotion engine intervenes, inferring the user's emotions from their tone of voice and input content, and providing appropriate feedback.

[0561] As described above, this system aims not only to enable efficient data extraction but also to provide a more intuitive and stress-free user experience by being attentive to the user's emotions.

[0562] The following describes the processing flow.

[0563] Step 1:

[0564] The user inputs data requests in natural language through the terminal's interface. These requests are received by the terminal and sent to the server.

[0565] Step 2:

[0566] The server uses natural language processing to analyze user requests. The analysis involves understanding the user's intent based on the input text and identifying the necessary data items.

[0567] Step 3:

[0568] The server uses its built-in mapping mechanism to match the analysis results with the correct table and column names in the database.

[0569] Step 4:

[0570] The server generates a dynamic SQL query using the specified data items. This query is appropriately constructed to satisfy the user's request.

[0571] Step 5:

[0572] The server sends the generated SQL query to the terminal, and the terminal displays that query to the user.

[0573] Step 6:

[0574] The emotion engine analyzes the user's written content and, if possible, their tone of voice when displaying queries or receiving user feedback, and recognizes their emotions.

[0575] Step 7:

[0576] If the sentiment engine determines that the user is not satisfied with the query results and has questions or frustrations, the device will display helpful guidance or additional support messages.

[0577] Step 8:

[0578] Users can provide feedback and request modifications to queries as needed. The server receives this feedback and continues the interactive process to regenerate the queries.

[0579] Step 9:

[0580] The server executes the finalized SQL query and sends the results retrieved from the database to the terminal.

[0581] Step 10:

[0582] Users can review the results displayed on their device and adjust their queries as needed. This process is repeated until the user obtains satisfactory data.

[0583] (Example 2)

[0584] Next, we will describe Example 2. 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."

[0585] The goal is to streamline database queries, improve usability when users make data requests in natural language, and provide an interface that is considerate of user emotions. In particular, it is necessary to consider the correspondence between the database structure and internal terminology, generate appropriate query data, and respond flexibly to user feedback.

[0586] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[0587] In this invention, the server includes information processing means for parsing input natural language requests, association means for storing term correspondences between the structure within a data set and the stored information, and expression generation means for dynamically generating query expressions based on the information requested by the user. This enables efficient and appropriate generation of query queries when a user inputs data requests in natural language, and provides an intuitive interface that also takes user emotions into consideration.

[0588] An "information processing means" is a means of analyzing input natural language requests and clarifying the data requests intended by the user.

[0589] An "association means" is a means for associating and storing terms used between the structure of a data set and the information stored within it.

[0590] A "formula generation means" is a means for dynamically generating query expressions based on the information requested by the user.

[0591] A "display means" is a means that has the function of presenting the generated query expression to the user.

[0592] A "dialogue mechanism" is a means used to modify the generated query expression in response to user feedback.

[0593] "Emotion analysis tools" are means of analyzing user input and feedback to recognize user emotions and adjust the interface accordingly.

[0594] This invention provides a system that streamlines queries to data sets and accurately processes natural language requests entered by users. This system is constructed by combining a server, terminals, and an emotion analysis engine.

[0595] The server is equipped with information processing means for analyzing received requests. Therefore, software including natural language processing algorithms operates to analyze the user's intent. Furthermore, a database is used as a means of association, storing the correspondence between the structure and terminology within the data set. This database maps not only table and column names but also company-specific terminology. In addition, the server is equipped with an expression generation means, dynamically generating SQL queries based on the user's request. This converts the user's request, entered in natural language, into a query that can be directly executed against the database.

[0596] The terminal provides an interface for users to input data requests. Requests entered by the user through the terminal are sent to the server. The generated SQL query is then returned to the terminal and presented to the user. The terminal has an interactive mechanism that allows the query to be modified based on feedback provided by the user.

[0597] The emotion analysis engine has the ability to analyze user input and feedback and recognize the user's emotions. When the user feels frustrated, this engine provides guidance through dialogue. For example, if negative emotions are detected through error messages or ambiguous input, it provides hints for resolution and step-by-step guidance to reach the desired data.

[0598] For example, if a user enters "I want a list of recently added products," the server will analyze this request using natural language processing and generate a corresponding SQL query. This query might be something like "SELECT FROM products WHERE added_date > NOW() - INTERVAL '30 days';". If the user is not satisfied with the result, the sentiment analysis engine will infer and provide feedback. An example of a prompt to input into the generation AI model would be, "Please describe the steps to analyze the user's input request and generate an appropriate SQL query."

[0599] As described above, this system aims to efficiently process data requests in natural language and provide an emotionally sensitive interface.

[0600] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0601] Step 1:

[0602] The user enters data requests in natural language using the terminal interface. This input might take the form of, for example, "I want a list of recently added items." The terminal's role is to receive the user's natural language input and send it to the server. The input is sent as data in string format.

[0603] Step 2:

[0604] The server processes natural language requests received from the terminal. The server aims to understand user requests by analyzing the input using natural language processing algorithms via information processing tools. Data processing includes breaking down the received string into tokens and classifying each token to clarify its intent. The output consists of the analysis results and metadata generated based on the user's intent.

[0605] Step 3:

[0606] Based on the analysis of the request, the server uses association mechanisms to refer to terminology correspondence information in the data set. Specifically, it maps the user's request to the database structure by checking the correspondence with tables and columns in the internal database. The output is mapping information that shows which database element the user's request corresponds to.

[0607] Step 4:

[0608] Based on the mapping information described above, the server uses an expression generation mechanism to create an SQL query. This is a process that dynamically generates an SQL statement to extract the optimal data based on the analyzed user request. The data calculation involves constructing a query expression that incorporates the mapped elements into a logical structure. The output is stored within the server as an SQL query.

[0609] Step 5:

[0610] The generated SQL query is sent from the server to the terminal and presented to the user. The terminal allows the user to visually confirm the query content via a display device. At this stage, the user can refer to the outputted query expression and confirm whether the intended content is reflected. The output is visualized in a format that the user can understand.

[0611] Step 6:

[0612] Users view the results of SQL queries through their terminals and provide feedback as needed. This feedback is received through interactive means. The input is interpreted as user evaluation or correction instructions, and the server initiates a re-analysis or correction process based on this.

[0613] Step 7:

[0614] The emotion analysis engine analyzes user feedback and emotions at the time of input, and adjusts the interface and user guidance as needed. In this process, it analyzes the user's input and tone of voice to recognize emotions. The output is provided to the device and the user as situation-appropriate advice and problem-solving support information.

[0615] (Application Example 2)

[0616] Next, we will explain application example 2. In the following explanation, 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."

[0617] Traditional database query systems have a problem in that they struggle to accurately analyze user requests entered in natural language and quickly retrieve the necessary information. Furthermore, they often provide mechanical feedback without considering user emotions, resulting in an unsatisfactory user experience. In such situations, users may experience unnecessary stress in order to effectively use the system.

[0618] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[0619] In this invention, the server includes parsing means for analyzing input natural language requests, correspondence means for storing term correspondences between the structure in the data storage area and the stored information, generation means for dynamically generating query prompts in response to information requested by the user, and emotion recognition means. This makes it possible to recognize the user's emotions in real time and provide appropriate feedback, thereby providing a more intuitive and less stressful user experience.

[0620] "Analysis means for analyzing input natural language requests" refers to technology for structuring natural language information entered by a user and interpreting its intent.

[0621] "Means for storing the correspondence between the structure within the data aggregation area and the terminology of the stored information" refers to a technology for maintaining the correspondence between the data structure within a database and its terminology.

[0622] "Generating means for dynamically generating query prompts in response to information requested by the user" refers to a technology that dynamically creates queries to construct appropriate inquiries based on user requests.

[0623] "Means of displaying generated queries to users" refers to methods and technologies for showing generated queries to users.

[0624] "Interactive means for modifying queries in response to user reactions" refers to technologies for adjusting or modifying queries based on feedback received from users.

[0625] "An emotion recognition means for recognizing user emotions and providing feedback based on the user's emotions during the inquiry process" refers to a technology that analyzes the user's emotional state and provides corresponding feedback.

[0626] The system implementing this invention mainly consists of a server, a user terminal, and an emotion recognition engine. The server receives and analyzes natural language requests entered by the user through the terminal. It also stores terminology correspondences to information stored in a data aggregation area and dynamically generates queries based on the user's requests. The generated queries are then presented to the user. The system also includes dialogue means for modifying queries in response to user feedback.

[0627] In this system, an emotion recognition engine analyzes user input and feedback to recognize the user's emotions. Based on this, it can provide helpful feedback to improve the user experience.

[0628] The implementation utilizes cloud-based AI services such as the Google Cloud Natural Language API and the Microsoft Azure Text Analytics API. These technologies analyze speech and text data, recognizing it as structured data. The generated SQL queries are then executed against the data aggregation area.

[0629] For example, if a user enters "I want to know my recent purchase history" into their device, the server uses natural language processing to analyze this request and generate the corresponding SQL query. The emotion recognition engine recognizes emotions from the user's input and provides helpful guidance to help the user achieve their goals smoothly.

[0630] By using a generative AI model, it is possible to handle even complex questions, such as, "How can the electronic payment support assistant recognize the user's emotions and help them review their payment history? If the user's tone of voice indicates dissatisfaction, how will it provide a solution?"

[0631] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0632] Step 1:

[0633] The device accepts user requests in natural language, either as voice or text. Input devices include microphones and keyboards. In the case of voice requests, speech recognition technology is used to convert them to text. This conversion generates text data.

[0634] Step 2:

[0635] The server parses the text data it receives as input through the Google Cloud Natural Language API. This API structures the text and clarifies the user's intent. As a result, the request is output as a specific data access request.

[0636] Step 3:

[0637] The server dynamically generates SQL queries using terminology mappings to information stored in the data aggregation area. This generation process identifies appropriate database fields based on the analysis results and constructs queries against them. The generated SQL queries are then output.

[0638] Step 4:

[0639] The server executes the generated SQL query and retrieves the necessary information from the database. The retrieved information is output as a result set.

[0640] Step 5:

[0641] The server sends the result set to the terminal, which then displays the information to the user. This result is displayed in a table or list format, allowing the user to review the information.

[0642] Step 6:

[0643] The emotion recognition engine uses the Microsoft Azure Text Analytics API to analyze user feedback and responses. This analysis recognizes emotions from user input and prepares it to provide appropriate feedback. The recognized emotions are then output.

[0644] Step 7:

[0645] The server provides appropriate feedback to the terminal based on the recognized user's emotions. This feedback is presented to the user as a helpful message or additional guidance tailored to the user's emotions. The feedback content is then output.

[0646] The specific processing unit 290 transmits the result of the specific processing to the headset terminal 314. In the headset terminal 314, the control unit 46A causes the speaker 240 and display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[0647] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0648] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and specific processing may also be performed by the headset terminal 314.

[0649] [Fourth Embodiment]

[0650] Figure 7 shows an example of the configuration of the data processing system 410 according to the fourth embodiment.

[0651] As shown in Figure 7, the data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.

[0652] The data processing device 12 comprises a computer 22, a database 24, and a communication interface 26. The computer 22 is an example of a "computer" related to the technology of this disclosure. The computer 22 comprises a processor 28, RAM 30, and storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication interface 26 are also connected to the bus 34. The communication interface 26 is connected to a network 54. An example of the network 54 is a WAN (Wide Area Network) and / or a LAN (Local Area Network).

[0653] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication interface 44, and a controlled object 443. The computer 36 includes a processor 46, RAM 48, and storage 50. The processor 46, RAM 48, and storage 50 are connected to a bus 52. The microphone 238, speaker 240, camera 42, and controlled object 443 are also connected to the bus 52.

[0654] The microphone 238 receives voice signals from the user 20 and receives instructions from the user 20. The microphone 238 captures the voice signals from the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio according to the instructions from the processor 46.

[0655] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an image sensor such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the area around the user 20 (for example, an imaging range defined by a field of view equivalent to the width of a typical healthy person's field of vision).

[0656] Communication interface 44 is connected to network 54. Communication interfaces 44 and 26 are responsible for the exchange of various information between processor 46 and processor 28 via network 54. The exchange of various information between processor 46 and processor 28 using communication interfaces 44 and 26 is performed in a secure manner.

[0657] The controlled object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the robot 414's emotions can be expressed by controlling these motors. Furthermore, the robot 414's facial expressions can also be expressed by controlling the illumination state of the LEDs in its eyes.

[0658] Figure 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Figure 8, the data processing device 12 performs specific processing using the processor 28. The storage 32 stores the specific processing program 56.

[0659] The specific processing program 56 is an example of a "program" relating to the technology of this 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.

[0660] The storage 32 stores the data generation model 58 and the emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.

[0661] In robot 414, the processor 46 performs the reception output processing. The storage 50 stores the reception output program 60. 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 processing is realized by the processor 46 operating as a control unit 46A according to the reception output program 60 executed on the RAM 48.

[0662] Next, the specific processing performed by the specific processing unit 290 of the data processing device 12 will be described. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[0663] This invention relates to a system that allows for database queries without requiring specific technical knowledge, in order to streamline internal data acquisition operations. This system utilizes a server and terminals to enable users to make data requests in natural language.

[0664] The server analyzes the database structure and creates a list of internal terminology corresponding to each table and column. Using this list, it analyzes the input natural language and provides natural language processing capabilities to understand the user's intended data request. Simultaneously, the server has query generation capabilities that automatically generate SQL queries to extract the requested data based on this analysis.

[0665] The terminal provides an interface for the user to input data requests. The user inputs the data they want to retrieve in natural language, and the request is sent to the server. Upon receiving this, the server performs natural language processing and generates an appropriate SQL query. The generated SQL is then sent back to the terminal and presented to the user.

[0666] Furthermore, the server has an interactive mechanism that allows it to modify queries interactively based on user input. This enables flexible responses even when users change their data requests. In addition, the server can provide the user with the actual results retrieved from the database via a terminal, allowing the user to view those results.

[0667] As a concrete example, let's assume a user enters "I want a list of users using the latest device." In this case, the server converts "latest device" into the corresponding model code or ID and generates SQL based on them. As a result, an SQL query like "SELECT UserID FROM UserTable WHERE ModelCode = 'Latest'" is generated and presented to the user. After the user confirms the query, the server executes it, retrieves the requested data, and displays it to the user.

[0668] As described above, this system aims to improve internal business efficiency by providing an environment where users can intuitively query the database using natural language.

[0669] The following describes the processing flow.

[0670] Step 1:

[0671] The user enters a data request in natural language into the terminal's input field. This request is received by the terminal and sent to the server.

[0672] Step 2:

[0673] The server analyzes the received natural language data request. This analysis is performed using natural language processing techniques to identify the intent of the request and the necessary data items.

[0674] Step 3:

[0675] The server refers to an internal glossary of company terminology and maps the parsed request to specific table and column names in the database.

[0676] Step 4:

[0677] The server automatically generates an SQL query to retrieve the requested data based on the mapping information. This query is constructed to satisfy the user's request.

[0678] Step 5:

[0679] The server sends the generated SQL query to the terminal. The terminal displays this query for the user to review.

[0680] Step 6:

[0681] Users can review the displayed SQL queries and, if necessary, send correction requests from their terminal to the server.

[0682] Step 7:

[0683] The server receives correction requests and repeats an interactive process of modifying queries as needed.

[0684] Step 8:

[0685] The server executes the finalized SQL query and retrieves the results from the database.

[0686] Step 9:

[0687] The server sends the acquired data to the terminal, and the user checks the data results on the terminal.

[0688] (Example 1)

[0689] Next, we will describe Example 1. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[0690] In today's business environment, effectively retrieving necessary information from databases is crucial. However, it is difficult for the average user to create database queries and retrieve the requested information without specialized technical knowledge. There is a need to solve this problem and provide users with intuitive access to information.

[0691] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 1 is realized by the following means.

[0692] In this invention, the server includes natural language processing means for parsing input natural language requests, mapping means for storing the structure of information storage means and term correspondences of stored information, and query generation means for dynamically generating query queries based on the information requested by the user. This makes it possible for users without technical expertise to query the database in natural language and efficiently retrieve information.

[0693] "Natural language processing means" refers to a device or program that analyzes natural language input by a user and processes it to understand its intent.

[0694] A "mapping method" is a data transformation method used to associate the structure of an information storage means with the information stored therein.

[0695] A "query generation means" is a method or apparatus for generating queries to obtain necessary data from an information storage means based on a user's request.

[0696] "Output means" refers to a device or program for displaying the generated query to the user.

[0697] A "generative AI model" is a model that uses artificial intelligence to enable advanced natural language processing.

[0698] A "dialogue means" is a device or program that enables the dynamic modification of queries in response to user feedback.

[0699] A "terminal device" is a device that provides an interface for a user to input data requests.

[0700] "Result provision means" refers to a method or apparatus for providing data extracted from information storage means to a user.

[0701] This invention is a system that enables users to query a database using natural language. The system consists of a server and a terminal. The server has natural language processing means for analyzing input natural language requests, mapping means for storing the correspondence between database structure and information terminology, query generation means for dynamically generating query data, and a function for performing natural language analysis using a generative AI model. It also includes dialogue means for modifying queries in response to user feedback.

[0702] The terminal provides an interface for users to input data requests in natural language. Users simply need to input requests as text, such as "I want a list of employees who joined the company in 2023." Upon receiving this request, the server uses a generative AI model to parse the text and generate an appropriate SQL query for the database.

[0703] The server sends the generated SQL query to the terminal and presents it to the user. The user can review the displayed query and request modifications if necessary. After modifications, the server executes the query and retrieves the requested information from the database. The retrieved information is then formatted and displayed on the terminal in a user-friendly format.

[0704] For example, if you input "I want a list of users using the latest devices," the server will use an identification code associated with the "latest devices" to generate an SQL query such as "SELECT UserID FROM UserTable WHERE DeviceCode = 'Latest'." This allows users to easily access the information through an intuitive interface.

[0705] The flow of the specific processing in Example 1 will be explained using Figure 11.

[0706] Step 1:

[0707] The user enters data requests in natural language through their device. For example, the input might be text such as, "I would like a list of employees who joined the company in 2023."

[0708] This input will be treated as a prompt message to be sent to the server.

[0709] Step 2:

[0710] The server uses a generative AI model to analyze the prompt messages from the user.

[0711] Analyze the input natural language text, perform data processing to identify necessary data requests from it, for example, to identify that "2023" indicates the year of joining the company, and generate a structured internal request.

[0712] Step 3:

[0713] The server uses mapping means to map each element of the analyzed natural language to the corresponding table and column in the database.

[0714] Specifically, based on the internal request, it is converted into a specific database structure such as "employee table" and "year of joining the company".

[0715] Step 4:

[0716] The server uses query generation means to dynamically generate a SQL query based on the mapped information.

[0717] For example, generate a query such as "SELECT FROM employee table WHERE year of joining the company = '2023'", and hold this query as an output.

[0718] Step 5:

[0719] The server sends the generated query to the terminal and presents it to the user.

[0720] By viewing the presented SQL query, the user can confirm how the data request was interpreted.

[0721] Step 6:

[0722] The user provides feedback from the terminal to the server as needed and requests modification of the query.

[0723] Based on this feedback, the server regenerates the query through interactive means and reflects the modification if necessary.

[0724] Step 7:

[0725] The server ultimately executes the query confirmed by the user against the database and retrieves the requested data.

[0726] The results obtained from the database are formatted and prepared as structured output.

[0727] Step 8:

[0728] The server sends the acquired data to the terminal and displays the final result to the user.

[0729] Users can view the results and obtain the necessary information via their devices.

[0730] (Application Example 1)

[0731] Next, we will explain Application Example 1. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[0732] In today's industrial environment, engineers working on the front lines lack the means to quickly and intuitively access and analyze data. Traditional database systems require specialized knowledge and are time-consuming, making efficient data utilization difficult. Therefore, there is a need for new methods that can contribute to improving productivity and rapid problem solving within factories.

[0733] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 1 is realized by the following means.

[0734] In this invention, the server includes natural language processing means for parsing input natural language requests, mapping means for storing the correspondence between the structure in the data aggregation area and the terms of the stored data, and query generation means for dynamically generating query queries based on the data requested by the user. This enables engineers to access data through an intuitive interface and solve problems in real time, even without specialized knowledge.

[0735] "Natural language processing means" refers to technologies that analyze natural language requests entered by users and generate appropriate queries.

[0736] A "mapping method" is a technology that stores the structure within a data aggregation area and the correspondence between the stored data and its terminology, thereby supporting efficient query generation.

[0737] A "query generation mechanism" is a function that dynamically creates queries based on user requests and retrieves appropriate information from the database.

[0738] "Output method" refers to a function that presents the generated query to the user for review and modification.

[0739] "Dialogue tools" are functions that support interaction to flexibly modify queries in response to user feedback and guide users toward optimal results.

[0740] "Interface means" refers to user interfaces and designs that enable engineers in industrial environments to easily utilize data.

[0741] The "results provision method" is a function that transmits information acquired from the data aggregation area to the user's portable information terminal and displays it visually.

[0742] This invention is implemented as a system aimed at enabling engineers in industrial environments to intuitively acquire and utilize data. This system consists of a server and terminals, which work together in cooperation.

[0743] The server uses natural language processing (NLTK) to analyze natural language requests input by engineers. It extracts meaning from the input text and generates database queries using Python and the NLTK library. These queries are designed to efficiently retrieve necessary information from the data storage area using SQLAlchemy. The server also has a mapping mechanism to store the correspondence between data structures and terminology, enabling efficient query generation.

[0744] The terminal is a portable information terminal (e.g., a tablet or smartphone) used by engineers. The application interface on the terminal is developed using React Native and is responsible for allowing engineers to input information in natural language and visually display the results retrieved from the database. This interface allows engineers to intuitively manipulate data even without specialized knowledge.

[0745] As a concrete example of this system, when a technician enters a prompt such as, "Tell me which machine has the lowest utilization rate this week," the server analyzes this request and generates the optimal query. The server sends the information obtained from the data aggregation area to the terminal, and the technician can then make decisions based on that information.

[0746] Examples of prompt statements are as follows:

[0747] "I want to know the latest operational status of the factory."

[0748] "Please provide yesterday's data regarding the production of product A."

[0749] "We'll look for lines with a high error rate using last week's data."

[0750] The processes executed in response to these prompts can improve the overall efficiency of the factory by assisting engineers in making decisions in real time.

[0751] The flow of a specific process in Application Example 1 will be explained using Figure 12.

[0752] Step 1:

[0753] The user enters a prompt in natural language into the terminal interface. This input could be, for example, "Tell me which machine has the lowest utilization rate this week." The terminal receives the user's input and prepares to send it to the server.

[0754] Step 2:

[0755] The terminal sends the entered prompt text to the server. This is done using the endpoint API, sending the text as text data. The server receives this natural language prompt text.

[0756] Step 3:

[0757] The server parses the received prompt message using natural language processing (NLTK). Specifically, it tokenizes the prompt message using NLTK and extracts keywords. Based on the extracted keywords, it is then ready to generate a database query.

[0758] Step 4:

[0759] The server dynamically generates database queries. SQLAlchemy is used to construct SQL queries using extracted keywords. These queries allow for efficient retrieval of the desired information from the database.

[0760] Step 5:

[0761] The server executes the generated SQL query against the database. The query execution extracts the requested data from the database, and the results are then processed on the server.

[0762] Step 6:

[0763] The server sends the acquired data to the terminal. The data is formatted in JSON and sent to the terminal via the endpoint API.

[0764] Step 7:

[0765] The device displays the received data in a user interface. The data is visually represented using React Native, allowing users to easily review the results. Ultimately, users can make decisions and take subsequent actions based on the displayed information.

[0766] Furthermore, an emotion engine that estimates the user's emotions may be incorporated. That is, the identification processing unit 290 may use the emotion identification model 59 to estimate the user's emotions and perform identification processing using the user's emotions.

[0767] This invention relates to adding a function to a system for facilitating database queries that recognizes user emotions and adjusts the interface accordingly. The system consists of a server, a terminal, and an emotion engine.

[0768] The server has a mapping mechanism that associates table and column names in the internal database with internal terminology, and uses this information to parse natural language requests entered by users. This parsing is performed by a natural language processing mechanism, which clarifies the user's intended data request. The server also has a query generation mechanism that dynamically generates SQL queries based on the parsed request.

[0769] The terminal provides an input interface for the user to make data requests and sends the requests to the server. The SQL query generated by the server is returned to the terminal and presented to the user. At this time, an interactive mechanism is provided to modify the query in response to user feedback.

[0770] The emotion engine analyzes user input and feedback, recognizing the user's emotions that emerge during the process. Based on this analysis, if the user is feeling frustrated, it can provide helpful guidance through dialogue. For example, if negative emotions are detected due to error messages or ambiguous input, the emotion engine activates notification mechanisms to provide hints for problem solving and step-by-step guidance for the user to reach the desired data.

[0771] For example, if a user enters "I want a list of recently added products," the server analyzes this request using natural language processing and generates a corresponding SQL query. The generated SQL query is then presented to the user via the terminal, and if the user is not satisfied with the query results, an emotion engine intervenes, inferring the user's emotions from their tone of voice and input content, and providing appropriate feedback.

[0772] As described above, this system aims not only to enable efficient data extraction but also to provide a more intuitive and stress-free user experience by being attentive to the user's emotions.

[0773] The following describes the processing flow.

[0774] Step 1:

[0775] The user inputs data requests in natural language through the terminal's interface. These requests are received by the terminal and sent to the server.

[0776] Step 2:

[0777] The server uses natural language processing to analyze user requests. The analysis involves understanding the user's intent based on the input text and identifying the necessary data items.

[0778] Step 3:

[0779] The server uses its built-in mapping mechanism to match the analysis results with the correct table and column names in the database.

[0780] Step 4:

[0781] The server generates a dynamic SQL query using the specified data items. This query is appropriately constructed to satisfy the user's request.

[0782] Step 5:

[0783] The server sends the generated SQL query to the terminal, and the terminal displays that query to the user.

[0784] Step 6:

[0785] The emotion engine analyzes the user's written content and, if possible, their tone of voice when displaying queries or receiving user feedback, and recognizes their emotions.

[0786] Step 7:

[0787] If the sentiment engine determines that the user is not satisfied with the query results and has questions or frustrations, the device will display helpful guidance or additional support messages.

[0788] Step 8:

[0789] Users can provide feedback and request modifications to queries as needed. The server receives this feedback and continues the interactive process to regenerate the queries.

[0790] Step 9:

[0791] The server executes the finalized SQL query and sends the results retrieved from the database to the terminal.

[0792] Step 10:

[0793] Users can review the results displayed on their device and adjust their queries as needed. This process is repeated until the user obtains satisfactory data.

[0794] (Example 2)

[0795] Next, we will describe Example 2. In the following description, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[0796] The goal is to streamline database queries, improve usability when users make data requests in natural language, and provide an interface that is considerate of user emotions. In particular, it is necessary to consider the correspondence between the database structure and internal terminology, generate appropriate query data, and respond flexibly to user feedback.

[0797] The identification process performed by the identification processing unit 290 of the data processing device 12 in Example 2 is realized by the following means.

[0798] In this invention, the server includes information processing means for parsing input natural language requests, association means for storing term correspondences between the structure within a data set and the stored information, and expression generation means for dynamically generating query expressions based on the information requested by the user. This enables efficient and appropriate generation of query queries when a user inputs data requests in natural language, and provides an intuitive interface that also takes user emotions into consideration.

[0799] An "information processing means" is a means of analyzing input natural language requests and clarifying the data requests intended by the user.

[0800] An "association means" is a means for associating and storing terms used between the structure of a data set and the information stored within it.

[0801] A "formula generation means" is a means for dynamically generating query expressions based on the information requested by the user.

[0802] A "display means" is a means that has the function of presenting the generated query expression to the user.

[0803] A "dialogue mechanism" is a means used to modify the generated query expression in response to user feedback.

[0804] "Emotion analysis tools" are means of analyzing user input and feedback to recognize user emotions and adjust the interface accordingly.

[0805] This invention provides a system that streamlines queries to data sets and accurately processes natural language requests entered by users. This system is constructed by combining a server, terminals, and an emotion analysis engine.

[0806] The server is equipped with information processing means for analyzing received requests. Therefore, software including natural language processing algorithms operates to analyze the user's intent. Furthermore, a database is used as a means of association, storing the correspondence between the structure and terminology within the data set. This database maps not only table and column names but also company-specific terminology. In addition, the server is equipped with an expression generation means, dynamically generating SQL queries based on the user's request. This converts the user's request, entered in natural language, into a query that can be directly executed against the database.

[0807] The terminal provides an interface for users to input data requests. Requests entered by the user through the terminal are sent to the server. The generated SQL query is then returned to the terminal and presented to the user. The terminal has an interactive mechanism that allows the query to be modified based on feedback provided by the user.

[0808] The emotion analysis engine has the ability to analyze user input and feedback and recognize the user's emotions. When the user feels frustrated, this engine provides guidance through dialogue. For example, if negative emotions are detected through error messages or ambiguous input, it provides hints for resolution and step-by-step guidance to reach the desired data.

[0809] For example, if a user enters "I want a list of recently added products," the server will analyze this request using natural language processing and generate a corresponding SQL query. This query might be something like "SELECT FROM products WHERE added_date > NOW() - INTERVAL '30 days';". If the user is not satisfied with the result, the sentiment analysis engine will infer and provide feedback. An example of a prompt to input into the generation AI model would be, "Please describe the steps to analyze the user's input request and generate an appropriate SQL query."

[0810] As described above, this system aims to efficiently process data requests in natural language and provide an emotionally sensitive interface.

[0811] The flow of the specific processing in Example 2 will be explained using Figure 13.

[0812] Step 1:

[0813] The user enters data requests in natural language using the terminal interface. This input might take the form of, for example, "I want a list of recently added items." The terminal's role is to receive the user's natural language input and send it to the server. The input is sent as data in string format.

[0814] Step 2:

[0815] The server processes natural language requests received from the terminal. The server aims to understand user requests by analyzing the input using natural language processing algorithms via information processing tools. Data processing includes breaking down the received string into tokens and classifying each token to clarify its intent. The output consists of the analysis results and metadata generated based on the user's intent.

[0816] Step 3:

[0817] Based on the analysis of the request, the server uses association mechanisms to refer to terminology correspondence information in the data set. Specifically, it maps the user's request to the database structure by checking the correspondence with tables and columns in the internal database. The output is mapping information that shows which database element the user's request corresponds to.

[0818] Step 4:

[0819] Based on the mapping information described above, the server uses an expression generation mechanism to create an SQL query. This is a process that dynamically generates an SQL statement to extract the optimal data based on the analyzed user request. The data calculation involves constructing a query expression that incorporates the mapped elements into a logical structure. The output is stored within the server as an SQL query.

[0820] Step 5:

[0821] The generated SQL query is sent from the server to the terminal and presented to the user. The terminal allows the user to visually confirm the query content via a display device. At this stage, the user can refer to the outputted query expression and confirm whether the intended content is reflected. The output is visualized in a format that the user can understand.

[0822] Step 6:

[0823] Users view the results of SQL queries through their terminals and provide feedback as needed. This feedback is received through interactive means. The input is interpreted as user evaluation or correction instructions, and the server initiates a re-analysis or correction process based on this.

[0824] Step 7:

[0825] The emotion analysis engine analyzes user feedback and emotions at the time of input, and adjusts the interface and user guidance as needed. In this process, it analyzes the user's input and tone of voice to recognize emotions. The output is provided to the device and the user as situation-appropriate advice and problem-solving support information.

[0826] (Application Example 2)

[0827] Next, we will explain application example 2. In the following explanation, the data processing device 12 will be referred to as the "server" and the robot 414 as the "terminal".

[0828] Traditional database query systems have a problem in that they struggle to accurately analyze user requests entered in natural language and quickly retrieve the necessary information. Furthermore, they often provide mechanical feedback without considering user emotions, resulting in an unsatisfactory user experience. In such situations, users may experience unnecessary stress in order to effectively use the system.

[0829] The specific processing performed by the specific processing unit 290 of the data processing device 12 in Application Example 2 is realized by the following means.

[0830] In this invention, the server includes parsing means for analyzing input natural language requests, correspondence means for storing term correspondences between the structure in the data storage area and the stored information, generation means for dynamically generating query prompts in response to information requested by the user, and emotion recognition means. This makes it possible to recognize the user's emotions in real time and provide appropriate feedback, thereby providing a more intuitive and less stressful user experience.

[0831] "Analysis means for analyzing input natural language requests" refers to technology for structuring natural language information entered by a user and interpreting its intent.

[0832] "Means for storing the correspondence between the structure within the data aggregation area and the terminology of the stored information" refers to a technology for maintaining the correspondence between the data structure within a database and its terminology.

[0833] "Generating means for dynamically generating query prompts in response to information requested by the user" refers to a technology that dynamically creates queries to construct appropriate inquiries based on user requests.

[0834] "Means of displaying generated queries to users" refers to methods and technologies for showing generated queries to users.

[0835] "Interactive means for modifying queries in response to user reactions" refers to technologies for adjusting or modifying queries based on feedback received from users.

[0836] "An emotion recognition means for recognizing user emotions and providing feedback based on the user's emotions during the inquiry process" refers to a technology that analyzes the user's emotional state and provides corresponding feedback.

[0837] The system implementing this invention mainly consists of a server, a user terminal, and an emotion recognition engine. The server receives and analyzes natural language requests entered by the user through the terminal. It also stores terminology correspondences to information stored in a data aggregation area and dynamically generates queries based on the user's requests. The generated queries are then presented to the user. The system also includes dialogue means for modifying queries in response to user feedback.

[0838] In this system, an emotion recognition engine analyzes user input and feedback to recognize the user's emotions. Based on this, it can provide helpful feedback to improve the user experience.

[0839] The implementation utilizes cloud-based AI services such as the Google Cloud Natural Language API and the Microsoft Azure Text Analytics API. These technologies analyze speech and text data, recognizing it as structured data. The generated SQL queries are then executed against the data aggregation area.

[0840] For example, if a user enters "I want to know my recent purchase history" into their device, the server uses natural language processing to analyze this request and generate the corresponding SQL query. The emotion recognition engine recognizes emotions from the user's input and provides helpful guidance to help the user achieve their goals smoothly.

[0841] By using a generative AI model, it is possible to handle even complex questions, such as, "How can the electronic payment support assistant recognize the user's emotions and help them review their payment history? If the user's tone of voice indicates dissatisfaction, how will it provide a solution?"

[0842] The flow of a specific process in Application Example 2 will be explained using Figure 14.

[0843] Step 1:

[0844] The device accepts user requests in natural language, either as voice or text. Input devices include microphones and keyboards. In the case of voice requests, speech recognition technology is used to convert them to text. This conversion generates text data.

[0845] Step 2:

[0846] The server parses the text data it receives as input through the Google Cloud Natural Language API. This API structures the text and clarifies the user's intent. As a result, the request is output as a specific data access request.

[0847] Step 3:

[0848] The server dynamically generates SQL queries using terminology mappings to information stored in the data aggregation area. This generation process identifies appropriate database fields based on the analysis results and constructs queries against them. The generated SQL queries are then output.

[0849] Step 4:

[0850] The server executes the generated SQL query and retrieves the necessary information from the database. The retrieved information is output as a result set.

[0851] Step 5:

[0852] The server sends the result set to the terminal, which then displays the information to the user. This result is displayed in a table or list format, allowing the user to review the information.

[0853] Step 6:

[0854] The emotion recognition engine uses the Microsoft Azure Text Analytics API to analyze user feedback and responses. This analysis recognizes emotions from user input and prepares it to provide appropriate feedback. The recognized emotions are then output.

[0855] Step 7:

[0856] The server provides appropriate feedback to the terminal based on the recognized user's emotions. This feedback is presented to the user as a helpful message or additional guidance tailored to the user's emotions. The feedback content is then output.

[0857] 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 controlled object 443 to output the result of the specific processing. The microphone 238 acquires audio indicating user input for the result of the specific processing. The control unit 46A transmits the audio data indicating user input acquired by the microphone 238 to the data processing unit 12. In the data processing unit 12, the specific processing unit 290 acquires the audio data.

[0858] Data generation model 58 is a type of so-called generative AI (Artificial Intelligence). One example of data generation model 58 is ChatGPT (Internet search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search) <url: https: gemini.google.com ?hl="ja">Examples of generative AI include the following. The data generation model 58 is obtained by performing deep learning on a neural network. The data generation model 58 is input with prompts containing instructions, and with inference data such as audio data representing speech, text data representing text, and image data representing images. The data generation model 58 infers from the input inference data according to the instructions indicated by the prompts, and outputs the inference results in data formats such as audio data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.

[0859] In the above embodiment, an example was given in which specific processing is performed by the data processing device 12, but the technology of this disclosure is not limited thereto, and the specific processing may also be performed by the robot 414.

[0860] Furthermore, the emotion identification model 59, acting 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 a specific mapping, which is an emotion map (see Figure 9). Similarly, the emotion identification model 59 may also determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.

[0861] Figure 9 shows an emotion map 400 in which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. The closer to the center of the concentric circles, the more primitive the emotions are located. Further out of the concentric circles, emotions representing states and actions arising from mental states are located. Emotion is a concept that includes feelings and mental states. On the left side of the concentric circles, emotions that are generally generated from reactions occurring in the brain are located. On the right side of the concentric circles, emotions that are generally induced by situational judgment are located. Above and below the concentric circles, emotions that are generally generated from reactions occurring in the brain and induced by situational judgment are located. In addition, the emotion of "pleasure" is located on the upper side of the concentric circles, and the emotion of "displeasure" is located on the lower side. Thus, in the emotion map 400, multiple emotions are mapped based on the structure in which emotions arise, and emotions that are likely to occur simultaneously are mapped close together.

[0862] These emotions are distributed at the 3 o'clock position on the Emotion Map 400, and usually fluctuate between feelings of security and anxiety. In the right half of the Emotion Map 400, situational awareness takes precedence over internal feelings, resulting in a calm impression.

[0863] The inside of the Emotion Map 400 represents inner thoughts, while the outside represents actions. Therefore, the further you go from the outside of the Emotion Map 400, the more visible (expressed in actions) your emotions become.

[0864] Here, human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. Similarly, in robots, cars, motorcycles, etc., emotions can be created based on various balances, such as posture and battery level. When these balances deviate from the ideal, it results in discomfort, and when they approach the ideal, it results in pleasure. The emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on a system for analyzing brain physiological signals of speech emotion recognition and emotion, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map contains emotions belonging to a region called "response," where sensation is dominant. The right half of the emotion map contains emotions belonging to a region called "situation," where situational awareness is dominant.

[0865] The emotion map defines two emotions that promote learning. One is the emotion around the middle of the negative "repentance" and "reflection" on the situation side. In other words, it is 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 the emotion around the positive "desire" on the reaction side. In other words, it is when the robot has positive feelings such as "I want more" or "I want to know more."

[0866] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​representing each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple training data sets, which are combinations of user input and emotion values ​​representing each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions located close together have similar values, as shown in the emotion map 900 in Figure 10. Figure 10 shows an example where multiple emotions such as "reassured," "calm," and "confident" have similar emotion values.

[0867] The above description primarily focuses on the functions of the data processing device 12 in relation to this disclosure. However, the system related to this disclosure is not necessarily implemented on a server. The system related to this disclosure may be implemented as a general information processing system. This disclosure may be implemented, for example, as a software program that runs on a personal computer or as an application that runs on a smartphone. The method related to this disclosure may be provided to users in SaaS (Software as a Service) format.

[0868] In the above embodiment, an example was given in which a specific process is performed by a single computer 22. However, the technology of this disclosure is not limited thereto, and a distributed processing of the specific process may be performed by multiple computers, including computer 22. For example, a data generation model 58 may be provided in an external device of the data processing device 12, and the external device may generate data according to the input data.

[0869] In the above embodiment, an example was given in which the specific processing program 56 is stored in the storage 32, but the technology of this disclosure is not limited thereto. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-temporary storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-temporary storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes specific processing according to the specific processing program 56.

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

[0871] Furthermore, it is not necessary to store the entirety 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 the entirety of the specific processing program 56 in the storage 32; it is acceptable to store only a portion of the specific processing program 56.

[0872] The following types of processors can be used as hardware resources to perform specific processing. Examples of processors include a CPU, a general-purpose processor that functions as a hardware resource to perform specific processing by executing software, i.e., a program. Other examples of processors include dedicated electrical circuits, such as FPGAs (Field-Programmable Gate Arrays), PLDs (Programmable Logic Devices), or ASICs (Application Specific Integrated Circuits), which have circuit configurations specifically designed to perform specific processing. All of these processors have built-in or connected memory, and all of them perform specific processing by using memory.

[0873] The hardware resource that performs a specific process may consist of one of these various processors, or it may consist of 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). Alternatively, the hardware resource that performs a specific process may consist of a single processor.

[0874] Examples of configurations using a single processor include, firstly, a configuration in which one or more CPUs and software are combined to form a single processor, and this processor functions as a hardware resource that performs a specific process. Secondly, there is a configuration using a processor that realizes the functions of the entire system, including multiple hardware resources that perform a specific process, on a single IC chip, as exemplified by SoCs (System-on-a-chip). In this way, a specific process is realized using one or more of the above types of processors as hardware resources.

[0875] Furthermore, the hardware structure of these various processors can more specifically utilize electrical circuits that combine circuit elements such as semiconductor devices. Also, the specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps can be deleted, new steps added, or the processing order rearranged, as long as it does not deviate from the main purpose.

[0876] The descriptions and illustrations presented above are detailed explanations of the technical aspects of this disclosure and are merely examples of the technical aspects. For example, the above descriptions of the structure, function, operation, and effect are examples of the structure, function, operation, and effect of the technical aspects of this disclosure. Therefore, it goes without saying that you may delete unnecessary parts, add new elements, or replace elements in the descriptions and illustrations presented above, as long as you do not deviate from the essence of the technical aspects of this disclosure. Furthermore, in order to avoid confusion and facilitate understanding of the technical aspects of this disclosure, explanations of common technical knowledge and the like that do not require special explanation to enable the implementation of the technical aspects of this disclosure have been omitted from the descriptions and illustrations presented above.

[0877] All documents, patent applications, and technical standards described herein are incorporated by reference to the same extent as if each individual document, patent application, and technical standard were specifically and individually noted to be incorporated by reference.

[0878] The following is further disclosed regarding the embodiments described above.

[0879] (Claim 1)

[0880] A natural language processing means for analyzing input natural language requests,

[0881] A mapping means for storing the correspondence between the structure within the database and the terms of the stored data,

[0882] A query generation means for dynamically generating query data based on data requested by the user,

[0883] An output method for presenting the generated query to the user,

[0884] A means of interaction for modifying queries in response to user feedback,

[0885] A system that includes this.

[0886] (Claim 2)

[0887] The system according to claim 1, further comprising means for providing results to a terminal for transmitting information extracted from a database and displaying it to a user.

[0888] (Claim 3)

[0889] The system according to claim 1, wherein a query generated by a query generation means is executed against a database and a corresponding result is obtained.

[0890] "Example 1"

[0891] (Claim 1)

[0892] A natural language processing means for analyzing input natural language requests,

[0893] The structure of the information storage means and the mapping means for storing the term correspondence of the stored information,

[0894] A query generation means for dynamically generating query data based on information requested by the user,

[0895] An output method for presenting the generated query to the user,

[0896] A method for performing natural language analysis using a generative AI model,

[0897] A means of interaction for modifying queries in response to user feedback,

[0898] Terminal means for providing an intuitive interface,

[0899] A system that includes this.

[0900] (Claim 2)

[0901] The system according to claim 1, further comprising a means for providing results for transmitting information extracted from an information storage means to a terminal and displaying it to a user.

[0902] (Claim 3)

[0903] The system according to claim 1, wherein a query generated by a query generation means is executed against an information storage means, and a corresponding result is obtained.

[0904] "Application Example 1"

[0905] (Claim 1)

[0906] A natural language processing means for analyzing input natural language requests,

[0907] A mapping means for storing the structure within the data aggregation area and the term correspondence of the stored data,

[0908] A query generation means for dynamically generating query data based on data requested by the user,

[0909] An output method for presenting the generated query to the user,

[0910] A means of interaction for modifying queries based on user feedback,

[0911] An interface means that provides an application environment for engineers to acquire data in an industrial environment,

[0912] A system that includes this.

[0913] (Claim 2)

[0914] The system according to claim 1, further comprising means for transmitting information extracted from a data aggregation area to a portable information terminal and displaying the results to the user.

[0915] (Claim 3)

[0916] The system according to claim 1, wherein a query generated by a query generation means is executed against a data aggregation area, and a corresponding result is obtained.

[0917] "Example 2 of combining an emotion engine"

[0918] (Claim 1)

[0919] Information processing means for analyzing input natural language requests,

[0920] Association means for storing the correspondence between the structure within a data set and the terms of the stored information,

[0921] A means for dynamically generating query expressions based on information requested by the user,

[0922] A display means for presenting the generated query expression to the user,

[0923] A dialogue mechanism for modifying the query expression in response to user feedback,

[0924] A means of sentiment analysis for recognizing user emotions by analyzing input and feedback, and for adjusting the interface accordingly.

[0925] A system that includes this.

[0926] (Claim 2)

[0927] The system according to claim 1, further comprising means for providing results to a terminal device for transmitting information extracted from a data set and displaying it to a user.

[0928] (Claim 3)

[0929] The system according to claim 1, wherein a query expression generated by a query expression generation means is executed on a data set and a corresponding result is obtained.

[0930] "Application example 2 when combining with an emotional engine"

[0931] (Claim 1)

[0932] An analysis means for analyzing input natural language requests,

[0933] A correspondence means for storing the correspondence between the structure within the data storage area and the terms of the stored information,

[0934] A generation means for dynamically generating query prompts in response to information requested by the user,

[0935] A means of displaying the generated query to the user,

[0936] A means of interaction for modifying queries in response to user feedback,

[0937] An emotion recognition means for recognizing the user's emotions and providing feedback based on the user's emotions during the inquiry process,

[0938] A system that includes this.

[0939] (Claim 2)

[0940] The system according to claim 1, comprising means for providing information, and means for transmitting information extracted from a data aggregation area to a communication device and presenting it to a user.

[0941] (Claim 3)

[0942] The system according to claim 1, wherein a query generated by the generation means is executed against a data aggregation area, and the corresponding result is obtained. [Explanation of Symbols]

[0943] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Devices 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robots< / url:> < / url:> < / url:> < / url:>

Claims

1. A natural language processing means for analyzing input natural language requests, A mapping means for storing the structure within the data aggregation area and the term correspondence of the stored data, A query generation means for dynamically generating query data based on data requested by the user, An output method for presenting the generated query to the user, A means of interaction for modifying queries based on user feedback, An interface means that provides an application environment for engineers to acquire data in an industrial environment, A system that includes this.

2. The system according to claim 1, further comprising means for transmitting information extracted from a data aggregation area to a portable information terminal and displaying the results to the user.

3. The system according to claim 1, wherein a query generated by a query generation means is executed against a data aggregation area, and a corresponding result is obtained.