System for generating domain-based user-customized database according to question and intent classification, and method for same
The AI system addresses the limitations of conventional database creation systems by using natural language processing and user information to generate tailored database queries, resulting in improved data retrieval efficiency and security.
Patent Information
- Application Number
- PCT/KR2024/018374
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-11-07
- Filing Date
- 2024-11-20
- Publication Date
- 2025-05-30
AI Technical Summary
Conventional database creation systems struggle with accurately understanding natural language questions, grasping user intentions, and providing personalized data due to limitations in intent classification, domain determination, and execution plan flexibility, leading to inefficiencies and security risks.
An AI system and method that utilizes a question receiving module, intent classification module, question classification module, domain determination module, and execution module to generate a user-tailored database query based on natural language questions, incorporating user information and large-scale language models for intent identification and domain classification.
The system efficiently retrieves data by creating customized SQL queries, improving user convenience and data accessibility, enhancing data retrieval efficiency and accuracy, and ensuring data security through permission-based access control.
Smart Images

Figure KR2024018374_30052025_PF_FP_ABST
Abstract
Description
System and method for creating a domain-based user-tailored database based on question and intent classification
[0001] The present disclosure relates to an artificial intelligence system and method for generating a user-tailored database query based on a user question entered in natural language to retrieve data. Specifically, the system and method provide a domain-based user-tailored database generation system based on question and intent classification, which analyzes a user's question, accurately determines the intent, classifies the question only when the intent is to generate a database query, determines a domain, and generates and updates an execution plan through interaction with the user to ultimately generate an appropriate database query to retrieve data.
[0002] Advances in computer technology have led to the adoption of a variety of computer programs for business and management tasks in businesses and government offices. These programs can store and process the vast amount of data required for business operations and management, including accounting, human resources, finance, sales, trade, purchasing, materials, production, and inventory. These programs allow users (working-level staff, executives, and managers) to conveniently store and manage data used in businesses and government offices. Computer programs used in businesses and government offices support the creation, editing, and management of various document formats.
[0003] Patent Document 1 (Korean Patent Publication No. 10-2024-0100779) discloses a method for generating syntax for a database for adding or updating original data to the database.
[0004] However, these conventional database creation systems primarily used models that converted natural language processing into SQL to provide data services. These database creation systems required users to access only specific data and restricted access to specific items, making it difficult to control permissions for the generated SQL. Furthermore, because large amounts of data were being retrieved, it was difficult to prevent database overload, making the generated SQL more likely to overload the database service.
[0005] Furthermore, because post-SQL generation corrections were limited, it was difficult to guarantee performance compared to user-written SQL. Furthermore, token generation for each natural language query increased costs, resulting in excessive costs for natural language queries.
[0006] Additionally, there was a risk that internal data generated through SQL would be exposed to external networks, which could lead to security issues when using external networks for natural language processing.
[0007] These conventional database creation systems have limitations in accurately understanding users' natural language queries and identifying their intent. They also fail to fully utilize user information, hindering the provision of personalized data. Furthermore, they struggle to appropriately categorize questions and determine domains, potentially reducing the accuracy and efficiency of data retrieval. Furthermore, these systems fail to reflect detailed user requirements, hindering personalized data retrieval. Furthermore, their fixed execution plans hinder flexible response to changing user needs and data environments.
[0008] [Prior Art Literature]
[0009] [Patent Document]
[0010] (Patent Document 1) Republic of Korea Patent Publication No. 10-2024-0100779
[0011] The present disclosure is conceived in response to the aforementioned background technology, and provides a system and method for creating a domain-based user-customized database based on question and intent classification using artificial intelligence technology that can efficiently retrieve data by automatically creating a user-customized database query based on a user question entered in natural language.
[0012] The technical problems of the present disclosure are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the description below.
[0013] A method performed by a computing device according to some embodiments for solving the aforementioned task,
[0014] A system for generating a domain-based user-tailored database based on question and intent classification according to one aspect of the present disclosure for achieving the above-described purpose may include: a question receiving module for receiving a question in natural language through a user interface; an intent classification module for utilizing user information and using a large-scale language model to identify and classify the intent of the user's question; a question classification module for determining whether the question belongs to a predefined domain using a natural language processing engine and a vector database; a domain decision module comprising a domain mapping table and a decision algorithm, and determining an appropriate domain based on the analyzed question; and an execution module comprising a basic execution plan and a database connection module, and establishing and executing a basic execution plan based on the domain decision information.
[0015] The intent classification module classifies the user's intent by combining the received question and user information, and the user's intent may consist of at least one of daily conversation, SQL generation, API call, and directive storage.
[0016] The execution module establishes a basic execution plan based on the domain information passed from the domain determination module, fetches relevant data and parameters, executes the execution plan, and temporarily stores the basic execution results for comparison in later stages.
[0017] The above system may further include a user interaction module that requests the user to select data and parameters related to a question based on the basic execution result of the execution module or the need for additional information, receives the user's selection or input and transmits it to the execution plan generation module, and is composed of a user interface and input processing logic and interacts with the user to select additional data or parameters.
[0018] The above system may further include an execution plan generation module that generates a new execution plan based on user-selected data and parameters received from a user interaction module, the execution plan including an optimized query structure for retrieving data from a database, and is composed of an execution plan generation engine and an optimization algorithm and generates a new execution plan based on user selection.
[0019] The above system may further include a JSON generation and update module configured with a JSON generator and a result comparison algorithm, which executes a new execution plan transmitted from an execution plan generation module, compares the execution result with a previous basic execution result to evaluate the performance and superiority of the result, combines user information, questions, and intentions using a large-scale language model to generate a customized JSON meta, and updates data, parameters, and the execution plan of the corresponding domain if the result of the new execution plan is better, thereby realizing learning and optimization of the system.
[0020] The above system may further include an optimal database generation module that generates a suitable database query based on customized JSON meta generated by a JSON generation and update module, optimizes the generated database query to retrieve required data from a database, transmits the generated database query to a database to retrieve final data, and generates an optimized database query based on JSON meta, the optimized database generation module comprising a database generation engine and a meta data parser to retrieve data from a database.
[0021] A method for generating a domain-based user-tailored database based on question and intent classification according to another aspect of the present disclosure may include a question reception and intent identification step in which a question reception module receives a natural language question entered by a user, and an intent classification module identifies the user's intent by utilizing user information and a large-scale language model; a question classification and domain determination step in which a question classification module analyzes a question to determine whether the question belongs to a predefined domain through a vector database search, and a domain determination module determines the domain of the question based on the question classification result; a basic execution and user interaction step in which an execution module executes a basic execution plan corresponding to the determined domain to retrieve initial data, and a user interaction module requests the user to select additional data and parameters; an execution plan generation and update step in which an execution plan generation module generates a new execution plan based on the user's selection and updates the execution plan by comparing it with a previous execution result; a step in which an optimal database generation module generates an appropriate database query based on the generated JSON metadata; and a database query generation and data retrieval step in which the generated database query retrieves data from a database.
[0022] According to another aspect of the present disclosure, a computer program stored in a computer-readable storage medium is provided, which, when executed by one or more processors, performs a method for generating a domain-based user-customized database according to question and intent classification, the method comprising: a question reception and intent identification step in which a question reception module receives a natural language question entered by a user, and an intent classification module utilizes user information and a large-scale language model to identify the user's intent; a question classification and domain determination step in which a question classification module analyzes a question to determine whether the question belongs to a predefined domain through a vector database search, and a domain determination module determines the domain of the question based on the question classification result; a basic execution and user interaction step in which an execution module executes a basic execution plan corresponding to the determined domain to retrieve initial data, and a user interaction module requests the user to select additional data and parameters; an execution plan generation and update step in which an execution plan generation module generates a new execution plan based on the user's selection and updates the execution plan by comparing it with a previous execution result; an optimal database generation module generates an appropriate database query based on the generated JSON metadata; And the generated database query may include a database query generation and data retrieval step for retrieving data from a database;
[0023] The present disclosure is conceived in response to the aforementioned background technology, and can provide an artificial intelligence system and method for efficiently retrieving data by automatically generating a user-customized SQL query based on a user question entered in natural language.
[0024] This allows users to quickly and accurately obtain desired data using natural language queries without having to understand complex SQL syntax or database structures. Specifically, the benefits of the present invention are as follows:
[0025] By leveraging large-scale language models (LLMs), we can deeply analyze users' natural language queries, combine them with user information (department, position, past query history, etc.) to accurately understand the user's intent, accurately determine whether the user's query is relevant to database creation, and only then proceed with appropriate processing.
[0026] By analyzing the received questions and checking whether the questions belong to a predefined domain (meta) through a vector database search, and determining the domain of the question based on the question classification results, it is possible to select data and execution plans appropriate for the domain, thereby contributing to improving the accuracy and efficiency of data retrieval.
[0027] By asking users to select additional data and parameters related to their questions, you can generate new execution plans that reflect their needs and preferences, enabling personalized data retrieval and improving user satisfaction.
[0028] The generated execution plan is executed, and if it provides better results compared to previous execution results, the data, parameters, and execution plan for the domain are updated. This allows the system to continuously learn and improve through user interaction, enabling more efficient and accurate data retrieval over time.
[0029] Automatically generates appropriate SQL queries based on the final JSON metadata. This process utilizes the Optimal Database Generation (i-META) module to automate complex SQL syntax and efficiently retrieve required data from the database, helping to improve data retrieval speed and system performance.
[0030] By enabling users to retrieve desired data using natural language without complex technical knowledge, the user experience can be improved, the time required for data retrieval can be reduced, and work processes can be streamlined, thereby increasing overall work efficiency and productivity.
[0031] By providing only accessible data based on user information and permissions, data security and integrity can be maintained, preventing unauthorized access to sensitive information and significantly contributing to compliance with corporate data management policies.
[0032] By achieving these objectives, the present disclosure provides a user-friendly and efficient data retrieval system, and can contribute to innovation in business processes and improved productivity by providing customized data to users quickly and accurately.
[0033] Further scope of the applicability of the present disclosure will become apparent from the detailed description below. However, since various modifications and variations within the spirit and scope of the present invention will become apparent to those skilled in the art, it should be understood that the detailed description and specific examples, such as preferred embodiments of the present invention, are given by way of example only.
[0034] Various aspects are now described with reference to the drawings, wherein like reference numerals are used to refer to similar elements throughout. In the following examples, for purposes of explanation, numerous specific details are set forth to provide a thorough understanding of one or more aspects. However, it will be apparent that such aspects may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form to facilitate the description of one or more aspects.
[0035] FIG. 1 is a block diagram illustrating the configuration of a system for creating a domain-based user-tailored database based on question and intent classification according to an embodiment of the present disclosure.
[0036] FIG. 2 is a block diagram illustrating the configuration of a system for creating a domain-based user-customized database based on question and intent classification according to an embodiment of the present disclosure.
[0037] FIG. 3 is a schematic diagram of a system for creating a domain-based user-customized database according to the question and intent classification of the present disclosure.
[0038] FIG. 4 is a schematic diagram illustrating an example of the operation of a system for creating a domain-based user-tailored database according to the question and intent classification of the present disclosure.
[0039] FIG. 5 is a flowchart illustrating information processing of a system for creating a domain-based user-tailored database according to the question and intent classification of the present disclosure.
[0040] FIG. 6 is a flowchart illustrating a method for creating a domain-based user-tailored database according to the question and intent classification of the present disclosure.
[0041] FIG. 7 illustrates a general schematic diagram of an exemplary computing environment in which embodiments of the present disclosure may be implemented.
[0042] Various embodiments are now described with reference to the drawings. In this specification, various descriptions are provided to facilitate understanding of the present disclosure. However, it will be apparent that these embodiments may be practiced without these specific details.
[0043] As used herein, the terms "component," "module," "system," and the like refer to computer-related entities, hardware, firmware, software, a combination of software and hardware, or an execution of software. For example, a component may be, but is not limited to, a procedure running on a processor, a processor, an object, a thread of execution, a program, and / or a computer. For example, both an application running on a computing device and the computing device may be a component. One or more components may reside within a processor and / or a thread of execution. A component may be localized within a single computer. A component may be distributed between two or more computers. Furthermore, these components may execute from various computer-readable media having various data structures stored therein. Components may communicate via local and / or remote processes, for example, by signals comprising one or more data packets (e.g., data from one component interacting with another component in a local system, a distributed system, and / or data transmitted to another system via a network such as the Internet via signals).
[0044] The suffixes "module" and "part" used for components in the following description are given or used interchangeably only for the convenience of writing specifications, and do not have distinct meanings or roles in themselves.
[0045] Additionally, the terms “information” and “data” as used herein may often be used interchangeably.
[0046] When a component is referred to as being "connected" or "connected" to another component, it should be understood that it may be directly connected or connected to that other component, but that there may be other components intervening. Conversely, when a component is referred to as being "directly connected" or "connected" to another component, it should be understood that there are no other components intervening.
[0047] Furthermore, the term "or" is intended to mean an inclusive "or" rather than an exclusive "or." That is, unless otherwise specified or clear from context, "X employs A or B" is intended to mean either of the natural inclusive permutations. That is, if X employs A; X employs B; or X employs both A and B, "X employs A or B" can apply to any of these cases. Furthermore, the term "and / or" as used herein should be understood to refer to and include all possible combinations of one or more of the associated items listed.
[0048] Additionally, the terms "comprises" and / or "comprising" should be understood to imply the presence of the features and / or components. However, it should be understood that the terms "comprises" and / or "comprising" do not exclude the presence or addition of one or more other features, components, and / or groups thereof. Furthermore, unless otherwise specified or clear from the context to refer to the singular form, the singular in the specification and claims should generally be construed to mean "one or more."
[0049] Hereinafter, regardless of the drawing numbers, identical or similar components are assigned the same reference numbers, and redundant descriptions thereof are omitted. Furthermore, when describing the embodiments disclosed in this specification, if a detailed description of a related known technology is judged to obscure the gist of the embodiments disclosed in this specification, the detailed description thereof will be omitted. Furthermore, the attached drawings are only intended to facilitate easy understanding of the embodiments disclosed in this specification, and the technical ideas disclosed in this specification are not limited by the attached drawings.
[0050] And, the term "at least one of A or B" should be interpreted to mean "if it includes only A", "if it includes only B", or "if it is combined in the composition of A and B".
[0051] Those skilled in the art should further appreciate that the various illustrative logical blocks, configurations, modules, circuits, means, logics, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate the interchangeability of hardware and software, various illustrative components, blocks, configurations, means, logics, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application. However, such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
[0052] The description of the disclosed embodiments is provided to enable a person skilled in the art to make or use the present disclosure. Various modifications to these embodiments will be apparent to a person skilled in the art. The general principles defined herein may be applied to other embodiments without departing from the scope of the present disclosure. Thus, the present disclosure is not limited to the embodiments set forth herein. The present disclosure is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
[0053]
[0054] Hereinafter, FIGS. 1 to 7 describe a system and method for creating a domain-based user-customized database according to question and intent classification in the present disclosure.
[0055]
[0056] FIG. 1 is a block diagram illustrating a computing device according to one embodiment of the present disclosure.
[0057] Referring to FIG. 1, the configuration of the computing device (100) illustrated in FIG. 1 is merely a simplified example. For example, the computing device (100) may include other configurations for performing the computing environment of the computing device (100), and only some of the disclosed configurations may constitute the computing device (100).
[0058] A computing device (100) may include a processor (110), memory (130), and network unit (150).
[0059] According to one embodiment of the present disclosure, the processor (110) may typically include all types of devices capable of processing operations and data of the computing device (100). For example, it may refer to a data processing device built into hardware that has a physically structured circuit to perform a function expressed by a code or command included in a program. Examples of such data processing devices built into hardware include processing devices such as a microprocessor, a central processing unit (CPU), a processor core, a multiprocessor, an application-specific integrated circuit (ASIC), and a field programmable gate array (FPGA), but the scope of the present invention is not limited thereto.
[0060] The above processor (110) may be composed of one or more cores and may include a central processing unit (CPU) of a computing device. In addition, it may further include a processor for data analysis and deep learning, such as a general purpose graphics processing unit (GPGPU) and a tensor processing unit (TPU).
[0061] According to one embodiment of the present disclosure, the memory (130) can store any form of information generated or determined by the processor (110) and any form of information received by the network unit (150).
[0062] According to one embodiment of the present disclosure, the memory (130) may include at least one type of storage medium among a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (e.g., SD or XD memory, etc.), a random access memory (RAM), a static random access memory (SRAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, and an optical disk. The computing device (100) may also operate in relation to web storage that performs the storage function of the memory (130) on the internet. The description of the above-described memory is merely an example, and the present disclosure is not limited thereto.
[0063] The network unit (150) according to one embodiment of the present disclosure can use various wired communication systems such as a public switched telephone network (PSTN), xDSL (x Digital Subscriber Line), RADSL (Rate Adaptive DSL), MDSL (Multi Rate DSL), VDSL (Very High Speed DSL), UADSL (Universal Asymmetric DSL), HDSL (High Bit Rate DSL), and a local area network (LAN).
[0064] In addition, the network unit (150) presented in this specification can use various wireless communication systems such as CDMA (Code Division Multi Access), TDMA (Time Division Multi Access), FDMA (Frequency Division Multi Access), OFDMA (Orthogonal Frequency Division Multi Access), SC-FDMA (Single Carrier-FDMA) and other systems.
[0065] In the present disclosure, the network unit (150) may be configured regardless of the communication mode, such as wired or wireless, and may be configured as various communication networks, such as a local area network (LAN), a personal area network (PAN), and a wide area network (WAN). In addition, the network may be the well-known World Wide Web (WWW), and may also utilize a wireless transmission technology used for short-distance communication, such as infrared (IrDA: Infrared Data Association) or Bluetooth.
[0066] The techniques described in this specification can be used in other networks as well as the networks mentioned above.
[0067] In this specification, the database may be controlled by at least one relational database management system (RDBMS) among ORACLE, PostgreSQL, MySQL, SQL Server (MS-SQL), and SQLite. The database may be one in which data input and output are performed by database statements.
[0068] Meanwhile, the application of the present specification may include a separate statement execution module. When the database statement performs data input / output for the database management system (RDBMS), the statement execution module may generate a customized statement that conforms to the syntax depending on the type of the database. For example, through the present disclosure, a user can conveniently generate, confirm, and control statements through abstracted formulas provided in the user interface (UI) provided by the application, regardless of the type of database.
[0069] Additionally, the application may be associated with an SQL statement that performs one or more of the following operations: Create, Read, Update, Delete (CRUD). Here, the SQL statement may be a signal associated with one of the commands Insert, Update, or Delete, and the signal may be a name or abbreviation of the SQL statement that is entered or displayed in a cell of a spreadsheet. For example, the display may appear as shown in Table 1 below.
[0070] Code Description AllInsert, Update Includes the column in all operations. InsertOnly Includes the column only in the Insert statement. UpdateOnly Includes the column in the Update statement.
[0071] Additionally, user input information may be used to set columns related to syntax generation or specify record conditions. For example, SQL statements can be executed even when the column order or column names between the source and output data change. Furthermore, the user input information may display comments on the output data.
[0072] FIG. 2 is a block diagram of a system for creating a domain-based user-tailored database according to the question and intent classification of the present disclosure.
[0073] Referring to FIG. 2, a block diagram of a system for creating a domain-based, user-customized database based on question and intent classification according to the present disclosure illustrates the overall structure of the system and method for creating a domain-based, user-customized database based on question and intent classification according to the present disclosure. This illustrates how each module of the system for creating a domain-based, user-customized database based on question and intent classification according to the present disclosure interacts to convert a user's natural language query into a customized database (SQL) query and retrieve and provide appropriate data.
[0074] The system for creating a domain-based user-customized database according to the question and intent classification of the present disclosure shown in Fig. 2 is an artificial intelligence (AI) system that can efficiently retrieve data by creating a user-customized SQL query based on a user question entered in natural language, and is composed of the following main components and their functions.
[0075] A system for creating a domain-based user-customized database according to the question and intent classification of the present disclosure may be composed of a question receiving module (10), an intent classification module (20), a question classification module (30), a domain determination module (40), an execution module (50), a user interaction module (60), an execution plan creation module (70), a JSON creation and update module (80), and an optimal database creation unit (i-META) module (90).
[0076] The question receiving module (10) is a module that receives questions in natural language from a user through a user interface (UI). The question receiving module (10) receives natural language questions entered by the user in real time and transmits them to the first processing stage of the system.
[0077] The intent classification module (20) is a module that classifies the intent of a question using user information. User intent can be classified into SQL generation, API call, and daily conversation. The intent classification module (20) utilizes user information (department, position, past query history, etc.) and uses a large-scale language model (LLM) to identify the user intent. The intent classification module (20) accurately classifies the user intent by combining the received question and user information. Here, the user intent classified by the intent classification module (20) can be classified into daily conversation, SQL generation (data retrieval, item and condition addition), API call, and directive storage.
[0078] In one embodiment, the intent classification module (20) may pass the question to the next step, the question classification module, only if the intent is SQL generation.
[0079] The question classification module (30) uses natural language processing and a vector database (Vector DB) to determine whether a question belongs to a predefined domain. The question classification module (30) consists of a natural language processing engine and a vector database (Vector DB). The question classification module (30) analyzes the received question to determine whether the question belongs to a predefined domain (meta). Next, it searches the vector database (DB) to find domain meta information similar to the question. Then, the analysis results are transmitted to the domain determination module.
[0080] The domain determination module (40) determines an appropriate domain (meta) based on the analyzed question. The domain determination module (40) consists of a domain mapping table and a decision algorithm. The domain determination module (40) determines the domain (meta) of the question based on the analysis results transmitted from the question classification module. Here, the domain refers to a specific business area or database table, and serves as a standard for appropriate data retrieval. Thereafter, the domain determination module (40) transmits the determined domain information to the execution module.
[0081] The execution module (50) establishes and executes a basic execution plan based on domain determination information. The execution module (50) consists of a basic execution plan and a database connection module. The execution module (50) establishes a basic execution plan based on the domain information received from the domain determination module. Next, the execution module (50) retrieves relevant data and parameters and executes the execution plan. The execution module (50) temporarily stores the basic execution results for comparison in subsequent steps.
[0082] The user interaction module (60) interacts with the user to select additional data or parameters. The user interaction module (60) consists of a user interface (UI) and input processing logic. The user interaction module (60) prompts the user to select data and parameters related to the question based on the basic execution results of the execution module or the need for additional information. For example, the user is prompted to select detailed conditions for a specific period, region, product, etc. The user interaction module (60) receives the user's selection or input and transmits it to the execution plan generation module.
[0083] The execution plan generation module (70) is a module that generates a new execution plan based on user selection. The execution plan generation module (70) is comprised of an execution plan generation engine and an optimization algorithm. The execution plan generation module (70) generates a new execution plan based on user-selected data and parameters received from the user interaction module. Here, the execution plan includes an optimized query structure for efficiently retrieving data from a database. Next, the execution plan generation module (70) transmits the generated execution plan to the JSON generation and update module.
[0084] The JSON generation and update module (80) is a module that executes a new execution plan and creates and updates JSON META. The JSON generation and update module (80) consists of a JSON generator and a result comparison algorithm. The JSON generation and update module (80) executes the new execution plan passed from the execution plan generation module. Next, the JSON generation and update module (80) compares the execution result with the previous base execution result to evaluate the performance and superiority of the result. The JSON generation and update module (80) uses a large-scale language model (LLM) to combine user information, questions, and intents to create a customized JSON META. If the comparison results show that the new execution plan has better results, the JSON generation and update module (80) updates the data, parameters, and execution plan of the corresponding domain to realize learning and optimization of the system.
[0085] The optimal database generation unit (i-META) module (90) is a module that generates an optimized SQL query based on JSON META to retrieve data from a database. The optimal database generation unit (i-META) module (90) is composed of a SQL generation engine and a metadata parser. The optimal database generation unit (i-META) module (90) generates an appropriate SQL query based on the customized JSON META generated by the JSON generation and update module. The generated SQL query is optimized to efficiently retrieve required data from the database. The optimal database generation unit (i-META) module (90) transmits the generated SQL query to the database to retrieve the final data.
[0086]
[0087] Figure 3 is a configuration diagram of a meta-generation and database optimization system according to questioner information of the present disclosure.
[0088] Referring to FIG. 3, a meta-generation and database optimization system based on questioner information according to one embodiment of the present disclosure may be a data service system based on natural language processing (NLP) technology that can process natural language queries using meta-language, generate and optimize a database (SQL), and derive suitable results from the database.
[0089] In one embodiment, the meta-generation and database optimization system according to the questioner information of the present disclosure may be a system that converts user queries in natural language into a meta-language and processes them. The meta-language analyzes the user queries, automatically generates and executes appropriate SQL queries, and provides the resulting data back to the user in natural language. The system may include morphological analysis and similar query management functions to process natural language queries.
[0090] The meta generation and database optimization system according to the questioner information of the present disclosure may be composed of a user (USER), a transformation matrix (G-MATRIX), a natural language processing module (NLP), and an optimal database generation unit (i-META).
[0091] A user (USER) enters a query into the system in natural language.
[0092] Transformation Matrix (G-MATRIX) converts natural language into meta-language and transmits the query content.
[0093] The natural language processing module (NLP) receives a metalanguage query, analyzes the natural language query, and provides a metalanguage answer accordingly.
[0094] The optimal database generation unit (i-META) receives meta language commands, generates an optimal SQL query, prepares a query result answer from the data SET result, and sends the result answer to the user (USER).
[0095] The meta-generation and database optimization system based on questioner information of the present disclosure, when a user enters a query in natural language, extracts key nouns and verbs through morphological analysis and processes them for similarity processing. The extracted information is converted into a meta-language, which is then used to automatically generate an SQL query. The generated SQL query is executed in a database to produce results, which are then converted into natural language through the meta-language and provided to the user. The meta-language plays a crucial role in the query transmission, command transmission, and result reception processes, and the user ultimately receives the results processed in natural language.
[0096] For example, the meta-generation and database optimization system according to the questioner information of the present disclosure can convert a user's natural language query, such as "Show me this year's sales department sales status," into meta-information such as "x=this year," "y=sales department," and "sales=sales amount." Based on this information, an SQL query can be generated, and ultimately, the sales status desired by the user can be provided.
[0097] The meta-generation and database optimization system according to the questioner information of the present disclosure may include a function for managing similar queries, thereby detecting queries similar to previously used queries and processing data more efficiently based on these queries. Furthermore, by utilizing database (SQL) optimization and data caching technologies, query performance is improved and system response time is shortened. Furthermore, meta-language-based query processing allows users to easily obtain desired information without having to directly write database (SQL) statements. Furthermore, by processing database queries based on natural language, a system can be provided that allows users to easily retrieve data without having to write SQL queries, thereby increasing data accessibility and making it easier for non-experts to use.
[0098]
[0099] FIG. 4 is a schematic diagram illustrating an example of the operation of a meta-generation and database optimization system according to questioner information of the present disclosure.
[0100] Referring to Figure 4, the meta-generation and database optimization system based on questioner information of the present disclosure analyzes a user's query expressed in natural language, generates an SQL query based on the query, retrieves data from a database, and provides the results in a user-understandable format. This system is primarily used for data retrieval, such as sales management, in specific business units, such as the electric power division of a company.
[0101] In one embodiment, the meta-generation and database optimization system according to the questioner information of the present disclosure may include the following components.
[0102] A user queries the sales status of a specific business division using natural language. For example, they might ask, "Please tell me how much we sold this year" or "What were the sales of the electrical business division in 2023?"
[0103] G-MATRIX is a module that analyzes users' natural language queries and generates SQL queries. For example, it processes a query for "Sales of S Corporation's Electric Power Division from January 1, 2023 to today."
[0104] The optimal database generation unit (i-META) converts natural language queries into meta-language and optimizes the database (SQL) based on this meta-language.
[0105] The natural language processing module (NLP) analyzes the user's natural language queries, extracts the necessary data, and converts it into meta-language.
[0106] In one embodiment, the meta-generation and database optimization system according to the questioner information of the present disclosure may operate as follows.
[0107] When a user enters a query in natural language, such as "What will be the sales of the electric power division in 2023?", the NLP module analyzes the query and extracts important time periods and departments.
[0108] The G-MATRIX module generates a specific SQL query, "Sales of S Corporation's Electricity Division from January 1, 2023 to today," based on the analyzed data.
[0109] The generated SQL query is passed to the database through the optimal database generation unit (i-META) and executed.
[0110] The execution results are organized in a data format such as Table A and provided to the user in the form of Template B.
[0111] In one embodiment, the meta-generation and database optimization system according to the questioner information of the present disclosure can efficiently manage sales data of a specific business division, such as the electric power division of a company, using a natural language processing (NLP) algorithm, and provide a data service that converts a user's natural language query into a database (SQL) and extracts related information from the database.
[0112] In one embodiment, the meta-generation and database optimization system according to the questioner information of the present disclosure may provide an automated system that allows a user to request data in natural language and analyzes and converts the data into an accurate SQL query.
[0113] In one embodiment, the meta-generation and database optimization system according to the questioner information of the present disclosure may include a module optimized for generating SQL queries and retrieving data for a specific department or period.
[0114] In one embodiment, the resulting data of the meta-generation and database optimization system according to the questioner information of the present disclosure may be provided in a user-customizable manner and may also generate visual reports through templates.
[0115] In one embodiment, the meta-generation and database optimization system according to the questioner information of the present disclosure may operate as follows.
[0116] When a user enters a natural language query like "Show me the sales of the Electric Power Division this year," the system translates the query into "Sales of Company S's Electric Power Division from January 1, 2023 to today," then executes an SQL query to produce the results. These results are presented in Table A format and displayed to the user as visualized data using Template B.
[0117] In one embodiment, the meta-generation and database optimization system according to the questioner information of the present disclosure provides a convenient system that allows users to retrieve necessary data through natural language queries without having to understand complex query languages such as SQL, thereby enabling non-experts to easily access data and efficiently manage sales and create reports.
[0118]
[0119] FIG. 5 is a flowchart illustrating information processing of a meta-generation and database optimization system according to questioner information of the present disclosure.
[0120] Referring to FIG. 5, a system for generating metadata and optimizing a database based on questioner information according to one embodiment of the present disclosure may be a data service system that analyzes a user's natural language queries by combining natural language processing (NLP) technology and a large-scale language model (LLM) and provides an optimal response based on metadata. Thus, the system for generating metadata and optimizing a database based on questioner information according to the present disclosure can utilize learned metadata to generate SQL queries and provide results in real time.
[0121] In one embodiment, the system and method for generating metadata and optimizing a database based on query information of the present disclosure may be a system that receives a user's natural language query, learns metadata through a large-scale language model, and automatically generates SQL queries based on the metadata to retrieve data from a database. Here, the metadata is managed in an embedded vector store, and the system provides real-time responses through continuous query processing and caching functions.
[0122] In one embodiment, the meta generation and database optimization system according to the questioner information of the present disclosure may be composed of a user, a result platform (AUD7 Platform), a transformation matrix (G-MATRIX), an optimal database generation unit (i-META), and a large-scale language model (LLM).
[0123] It receives natural language queries from users. For example, it includes queries like "What were the sales of the electric power division in 2023?"
[0124] The result platform (AUD7 Platform) passes the user's natural language query to the transformation matrix (G-MATRIX) and returns the result back to the user.
[0125] Transformation Matrix (G-MATRIX) processes users' natural language queries to generate metadata and uses a large-scale language model (LLM) to transform natural language queries into embedded vector form.
[0126] A large-scale language model (LLM) converts a user's natural language query into metadata and passes the metadata to the optimal database generation unit (i-META), which then uses the learned data to generate and optimize SQL queries.
[0127] The optimal database generation unit (i-META) configures templates based on metadata generated from the transformation matrix (G-MATRIX) and optimizes SQL queries.
[0128]
[0129] The system for generating a domain-based user-tailored database according to the question and intent classification of the present disclosure aims to solve the conventional problem by deeply analyzing the user's question using a large-scale language model (LLM) and accurately identifying the user's intent by combining the user information.
[0130] The system for creating a domain-based user-customized database according to the question and intent classification of the present disclosure solves this problem by checking whether a question belongs to a predefined domain (meta) through a Vector DB search in a question classification module and determining the correct domain through a domain determination module.
[0131] The system for creating a domain-based user-customized database according to the question and intent classification of the present disclosure enables user-customized data retrieval by requesting the user to select additional data and parameters related to the question through a user interaction module and generating a new execution plan based on the user's selection through an execution plan generation module.
[0132] The system for creating a domain-based, user-customized database based on the questions and intent classification of the present disclosure executes the generated execution plan and, if it yields better results compared to previous executions, updates the data, parameters, and execution plan for the relevant domain. This allows the system to continuously learn and improve through user interaction, enabling more efficient and accurate data retrieval over time.
[0133] The system for creating a domain-based user-customized database according to the question and intent classification of the present disclosure automatically creates an appropriate SQL query through an optimal database creation unit (i-META) module based on JSON metadata created by a JSON creation and update module so that even users without knowledge of complex SQL grammar or database structure can retrieve desired data.
[0134] The system for creating a domain-based, user-tailored database based on the question and intent classification of this disclosure combines user information and intent to generate personalized SQL queries, thereby increasing data retrieval efficiency and enhancing the user experience. This reduces the time required for data retrieval and streamlines work processes, contributing to overall work efficiency.
[0135] By strengthening user permissions and access control, we prevent unauthorized access to sensitive data and maintain data security and integrity. This is achieved through access control based on user information and query content.
[0136] Therefore, the system for creating a domain-based user-customized database according to the question and intent classification of the present disclosure aims to overcome the limitations of existing systems and contribute to improving work productivity by providing a user-friendly, efficient, and secure data retrieval system by fusing natural language processing technology and user information management technology.
[0137]
[0138] FIG. 6 is a flowchart of a method for creating a domain-based user-tailored database according to the question and intent classification of the present disclosure.
[0139] Referring to FIG. 6, the overall operational flow of the method for creating a domain-based user-customized database according to the question and intent classification of the present disclosure is as follows:
[0140] Step S1000 is the question reception and intent identification step. The question reception module receives a natural language question entered by the user (S1100). The intent classification module uses user information and a large-scale language model (LLM) to identify the user's intent (S1200). Only when the intent is SQL generation, the question is passed to the question classification module (S1300).
[0141] Step S2000 is the question classification and domain determination step. The question classification module analyzes the question and checks whether it belongs to a predefined domain (meta) through a vector database (DB) search (S2100). The domain determination module determines the question's domain (meta) based on the question classification results (S2200). The determined domain information is then passed to the execution module (S2300).
[0142] Step S3000 is the basic execution and user interaction phase. The execution module executes the basic execution plan corresponding to the determined domain and retrieves initial data (S3100). The user interaction module prompts the user to select additional data and parameters (S3200). For example, additional conditions such as a specific period, region, or product can be selected. The user's selection is then passed to the execution plan generation module (S3300).
[0143] Step S4000 is the execution plan generation and update step. The execution plan generation module generates a new execution plan based on the user's selection (S4100). The JSON generation and update module executes the generated execution plan and compares it with the previous execution results (S4200). A large-scale language model (LLM) is used to combine user information, questions, and intents to generate customized JSON meta data (S4300). If the comparison results indicate that the new execution plan yields better results, the data, parameters, and execution plan for the relevant domain are updated (S4400).
[0144] Step S5000 is the database query generation and data retrieval stage. The optimal database generation module (i-META) generates an appropriate SQL query based on the generated JSON META (S5100). The generated SQL query retrieves data from the database (S5200). The retrieved data is then provided to the user in an appropriate format (S5300).
[0145]
[0146] The characteristic actions of the method for creating a domain-based user-tailored database according to the question and intent classification of the present disclosure are as follows:
[0147] The method for creating a domain-based, user-tailored database based on the question and intent classification of the present disclosure enables user-tailored data retrieval. By combining user information, questions, and intents to generate personalized SQL queries, data tailored to each user's role and needs can be efficiently retrieved.
[0148] The method for creating a domain-based, user-tailored database based on the question and intent classification of this disclosure enables continuous improvement of execution plans. By continuously updating the execution plan through user interaction and comparison of results, the system's performance and accuracy are improved.
[0149] The method for creating a domain-based, user-tailored database based on the question and intent classification of the present disclosure can utilize a large-scale language model (LLM). Using a large-scale language model (LLM) increases the accuracy of understanding natural language questions and understanding intent, enabling the accurate processing of even complex questions.
[0150] The method for creating a domain-based, user-customized database based on the question and intent classification of the present disclosure can perform domain-based processing. By classifying questions and determining domains using a vector database (DB), the database tables and fields appropriate for the question are accurately identified.
[0151] The method for creating a domain-based, user-customized database based on the questions and intent classification of the present disclosure enables automated SQL generation. It automatically generates complex SQL queries using JSON META and the i-META module, thereby improving the efficiency and accuracy of database queries.
[0152]
[0153] An example scenario of a method for creating a domain-based user-tailored database according to the question and intent classification of the present disclosure is as follows:
[0154] 1. Enter a question: The user enters the question, "Tell me about my customer's sales trend last quarter."
[0155] 2. Intent Identification: The intent classification module classifies the user's intent into SQL generation and passes the question to the question classification module.
[0156] 3. Determine the question classification and domain (meta):
[0157] o The question classification module determines that the question belongs to the “Sales Data” domain (meta).
[0158] o The domain determination module determines the domain (meta) based on this.
[0159] 4. Basic Execution: The execution module executes the basic execution plan to retrieve the entire sales data.
[0160] 5. User Interaction:
[0161] o The user interaction module asks the user to select additional data (e.g. period, department, etc.).
[0162] o The user selects “Last Quarter” and “Our Customers.”
[0163] 6. Create and update the execution plan:
[0164] o The execution plan generation module generates a new execution plan that reflects the user's selection.
[0165] o The JSON generation and update module executes a new execution plan and compares it with the previous results to obtain more accurate results.
[0166] o If the result is better, update the execution plan for that domain.
[0167] 7. Create SQL queries and retrieve data:
[0168] o The optimal database generation module (i-META) generates the final SQL query.
[0169] o Retrieves data from the database and provides the results to the user.
[0170]
[0171] The configuration and operation of the system and method for creating a domain-based user-customized database according to the question and intent classification of the present disclosure are to implement a user-friendly and efficient data retrieval system by integrating natural language processing technology and user information management technology.
[0172] This allows users to quickly and accurately retrieve desired data in natural language without having to understand complex SQL syntax or database structures, and the system continuously learns and improves through interaction with users.
[0173]
[0174] The system and method for creating a domain-based user-customized database according to the question and intent classification of the present disclosure provide an AI system and method capable of efficiently retrieving data by automatically creating a user-customized SQL query based on a user question entered in natural language, thereby having the following effects:
[0175]
[0176] 1. Improved user convenience
[0177] o Natural language query support: Users can query desired data in natural language without knowledge of complex SQL syntax or database structure.
[0178] o Improve user interaction: Improve the user experience by asking users to select additional data and parameters, and provide more accurate information when needed.
[0179]
[0180] 2. Providing personalized data
[0181] o Leverage user information: By combining user information (department, past query history, etc.) with questions and intent, it generates personalized SQL queries to provide optimal data tailored to each user's role and needs.
[0182] o Create customized execution plans: Enables personalized data retrieval through execution plans that reflect the user's choices and preferences.
[0183]
[0184] 3. Improved data retrieval efficiency and accuracy
[0185] o Utilizing large-scale language models (LLM): Large-scale language models (LLM) can increase the accuracy of understanding and intent identification of natural language questions, enabling accurate processing of even complex questions.
[0186] o Domain-based processing: Accurately identify appropriate database tables and fields through question classification and domain determination using a vector database (Vector DB), thereby improving the efficiency and accuracy of data retrieval.
[0187]
[0188] 4. Continuous improvement of the implementation plan
[0189] o Continuous learning and updating: Improves system performance and accuracy by continuously updating execution plans through user interactions and comparison of execution results.
[0190] o Implementing an adaptive system: The system automatically optimizes itself by flexibly responding to changing user needs and data environments.
[0191]
[0192] 5. Increase work efficiency and productivity
[0193] o Reduce data access time: Streamline business processes and speed up decision-making by reducing the time required to retrieve data.
[0194] o Improved user satisfaction: Users can receive the information they want quickly and accurately, which increases their job satisfaction.
[0195]
[0196] 6. Strengthening data security and access control
[0197] o Permission-based access control: Prevent unauthorized access to sensitive data and maintain data security and integrity through user permissions and access control.
[0198] o Compliance with data management policies: Comply with corporate data management policies through access control based on user information and query content.
[0199]
[0200] 7. Improved user experience
[0201] o Improved interface intuitiveness: Natural language queries and user interaction improve usability and reduce the learning curve.
[0202] o Support for additional features: Provides additional features such as auto-completion and recommended queries to enhance user convenience.
[0203]
[0204] Therefore, the system and method for creating a domain-based user-customized database according to the question and intent classification of the present disclosure can improve accessibility and efficiency of data utilization, and contribute to improving work productivity and strengthening data security by implementing a user-friendly and efficient data retrieval system by integrating natural language processing technology and user information management technology.
[0205]
[0206] FIG. 7 illustrates a general schematic diagram of an exemplary computing environment in which embodiments of the present disclosure may be implemented.
[0207] Referring to the description of FIG. 7, the computer program, when executed by one or more processors, can cause the user to perform an action for authorization.
[0208] Additionally, a computer-readable medium storing a data structure according to one embodiment of the present disclosure is disclosed.
[0209] A data structure can refer to the organization, management, and storage of data to enable efficient access and modification. A data structure can refer to the organization of data to solve a specific problem (e.g., data retrieval, data storage, or data modification in the shortest possible time). A data structure can also be defined as the physical or logical relationships between data elements designed to support specific data processing functions. The logical relationships between data elements can include connections between user-defined data elements. The physical relationships between data elements can include actual relationships between data elements physically stored on a computer-readable storage medium (e.g., persistent storage). Specifically, a data structure can include a collection of data, relationships between data, and functions or commands applicable to the data. An effectively designed data structure allows a computing device to perform operations while minimizing the use of its resources. Specifically, a computing device can improve the efficiency of operations, reading, inserting, deleting, comparing, exchanging, and searching through an effectively designed data structure.
[0210] Data structures can be categorized as linear or nonlinear, depending on their form. A linear data structure can be a structure in which only one data item is linked to the next. Linear data structures can include lists, stacks, queues, and deques. A list can refer to a series of data items with an internal order. Lists can also include linked lists. A linked list is a data structure in which data items are linked in a single line, each with a pointer. In a linked list, a pointer can contain information about the next or previous item. Linked lists can be expressed as singly linked lists, doubly linked lists, or circular linked lists, depending on their form. A stack can be a data list structure with limited data access. A stack can be a linear data structure in which data operations (e.g., insertion or deletion) can only be performed at one end of the data structure. Data stored in a stack can be a Last-in-First-out (LIFO) data structure. A queue is a data structure with limited access to data. Unlike a stack, it can be a first-in, first-out (FIFO) data structure, with later data being retrieved later. A deck can be a data structure that can process data at both ends.
[0211] A nonlinear data structure can be a structure in which multiple pieces of data are connected behind a single piece of data. Nonlinear data structures can include graph data structures. A graph data structure can be defined by vertices and edges, and an edge can include a line connecting two different vertices. Graph data structures can include tree data structures. A tree data structure can be a data structure in which there is only one path connecting two different vertices among multiple vertices included in the tree. In other words, it can be a data structure that does not form a loop in a graph data structure.
[0212] A data structure may include data input to a neural network. A data structure including data input to a neural network may be stored on a computer-readable medium. The data input to a neural network may include training data input during a neural network training process and / or input data input to a neural network after training has been completed. The data input to a neural network may include data that has undergone preprocessing and / or data that is the target of preprocessing. Preprocessing may include a data processing process for inputting data to a neural network. Accordingly, the data structure may include data that is the target of preprocessing and data generated by preprocessing. The above-described data structure is merely an example, and the present disclosure is not limited thereto.
[0213] The data structure may include weights of the neural network. (In this specification, the terms "weight" and "parameter" may be used interchangeably.) The data structure including the weights of the neural network may be stored in a computer-readable medium. The neural network may include a plurality of weights. The weights may be variable and may be varied by a user or an algorithm so that the neural network can perform a desired function. For example, when one or more input nodes are interconnected to one output node by respective links, the output node may determine a data value output from the output node based on values input to the input nodes connected to the output node and weights set for links corresponding to each input node. The above-described data structure is merely an example, and the present disclosure is not limited thereto.
[0214] Although the present disclosure has been described above as being generally implemented by a computing device, those skilled in the art will appreciate that the present disclosure may be implemented in combination with computer-executable instructions and / or other program modules that may be executed on one or more computers and / or as a combination of hardware and software.
[0215] Generally, program modules include routines, programs, components, data structures, and the like that perform particular tasks or implement particular abstract data types. Furthermore, those skilled in the art will appreciate that the methods of the present disclosure can be implemented with other computer system configurations, including single-processor or multiprocessor computer systems, minicomputers, mainframe computers, as well as personal computers, handheld computing devices, microprocessor-based or programmable consumer electronics, and the like, each of which may be operatively connected to one or more associated devices.
[0216] The described embodiments of the present disclosure can also be implemented in a distributed computing environment, where remote processing devices are connected through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
[0217] Computers typically include a variety of computer-readable media. Computer-readable media can be any media that can be accessed by a computer, and includes both volatile and nonvolatile media, transitory and non-transitory media, removable and non-removable media. By way of example, and not limitation, computer-readable media can include computer-readable storage media and computer-readable transmission media. Computer-readable storage media includes both volatile and nonvolatile media, transitory and non-transitory media, removable and non-removable media implemented in any method or technology for storing information such as computer-readable instructions, data structures, program modules, or other data. Computer-readable storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital video disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be accessed by a computer and used to store the desired information.
[0218] Computer-readable transmission media typically embodies computer-readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and includes any information delivery medium. The term modulated data signal means a signal that has one or more of its characteristics set or changed so as to encode information in the signal. By way of example, and not limitation, computer-readable transmission media includes wired media, such as a wired network or direct-wired connection, and wireless media, such as acoustic, RF, infrared, or other wireless media. Combinations of any of the above are also intended to be included within the scope of computer-readable transmission media.
[0219] An exemplary environment (1100) implementing various aspects of the present disclosure is illustrated, including a computer (1102) comprising a processing unit (1104), system memory (1106), and a system bus (1108). The system bus (1108) connects system components, including but not limited to the system memory (1106), to the processing unit (1104). The processing unit (1104) may be any of a variety of commercially available processors. Dual processors and other multiprocessor architectures may also be utilized as the processing unit (1104).
[0220] The system bus (1108) may be any of several types of bus structures that may be additionally interconnected to a memory bus, a peripheral bus, and a local bus using any of a variety of commercial bus architectures. The system memory (1106) includes read-only memory (ROM) (1110) and random access memory (RAM) (1112). A basic input / output system (BIOS) is stored in non-volatile memory (1110), such as ROM, EPROM, or EEPROM, and includes basic routines that help transfer information between components within the computer (1102), such as during start-up. The RAM (1112) may also include high-speed RAM, such as static RAM, for caching data.
[0221] The computer (1102) also includes an internal hard disk drive (HDD) (1114) (e.g., EIDE, SATA) - which may also be configured for external use within a suitable chassis (not shown), a magnetic floppy disk drive (FDD) (1116) (e.g., for reading from or writing to a removable diskette (1118)), and an optical disk drive (1120) (e.g., for reading from or writing to a CD-ROM disk (1122) or other high-capacity optical media such as a DVD). The hard disk drive (1114), the magnetic disk drive (1116), and the optical disk drive (1120) may be connected to the system bus (1108) by a hard disk drive interface (1124), a magnetic disk drive interface (1126), and an optical drive interface (1128), respectively. The interface (1124) for implementing an external drive includes at least one or both of USB (Universal Serial Bus) and IEEE 1394 interface technologies.
[0222] These drives and their associated computer-readable media provide non-volatile storage of data, data structures, computer-executable instructions, and the like. In the case of the computer (1102), the drives and media correspond to storing any data in a suitable digital format. While the description of computer-readable media above refers to HDDs, removable magnetic disks, and removable optical media such as CDs or DVDs, those skilled in the art will appreciate that other types of computer-readable media, such as zip drives, magnetic cassettes, flash memory cards, cartridges, and the like, may also be used in the exemplary operating environment, and that any such media may contain computer-executable instructions for performing the methods of the present disclosure.
[0223] A number of program modules, including an operating system (1130), one or more application programs (1132), other program modules (1134), and program data (1136), may be stored in the drive and RAM (1112). All or portions of the operating system, applications, modules, and / or data may also be cached in RAM (1112). It will be appreciated that the present disclosure may be implemented in various commercially available operating systems or combinations of operating systems.
[0224] A user may enter commands and information into the computer (1102) via one or more wired / wireless input devices, such as a keyboard (1138) and a pointing device such as a mouse (1140). Other input devices (not shown) may include a microphone, an IR remote control, a joystick, a game pad, a stylus pen, a touch screen, and the like. These and other input devices are often connected to the processing unit (1104) via an input device interface (1142) that is connected to the system bus (1108), but may be connected by other interfaces such as a parallel port, an IEEE 1394 serial port, a game port, a USB port, an IR interface, and the like.
[0225] The term "user input" in this disclosure may refer to any form of user input related to a user request performed within a user interface (or within a web page). For example, user input may include user input for moving a pointer object. As another example, user input may include user input for selecting a specific object on the user interface. For example, user input for an object (e.g., a module, a tab, etc.) may be made by touching or clicking on the object. When user input related to selection is received, a new object may be displayed on the user interface or web page in response to the input, or the properties of the object may be changed and displayed.
[0226] As another example, user input may include information such as language, letters, numbers, and symbols entered through various input methods. User input is not limited to the examples described above, and various user actions are possible, such as mouse cursor control, mouse wheel scrolling, keyboard arrow keys, mouse clicks, and touch.
[0227] A monitor (1144) or other type of display device is also connected to the system bus (1108) via an interface such as a video adapter (1146). In addition to the monitor (1144), the computer typically includes other peripheral output devices (not shown) such as speakers, printers, and the like. For example, the monitor (1144) or other type of display device may include at least one of a liquid crystal display (LCD), a thin film transistor-liquidcrystal display (TFT LCD), an organic light-emitting diode (OLED), a flexible display, a 3D display, and an e-ink display. The display unit outputs (displays) data processed by the processor (110).
[0228] The computer (1102) may operate in a networked environment using logical connections to one or more remote computers, such as remote computer(s) (1148) via wired and / or wireless communications. The remote computer(s) (1148) may be a workstation, a computing device computer, a router, a personal computer, a portable computer, a microprocessor-based entertainment device, a peer device, or other conventional network node, and typically include many or all of the components described for the computer (1102), but for simplicity, only the memory storage device (1150) is shown. The logical connections shown include wired / wireless connections to a local area network (LAN) (1152) and / or a larger network, such as a wide area network (WAN) (1154). These LAN and WAN networking environments are common in offices and companies, facilitating enterprise-wide computer networks such as intranets, all of which can be connected to computer networks worldwide, such as the Internet.
[0229] When used in a LAN networking environment, the computer (1102) is connected to a local network (1152) via a wired and / or wireless communication network interface or adapter (1156). The adapter (1156) may facilitate wired or wireless communications to the LAN (1152), which may also include a wireless access point installed therein for communicating with the wireless adapter (1156). When used in a WAN networking environment, the computer (1102) may include a modem (1158), or may be connected to a communications computing device on the WAN (1154), or have other means for establishing communications over the WAN (1154), such as via the Internet. The modem (1158), which may be internal or external and wired or wireless, is connected to the system bus (1108) via a serial port interface (1142). In a networked environment, program modules or portions thereof described for the computer (1102) may be stored in a remote memory / storage device (1150). It will be appreciated that the network connections depicted are exemplary and other means of establishing a communications link between the computers may be used.
[0230] The computer (1102) operates to communicate with any wireless device or object that is arranged and operates via wireless communication, such as a printer, a scanner, a desktop and / or portable computer, a portable data assistant (PDA), a communication satellite, any equipment or location associated with a radio-detectable tag, and a telephone. This includes at least Wi-Fi and Bluetooth wireless technologies. Accordingly, the communication may be a predefined structure as in a conventional network, or may simply be an ad hoc communication between at least two devices.
[0231] Wi-Fi (Wireless Fidelity) enables connections to the Internet and other devices without wires. Wi-Fi is a wireless technology that allows devices, such as computers, to send and receive data anywhere within the coverage area of a base station, both indoors and outdoors, similar to cell phones. Wi-Fi networks use wireless technologies called IEEE 802.11 (a, b, g, etc.) to provide secure, reliable, and high-speed wireless connections. Wi-Fi can be used to connect computers to each other, to the Internet, and to wired networks (using IEEE 802.3 or Ethernet). Wi-Fi networks can operate in the unlicensed 2.4 and 5 GHz radio bands, at data rates of, for example, 11 Mbps (802.11a) or 54 Mbps (802.11b), or in products that include both bands (dual-band).
[0232] Those skilled in the art will appreciate that information and signals may be represented using any of a variety of different technologies and techniques. For example, the data, instructions, commands, information, signals, bits, symbols, and chips referenced in the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
[0233] In addition, the computer (1102) may be implemented as a user terminal. Therefore, the method according to one embodiment of the present disclosure can be borrowed without limitation for a terminal as hardware capable of loading software. The user terminal described in the present disclosure may include a mobile phone, a smart phone, a laptop computer, a digital broadcasting terminal, a personal digital assistant (PDA), a portable multimedia player (PMP), a navigation device, a slate PC, a tablet PC, an ultrabook, a wearable device (e.g., a smartwatch, a smart glass, a head mounted display (HMD)), and the like. In addition, the user terminal may include, but is not limited to, a device capable of inputting and outputting data by a user, a device capable of displaying data to the user, and a device capable of wired / wireless communication. For example, the computing device (100) may be a desktop, a laptop, a tablet PC, a portable terminal, and the like.
[0234] Those skilled in the art will appreciate that the various illustrative logical blocks, modules, processors, means, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, various forms of programs or design code (referred to herein, for convenience, as software), or a combination of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Those skilled in the art may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
[0235] The various embodiments presented herein can be implemented as a method, apparatus, or article of manufacture using standard programming and / or engineering techniques. The term article of manufacture includes a computer program, carrier, or media accessible from any computer-readable storage device. For example, computer-readable storage media include, but are not limited to, magnetic storage devices (e.g., hard disks, floppy disks, magnetic strips, etc.), optical disks (e.g., CDs, DVDs, etc.), smart cards, and flash memory devices (e.g., EEPROMs, cards, sticks, key drives, etc.). Furthermore, various storage media presented herein include one or more devices and / or other machine-readable media for storing information.
[0236] It should be understood that the specific order or hierarchy of steps in the presented processes is merely an example of exemplary approaches. It should be understood that the specific order or hierarchy of steps in the processes may be rearranged within the scope of the present disclosure based on design priorities. The appended method claims provide elements of various steps in a sample order, but are not intended to be limited to the specific order or hierarchy presented.
[0237] The description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments without departing from the scope of the present disclosure. Therefore, the present disclosure is not intended to be limited to the embodiments disclosed herein, but is to be construed in the broadest scope consistent with the principles and novel features disclosed herein.
[0238] [Explanation of symbols]
[0239] 10: Question Reception Module
[0240] 20: Intent Classification Module
[0241] 30: Question Classification Module
[0242] 40: Domain Determination Module
[0243] 50: Execution module
[0244] 60: User Interaction Module
[0245] 70: Execution Plan Generation Module
[0246] 80: Jason Create and Update Module
[0247] 90: Optimal Database Generation Module
Claims
1. A question receiving module that receives questions in natural language through a user interface; An intent classification module that utilizes user information and uses a large-scale language model to identify and classify the intent of the user's question; A question classification module that uses a natural language processing engine and a vector database to determine whether a question belongs to a predefined domain; A domain decision module consisting of a domain mapping table and a decision algorithm, which determines an appropriate domain based on the analyzed question; and Consisting of a basic execution plan and a database connection module, and including an execution module that establishes and executes a basic execution plan based on domain decision information; A system for creating domain-based, user-defined databases based on question and intent classification.
2. In claim 1, the intent classification module, Combine received questions and user information to classify user intent, The user's intent consists of at least one of the following: everyday conversation, generating SQL, calling an API, or saving a directive. A system for creating domain-based, user-defined databases based on question and intent classification.
3. In claim 1, the execution module, Establish a basic execution plan based on the domain information passed from the domain decision module, Retrieve relevant data and parameters and execute the execution plan. Temporarily store the basic execution results and use them for comparison in later stages. A system for creating domain-based, user-defined databases based on question and intent classification.
4. In claim 1, the system, Ask the user to select data and parameters related to the question, depending on the basic execution results of the execution module or the need for additional information. Receives user selection or input and passes it to the execution plan generation module. A user interaction module comprising a user interface and input processing logic and interacting with a user for selecting additional data or parameters; A system for creating domain-based, user-defined databases based on question and intent classification.
5. In claim 1, the system, Generate a new execution plan based on the data and parameters of user selection received from the user interaction module, The execution plan contains an optimized query structure for retrieving data from the database. An execution plan generation module comprising an execution plan generation engine and an optimization algorithm, and further comprising a new execution plan according to user selection; A system for creating domain-based, user-defined databases based on question and intent classification.
6. In claim 1, the system, Execute the new execution plan passed from the execution plan generation module, Evaluate the performance and superiority of the results by comparing the execution results with the previous baseline execution results. Generate personalized JSON meta by combining user information, questions, and intent using large-scale language models. If the comparison results show that the new execution plan has better results, the data, parameters, and execution plan of the domain are updated to realize system learning and optimization. A Jason generation and update module comprising a Jason generator and a result comparison algorithm and executing a new execution plan to generate and update the Jason meta; A system for creating domain-based, user-defined databases based on question and intent classification.
7. In claim 1, the system, Generates appropriate database queries based on custom JSON meta generated by the Create and Update Jason module. The generated database queries are optimized to retrieve the required data from the database. The generated database query is passed to the database to retrieve the final data. An optimal database generation module comprising a database generation engine and a metadata parser, and further including an optimized database query based on JSON metadata to retrieve data from the database; A system for creating domain-based, user-defined databases based on question and intent classification.
8. A question receiving and intent identification step in which a question receiving module receives a natural language question entered by a user, and an intent classification module identifies the user's intent by utilizing user information and a large-scale language model; Question classification and domain determination step, in which the question classification module analyzes the question and checks whether the question belongs to a predefined domain through a vector database search, and the domain determination module determines the domain of the question based on the question classification result; Basic execution and user interaction phases in which the execution module executes a basic execution plan corresponding to the determined domain to retrieve initial data, and the user interaction module requests the user to select additional data and parameters; An execution plan generation and update step in which the execution plan generation module generates a new execution plan based on the user's selection and updates the execution plan by comparing it with the previous execution results; The optimal database generation module generates a suitable database query based on the generated JSON meta; and The generated database query includes a database query generation and data retrieval step for retrieving data from a database; A method for creating domain-based user-defined databases based on question and intent classification.
9. A computer program stored in a computer-readable storage medium, wherein the computer program, when executed by one or more processors, performs a method for creating a domain-based user-customized database according to question and intent classification, the method comprising: A question receiving and intent identification step in which a question receiving module receives a natural language question entered by a user, and an intent classification module identifies the user's intent by utilizing user information and a large-scale language model; Question classification and domain determination step, in which the question classification module analyzes the question and checks whether the question belongs to a predefined domain through a vector database search, and the domain determination module determines the domain of the question based on the question classification result; Basic execution and user interaction phases in which the execution module executes a basic execution plan corresponding to the determined domain to retrieve initial data, and the user interaction module requests the user to select additional data and parameters; An execution plan generation and update step in which the execution plan generation module generates a new execution plan based on the user's selection and updates the execution plan by comparing it with the previous execution results; The optimal database generation module generates a suitable database query based on the generated JSON meta; and The generated database query includes a database query generation and data retrieval step for retrieving data from a database; A computer program stored on a computer-readable storage medium.
Citation Information
Patent Citations
Method, computer device and computer readable recording medium for multi domain service resolving the mixture of multi-domain intents in interactive ai agent system
KR101891498B1
Knowledge capture and discovery system
KR1020150145231A
Surface modification method of microcapsules using microcracks and modified microcapsules using the same method
KR1020220133009A
Robot safety monitoring system
KR1020230057649A
Formulating a response to a natural language query based on user intent
US20190272328A1
Cited By
Intelligent formula and SQL (Structured Query Language) generation method and equipment based on large language model, medium and program product
CN121597704A