system

The system uses generative AI to facilitate database operations for users without SQL knowledge by learning from data tables, generating and executing SQL queries, and providing results through natural language dialogue, addressing the challenge of SQL proficiency.

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

Patent Information

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

AI Technical Summary

Technical Problem

Conventional database operations are difficult for users without knowledge of SQL.

Method used

A system utilizing generative AI to learn from data tables, analyze natural language, generate and execute SQL queries, and provide results, enabling users without SQL knowledge to interact through natural language dialogue.

Benefits of technology

Enables users without SQL knowledge to effectively operate a database by extracting and analyzing data through natural language interactions, correcting errors in queries, and working efficiently with data warehouses.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026038913000001_ABST
    Figure 2026038913000001_ABST
Patent Text Reader

Abstract

The system according to the embodiment aims to enable even users who have no knowledge of SQL to operate a database. [Solution] A system according to an embodiment includes a learning unit, an analysis unit, a generation unit, an execution unit, and a providing unit. The learning unit learns information from a data table. The analysis unit analyzes natural language based on the information learned by the learning unit. The generation unit generates an SQL query based on the natural language analyzed by the analysis unit. The execution unit executes the SQL query generated by the generation unit. The providing unit provides the results obtained by the execution unit.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

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

[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]

[0004] Conventional technology has the problem that database operations are difficult for users without knowledge of SQL.

[0005] The system according to the embodiment aims to enable even users who have no knowledge of SQL to operate a database. [Means for solving the problem]

[0006] The system according to the embodiment includes a learning unit, an analysis unit, a generation unit, an execution unit, and a providing unit. The learning unit learns information in a data table. The analysis unit analyzes natural language based on the information learned by the learning unit. The generation unit generates an SQL query based on the natural language analyzed by the analysis unit. The execution unit executes the SQL query generated by the generation unit. The providing unit provides the results obtained by the execution unit. [Effects of the Invention]

[0007] The system according to the embodiment allows even a user without knowledge of SQL to operate a database. [Brief explanation of the drawings]

[0008] [Figure 1] 1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. DETAILED DESCRIPTION OF THE INVENTION

[0009] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.

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

[0011] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, the processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), an APU (Accelerated Processing Unit), or a TPU (Tensor Processing Unit).

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

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

[0014] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), and Bluetooth (registered trademark).

[0015] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."

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

[0017] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.

[0018] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).

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

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

[0021] Output device 40 includes a display 40A and a speaker 40B, and presents data to a user by outputting the data in a form of expression that the user can perceive (e.g., audio and / or text). Display 40A displays visible information such as text and images in accordance with instructions from processor 46. Speaker 40B outputs audio in accordance with instructions from processor 46. Camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.

[0022] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.

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

[0024] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0025] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.

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

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

[0028] (Example 1) A system according to an embodiment of the present invention utilizes generative AI to enable even users without SQL knowledge to effectively use a data warehouse (DWH). This system learns information from data tables, analyzes natural language, generates and executes SQL queries, and provides results. For example, the structure and content of a data table are analyzed in detail, and the generative AI learns the results. Next, a user inputs a question or request in natural language. The generative AI analyzes the input and automatically generates an appropriate SQL query. This query extracts data based on the user's request and provides results. For example, in response to a request to "display sales data aggregated by month," the generative AI generates the SQL query "SELECT month, SUM(sales) FROM sales_data GROUP BY month." This query extracts data based on the user's request. The generated SQL query is executed against the DWH, and the results are provided to the user. For example, monthly sales data is displayed in a tabular format. In this way, users can extract and analyze data through natural language interactions, even without SQL knowledge. This allows the system to extract and analyze data through natural language dialogue, even for users with no knowledge of SQL. For example, if a sales representative wants to analyze sales data, they can extract and analyze the necessary data simply by asking a question in natural language, even without knowledge of SQL. Furthermore, when data scientists create complex queries, the generation AI automatically generates SQL queries, allowing them to work efficiently. Furthermore, the generation AI also has the ability to correct errors in SQL queries. For example, if a user manually enters an SQL query with an error, the generation AI detects the error and suggests a corrected query. This allows even users with insufficient SQL knowledge to create accurate queries.

[0029] A data warehouse usage support system according to an embodiment includes a learning unit, an analysis unit, a generation unit, an execution unit, and a provision unit. The learning unit learns information about data tables. For example, the learning unit analyzes the structure and content of the data tables in detail and causes the generation AI to learn the information. The learning unit allows the generation AI to grasp the overall picture of the data tables by learning, for example, the column names, data types, relationships, etc. of each table. The analysis unit analyzes natural language based on the information learned by the learning unit. For example, the analysis unit analyzes natural language input by a user and provides information for generating an appropriate SQL query. The analysis unit analyzes a user request using, for example, natural language processing technology. The generation unit generates an SQL query based on the natural language analyzed by the analysis unit. For example, the generation unit generates an SQL query based on the information provided by the analysis unit. For example, in response to a request to "aggregate and display sales data by month," the generation unit generates the SQL query "SELECT month, SUM(sales) FROM sales_data GROUP BY month." The execution unit executes the SQL query generated by the generation unit. For example, the execution unit executes the generated SQL query on the data warehouse to extract data. The provision unit provides the results obtained by the execution unit. For example, the provision unit provides the execution results to a user. As a result, the data warehouse usage support system according to the embodiment allows even a user with no knowledge of SQL to extract and analyze data through dialogue in natural language.

[0030] The learning unit can analyze the structure and content of the data table and have the generation AI learn from it. For example, the learning unit can analyze the structure and content of the data table in detail and have the generation AI learn from it. For example, the learning unit can have the generation AI grasp the overall picture of the data table by learning the column names, data types, relationships, etc. of each table. The learning unit can also adjust the learning algorithm based on the update frequency of the data table. For example, the generation AI can frequently learn from data tables that are updated frequently. Furthermore, the learning unit can analyze the relationships between data tables in detail to improve learning accuracy. For example, the generation AI can analyze the relationships between data tables and reflect this in learning. This allows the generation AI to grasp the overall picture of the data table.

[0031] The analysis unit can analyze natural language input by a user and provide information for generating an SQL query. For example, the analysis unit analyzes the natural language input by a user and provides information for generating an appropriate SQL query. For example, the analysis unit analyzes the user's request using natural language processing technology. The analysis unit analyzes the natural language using techniques such as morphological analysis, grammatical analysis, and semantic analysis. The analysis unit can also analyze the context of the natural language in detail to improve the analysis accuracy. For example, the generation AI analyzes the context of the natural language and generates an appropriate SQL query. Furthermore, the analysis unit can apply different analysis algorithms depending on the category of the natural language. For example, the generation AI applies a specific analysis algorithm to business-related natural language. This allows the analysis of the natural language input and provides information for generating an appropriate SQL query.

[0032] The generation unit can generate an SQL query based on information provided by the analysis unit. The generation unit generates an SQL query based on information provided by the analysis unit, for example. For example, in response to a request to "aggregate and display sales data by month," the generation unit generates the SQL query "SELECT month, SUM(sales) FROM sales_data GROUP BY month." The generation unit can also take into account relationships between data tables when generating an SQL query. For example, the generation AI generates an SQL query by taking into account relationships between data tables. The generation unit can also improve the accuracy of generation by referring to the user's past query generation history. For example, the generation AI analyzes the user's past query generation history and generates an appropriate SQL query. This makes it possible to automatically generate appropriate SQL queries.

[0033] The execution unit can execute the generated SQL query against the data warehouse. For example, the execution unit executes the generated SQL query against the data warehouse to extract data. For example, the execution unit can also take into account the update frequency of the data table when executing the SQL query. For example, the generation AI frequently executes SQL queries against data tables that are updated frequently. The execution unit can also take into account the relationships between the data tables when executing the SQL query. For example, the generation AI executes the SQL query while taking into account the relationships between the data tables. Furthermore, the execution unit can improve execution accuracy by referring to the user's past execution history. For example, the generation AI analyzes the user's past execution history and executes an appropriate SQL query. This allows the generated SQL query to be executed and data to be extracted.

[0034] The providing unit can provide the results obtained by the executing unit to the user. The providing unit, for example, provides the execution results to the user. For example, the providing unit can improve the accuracy of the results provided by referring to the user's past feedback when providing the results. For example, the generation AI analyzes the user's past feedback and provides an appropriate result. The providing unit can also customize the content provided according to the user's current task when providing the results. For example, the generation AI analyzes the user's current task and provides an appropriate result. Furthermore, the providing unit can also take into account the relationships between data tables when providing the results. For example, the generation AI provides the results by taking into account the relationships between data tables. In this way, the execution results can be provided to the user.

[0035] The generation unit can detect errors in an SQL query manually entered by a user and suggest a corrected query. For example, the generation unit detects errors in an SQL query manually entered by a user and suggests a corrected query. For example, the generation unit detects grammatical errors and logical errors in the SQL query and suggests a correction. The generation unit can analyze the SQL query entered by the user and detect errors, for example, using a generation AI. The generation unit can also generate a correction suggestion using an algorithm for correcting errors. For example, the generation AI corrects grammatical errors in the SQL query and suggests a correct query. Furthermore, the generation unit can improve the accuracy of error correction by referring to the user's past query generation history. For example, the generation AI analyzes the user's past query generation history and generates appropriate correction suggestions. This makes it possible to automatically correct errors in the SQL query and suggest accurate queries.

[0036] The learning unit can adjust the learning algorithm based on the update frequency of the data table. The learning unit adjusts the learning algorithm based on, for example, the update frequency of the data table. For example, the generation AI performs learning frequently for a data table that is updated frequently. The learning unit can also perform learning periodically for a data table that is updated infrequently. Furthermore, the learning unit can cause the generation AI to adjust the parameters of the learning algorithm according to the update frequency. This makes it possible to improve learning accuracy by optimizing the learning algorithm according to the update frequency of the data table.

[0037] The learning unit can analyze the relationships between data tables in detail to improve learning accuracy. The learning unit can, for example, analyze the relationships between data tables in detail to improve learning accuracy. For example, the generation AI can analyze the relationships between data tables and reflect the results in learning. The generation AI can also determine learning priorities based on the strength of the relationships. Furthermore, the generation AI can reflect changes in the relationships in learning in real time. This makes it possible to improve learning accuracy by analyzing the relationships between data tables in detail.

[0038] The learning unit can learn changes in column names and data types of data tables in real time. For example, the learning unit learns changes in column names and data types of data tables in real time. For example, if a column name in a data table is changed, the generation AI immediately updates the learning. In addition, if a data type is changed, the generation AI can also reflect that change in the learning. Furthermore, the generation AI can detect changes in column names and data types and automatically optimize the learning. This makes it possible to improve the accuracy of learning by learning changes in column names and data types of data tables in real time.

[0039] The learning unit can perform learning based on the geographic distribution of the data table. The learning unit performs learning based on, for example, the geographic distribution of the data table. For example, when learning a geographically distributed data table, the generation AI takes into account the characteristics of each region. The generation AI can also determine the learning order of the data table based on the geographic distribution. Furthermore, the generation AI can adjust the learning algorithm according to the geographic distribution. As a result, learning accuracy can be improved by performing learning based on the geographic distribution.

[0040] The learning unit can improve the learning accuracy by referring to related literature in the data table. The learning unit improves the learning accuracy by, for example, referring to related literature in the data table. For example, the generation AI refers to literature related to the data table and reflects it in the learning. The generation AI can also analyze the contents of the related literature and optimize the learning algorithm. Furthermore, the generation AI can improve the learning accuracy of the data table based on information in the related literature. In this way, learning accuracy can be improved by referring to related literature.

[0041] The learning unit can perform learning based on the market value of the data table. The learning unit performs learning based on, for example, the market value of the data table. For example, the generation AI prioritizes learning of data tables with high market value. The generation AI can also determine the learning order of data tables based on market value. Furthermore, the generation AI can also reflect fluctuations in market value in learning in real time. This makes it possible to optimize learning priorities by performing learning based on market value.

[0042] The analysis unit can analyze the context of natural language and improve the analysis accuracy. The analysis unit, for example, analyzes the context of natural language in detail and improves the analysis accuracy. For example, the generation AI analyzes the context of natural language and generates an appropriate SQL query. The generation AI can also reflect changes in context in the analysis in real time. Furthermore, the generation AI can optimize the analysis algorithm based on the context. In this way, the analysis accuracy can be improved by analyzing the context of natural language in detail.

[0043] The analysis unit can apply different analysis algorithms depending on the category of the natural language. For example, the analysis unit applies different analysis algorithms depending on the category of the natural language. For example, the generation AI applies a specific analysis algorithm to business-related natural language. The generation AI can also apply a different analysis algorithm to technical-related natural language. Furthermore, the generation AI can dynamically switch analysis algorithms depending on the category. This makes it possible to improve analysis accuracy by applying an analysis algorithm depending on the category of the natural language.

[0044] The analysis unit can improve the analysis accuracy based on the user's past input history. The analysis unit improves the analysis accuracy, for example, by referring to the user's past input history. For example, the generation AI analyzes the user's past input history and generates an appropriate SQL query. The generation AI can also optimize the analysis algorithm based on the past input history. Furthermore, the generation AI can reflect the past input history in the analysis in real time. This makes it possible to improve the analysis accuracy by referring to the past input history.

[0045] The analysis unit can determine the analysis priority taking into account the time of input of the natural language. The analysis unit determines the analysis priority based on, for example, the time of input of the natural language. For example, the generation AI prioritizes analysis of natural language that is input earlier. The generation AI can also determine the analysis order based on the time of input. Furthermore, the generation AI can also reflect changes in the time of input in the analysis in real time. In this way, by determining the analysis priority based on the time of input, analysis efficiency can be improved.

[0046] The analysis unit can adjust the order of analysis based on the relevance of natural language. The analysis unit adjusts the order of analysis based on, for example, the relevance of natural language. For example, the generation AI prioritizes analysis of highly relevant natural language. The generation AI can also determine the order of analysis based on relevance. Furthermore, the generation AI can reflect changes in relevance in the analysis in real time. This makes it possible to improve analysis efficiency by adjusting the order of analysis based on the relevance of natural language.

[0047] The analysis unit can adjust the use of technical terms in the analysis based on the user's level of expertise. The analysis unit can, for example, adjust the use of technical terms in the analysis based on the user's level of expertise. For example, if the user has technical expertise, the analysis unit can provide analysis results that use a lot of technical terms. Also, if the user does not have technical expertise, the analysis unit can provide analysis results in simple language. Furthermore, the analysis unit can adjust the way the analysis results are expressed based on the user's level of expertise. In this way, adjusting the use of technical terms in the analysis according to the user's level of expertise can facilitate understanding of the analysis results.

[0048] The generation unit can optimize the generation algorithm taking into account the complexity of the SQL query to be generated. The generation unit optimizes the generation algorithm based on, for example, the complexity of the SQL query to be generated. For example, the generation AI performs detailed analysis when generating a complex SQL query. The generation AI can also quickly generate a simple SQL query. Furthermore, the generation AI can adjust the generation algorithm according to the complexity of the SQL query. In this way, the generation accuracy can be improved by optimizing the generation algorithm according to the complexity of the SQL query.

[0049] The generation unit can take into account the relationships between data tables when generating an SQL query. For example, the generation unit takes into account the relationships between data tables when generating an SQL query. For example, the generation AI generates an SQL query by taking into account the relationships between data tables. The generation AI can also optimize the SQL query based on the strength of the relationships. Furthermore, the generation AI can reflect changes in the relationships in the SQL query in real time. This makes it possible to improve the generation accuracy by taking into account the relationships between data tables.

[0050] The generation unit can improve generation accuracy based on the user's past query generation history. The generation unit improves generation accuracy, for example, by referring to the user's past query generation history. For example, the generation AI analyzes the user's past query generation history and generates an appropriate SQL query. The generation AI can also optimize the generation algorithm based on the past query generation history. Furthermore, the generation AI can reflect the past query generation history in the SQL query in real time. This makes it possible to improve generation accuracy by referring to the past query generation history.

[0051] The generation unit can take the geographical distribution of the data table into consideration when generating an SQL query. For example, the generation unit generates an SQL query based on the geographical distribution of the data table. For example, the generation AI generates an SQL query taking into consideration geographically distributed data tables. The generation AI can also determine the order in which SQL queries are generated based on the geographical distribution. Furthermore, the generation AI can adjust the generation algorithm according to the geographical distribution. This allows for improved generation accuracy by generating SQL queries based on the geographical distribution.

[0052] The generation unit can improve the accuracy of generation by referring to related literature when generating an SQL query. For example, the generation unit can improve the accuracy of generation by referring to related literature when generating an SQL query. For example, the generation AI can refer to literature related to the SQL query and reflect this in the generation. The generation AI can also analyze the contents of the related literature and optimize the generation algorithm. Furthermore, the generation AI can improve the accuracy of SQL query generation based on information from related literature. In this way, by referring to related literature, the generation accuracy can be improved.

[0053] The generation unit can generate SQL queries based on the market value of the data table when generating the SQL queries. For example, the generation unit generates SQL queries based on the market value of the data table when generating the SQL queries. For example, the generation AI generates SQL queries by giving priority to data tables with high market value. The generation AI can also determine the order in which SQL queries are generated based on market value. Furthermore, the generation AI can reflect fluctuations in market value in the SQL queries in real time. This makes it possible to optimize the priority of generation by generating SQL queries based on market value.

[0054] The execution unit can take into account the update frequency of the data table when executing an SQL query. For example, the execution unit executes an SQL query based on the update frequency of the data table. For example, the generation AI frequently executes SQL queries for data tables that are updated frequently. The generation AI can also periodically execute SQL queries for data tables that are updated infrequently. Furthermore, the generation AI can adjust the execution algorithm of the SQL query according to the update frequency. This allows for improved execution accuracy by executing SQL queries based on the update frequency.

[0055] The execution unit can take into account the relationships between data tables when executing an SQL query. For example, the execution unit takes into account the relationships between data tables when executing an SQL query. For example, the generation AI executes an SQL query while taking into account the relationships between data tables. The generation AI can also optimize the SQL query based on the strength of the relationships. Furthermore, the generation AI can reflect changes in the relationships in the SQL query in real time. This makes it possible to improve the execution accuracy by executing an SQL query based on the relationships.

[0056] The execution unit can improve the execution accuracy based on the user's past execution history when executing an SQL query. For example, the execution unit improves the execution accuracy by referring to the user's past execution history when executing an SQL query. For example, the generation AI analyzes the user's past execution history and executes an appropriate SQL query. The generation AI can also optimize the execution algorithm based on the past execution history. Furthermore, the generation AI can reflect the past execution history in the SQL query in real time. This makes it possible to improve the execution accuracy by referring to the past execution history.

[0057] The execution unit can take into account the geographic distribution of the data tables when executing an SQL query. For example, the execution unit executes an SQL query based on the geographic distribution of the data tables when executing the SQL query. For example, the generation AI executes the SQL query taking into account the geographically distributed data tables. The generation AI can also determine the execution order of the SQL queries based on the geographic distribution. Furthermore, the generation AI can adjust the execution algorithm according to the geographic distribution. This makes it possible to improve the execution accuracy by executing the SQL query based on the geographic distribution.

[0058] The execution unit can improve the execution accuracy by referring to related literature when executing an SQL query. For example, the execution unit can improve the execution accuracy by referring to related literature when executing an SQL query. For example, the generation AI can refer to literature related to the SQL query and reflect this in the execution. The generation AI can also analyze the contents of the related literature and optimize the execution algorithm. Furthermore, the generation AI can improve the execution accuracy of the SQL query based on information from the related literature. In this way, the execution accuracy can be improved by referring to related literature.

[0059] The execution unit can execute an SQL query based on the market value of the data table when executing the SQL query. For example, the execution unit executes an SQL query based on the market value of the data table when executing the SQL query. For example, the generation AI executes an SQL query by giving priority to data tables with high market value. The generation AI can also determine the execution order of the SQL queries based on the market value. Furthermore, the generation AI can reflect fluctuations in market value in the SQL queries in real time. This makes it possible to optimize the execution priority by executing SQL queries based on market value.

[0060] The providing unit can improve the accuracy of the results provided based on the user's past feedback when providing the results. For example, the providing unit improves the accuracy of the results provided by referring to the user's past feedback when providing the results. For example, the generation AI analyzes the user's past feedback and provides appropriate results. The generation AI can also optimize the providing algorithm based on the past feedback. Furthermore, the generation AI can reflect the past feedback in the results in real time. This makes it possible to improve the accuracy of the results provided by referring to the past feedback.

[0061] The providing unit can customize the content to be provided according to the user's current task when providing the results. For example, the providing unit customizes the content to be provided according to the user's current task when providing the results. For example, the generation AI analyzes the user's current task and provides an appropriate result. The generation AI can also customize the content to be provided based on the task. Furthermore, the generation AI can reflect changes in the task in real time in the results. This makes it possible to provide results that meet the user's needs by customizing the content to be provided according to the current task.

[0062] The providing unit can take into account the relationships between the data tables when providing the results. For example, the providing unit provides the results based on the relationships between the data tables when providing the results. For example, the generation AI provides the results by taking into account the relationships between the data tables. The generation AI can also optimize the results based on the strength of the relationships. Furthermore, the generation AI can reflect fluctuations in the relationships in the results in real time. This makes it possible to improve the accuracy of the results provided by providing results based on the relationships.

[0063] The providing unit can take into account the geographic distribution of the data table when providing the results. For example, the providing unit provides the results based on the geographic distribution of the data table when providing the results. For example, the generation AI provides the results by taking into account the geographically distributed data table. The generation AI can also determine the order in which the results are provided based on the geographic distribution. Furthermore, the generation AI can adjust the providing algorithm according to the geographic distribution. This can improve the accuracy of providing results by providing results based on the geographic distribution.

[0064] The providing unit can improve the accuracy of the results provided by referring to related literature when providing the results. For example, the providing unit can improve the accuracy of the results provided by referring to related literature when providing the results. For example, the generation AI can refer to literature related to the results and reflect this in the results provided. The generation AI can also analyze the contents of the related literature and optimize the providing algorithm. Furthermore, the generation AI can improve the accuracy of the results provided based on information from related literature. This makes it possible to improve the accuracy of the results provided by referring to related literature.

[0065] The providing unit can provide the results based on the market value of the data table when providing the results. For example, the providing unit provides the results based on the market value of the data table when providing the results. For example, the generation AI provides results by giving priority to data tables with high market value. The generation AI can also determine the order in which the results are provided based on market value. Furthermore, the generation AI can reflect fluctuations in market value in the results in real time. This makes it possible to optimize the priority of provision by providing results based on market value.

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

[0067] The learning unit can perform learning based on the geographic distribution of the data table. For example, when learning a geographically distributed data table, the generation AI takes into account the characteristics of each region. The generation AI can also determine the learning order of the data table based on the geographic distribution. Furthermore, the generation AI can adjust the learning algorithm according to the geographic distribution. This makes it possible to improve learning accuracy by performing learning based on the geographic distribution.

[0068] The analysis unit can analyze the context of natural language and improve analysis accuracy. For example, the generation AI can analyze the context of natural language and generate an appropriate SQL query. The generation AI can also reflect changes in context in the analysis in real time. Furthermore, the generation AI can optimize the analysis algorithm based on the context. This allows for detailed analysis of the context of natural language and improves analysis accuracy.

[0069] The generation unit can take into account the relationships between data tables when generating SQL queries. For example, the generation AI generates SQL queries by taking into account the relationships between data tables. The generation AI can also optimize SQL queries based on the strength of the relationships. Furthermore, the generation AI can also reflect changes in the relationships in real time in the SQL queries. This allows for improved generation accuracy by taking into account the relationships between data tables.

[0070] The execution unit can take into account the update frequency of the data table when executing an SQL query. For example, the generation AI can frequently execute SQL queries for data tables that are updated frequently. The generation AI can also periodically execute SQL queries for data tables that are updated infrequently. Furthermore, the generation AI can adjust the SQL query execution algorithm according to the update frequency. This allows for improved execution accuracy by executing SQL queries based on the update frequency.

[0071] When providing results, the providing unit can provide them based on the market value of the data table. For example, the generation AI provides results by giving priority to data tables with high market value. The generation AI can also determine the order in which results are provided based on market value. Furthermore, the generation AI can also reflect fluctuations in market value in the results in real time. This makes it possible to optimize the priority of provision by providing results based on market value.

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

[0073] Step 1: The learning unit learns the information in the data table. For example, the learning unit analyzes the structure and content of the data table in detail and has the generation AI learn from it. By having the learning unit learn the column names, data types, relationships, etc. of each table, the generation AI can grasp the overall picture of the data table. Step 2: The analysis unit analyzes the natural language based on the information learned by the learning unit. For example, the analysis unit analyzes the natural language input by the user and provides information for generating an appropriate SQL query. The analysis unit uses natural language processing technology to analyze the user's request. Step 3: The generator generates an SQL query based on the natural language analyzed by the analyzer. For example, the generator generates an SQL query based on the information provided by the analyzer. In response to a request to "aggregate and display sales data by month," the generator generates the SQL query "SELECT month, SUM(sales) FROM sales_data GROUP BY month." Step 4: The execution unit executes the SQL query generated by the generation unit. For example, the execution unit executes the generated SQL query against a data warehouse to extract data. Step 5: The providing unit provides the results obtained by the executing unit. For example, the providing unit provides the execution results to the user. As a result, the data warehouse usage support system according to the embodiment allows even a user who has no knowledge of SQL to extract and analyze data through dialogue in natural language.

[0074] (Example 2) A system according to an embodiment of the present invention utilizes generative AI to enable even users without SQL knowledge to effectively use a data warehouse (DWH). This system learns information from data tables, analyzes natural language, generates and executes SQL queries, and provides results. For example, the structure and content of a data table are analyzed in detail, and the generative AI learns the results. Next, a user inputs a question or request in natural language. The generative AI analyzes the input and automatically generates an appropriate SQL query. This query extracts data based on the user's request and provides results. For example, in response to a request to "display sales data aggregated by month," the generative AI generates the SQL query "SELECT month, SUM(sales) FROM sales_data GROUP BY month." This query extracts data based on the user's request. The generated SQL query is executed against the DWH, and the results are provided to the user. For example, monthly sales data is displayed in a tabular format. In this way, users can extract and analyze data through natural language interactions, even without SQL knowledge. This allows the system to extract and analyze data through natural language dialogue, even for users with no knowledge of SQL. For example, if a sales representative wants to analyze sales data, they can extract and analyze the necessary data simply by asking a question in natural language, even without knowledge of SQL. Furthermore, when data scientists create complex queries, the generation AI automatically generates SQL queries, allowing them to work efficiently. Furthermore, the generation AI also has the ability to correct errors in SQL queries. For example, if a user manually enters an SQL query with an error, the generation AI detects the error and suggests a corrected query. This allows even users with insufficient SQL knowledge to create accurate queries.

[0075] A data warehouse usage support system according to an embodiment includes a learning unit, an analysis unit, a generation unit, an execution unit, and a provision unit. The learning unit learns information about data tables. For example, the learning unit analyzes the structure and content of the data tables in detail and causes the generation AI to learn the information. The learning unit allows the generation AI to grasp the overall picture of the data tables by learning, for example, the column names, data types, relationships, etc. of each table. The analysis unit analyzes natural language based on the information learned by the learning unit. For example, the analysis unit analyzes natural language input by a user and provides information for generating an appropriate SQL query. The analysis unit analyzes a user request using, for example, natural language processing technology. The generation unit generates an SQL query based on the natural language analyzed by the analysis unit. For example, the generation unit generates an SQL query based on the information provided by the analysis unit. For example, in response to a request to "aggregate and display sales data by month," the generation unit generates the SQL query "SELECT month, SUM(sales) FROM sales_data GROUP BY month." The execution unit executes the SQL query generated by the generation unit. For example, the execution unit executes the generated SQL query on the data warehouse to extract data. The provision unit provides the results obtained by the execution unit. For example, the provision unit provides the execution results to a user. As a result, the data warehouse usage support system according to the embodiment allows even a user with no knowledge of SQL to extract and analyze data through dialogue in natural language.

[0076] The learning unit can analyze the structure and content of the data table and have the generation AI learn from it. For example, the learning unit can analyze the structure and content of the data table in detail and have the generation AI learn from it. For example, the learning unit can have the generation AI grasp the overall picture of the data table by learning the column names, data types, relationships, etc. of each table. The learning unit can also adjust the learning algorithm based on the update frequency of the data table. For example, the generation AI can frequently learn from data tables that are updated frequently. Furthermore, the learning unit can analyze the relationships between data tables in detail to improve learning accuracy. For example, the generation AI can analyze the relationships between data tables and reflect this in learning. This allows the generation AI to grasp the overall picture of the data table.

[0077] The analysis unit can analyze natural language input by a user and provide information for generating an SQL query. For example, the analysis unit analyzes the natural language input by a user and provides information for generating an appropriate SQL query. For example, the analysis unit analyzes the user's request using natural language processing technology. The analysis unit analyzes the natural language using techniques such as morphological analysis, grammatical analysis, and semantic analysis. The analysis unit can also analyze the context of the natural language in detail to improve the analysis accuracy. For example, the generation AI analyzes the context of the natural language and generates an appropriate SQL query. Furthermore, the analysis unit can apply different analysis algorithms depending on the category of the natural language. For example, the generation AI applies a specific analysis algorithm to business-related natural language. This allows the analysis of the natural language input and provides information for generating an appropriate SQL query.

[0078] The generation unit can generate an SQL query based on information provided by the analysis unit. The generation unit generates an SQL query based on information provided by the analysis unit, for example. For example, in response to a request to "aggregate and display sales data by month," the generation unit generates the SQL query "SELECT month, SUM(sales) FROM sales_data GROUP BY month." The generation unit can also take into account relationships between data tables when generating an SQL query. For example, the generation AI generates an SQL query by taking into account relationships between data tables. The generation unit can also improve the accuracy of generation by referring to the user's past query generation history. For example, the generation AI analyzes the user's past query generation history and generates an appropriate SQL query. This makes it possible to automatically generate appropriate SQL queries.

[0079] The execution unit can execute the generated SQL query against the data warehouse. For example, the execution unit executes the generated SQL query against the data warehouse to extract data. For example, the execution unit can also take into account the update frequency of the data table when executing the SQL query. For example, the generation AI frequently executes SQL queries against data tables that are updated frequently. The execution unit can also take into account the relationships between the data tables when executing the SQL query. For example, the generation AI executes the SQL query while taking into account the relationships between the data tables. Furthermore, the execution unit can improve execution accuracy by referring to the user's past execution history. For example, the generation AI analyzes the user's past execution history and executes an appropriate SQL query. This allows the generated SQL query to be executed and data to be extracted.

[0080] The providing unit can provide the results obtained by the executing unit to the user. The providing unit, for example, provides the execution results to the user. For example, the providing unit can improve the accuracy of the results provided by referring to the user's past feedback when providing the results. For example, the generation AI analyzes the user's past feedback and provides an appropriate result. The providing unit can also customize the content provided according to the user's current task when providing the results. For example, the generation AI analyzes the user's current task and provides an appropriate result. Furthermore, the providing unit can also take into account the relationships between data tables when providing the results. For example, the generation AI provides the results by taking into account the relationships between data tables. In this way, the execution results can be provided to the user.

[0081] The generation unit can detect errors in an SQL query manually entered by a user and suggest a corrected query. For example, the generation unit detects errors in an SQL query manually entered by a user and suggests a corrected query. For example, the generation unit detects grammatical errors and logical errors in the SQL query and suggests a correction. The generation unit can analyze the SQL query entered by the user and detect errors, for example, using a generation AI. The generation unit can also generate a correction suggestion using an algorithm for correcting errors. For example, the generation AI corrects grammatical errors in the SQL query and suggests a correct query. Furthermore, the generation unit can improve the accuracy of error correction by referring to the user's past query generation history. For example, the generation AI analyzes the user's past query generation history and generates appropriate correction suggestions. This makes it possible to automatically correct errors in the SQL query and suggest accurate queries.

[0082] The learning unit can estimate the user's emotions and select training data based on the estimated user emotions. The learning unit, for example, estimates the user's emotions and selects training data based on the estimated user emotions. For example, if the user is feeling stressed, the learning unit can cause the generation AI to prioritize learning simple data tables. Furthermore, if the user is relaxed, the learning unit can cause the generation AI to learn complex data tables as well. Furthermore, if the user is in a hurry, the learning unit can select a data table that can be quickly learned. This improves learning efficiency by selecting training data according to the user's emotions. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0083] The learning unit can adjust the learning algorithm based on the update frequency of the data table. The learning unit adjusts the learning algorithm based on, for example, the update frequency of the data table. For example, the generation AI performs learning frequently for a data table that is updated frequently. The learning unit can also perform learning periodically for a data table that is updated infrequently. Furthermore, the learning unit can cause the generation AI to adjust the parameters of the learning algorithm according to the update frequency. This makes it possible to improve learning accuracy by optimizing the learning algorithm according to the update frequency of the data table.

[0084] The learning unit can analyze the relationships between data tables in detail to improve learning accuracy. The learning unit can, for example, analyze the relationships between data tables in detail to improve learning accuracy. For example, the generation AI can analyze the relationships between data tables and reflect the results in learning. The generation AI can also determine learning priorities based on the strength of the relationships. Furthermore, the generation AI can reflect changes in the relationships in learning in real time. This makes it possible to improve learning accuracy by analyzing the relationships between data tables in detail.

[0085] The learning unit can learn changes in column names and data types of data tables in real time. For example, the learning unit learns changes in column names and data types of data tables in real time. For example, if a column name in a data table is changed, the generation AI immediately updates the learning. In addition, if a data type is changed, the generation AI can also reflect that change in the learning. Furthermore, the generation AI can detect changes in column names and data types and automatically optimize the learning. This makes it possible to improve the accuracy of learning by learning changes in column names and data types of data tables in real time.

[0086] The learning unit can estimate the user's emotions and determine learning priorities based on the estimated user emotions. The learning unit, for example, estimates the user's emotions and determines learning priorities based on the estimated user emotions. For example, if the user is feeling stressed, the learning unit can cause the generation AI to prioritize learning simple data tables. Also, if the user is relaxed, the learning unit can cause the generation AI to learn complex data tables as well. Furthermore, if the user is in a hurry, the learning unit can select a data table that can be quickly learned. This improves learning efficiency by determining learning priorities based on the user's emotions. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0087] The learning unit can perform learning based on the geographic distribution of the data table. The learning unit performs learning based on, for example, the geographic distribution of the data table. For example, when learning a geographically distributed data table, the generation AI takes into account the characteristics of each region. The generation AI can also determine the learning order of the data table based on the geographic distribution. Furthermore, the generation AI can adjust the learning algorithm according to the geographic distribution. As a result, learning accuracy can be improved by performing learning based on the geographic distribution.

[0088] The learning unit can improve the learning accuracy by referring to related literature in the data table. The learning unit improves the learning accuracy by, for example, referring to related literature in the data table. For example, the generation AI refers to literature related to the data table and reflects it in the learning. The generation AI can also analyze the contents of the related literature and optimize the learning algorithm. Furthermore, the generation AI can improve the learning accuracy of the data table based on information in the related literature. In this way, learning accuracy can be improved by referring to related literature.

[0089] The learning unit can perform learning based on the market value of the data table. The learning unit performs learning based on, for example, the market value of the data table. For example, the generation AI prioritizes learning of data tables with high market value. The generation AI can also determine the learning order of data tables based on market value. Furthermore, the generation AI can also reflect fluctuations in market value in learning in real time. This makes it possible to optimize learning priorities by performing learning based on market value.

[0090] The analysis unit can estimate the user's emotions and adjust the way the analysis is presented based on the estimated user emotions. For example, the analysis unit can estimate the user's emotions and adjust the way the analysis is presented based on the estimated user emotions. For example, if the user is nervous, the analysis unit can provide simple, highly visible analysis results. If the user is relaxed, the analysis unit can also provide detailed analysis results. Furthermore, if the user is in a hurry, the analysis unit can also provide analysis results that focus on the main points. This allows for adjusting the way the analysis is presented based on the user's emotions, thereby facilitating understanding of the analysis results. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or a generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0091] The analysis unit can analyze the context of natural language and improve the analysis accuracy. The analysis unit, for example, analyzes the context of natural language in detail and improves the analysis accuracy. For example, the generation AI analyzes the context of natural language and generates an appropriate SQL query. The generation AI can also reflect changes in context in the analysis in real time. Furthermore, the generation AI can optimize the analysis algorithm based on the context. In this way, the analysis accuracy can be improved by analyzing the context of natural language in detail.

[0092] The analysis unit can apply different analysis algorithms depending on the category of the natural language. For example, the analysis unit applies different analysis algorithms depending on the category of the natural language. For example, the generation AI applies a specific analysis algorithm to business-related natural language. The generation AI can also apply a different analysis algorithm to technical-related natural language. Furthermore, the generation AI can dynamically switch analysis algorithms depending on the category. This makes it possible to improve analysis accuracy by applying an analysis algorithm depending on the category of the natural language.

[0093] The analysis unit can improve the analysis accuracy based on the user's past input history. The analysis unit improves the analysis accuracy, for example, by referring to the user's past input history. For example, the generation AI analyzes the user's past input history and generates an appropriate SQL query. The generation AI can also optimize the analysis algorithm based on the past input history. Furthermore, the generation AI can reflect the past input history in the analysis in real time. This makes it possible to improve the analysis accuracy by referring to the past input history.

[0094] The analysis unit can estimate the user's emotions and adjust the length of the analysis based on the estimated user emotions. For example, the analysis unit can estimate the user's emotions and adjust the length of the analysis based on the estimated user emotions. For example, if the user is in a hurry, the analysis unit can provide a short and concise analysis result. If the user is relaxed, the analysis unit can also provide a detailed analysis result. Furthermore, if the user is excited, the analysis unit can also provide a visually stimulating analysis result. This allows for adjusting the length of the analysis according to the user's emotions, thereby facilitating understanding of the analysis results. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or a generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0095] The analysis unit can determine the analysis priority taking into account the time of input of the natural language. The analysis unit determines the analysis priority based on, for example, the time of input of the natural language. For example, the generation AI prioritizes analysis of natural language that is input earlier. The generation AI can also determine the analysis order based on the time of input. Furthermore, the generation AI can also reflect changes in the time of input in the analysis in real time. In this way, by determining the analysis priority based on the time of input, analysis efficiency can be improved.

[0096] The analysis unit can adjust the order of analysis based on the relevance of natural language. The analysis unit adjusts the order of analysis based on, for example, the relevance of natural language. For example, the generation AI prioritizes analysis of highly relevant natural language. The generation AI can also determine the order of analysis based on relevance. Furthermore, the generation AI can reflect changes in relevance in the analysis in real time. This makes it possible to improve analysis efficiency by adjusting the order of analysis based on the relevance of natural language.

[0097] The analysis unit can adjust the use of technical terms in the analysis based on the user's level of expertise. The analysis unit can, for example, adjust the use of technical terms in the analysis based on the user's level of expertise. For example, if the user has technical expertise, the analysis unit can provide analysis results that use a lot of technical terms. Also, if the user does not have technical expertise, the analysis unit can provide analysis results in simple language. Furthermore, the analysis unit can adjust the way the analysis results are expressed based on the user's level of expertise. In this way, adjusting the use of technical terms in the analysis according to the user's level of expertise can facilitate understanding of the analysis results.

[0098] The generation unit can estimate the user's emotion and adjust the SQL query generation method based on the estimated user emotion. For example, the generation unit can estimate the user's emotion and adjust the SQL query generation method based on the estimated user emotion. For example, if the user is relaxed, the generation unit can generate an SQL query that proceeds at a leisurely pace. If the user is in a hurry, the generation unit can also generate an SQL query that emphasizes the shortest route. Furthermore, if the user is excited, the generation unit can generate an SQL query that adds a visually stimulating effect. This allows for improving the generation accuracy by adjusting the SQL query generation method according to the user's emotion. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0099] The generation unit can optimize the generation algorithm taking into account the complexity of the SQL query to be generated. The generation unit optimizes the generation algorithm based on, for example, the complexity of the SQL query to be generated. For example, the generation AI performs detailed analysis when generating a complex SQL query. The generation AI can also quickly generate a simple SQL query. Furthermore, the generation AI can adjust the generation algorithm according to the complexity of the SQL query. In this way, the generation accuracy can be improved by optimizing the generation algorithm according to the complexity of the SQL query.

[0100] The generation unit can take into account the relationships between data tables when generating an SQL query. For example, the generation unit takes into account the relationships between data tables when generating an SQL query. For example, the generation AI generates an SQL query by taking into account the relationships between data tables. The generation AI can also optimize the SQL query based on the strength of the relationships. Furthermore, the generation AI can reflect changes in the relationships in the SQL query in real time. This makes it possible to improve the generation accuracy by taking into account the relationships between data tables.

[0101] The generation unit can improve generation accuracy based on the user's past query generation history. The generation unit improves generation accuracy, for example, by referring to the user's past query generation history. For example, the generation AI analyzes the user's past query generation history and generates an appropriate SQL query. The generation AI can also optimize the generation algorithm based on the past query generation history. Furthermore, the generation AI can reflect the past query generation history in the SQL query in real time. This makes it possible to improve generation accuracy by referring to the past query generation history.

[0102] The generation unit can estimate the user's emotions and determine the priority of SQL queries to be generated based on the estimated user emotions. The generation unit, for example, estimates the user's emotions and determines the priority of SQL queries to be generated based on the estimated user emotions. For example, if the user is feeling stressed, the generation unit causes the generation AI to prioritize generating simple SQL queries. Furthermore, if the user is relaxed, the generation unit can cause the generation AI to generate even complex SQL queries. Furthermore, if the user is in a hurry, the generation unit can also prioritize generating SQL queries that can be generated quickly. This improves generation efficiency by prioritizing SQL queries according to the user's emotions. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0103] The generation unit can take the geographical distribution of the data table into consideration when generating an SQL query. For example, the generation unit generates an SQL query based on the geographical distribution of the data table. For example, the generation AI generates an SQL query taking into consideration geographically distributed data tables. The generation AI can also determine the order in which SQL queries are generated based on the geographical distribution. Furthermore, the generation AI can adjust the generation algorithm according to the geographical distribution. This allows for improved generation accuracy by generating SQL queries based on the geographical distribution.

[0104] The generation unit can improve the accuracy of generation by referring to related literature when generating an SQL query. For example, the generation unit can improve the accuracy of generation by referring to related literature when generating an SQL query. For example, the generation AI can refer to literature related to the SQL query and reflect this in the generation. The generation AI can also analyze the contents of the related literature and optimize the generation algorithm. Furthermore, the generation AI can improve the accuracy of SQL query generation based on information from related literature. In this way, by referring to related literature, the generation accuracy can be improved.

[0105] The generation unit can generate SQL queries based on the market value of the data table when generating the SQL queries. For example, the generation unit generates SQL queries based on the market value of the data table when generating the SQL queries. For example, the generation AI generates SQL queries by giving priority to data tables with high market value. The generation AI can also determine the order in which SQL queries are generated based on market value. Furthermore, the generation AI can reflect fluctuations in market value in the SQL queries in real time. This makes it possible to optimize the priority of generation by generating SQL queries based on market value.

[0106] The execution unit can estimate the user's emotions and adjust the execution method of the SQL query based on the estimated user emotions. For example, the execution unit can estimate the user's emotions and adjust the execution method of the SQL query based on the estimated user emotions. For example, if the user is nervous, the execution unit can provide simple, highly visible execution results. If the user is relaxed, the execution unit can also provide detailed execution results. Furthermore, if the user is in a hurry, the execution unit can also provide execution results that focus on the main points. This allows the execution method of the SQL query to be adjusted according to the user's emotions, thereby facilitating understanding of the execution results. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generative AI. The generative AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0107] The execution unit can take into account the update frequency of the data table when executing an SQL query. For example, the execution unit executes an SQL query based on the update frequency of the data table. For example, the generation AI frequently executes SQL queries for data tables that are updated frequently. The generation AI can also periodically execute SQL queries for data tables that are updated infrequently. Furthermore, the generation AI can adjust the execution algorithm of the SQL query according to the update frequency. This allows for improved execution accuracy by executing SQL queries based on the update frequency.

[0108] The execution unit can take into account the relationships between data tables when executing an SQL query. For example, the execution unit takes into account the relationships between data tables when executing an SQL query. For example, the generation AI executes an SQL query while taking into account the relationships between data tables. The generation AI can also optimize the SQL query based on the strength of the relationships. Furthermore, the generation AI can reflect changes in the relationships in the SQL query in real time. This makes it possible to improve the execution accuracy by executing an SQL query based on the relationships.

[0109] The execution unit can improve the execution accuracy based on the user's past execution history when executing an SQL query. For example, the execution unit improves the execution accuracy by referring to the user's past execution history when executing an SQL query. For example, the generation AI analyzes the user's past execution history and executes an appropriate SQL query. The generation AI can also optimize the execution algorithm based on the past execution history. Furthermore, the generation AI can reflect the past execution history in the SQL query in real time. This makes it possible to improve the execution accuracy by referring to the past execution history.

[0110] The execution unit can estimate the user's emotions and determine the execution priority of SQL queries based on the estimated user emotions. The execution unit, for example, estimates the user's emotions and determines the execution priority of SQL queries based on the estimated user emotions. For example, if the execution unit determines that the user is stressed, the generation AI can prioritize simple SQL queries. Furthermore, if the user is relaxed, the execution unit can also execute complex SQL queries. Furthermore, if the user is in a hurry, the execution unit can prioritize SQL queries that can be executed quickly. This improves execution efficiency by determining the execution priority of SQL queries according to the user's emotions. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or a generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0111] The execution unit can take into account the geographic distribution of the data tables when executing an SQL query. For example, the execution unit executes an SQL query based on the geographic distribution of the data tables when executing the SQL query. For example, the generation AI executes the SQL query taking into account the geographically distributed data tables. The generation AI can also determine the execution order of the SQL queries based on the geographic distribution. Furthermore, the generation AI can adjust the execution algorithm according to the geographic distribution. This makes it possible to improve the execution accuracy by executing the SQL query based on the geographic distribution.

[0112] The execution unit can improve the execution accuracy by referring to related literature when executing an SQL query. For example, the execution unit can improve the execution accuracy by referring to related literature when executing an SQL query. For example, the generation AI can refer to literature related to the SQL query and reflect this in the execution. The generation AI can also analyze the contents of the related literature and optimize the execution algorithm. Furthermore, the generation AI can improve the execution accuracy of the SQL query based on information from the related literature. In this way, the execution accuracy can be improved by referring to related literature.

[0113] The execution unit can execute an SQL query based on the market value of the data table when executing the SQL query. For example, the execution unit executes an SQL query based on the market value of the data table when executing the SQL query. For example, the generation AI executes an SQL query by giving priority to data tables with high market value. The generation AI can also determine the execution order of the SQL queries based on the market value. Furthermore, the generation AI can reflect fluctuations in market value in the SQL queries in real time. This makes it possible to optimize the execution priority by executing SQL queries based on market value.

[0114] The providing unit can estimate the user's emotions and adjust the method of providing results based on the estimated user emotions. For example, the providing unit can estimate the user's emotions and adjust the method of providing results based on the estimated user emotions. For example, if the user is nervous, the providing unit can provide simple, highly visible results. If the user is relaxed, the providing unit can also provide detailed results. Furthermore, if the user is in a hurry, the providing unit can also provide results that are concise. This can facilitate understanding of the results by adjusting the method of providing results according to the user's emotions. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0115] The providing unit can improve the accuracy of the results provided based on the user's past feedback when providing the results. For example, the providing unit improves the accuracy of the results provided by referring to the user's past feedback when providing the results. For example, the generation AI analyzes the user's past feedback and provides appropriate results. The generation AI can also optimize the providing algorithm based on the past feedback. Furthermore, the generation AI can reflect the past feedback in the results in real time. This makes it possible to improve the accuracy of the results provided by referring to the past feedback.

[0116] The providing unit can customize the content to be provided according to the user's current task when providing the results. For example, the providing unit customizes the content to be provided according to the user's current task when providing the results. For example, the generation AI analyzes the user's current task and provides an appropriate result. The generation AI can also customize the content to be provided based on the task. Furthermore, the generation AI can reflect changes in the task in real time in the results. This makes it possible to provide results that meet the user's needs by customizing the content to be provided according to the current task.

[0117] The providing unit can take into account the relationships between the data tables when providing the results. For example, the providing unit provides the results based on the relationships between the data tables when providing the results. For example, the generation AI provides the results by taking into account the relationships between the data tables. The generation AI can also optimize the results based on the strength of the relationships. Furthermore, the generation AI can reflect fluctuations in the relationships in the results in real time. This makes it possible to improve the accuracy of the results provided by providing results based on the relationships.

[0118] The providing unit can estimate the user's emotions and determine the priority of providing results based on the estimated user emotions. The providing unit, for example, estimates the user's emotions and determines the priority of providing results based on the estimated user emotions. For example, if the providing unit is stressed, the generation AI can prioritize providing simple results. Also, if the user is relaxed, the generation AI can provide detailed results as well. Furthermore, if the user is in a hurry, the providing unit can prioritize providing results that can be provided quickly. This improves the efficiency of providing results by determining the priority of providing results according to the user's emotions. Emotion estimation is realized using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0119] The providing unit can take into account the geographic distribution of the data table when providing the results. For example, the providing unit provides the results based on the geographic distribution of the data table when providing the results. For example, the generation AI provides the results by taking into account the geographically distributed data table. The generation AI can also determine the order in which the results are provided based on the geographic distribution. Furthermore, the generation AI can adjust the providing algorithm according to the geographic distribution. This can improve the accuracy of providing results by providing results based on the geographic distribution.

[0120] The providing unit can improve the accuracy of the results provided by referring to related literature when providing the results. For example, the providing unit can improve the accuracy of the results provided by referring to related literature when providing the results. For example, the generation AI can refer to literature related to the results and reflect this in the results provided. The generation AI can also analyze the contents of the related literature and optimize the providing algorithm. Furthermore, the generation AI can improve the accuracy of the results provided based on information from related literature. This makes it possible to improve the accuracy of the results provided by referring to related literature.

[0121] The providing unit can provide the results based on the market value of the data table when providing the results. For example, the providing unit provides the results based on the market value of the data table when providing the results. For example, the generation AI provides results by giving priority to data tables with high market value. The generation AI can also determine the order in which the results are provided based on market value. Furthermore, the generation AI can reflect fluctuations in market value in the results in real time. This makes it possible to optimize the priority of provision by providing results based on market value. === Hard Collateral 1-1 === Each of the multiple elements including the learning unit, analysis unit, generation unit, execution unit, and provision unit described above is realized, for example, by at least one of the smart device 14 and the data processing device 12. For example, the learning unit is realized by the control unit 46A of the smart device 14 or the specific processing unit 290 of the data processing device 12. The analysis unit is realized, for example, by the control unit 46A of the smart device 14 or the specific processing unit 290 of the data processing device 12. The generation unit is realized, for example, by the control unit 46A of the smart device 14 or the specific processing unit 290 of the data processing device 12. The execution unit is realized, for example, by the specific processing unit 290 of the data processing device 12. The provision unit is realized, for example, by the control unit 46A of the smart device 14 or the specific processing unit 290 of the data processing device 12. === Hard Collateral 1-2 === Each of the multiple elements including the above-mentioned learning unit, analysis unit, generation unit, execution unit, and provision unit is realized, for example, by at least one of the smart glasses 214 and the data processing device 12. For example, the learning unit is realized by the control unit 46A of the smart glasses 214 or the specific processing unit 290 of the data processing device 12. The analysis unit is realized, for example, by the control unit 46A of the smart glasses 214 or the specific processing unit 290 of the data processing device 12. The generation unit is realized, for example, by the control unit 46A of the smart glasses 214 or the specific processing unit 290 of the data processing device 12. The execution unit is realized, for example, by the specific processing unit 290 of the data processing device 12. The provision unit is realized, for example, by the control unit 46A of the smart glasses 214 or the specific processing unit 290 of the data processing device 12. === Hard Collateral 1-3 === Each of the multiple elements including the above-mentioned learning unit, analysis unit, generation unit, execution unit, and provision unit is realized, for example, by at least one of the headset type terminal 314 and the data processing device 12. For example, the learning unit is realized by the control unit 46A of the headset type terminal 314 or the specific processing unit 290 of the data processing device 12. The analysis unit is realized, for example, by the control unit 46A of the headset type terminal 314 or the specific processing unit 290 of the data processing device 12. The generation unit is realized, for example, by the control unit 46A of the headset type terminal 314 or the specific processing unit 290 of the data processing device 12. The execution unit is realized, for example, by the specific processing unit 290 of the data processing device 12. The provision unit is realized, for example, by the control unit 46A of the headset type terminal 314 or the specific processing unit 290 of the data processing device 12. === Hard Collateral 1-4 === Each of the multiple elements including the above-mentioned learning unit, analysis unit, generation unit, execution unit, and provision unit is realized, for example, by at least one of the robot 414 and the data processing device 12. For example, the learning unit is realized by the control unit 46A of the robot 414 or the specific processing unit 290 of the data processing device 12. The analysis unit is realized, for example, by the control unit 46A of the robot 414 or the specific processing unit 290 of the data processing device 12. The generation unit is realized, for example, by the control unit 46A of the robot 414 or the specific processing unit 290 of the data processing device 12. The execution unit is realized, for example, by the specific processing unit 290 of the data processing device 12. The provision unit is realized, for example, by the control unit 46A of the robot 414 or the specific processing unit 290 of the data processing device 12.

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

[0123] The analysis unit can estimate the user's emotions and adjust the way the analysis is presented based on the estimated user emotions. For example, if the user is nervous, the analysis unit can provide simple, highly visible analysis results. If the user is relaxed, the analysis unit can also provide detailed analysis results. Furthermore, if the user is in a hurry, the analysis unit can also provide analysis results that focus on the main points. This allows the analysis results to be adjusted according to the user's emotions, thereby facilitating understanding of the analysis results. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to these examples.

[0124] The generation unit can estimate the user's emotions and adjust the SQL query generation method based on the estimated user emotions. For example, if the user is relaxed, the generation unit can generate an SQL query that proceeds at a leisurely pace. If the user is in a hurry, the generation unit can also generate an SQL query that emphasizes the shortest route. Furthermore, if the user is excited, the generation unit can generate an SQL query that adds a visually stimulating effect. This allows for improving the generation accuracy by adjusting the SQL query generation method according to the user's emotions. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0125] The execution unit can estimate the user's emotions and adjust the execution method of the SQL query based on the estimated user emotions. For example, if the user is nervous, the execution unit can provide simple, highly visible execution results. If the user is relaxed, the execution unit can also provide detailed execution results. Furthermore, if the user is in a hurry, the execution unit can also provide execution results that focus on the main points. This allows the execution method of the SQL query to be adjusted according to the user's emotions, thereby facilitating understanding of the execution results. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generative AI. Generative AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0126] The providing unit can estimate the user's emotions and adjust the way in which results are presented based on the estimated user emotions. For example, if the user is nervous, the providing unit can provide simple, highly visible results. If the user is relaxed, the providing unit can also provide detailed results. Furthermore, if the user is in a hurry, the providing unit can also provide results that are concise. This can facilitate understanding of the results by adjusting the way in which results are presented according to the user's emotions. Emotion estimation is achieved using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be, for example, a text generation AI (e.g., LLM) or a multimodal generation AI, but is not limited to such examples.

[0127] The providing unit can estimate the user's emotions and determine the priority of providing results based on the estimated user emotions. For example, if the user is feeling stressed, the providing unit can cause the generation AI to prioritize providing simple results. Also, if the user is relaxed, the providing unit can cause the generation AI to provide detailed results as well. Furthermore, if the user is in a hurry, the providing unit can cause the generation AI to prioritize providing results that can be provided quickly. This can improve the efficiency of providing results by determining the priority of providing results according to the user's emotions. Emotion estimation is realized using an emotion estimation function, for example, using an emotion engine or generation AI. The generation AI can be, but is not limited to, a text generation AI (e.g., LLM) or a multimodal generation AI.

[0128] The learning unit can perform learning based on the geographic distribution of the data table. For example, when learning a geographically distributed data table, the generation AI takes into account the characteristics of each region. The generation AI can also determine the learning order of the data table based on the geographic distribution. Furthermore, the generation AI can adjust the learning algorithm according to the geographic distribution. This makes it possible to improve learning accuracy by performing learning based on the geographic distribution.

[0129] The analysis unit can analyze the context of natural language and improve analysis accuracy. For example, the generation AI can analyze the context of natural language and generate an appropriate SQL query. The generation AI can also reflect changes in context in the analysis in real time. Furthermore, the generation AI can optimize the analysis algorithm based on the context. This allows for detailed analysis of the context of natural language and improves analysis accuracy.

[0130] The generation unit can take into account the relationships between data tables when generating SQL queries. For example, the generation AI generates SQL queries by taking into account the relationships between data tables. The generation AI can also optimize SQL queries based on the strength of the relationships. Furthermore, the generation AI can also reflect changes in the relationships in real time in the SQL queries. This allows for improved generation accuracy by taking into account the relationships between data tables.

[0131] The execution unit can take into account the update frequency of the data table when executing an SQL query. For example, the generation AI can frequently execute SQL queries for data tables that are updated frequently. The generation AI can also periodically execute SQL queries for data tables that are updated infrequently. Furthermore, the generation AI can adjust the SQL query execution algorithm according to the update frequency. This allows for improved execution accuracy by executing SQL queries based on the update frequency.

[0132] When providing results, the providing unit can provide them based on the market value of the data table. For example, the generation AI provides results by giving priority to data tables with high market value. The generation AI can also determine the order in which results are provided based on market value. Furthermore, the generation AI can also reflect fluctuations in market value in the results in real time. This makes it possible to optimize the priority of provision by providing results based on market value.

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

[0134] Step 1: The learning unit learns the information in the data table. For example, the learning unit analyzes the structure and content of the data table in detail and has the generation AI learn from it. By having the learning unit learn the column names, data types, relationships, etc. of each table, the generation AI can grasp the overall picture of the data table. Step 2: The analysis unit analyzes the natural language based on the information learned by the learning unit. For example, the analysis unit analyzes the natural language input by the user and provides information for generating an appropriate SQL query. The analysis unit uses natural language processing technology to analyze the user's request. Step 3: The generator generates an SQL query based on the natural language analyzed by the analyzer. For example, the generator generates an SQL query based on the information provided by the analyzer. In response to a request to "aggregate and display sales data by month," the generator generates the SQL query "SELECT month, SUM(sales) FROM sales_data GROUP BY month." Step 4: The execution unit executes the SQL query generated by the generation unit. For example, the execution unit executes the generated SQL query against a data warehouse to extract data. Step 5: The providing unit provides the results obtained by the executing unit. For example, the providing unit provides the execution results to the user. As a result, the data warehouse usage support system according to the embodiment allows even a user who has no knowledge of SQL to extract and analyze data through dialogue in natural language.

[0135] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

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

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

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

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

[0140] 3, the data processing system 210 includes a data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.

[0141] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN and / or a LAN.

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

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

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

[0145] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0146] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0147] The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0148] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.

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

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

[0151] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.

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

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

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

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

[0156] 5, the data processing system 310 includes the data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.

[0157] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN and / or a LAN.

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

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

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

[0161] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0162] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0163] The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0164] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.

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

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

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

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

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

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

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

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

[0173] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, RAM 30, and storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN and / or a LAN.

[0174] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.

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

[0176] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS image sensor or a CCD image sensor, and captures images of the user's surroundings (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).

[0177] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.

[0178] The control object 443 includes a display device, LEDs in the eyes, and motors that drive the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.

[0179] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.

[0180] The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.

[0181] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290. The identification processing unit 290 can estimate a user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion. The emotion estimation function (emotion identification function) using the emotion identification model 59 performs various estimations and predictions regarding the user's emotion, including estimation and prediction of the user's emotion, but is not limited to these examples. Furthermore, the estimation and prediction of emotion also includes, for example, emotion analysis.

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

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

[0184] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.

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

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

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

[0188] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.

[0189] FIG. 9 illustrates an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and behaviors arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion encompasses both emotions and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.

[0190] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.

[0191] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).

[0192] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is expressed, and when they approach the ideal, a state of pleasure is expressed. Emotions can also be created for robots, cars, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is expressed, and when they approach the ideal, a state of pleasure is expressed. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on speech emotion recognition and brain physiological signal analysis systems for emotions, Tokushima University, doctoral dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the area called "reaction," where sensation is dominant. The right half of the emotion map lists emotions belonging to the area called "situation," where situational awareness is dominant.

[0193] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."

[0194] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values ​​indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values ​​indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.

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

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

[0197] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.

[0198] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.

[0199] The hardware resource for executing a specific process can be any of the following types of processors: A processor, for example, is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. A processor also includes a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.

[0200] The hardware resource that executes the specific process may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific process may be a single processor.

[0201] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.

[0202] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.

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

[0204] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.

[0205] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.

[0206] [Explanation of symbols]

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

Claims

1. a learning unit that learns information in the data table; an analysis unit that analyzes natural language based on the information learned by the learning unit; a generation unit that generates an SQL query based on the natural language analyzed by the analysis unit; an execution unit that executes the SQL query generated by the generation unit; a providing unit that provides the results obtained by the execution unit. A system characterized by:

2. The learning unit Analyze the structure and content of the data table and let the generation AI learn from it 2. The system of claim 1.

3. The analysis unit Parsing natural language input from the user and providing information to generate SQL queries 2. The system of claim 1.

4. The generation unit Generates an SQL query based on the information provided by the analysis unit 2. The system of claim 1.

5. The execution unit: Run the generated SQL queries against the data warehouse 2. The system of claim 1.

6. The providing unit Providing the results obtained by the execution unit to the user 2. The system of claim 1.

7. The generation unit Detects errors in SQL queries entered manually by users and suggests corrected queries 2. The system of claim 1.

8. The learning unit Estimate the user's emotions and select training data based on the estimated user emotions.

2. The system of claim 1.

Citation Information

Patent Citations

  • Persona chatbot control method and system

    JP2022180282A