Apparatus and system for providing question-based data service, and method thereof
Patent Information
- Application Number
- PCT/KR2024/018378
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-11-12
- Filing Date
- 2024-11-20
- Publication Date
- 2025-07-17
AI Technical Summary
Conventional natural language question answering systems fail to provide personalized and optimized database query results due to their inability to reflect individual user profiles and past interactions, leading to inaccurate queries and inefficiencies in processing complex data retrieval tasks.
A device, system, and method that utilize question classification and user profiling to generate optimized database queries through a large-scale language model, ensuring personalized responses and efficient data retrieval by considering user profiles, authority, and past queries.
The solution achieves higher accuracy and efficiency in user queries, improves database query performance through automation and optimization, and effectively processes complex natural language questions, resulting in maximized database query processing performance and enhanced user experience.
Smart Images

Figure KR2024018378_17072025_PF_FP_ABST
Abstract
Description
Device, system and method for providing question-based data service
[0001] The present disclosure relates to the field of natural language processing (NLP), and relates to a device, system and method for providing a question-based data service that optimizes a database query process through question classification, user profiling, and optimized database query generation using a large-scale language model (LLM). Specifically, the present disclosure provides a device, system and method for providing a question-based data service that provides a data service using a group of questioners, provides personalized responses by extracting metadata from a vector database, and ensures efficient data retrieval.
[0002] Modern businesses accumulate vast amounts of data, and effectively managing and analyzing this data is emerging as a key element of corporate competitiveness. Most database systems provide a uniform metadata structure to all users.
[0003] Patent Document 1 (Republic of Korea Patent Publication No. 10-2094934) discloses a natural language question answering system and method that analyzes sentences or paragraphs in an unstructured document, classifies and indexes the document according to meaning, and provides a response to a query.
[0004] These conventional natural language question-answering systems and methods primarily focus on analyzing users' natural language queries and converting them into database query language. However, most conventional natural language question-answering systems do not reflect individual user profiles or past interactions, and instead provide identical results to all users for the same question, making it difficult to create customized queries and achieving optimized results. Furthermore, simply converting natural language questions into a structured query language may not adequately reflect complex context or semantics. For example, the system may not correctly interpret polysemy or complex questions, resulting in inaccurate queries. Furthermore, conventional natural language question-answering systems are primarily useful for simple queries or basic data retrieval, and are inadequate for complex data retrieval or advanced queries that integrate multiple data sources. Furthermore, they have limitations in handling unclear user-defined conditions or ambiguous questions.
[0005] Meanwhile, there has been a recent increase in attempts to utilize artificial intelligence and machine learning technologies to enhance database management and data analysis. Natural language processing (NLP)-based question-and-answer systems are being developed that utilize these technologies to understand users' natural language queries and provide relevant data. However, these systems often fail to adequately reflect user intent and domain information. Recommendation systems that analyze user behavior patterns and recommend necessary information have been introduced, but these systems have primarily focused on content consumption. Furthermore, while automated tuning tools exist to improve database query performance, they fall short of providing personalized data to users.
[0006] [Prior Art Literature]
[0007] [Patent Document]
[0008] (Patent Document 1) Republic of Korea Patent Publication No. 10-2094934
[0009] (Patent Document 2) Republic of Korea Patent Publication No. 10-1987915
[0010] The present disclosure has been made in response to the aforementioned background technology, and provides a device, a system, and a method for providing a question-based data service.
[0011] In other words, the database comparison system and method based on question classification and questioner classification of the present disclosure aims to develop a transformation matrix system for user-tailored data retrieval. This system provides greater accuracy and efficiency for user queries, and improves database query performance through system automation and optimization. Specifically, the system aims to automatically generate optimal database queries tailored to the unique contexts and needs of each user.
[0012] Another object of the present invention is to provide a device and method for providing a data service using a group of questioners.
[0013] 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.
[0014] In order to solve the above-described problem, a method performed by a computing device according to some embodiments of the present disclosure for achieving the above-described object includes a database comparison device by question classification and questioner classification, including a processor; and a memory storing at least one command executed by the processor; wherein the at least one command may be configured to cause the processor to perform: a question reception and interpretation step of receiving a question written by a user in natural language and converting the question into a form understandable by a machine; a natural language processing step of analyzing the question to determine its meaning and extracting keywords or context within the question and converting the same into a form that can be queried against a database; and a database query generation step of generating a database query based on the extracted keywords and the analyzed context and returning a result from the database.
[0015] A database comparison system based on question classification and questioner classification according to one aspect of the present disclosure may include a question reception and classification module that receives and analyzes a natural language question entered by a user and classifies the type of the question; a user profiling and questioner classification module that generates a user-tailored query based on the user's profile and past interaction records; a metadata search and large-scale language model linking module that searches a vector database for metadata matching the question after the question has been classified; a database comparison and generation module that automatically generates an optimized database query based on the meta-language generated from the large-scale language model linking module; and a data processing and output module that transmits the generated database query to a database to search for a result, and provides a response in a format suitable for the user by converting the data processed through the data processing module.
[0016] The question reception and classification module determines whether the question corresponds to a data retrieval, calculation request, or report generation task, and can identify the appropriate question type based on the user's intent and requirements.
[0017] The user profiling and query classification module can generate optimized queries for each user by analyzing information about what data the user has previously requested and how the data has been processed.
[0018] The metadata retrieval and large-scale language model linking module inputs the retrieved metadata into a large-scale language model (LLM) to convert it into a meta-language, and the large-scale language model (LLM) can then generate a response appropriate to the question based on this.
[0019] The database comparison and generation module automatically generates optimized database queries based on a meta language generated from a large-scale language model (LLM), optimizes database queries by considering the user's profile, authority, past queries, and interaction history, and generates an improved database that provides improved performance and accuracy through comparative analysis with the user's previous queries.
[0020] A method for comparing databases by question classification and questioner classification according to another aspect of the present disclosure may include a question reception and interpretation step of receiving a question written by a user in natural language and converting the question into a form that a machine can understand; a natural language processing step of analyzing the question to determine its meaning, extracting keywords or context within the question, and converting the question into a form that can be queried against a database; and a database query generation step of generating a database query based on the extracted keywords and analyzed context and returning a result from the database.
[0021] According to another aspect of the present disclosure, a method for comparing databases by question classification and questioner classification is performed by a computing device including at least one processor, and may include a question reception and interpretation step of receiving a question written by a user in natural language and converting the question into a form understandable by a machine; a natural language processing step of analyzing the question to understand its meaning, extracting keywords or context within the question, and converting the question into a form that can be queried against a database; and a database query generation step of generating a database query based on the extracted keywords and the analyzed context, and returning a result from the database.
[0022] The above method may further include a result provision step in which the final result based on the metadata is delivered to the user in real time in a streaming manner.
[0023] According to another aspect of the present disclosure, a computer program stored in a computer-readable storage medium is a computer program stored in a computer-readable storage medium, wherein the computer program, when executed by one or more processors, performs a database comparison method by question classification and questioner classification, the method including: a question reception and interpretation step of receiving a question written by a user in natural language and converting the question into a form understandable by a machine; a natural language processing step of analyzing the question to determine its meaning, extracting keywords or context within the question, and converting the same into a form that can be queried against a database; and a database query generation step of generating a database query based on the extracted keywords and the analyzed context and returning a result from the database.
[0024] A method for providing a data service according to an embodiment of the present invention comprises the steps of: when a user question written in natural language is received from a user device according to a user input, a natural language processing unit extracts keyword information from the user question; a DB analysis unit searches a database for a plurality of items including tables, columns, and data of a search target based on the user's entity information and the keyword information to create a search target list, and calculates a search similarity score between the keyword information and the plurality of items of the search target list; an execution unit provides the search target list to the user device and receives item information indicating an item selected by the user from the search target list from the user device; a step of the execution unit generating a query using a natural language processing model (NLP) based on the item selected by the user and executing the generated query; a step of a questioner group processing unit identifying a questioner group to which the user question belongs based on the entity information, the search similarity score, the item information, and time information, which is a time taken by the user to select an item from the search target list; and a step of a matching unit deriving a customized question list including a plurality of similar questions having a similarity with the user question of a predetermined value or higher from the question list of the questioner group and providing the list to the user device. Includes.
[0025] The method further includes, before the step of extracting the keyword information, a step of storing, by the questioner group processing unit, the entity information, the search similarity score, the item information, and the required time information corresponding to the plurality of user questions by mutually mapping them each time a user question written in natural language is received from a plurality of user devices, a step of generating a plurality of questioner vectors by the questioner group processing unit by mapping the entity information, the search similarity score, the item information, and the required time information corresponding to the plurality of user questions to a predetermined vector space, and a step of generating a plurality of questioner groups by performing clustering on the plurality of questioner vectors using a clustering algorithm.
[0026] The step of identifying the above questioner group includes a step in which the questioner group processing unit generates a questioner vector of the user question by mapping the entity information, the search similarity score, the item information, and the required time information corresponding to the user question to a predetermined vector space, and a step in which the questioner group processing unit identifies the questioner group to which the user question belongs based on the distance between the clustering center of a plurality of questioner groups and the questioner vector of the user question in the vector space.
[0027] The method further includes, after the step of providing to the user device, a step of receiving feedback information, which is information on the user's preference or dislike for each of the plurality of similar questions in the customized question list, from the user device by the feedback processing unit, and a step of retraining a natural language processing model (NLP) by the feedback processing unit using the feedback information from the user device.
[0028] The step of executing the generated query includes a step in which the execution unit inputs the keyword information, the entity information, and the item information into a natural language processing model (NLP), a step in which the execution unit derives a JSON question script corresponding to the keyword information, the entity information, and the item information from the natural language processing model (NLP), a step in which the execution unit generates a query based on the JSON question script, and a step in which the execution unit executes the generated query.
[0029] A device for providing a data service according to an embodiment of the present invention includes: a natural language processing unit that extracts keyword information from a user question received in natural language according to a user input from a user device; a DB analysis unit that searches a database for a plurality of items including tables, columns, and data of search targets based on entity information of the user and the keyword information to create a search target list, and calculates a search similarity score between the keyword information and the plurality of items of the search target list; an execution unit that provides the search target list to the user device, receives item information indicating an item selected by the user from the search target list from the user device, generates a query using a natural language processing model (NLP) based on the item selected by the user, and executes the generated query; a questioner group processing unit that identifies a questioner group to which the user question belongs based on the entity information, the search similarity score, the item information, and time required information, which is a time required for the user to select an item from the search target list; and a matching unit that derives a customized question list including a plurality of similar questions having a similarity level of a predetermined value or higher with the user question from the question list of the questioner group and provides the user device with the list.
[0030] The present disclosure has been devised in response to the aforementioned background technology, and the database comparison system and method based on question classification and questioner classification of the present disclosure provide the following effects in that they classify questions and questioners based on natural language questions, and thereby generate and compare optimized database queries to enable accurate and efficient data retrieval from a database.
[0031] The database comparison system and method based on question classification and questioner classification of the present disclosure provide personalized responses by generating SQL queries tailored to each user's needs through user profiling. This allows users to quickly obtain only the data they need.
[0032] The database comparison system and method by question classification and questioner classification of the present disclosure compare and analyze meta-language-based SQL queries generated through LLM and vector databases with previous queries, thereby continuously improving performance and enabling faster and more accurate data retrieval.
[0033] The database comparison system and method by question classification and questioner classification of the present disclosure can effectively process complex natural language questions and provide high-accuracy query generation even for questions containing polysemy or complex contexts.
[0034] The database comparison system and method by question classification and questioner classification of the present disclosure minimize unnecessary data searches through optimized SQL queries and shorten database processing time, thereby increasing the efficiency of the entire system.
[0035] Through this, the database comparison system and method by question classification and questioner classification of the present disclosure provide the effect of maximizing database query processing performance and significantly improving user experience.
[0036] According to the present disclosure, query accuracy and user convenience can be maximized by providing recommended questions according to the questioner group.
[0037] 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.
[0038] 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.
[0039] FIG. 1 is a block diagram illustrating a computing device according to one embodiment of the present disclosure.
[0040] FIG. 2 is a block diagram illustrating the configuration of a database comparison system based on question classification and questioner classification according to an embodiment of the present disclosure.
[0041] Figure 3 is a configuration diagram of a database comparison system based on question classification and questioner classification of the present disclosure.
[0042] FIG. 4 is a schematic diagram illustrating an example of the operation of a database comparison system based on question classification and questioner classification of the present disclosure.
[0043] FIG. 5 is a flowchart illustrating information processing of a database comparison system based on question classification and questioner classification of the present disclosure.
[0044] Figure 6 is a flowchart illustrating a database comparison method by question classification and questioner classification of the present disclosure.
[0045] FIG. 7 illustrates a general schematic diagram of an exemplary computing environment in which embodiments of the present disclosure may be implemented.
[0046] FIG. 8 is a diagram for explaining the configuration of a system for providing data services according to an embodiment of the present disclosure.
[0047] FIG. 9 is a drawing for explaining the configuration of a device for providing a data service according to an embodiment of the present disclosure.
[0048] FIG. 10 is a drawing for explaining a detailed configuration of a device for providing a data service according to an embodiment of the present disclosure.
[0049] FIG. 11 is a flowchart illustrating a method for collecting data to form a group of questioners in a data provision service according to an embodiment of the present disclosure.
[0050] FIG. 12 is a flowchart illustrating a method for generating multiple groups of questioners in a data provision service according to an embodiment of the present disclosure.
[0051] FIG. 13 is a flowchart illustrating a method for providing a data service using a group of questioners according to an embodiment of the present disclosure.
[0052] FIG. 14 is an exemplary diagram of a hardware system for implementing a device for providing a data service using a group of questioners according to one embodiment of the present disclosure.
[0053] 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.
[0054] 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).
[0055] 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.
[0056] Additionally, the terms “information” and “data” as used herein may often be used interchangeably.
[0057] 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.
[0058] 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.
[0059] 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."
[0060] 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.
[0061] 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”.
[0062] 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.
[0063] 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 construed in the widest scope consistent with the principles and novel features disclosed herein.
[0064] [Database comparison system and method based on question classification and questioner classification]
[0065] Hereinafter, FIGS. 1 to 7 describe a database comparison system and method based on question classification and questioner classification of the present disclosure.
[0066]
[0067] FIG. 1 is a block diagram illustrating a computing device according to one embodiment of the present disclosure.
[0068] 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).
[0069] A computing device (100) may include a processor (110), memory (130), and network unit (150).
[0070] 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.
[0071] 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).
[0072] 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).
[0073] 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.
[0074] 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).
[0075] 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.
[0076] 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.
[0077] The techniques described in this specification can be used in other networks as well as the networks mentioned above.
[0078] In this specification, the database may be controlled by at least one relational database management system (RDBMS) among ORACLE, PostgreSQL, MyDatabase, Database(SQL) Server (MS-Database(SQL)), or Database(SQL)ite. The database may be one in which data input and output are performed by database statements.
[0079] 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.
[0080] Additionally, the application may be associated with a database (SQL) statement that performs one or more of the following operations: Create, Read, Update, Delete (CRUD). Here, the database (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 database (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.
[0081] 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.
[0082] 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.
[0083]
[0084] Figure 2 is a block diagram of a database comparison system based on question classification and questioner classification of the present disclosure.
[0085] Referring to FIG. 2, the database comparison system by question classification and questioner classification of the present disclosure may be composed of a question reception and classification module (10), a user profiling and questioner classification module (20), a metadata search and large-scale language model linking module (30), a database comparison and generation module (40), and a data processing and output module (50).
[0086] The question reception and classification module (10) receives and analyzes natural language questions entered by the user, and classifies the type of question. It determines whether the question corresponds to various tasks such as data retrieval, calculation request, or report generation, and identifies the appropriate question type based on the user's intent and requirements. The transformation matrix (G-MATRIX) system receives the user's natural language questions, analyzes them, and classifies the type of question. Question classification is based on the user's intent and request, and determines whether the question corresponds to a task such as data retrieval, calculation request, or report generation.
[0087] The user profiling and questioner classification module (20) generates customized queries based on the questioner's (user's) profile and past interaction history. It analyzes information such as what data the user has previously requested and how the data has been processed to generate optimized queries for each user. The transformation matrix (G-MATRIX) system classifies appropriate questions using not only the user's questions but also their profile and past interaction history. This generates customized queries based on information about what data the user has previously requested and how the data has been processed.
[0088] The metadata retrieval and large-scale language model linking module (30) searches for metadata that matches the question in the vector database after the question has been classified. The searched metadata is input into the large-scale language model (LLM), which converts it into a meta-language and enables the generation of a response appropriate to the question. The transformation matrix (G-MATRIX) system searches for metadata that matches the question in the vector database after the question has been classified. The searched metadata is input into the LLM, which converts it into a meta-language, and the large-scale language model (LLM) generates a response appropriate to the question based on this.
[0089] The SQL comparison and generation module (40) automatically generates optimized database (SQL) queries based on a meta-language generated from a large-scale language model (LLM). This process optimizes queries by considering the user's profile, permissions, past queries, and interaction history, and generates database (SQL) queries with improved performance compared to previous queries.
[0090] The Transformation Matrix (G-MATRIX) system generates optimal database (SQL) queries based on meta-language responses generated from a large-scale language model (LLM). G-MATRIX optimizes database (SQL) queries by reflecting the user's profile, permissions, and past interactions. Through comparative analysis with the user's previous queries, it is possible to generate database (SQL) queries that offer better performance and accuracy.
[0091] The data processing and output module (50) transmits the generated database (SQL) query to the database, retrieves the results, and provides the processed data in a format suitable for the user. Through personalized responses, users can obtain the data they need accurately and quickly. The transformation matrix (G-MATRIX) system transmits the generated database (SQL) query to the database, retrieves the results, and then provides the response in a format suitable for the user through the data processing module. Through this, users can effectively obtain personalized results.
[0092]
[0093] The database comparison system based on question classification and questioner classification of the present disclosure belongs to the fields of Natural Language Processing (NLP), Large Language Model (LLM), database query optimization, and metadata processing using a vector database.
[0094] The database comparison system based on question classification and questioner classification of the present disclosure focuses on technologies related to user-tailored question processing and database (SQL) query generation and optimization, and provides a system that analyzes the questioner's past interactions and authority using a user profile and vector database, and utilizes metadata to convert natural language questions into optimal SQL. The database comparison system based on question classification and questioner classification of the present disclosure maximizes the efficiency of database search and result return by more accurately interpreting natural language questions and automatically generating optimized database (SQL) queries that meet the user's needs.
[0095]
[0096] Figure 3 is a configuration diagram of a database comparison system based on question classification and questioner classification of the present disclosure.
[0097] Referring to FIG. 3, the database comparison system by question classification and questioner classification 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.
[0098] In one embodiment, the database comparison system based on question classification and questioner classification of the present disclosure may be a system that processes user queries in natural language by converting them into a meta-language. 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.
[0099] The database comparison system by question classification and questioner classification 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).
[0100] A user (USER) enters a query into the system in natural language.
[0101] Transformation Matrix (G-MATRIX) converts natural language into meta-language and transmits the query content.
[0102] The Natural Language Processing (NLP) module receives meta-language queries, analyzes them, and provides meta-language responses accordingly. The NLP module may be a conversational AI service based on a GPT, such as Chat GPT.
[0103] The optimal database generation unit (i-META) receives meta language commands, generates an optimal SQL query, prepares a query response from the resulting data set, and sends the resulting response to the user (USER).
[0104] In one embodiment, the database comparison system based on question classification and questioner classification of the present disclosure, when a user enters a query in natural language, the system extracts key nouns and verbs through morphological analysis and processes them for similar words. The extracted information is converted into a meta-language, and an SQL query is automatically generated based on the extracted information. 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 process of query transmission, command transmission, and result reception, and the user ultimately receives the results processed in natural language.
[0105] 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.
[0106] The database comparison system based on question classification and questioner classification 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.
[0107]
[0108] FIG. 4 is a schematic diagram illustrating an example of the operation of a database comparison system based on question classification and questioner classification of the present disclosure.
[0109] Referring to Figure 4, the database comparison system based on question classification and questioner classification of the present disclosure analyzes user queries expressed in natural language, generates SQL queries based on these queries, 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 electrical business unit of a company.
[0110] In one embodiment, the database comparison system by question classification and questioner classification of the present disclosure may include the following components.
[0111] 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?"
[0112] 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."
[0113] The optimal database generation unit (i-META) converts natural language queries into meta language and optimizes the database (SQL) based on this meta language.
[0114] The natural language processing module (NLP) analyzes the user's natural language queries, extracts the necessary data, and converts it into meta-language.
[0115] In one embodiment, the database comparison system by question classification and questioner classification of the present disclosure may operate as follows.
[0116] 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.
[0117] 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.
[0118] The generated SQL query is passed to the database through the optimal database generation unit (i-META) and executed.
[0119] The execution results are organized in a data format such as Table A and provided to the user in the form of Template B.
[0120] In one embodiment, the database comparison system by question classification and questioner classification 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.
[0121] In one embodiment, the database comparison system by question classification and questioner classification of the present disclosure may provide an automated system that allows a user to request data in natural language and analyzes the data to convert it into an accurate SQL query.
[0122] In one embodiment, the database comparison system by question classification and questioner classification of the present disclosure may include a module optimized for generating SQL queries and retrieving data for a specific department or period.
[0123] In one embodiment, the resulting data of the database comparison system by question classification and questioner classification of the present disclosure can be provided in a user-customizable manner and can also generate visual reports through templates.
[0124] In one embodiment, the database comparison system based on question classification and questioner classification of the present disclosure may operate as follows. When a user enters a natural language query such as "Show sales of the electric power division this year," the system converts the query into "Sales of the electric power division of Company S from January 1, 2023 to today" and then executes an SQL query to produce results. These results are provided in the form of Table A and are displayed to the user as visualized data using Template B.
[0125] In one embodiment, the database comparison system by question classification and questioner classification of the present disclosure provides a convenient system that allows users to search for necessary data through natural language queries without having to understand a complex query language such as SQL, thereby enabling non-experts to easily access data and efficiently manage sales and create reports.
[0126]
[0127] FIG. 5 is a flowchart illustrating information processing of a database comparison system based on question classification and questioner classification of the present disclosure.
[0128] Referring to FIG. 5, a database comparison system based on question classification and questioner classification 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 database comparison system based on question classification and questioner classification according to the present disclosure can utilize learned metadata to generate SQL queries and provide results in real time.
[0129] In one embodiment, the database comparison system based on question classification and questioner classification 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.
[0130] In one embodiment, the database comparison system by question classification and questioner classification 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 an LLM (large-scale language model).
[0131] It receives natural language queries from users. For example, it includes queries like "What were the sales of the electric power division in 2023?"
[0132] 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.
[0133] 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.
[0134] 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.
[0135] The optimal database generation unit (i-META) configures templates based on metadata generated from the transformation matrix (G-MATRIX) and optimizes SQL queries.
[0136]
[0137] Figure 6 is a flowchart illustrating a database comparison method by question classification and questioner classification of the present disclosure.
[0138] Referring to FIG. 6, the database comparison method by question classification and questioner classification of the present disclosure may be composed of a question receiving and interpretation step (S1000), a natural language processing (NLP) step (S2000), and a database query generation step (S3000).
[0139] The question reception and interpretation step (S1000) receives a question written by a user in natural language and converts it into a form that the machine can understand.
[0140] The natural language processing (NLP) stage (S2000) analyzes the question to understand its meaning, extracts keywords and context within the question, and converts it into a form that can be queried against a database.
[0141] The database query generation step (S3000) generates a database query based on the extracted keywords and analyzed context and returns results from the database.
[0142]
[0143] In one embodiment, the database comparison method based on question classification and questioner classification of the present disclosure allows a user to input a query, such as "What were the sales of the electric power division in 2023?", and the system analyzes the query in an embedded vector store and generates metadata. The transformation matrix (G-MATRIX) executes an SQL query based on the generated metadata, and the optimal database generation unit (i-META) provides the user with an optimized template. This result is provided in real-time via streaming.
[0144] The database comparison method by question classification and questioner classification of the present disclosure can store meta information learned through a large-scale language model (LLM) in a vector store and provide an accurate response to a query based on the meta information.
[0145] The database comparison method by question classification and questioner classification of the present disclosure can provide a quick response by utilizing cache data related to a query, and can ensure accuracy by checking the cached data in real time.
[0146] The database comparison method based on question classification and questioner classification of the present disclosure can efficiently process data when a user continuously enters queries by considering correlations with previous queries. SQL queries can be automatically generated based on metadata, optimized, and executed on the database.
[0147] The database comparison method by question classification and questioner classification of the present disclosure can significantly shorten the data search and analysis process by processing natural language queries using a large-scale language model (LLM) and metadata and providing accurate data in real time, and can maximize efficiency through a cache function and a continuous query processing function.
[0148]
[0149] FIG. 7 illustrates a general schematic diagram of an exemplary computing environment in which embodiments of the present disclosure may be implemented.
[0150] Referring to FIG. 7, the computer program, when executed by one or more processors, can perform an action for user authorization.
[0151] Also disclosed is a computer-readable medium storing a data structure according to one embodiment of the present disclosure.
[0152] 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.
[0153] 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.
[0154] 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. A graph data structure can include a tree data structure. 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.
[0155] 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.
[0156] The data structure may include weights of a neural network. In this specification, the terms "weight" and "parameter" may be used interchangeably. Furthermore, a data structure including the weights of a neural network may be stored in a computer-readable medium. The neural network may include multiple 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, if one or more input nodes are interconnected to an output node by respective links, the output node may determine the data value output from the output node based on the values input to the input nodes connected to the output node and the weights set for the links corresponding to each input node. The above-described data structure is merely an example, and the present disclosure is not limited thereto.
[0157] 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.
[0158] 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.
[0159] 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.
[0160] 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.
[0161] 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.
[0162] 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).
[0163] 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.
[0164] 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.
[0165] 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.
[0166] 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.
[0167] 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.
[0168] 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.
[0169] 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.
[0170] 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).
[0171] 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.
[0172] 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), be connected to a communications computing device on the WAN (1154), or have other means of 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.
[0173] 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.
[0174] 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).
[0175] 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.
[0176] 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.
[0177] 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.
[0178] 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.
[0179] 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.
[0180] 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.
[0181]
[0182] [Device for providing data services using a group of questioners and method therefor]
[0183] Hereinafter, FIGS. 8 to 14 describe a device and a method for providing a data service using a group of questioners of the present disclosure.
[0184] Hereinafter, a system and device for providing data services according to an embodiment of the present disclosure will be described. FIG. 8 is a diagram illustrating the configuration of a system for providing data services according to an embodiment of the present disclosure. FIG. 9 is a diagram illustrating the configuration of a device for providing data services according to an embodiment of the present disclosure. FIG. 10 is a diagram illustrating the detailed configuration of a device for providing data services according to an embodiment of the present disclosure.
[0185] Referring to FIG. 8, the data service system according to the present embodiment is a system that performs a data service that generates a query through a natural language processing algorithm for a natural language question, executes the generated query, and provides an answer produced by the generated query.
[0186] The data service system includes a user device (10), a service server (20), and a model server (30).
[0187] The model server (30) is a server on which a natural language processing (NLP) model is executed. In the embodiment of the present disclosure, the model server (30) is depicted as a device separate from the service server (20), but the natural language processing (NLP) model may operate on the service server (20), and in this case, the model server (30) may operate as a component of the service server (20).
[0188] The user device (10), service server (20), and model server (30) can transmit and receive data via a communication network.
[0189] The user device (10) inputs a natural language question to the service server (20) and receives a response to the natural language question from the service server (20). The natural language question can be input in the form of voice or text through an input unit provided by the user device (10). Here, the input unit may include a keypad, a touch screen, a microphone, etc. The user device (10) is a communication terminal capable of communicating with the service server (20), and may be, for example, a personal computing system such as a smartphone, laptop, desktop, handheld PC, or tablet PC.
[0190] A user using the user device (10) may be a general user, but in the present embodiment, may be a user belonging to a specific group. Here, the specific group is related to access rights to the database (DB). That is, access rights to the database (DB) may be set differently depending on the specific group to which the user belongs. As a result, a response to a natural language question may or may not be received depending on the specific group to which the user belongs. For example, a specific group may be classified by company, department, or position. Information about the specific group to which the user belongs may be included in the user attribute information. Here, the user attribute information includes the user's personal information, information about the user device (10), and information about the specific group to which the user belongs.
[0191] The natural language processing model (NLP) performs operations based on what has been learned on the input information input from the service server (20) to generate a JSON (JavaScript Object Notation) question script containing the information required for query generation, and returns it to the service server (20). This natural language processing model (NLP) may include an LLM (large language model) capable of inferring relationships between words in a large amount of text data. The natural language processing model (NLP) analyzes and extracts meaningful information from text and returns the information required for query generation. Here, LLM refers to an artificial intelligence model that can process a large amount of natural language data and generate answers that are often indistinguishable from human-generated text. Examples of such LLMs include OpenAI's GPT (Generative Pre-trained Transformer) series and Google's BERT (Bidirectional Encoder Representations from Transformers) model.
[0192] The natural language processing model (NLP) according to an embodiment of the present disclosure returns a JSON question script so that a query can be generated through operations on input information, such as keyword information, entity information, and item information, input from a service server (20). The JSON question script is a script for generating a query and includes commands for specifying, for example, templates, tables, columns, and search conditions. In addition, the JSON question script may include code capable of generating a query.
[0193] The service server (20) is a server that processes data by communicating with the user device (10) and a natural language processing model (NLP), and may include, for example, an application server, a computing server, a database server, a file server, a proxy server, and a web server. The service server (20) may be composed of one or more servers. The service server (20) is basically intended to provide answers to user questions in natural language received from the user device (10). This will be described in more detail as follows.
[0194] Referring to Fig. 9, the service server (20) includes an interface unit (IF), a computation unit (PM), and a database (DB).
[0195] A database (DB) stores data that can answer user questions. The database (DB) includes a vector DB containing index terms for the stored data. The vector DB can be provided to a natural language processing (NLP) model under control. Index terms can include table names and column names for the data. The database (DB) can store previously received user questions, queries responding to those questions, and execution plans corresponding to those queries.
[0196] The interface unit (IF) provides an environment in which the user device (10) can connect to the service server (20). The user device (10) can input a natural language question through the interface unit (IF) and receive an answer to the input natural language question. That is, the interface unit (IF) receives a natural language question from the user device (10), provides the question to the operation unit (PM), and returns an answer to the natural language question from the operation unit (PM) to the user device (10). That is, the interface unit (IF) can perform the function of the platform of the service server (20).
[0197] The operation unit (PM) generates a query based on a user question, executes the generated query on a database (DB), obtains an answer, and returns it to the user device (10) through the interface unit (IF). In particular, the operation unit (PM) can derive a JSON question script through a natural language processing model (NLP) and generate a query (SQL) from the JSON question script.
[0198] Referring to FIG. 10, the operation unit (PM) includes a natural language processing unit (100), a DB analysis unit (200), an execution unit (300), a questioner group processing unit (400), a matching unit (500), and a feedback processing unit (600).
[0199] When the natural language processing unit (100) receives a user question in natural language based on a user input from the user device (10) through the interface unit (IF), the natural language processing unit (100) can extract keyword information and the intent of the question from the user question, and extract entity information of the user of the user device (10) that has been previously stored. Here, the entity information can include personal information of the user, information of the user device (10), and information about a specific group (e.g., company, department, position, etc.) to which the user belongs.
[0200] The DB analysis unit (200) can create a search target list by searching a database (DB) for a table of the search target, a column of the table, and multiple items including data of the column based on the user's entity information and keyword information. At the same time, the DB analysis unit (200) calculates a search similarity score, which is the similarity between the keyword information and multiple items of the search target list, in step S130. Here, a higher search similarity score means that the user is more knowledgeable about the structure of the searched database and is a suitable user.
[0201] The execution unit (300) can provide a search target list to the user device (10) and receive item information representing an item selected by the user from the search target list from the user device (10). At this time, the execution unit (300) can measure the time required for the user to select an item from the search target list based on the time required until the search target list is provided and the item information representing the item selected by the user is received. In particular, when the execution unit (300) inputs keyword information, entity information, and item information into a natural language processing model (NLP), the natural language processing model (NLP) can perform learned operations on the keyword information, entity information, and item information to derive a JSON question script. In addition, the execution unit (300) can generate a query based on the JSON question script, generate an execution plan corresponding to the generated query for a database (DB), and execute the query according to the generated execution plan to receive an answer corresponding to the user's question from the database (DB). Then, the execution unit (300) can transmit the answer to the user device (10) through the interface unit (IF).
[0202] After a query is executed for multiple user questions, the questioner cluster processing unit (400) can create a questioner cluster based on entity information corresponding to multiple user questions, search similarity scores, item information indicating an item selected by the user from the search target list, and time information indicating the time taken by the user to select an item from the search target list.
[0203] In addition, when a new user question is input, the questioner group processing unit (400) can identify the questioner group to which the user question belongs based on entity information corresponding to the new user question, search similarity score, item information indicating an item selected by the user from the search target list, and time information indicating the time taken by the user to select an item from the search target list after the query is executed.
[0204] The matching unit (500) can extract a plurality of similar questions having a similarity level with the user question of a predetermined value or higher from a question list including a plurality of user questions belonging to a questioner group identified as belonging to the user's user question, thereby deriving a customized question list, and provide the derived customized question list to the user device (10).
[0205] The feedback processing unit (600) may receive feedback information, which is information about the user's preference or dislike (e.g., 'like' or 'dislike') for each of a plurality of similar questions in the customized question list, from the user device (10). Then, the feedback processing unit (600) may retrain a natural language processing model (NLP) using the feedback information from the user device (10). Alternatively, the feedback processing unit (600) may update the customized question list and provide it to the user device (10) again.
[0206] Next, a method for collecting data to form a group of questioners in a data provision service according to an embodiment of the present disclosure and generating a group of questioners based on the collected data will be described. Fig. 11 is a flowchart illustrating a method for collecting data to form a group of questioners in a data provision service according to an embodiment of the present disclosure. Fig. 12 is a flowchart illustrating a method for generating multiple groups of questioners in a data provision service according to an embodiment of the present disclosure.
[0207] Referring to FIG. 11, the natural language processing unit (100) can receive a user question in natural language based on the user's input from the user device (10) through the interface unit (IF) at step S110.
[0208] Then, the natural language processing unit (100) can extract keyword information and the intent of the question from the user question at step S120. In addition, the natural language processing unit (100) can extract entity information of the user of the user device (10) that has been previously stored at step S120. Here, the entity information can include personal information of the user, information about the user device (10), and information about a specific group (e.g., company, department, position, etc.) to which the user belongs.
[0209] Next, the DB analysis unit (200) can create a search target list by searching a database (DB) for a table of the search target, a column of the table, and a plurality of items including data of the column based on the user's entity information and keyword information at step S130. At the same time, the DB analysis unit (200) calculates a search similarity score, which is the similarity between the keyword information and a plurality of items of the search target list at step S130. Here, a higher search similarity score means that the user knows more about the structure of the searched database and is a suitable user.
[0210] Next, the execution unit (300) provides a search target list to the user device (10) at step S140, and receives item information indicating an item selected by the user from the search target list from the user device (10) at step S150. In steps S140 and S150, the execution unit (300) provides the search target list, and can measure the time required for the user to select an item from the search target list based on the time required to receive the item information indicating the item selected by the user.
[0211] Accordingly, the execution unit (300) can generate a query using a natural language processing model (NLP) based on the items selected by the user and execute the generated query. This is described in more detail as follows.
[0212] When the execution unit (300) inputs keyword information, entity information, and item information into a natural language processing model (NLP) at step S160, the natural language processing model (NLP) performs learned operations on the keyword information, entity information, and item information to derive a JSON question script. The JSON question script is a script for generating a query and includes, for example, commands for specifying templates, tables, columns, search conditions, etc.
[0213] Then, the execution unit (300) generates a query based on the JSON query script at step S170, generates an execution plan corresponding to the generated query for the database (DB), and executes the query according to the generated execution plan to receive an answer corresponding to the user's question from the database (DB). Subsequently, the execution unit (300) transmits the answer to the user device (10) through the interface unit (IF) at step S180.
[0214] The above-described steps S110 to S180 are repeated each time a user question is received from each of multiple users, i.e., each of multiple user devices (10).
[0215] Accordingly, referring to FIG. 12, whenever a user question in natural language is received from a plurality of user devices, the questioner group processing unit (400) mutually maps and stores entity information corresponding to the plurality of user questions, a search similarity score, item information indicating an item selected by the user from the search target list, and time information indicating the time taken by the user to select an item from the search target list in step S210.
[0216] Then, the questioner group processing unit (400) generates multiple questioner vectors by mapping entity information, search similarity score, item information, and required time information corresponding to multiple user questions to a predetermined vector space in step S220.
[0217] Next, the questioner group processing unit (400) can perform clustering on multiple questioner vectors using a clustering algorithm at step S230 to create multiple questioner groups (Questioner Clusters).
[0218] Next, as described above, a method for providing a data service using a group of questioners according to an embodiment of the present disclosure after multiple groups of questioners have been created will be described. Figure 13 is a flowchart illustrating a method for providing a data service using a group of questioners according to an embodiment of the present disclosure.
[0219] Referring to FIG. 13, the natural language processing unit (100) can receive a user question in natural language based on the user's input from the user device (10) through the interface unit (IF) at step S310.
[0220] Then, the natural language processing unit (100) can extract keyword information and the intent of the question from the user question in step S320. In addition, the natural language processing unit (100) can extract entity information of the user of the user device (10) that has been previously stored in step S320.
[0221] Next, the DB analysis unit (200) can create a search target list by searching a database (DB) for a table of the search target, a column of the table, and a plurality of items including data of the column based on the user's entity information and keyword information in step S330. At the same time, the DB analysis unit (200) calculates a search similarity score, which is the similarity between the keyword information and a plurality of items of the search target list in step S330.
[0222] Next, the execution unit (300) provides a search target list to the user device (10) at step S340, and receives item information indicating an item selected by the user from the search target list from the user device (10) at step S350. In steps S340 and S350, the execution unit (300) provides the search target list, and can measure the time required for the user to select an item from the search target list based on the time required to receive the item information indicating the item selected by the user.
[0223] Accordingly, the execution unit (300) can generate a query using a natural language processing model (NLP) based on the items selected by the user in step S360, and execute the generated query to provide an answer to the user device (10). This will be described in more detail as follows. When the execution unit (300) first inputs keyword information, entity information, and item information into the natural language processing model (NLP), the natural language processing model (NLP) performs learned operations on the keyword information, entity information, and item information to derive a JSON question script. Then, the execution unit (300) can generate a query based on the JSON question script, generate an execution plan corresponding to the generated query for a database (DB), and execute the query according to the generated execution plan to receive an answer corresponding to the user question from the database (DB). Subsequently, the execution unit (300) transmits the answer to the user device (10) through the interface unit (IF).
[0224] As described above, after executing a query and providing a response, the questioner group processing unit (400) identifies the questioner group corresponding to the user's question at step S370. To this end, the questioner group processing unit (400) can identify the questioner group to which the user's question belongs based on entity information, search similarity score, item information, and time required information.
[0225] Step S370 is described in more detail as follows. The questioner group processing unit (400) generates a questioner vector of the user question by mapping entity information, search similarity score, item information, and required time information corresponding to the user question to a predetermined vector space. Then, the questioner group processing unit (400) identifies the questioner group to which the user question belongs based on the distance between the clustering center of the plurality of questioner groups and the questioner vector of the user question in the vector space. That is, the questioner group processing unit (400) can identify the questioner group to which the user question belongs as the questioner group in which the distance between the clustering center of the plurality of questioner groups and the questioner vector of the user question is closest and within a predetermined distance in the vector space.
[0226] Next, the matching unit (500) extracts a plurality of similar questions having a similarity level of a predetermined value or higher with the user question from a question list including a plurality of user questions belonging to a questioner group identified as belonging to the user question of the corresponding user in step S380, thereby deriving a customized question list, and provides the derived customized question list to the user device (10).
[0227] Then, the feedback processing unit (600) can receive feedback information, which is information about the user's preference or dislike (e.g., 'like' or 'dislike') for each of a plurality of similar questions in the customized question list, from the user device (10) at step S390.
[0228] Then, the feedback processing unit (600) can retrain the natural language processing model (NLP) using feedback information from the user device (10) at step S400. Alternatively, the feedback processing unit (600) can update the list of customized questions and provide them to the user device (10) again.
[0229]
[0230] FIG. 14 is an exemplary diagram of a hardware system for implementing a device for providing a data service using a group of questioners according to one embodiment of the present disclosure.
[0231] As illustrated in FIG. 14, a hardware system (2000) according to one embodiment of the present disclosure may have a configuration including a processor unit (2100), a memory interface unit (2200), and a peripheral interface unit (2300).
[0232] Each component within the hardware system (2000) may be an individual component or integrated into one or more integrated circuits, and each of these components may be connected by a bus system (not shown).
[0233] Here, for a bus system, it is an abstraction representing any one or more individual physical buses, communication lines / interfaces, and / or multi-drop or point-to-point connections connected by appropriate bridges, adapters, and / or controllers.
[0234] The processor unit (2100) communicates with the memory unit (2210) through the memory interface unit (2200) to perform various functions in the hardware system, thereby executing various software modules stored in the memory unit (2210).
[0235] Here, in the memory unit (2210), each of the components including the natural language processing unit (100), the DB analysis unit (200), the execution unit (300), the questioner group processing unit (400), the matching unit (500), and the feedback processing unit (600) can be stored in the form of a software module, and an operating system (OS) can be additionally stored. The components including the natural language processing unit (100), the DB analysis unit (200), the execution unit (300), the questioner group processing unit (400), the matching unit (500), and the feedback processing unit (600) can be loaded onto the processor unit (2100) and executed.
[0236] Each component including the natural language processing unit (100), DB analysis unit (200), execution unit (300), questioner group processing unit (400), matching unit (500), and feedback processing unit (600) described above may be implemented in the form of a software module or hardware module executed by a processor, or may also be implemented in the form of a combination of software modules and hardware modules.
[0237] In this way, a software module, a hardware module, or a combination of software modules and hardware modules executed by a processor may be implemented as an actual hardware system (e.g., a computer system).
[0238] For an operating system (e.g., I-OS, Android, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS, or an embedded operating system such as VxWorks), it contains various procedures, instruction sets, software components and / or drivers that control and manage general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitates communication between various hardware modules and software modules.
[0239] For reference, the memory unit (2210) may include a memory hierarchy including, but not limited to, cache, main memory, and secondary memory, which may be implemented through any combination of, for example, RAM (e.g., SRAM, DRAM, DDRAM), ROM, FLASH, magnetic and / or optical storage devices (e.g., disk drives, magnetic tape, compact disks (CDs), and digital video discs (DVDs)).
[0240] The peripheral device interface unit (2300) performs the role of enabling communication between the processor unit (2100) and the peripheral device.
[0241] In the case of a peripheral device here, as for providing different functions to the hardware system (2000), in one embodiment of the present disclosure, for example, a communication unit (2310) may be included.
[0242] Here, the communication unit (2310) performs a role of providing a communication function with other devices, and for this purpose, includes, but is not limited to, an antenna system, an RF transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a CODEC chipset, and a memory, and may include a known circuit that performs this function.
[0243] The communication protocols supported by the communication unit (2310) include, for example, Wireless LAN (WLAN), Digital Living Network Alliance (DLNA), Wireless Broadband (Wibro), World Interoperability for Microwave Access (Wimax), Global System for Mobile communication (GSM), Code Division Multi Access (CDMA), Code Division Multi Access 2000 (CDMA2000), Enhanced Voice-Data Optimized or Enhanced Voice-Data Only (EV-DO), Wideband CDMA (WCDMA), High Speed Downlink Packet Access (HSDPA), High Speed Uplink Packet Access (HSUPA), IEEE 802.16, Long Term Evolution (LTE), Long Term Evolution-Advanced (LTE-A), 5G communication system, Wireless Mobile Broadband Service (WMBS), Bluetooth, and Radio Frequency Identification (RFID). This may include Identification, Infrared Data Association (IrDA), Ultra-Wideband (UWB), ZigBee, Near Field Communication (NFC), Ultra Sound Communication (USC), Visible Light Communication (VLC), Wi-Fi, and Wi-Fi Direct.Additionally, wired communication networks may include wired Local Area Networks (LANs), wired Wide Area Networks (WANs), Power Line Communications (PLCs), USB communications, Ethernet, serial communications, optical / coaxial cables, etc., and any protocol that can provide a communication environment with other devices may be included, rather than being limited to them.
[0244] In a hardware system (2000) according to one embodiment of the present disclosure, each configuration stored in the form of a software module in the memory unit (2210) performs an interface with the communication unit (2310) via the memory interface unit (2200) and the peripheral device interface unit (2300) in the form of a command executed by the processor unit (2100).
[0245] While this specification contains details of a number of specific implementations, as described above, these should not be construed as limitations on the scope of any invention or what may be claimed, but rather as descriptions of features that may be unique to particular embodiments of particular inventions. Certain features described herein in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented in multiple embodiments, either individually or in any suitable subcombination. Furthermore, although features may operate in a particular combination and may initially be described as being claimed as such, one or more features from a claimed combination may in some cases be excluded from that combination, and the claimed combination may be modified into a subcombination or variation of a subcombination.
[0246] Likewise, while operations are depicted in the drawings in a particular order, this should not be construed as requiring that those operations be performed in the particular or sequential order depicted to achieve desired results, or that all depicted operations be performed. In certain instances, multitasking and parallel processing may be advantageous. Furthermore, the separation of the various system components of the embodiments described above should not be construed as requiring such separation in all embodiments, and it should be understood that the program components and systems described may generally be integrated together in a single software product or packaged into multiple software products.
[0247] Specific embodiments of the subject matter described herein have been described. Other embodiments are within the scope of the following claims. For example, the operations recited in the claims may be performed in a different order and still achieve desirable results. For example, the processes depicted in the accompanying drawings do not necessarily require the specific illustrated order or sequential order to achieve desirable results. In certain implementations, multitasking and parallel processing may be advantageous.
[0248] This detailed description presents the best mode of the present invention and provides examples to illustrate the invention and enable those skilled in the art to make and use the invention. This written specification is not intended to limit the invention to the specific terms presented. Therefore, while the invention has been described in detail with reference to the examples described above, those skilled in the art will appreciate that modifications, variations, and variations can be made to these examples without departing from the scope of the invention.
[0249] Therefore, the scope of the present invention should not be determined by the described embodiments but by the claims.
Claims
1. Processor; and A memory (memory) in which at least one instruction executed by the processor is stored; At least one instruction of the above causes the processor to: A question reception and interpretation step that receives a question written by a user in natural language and converts it into a form that the machine can understand; A natural language processing step that analyzes the question to understand its meaning, extracts keywords or context within the question, and converts it into a form that can be queried against a database; and A database query generation step configured to generate a database query based on the extracted keywords and analyzed context and return a result from the database; A database comparison device based on question classification and questioner classification.
2. A question reception and classification module that receives and analyzes natural language questions entered by users and classifies the type of question; User profiling and questioner classification modules that generate customized queries based on the user's profile and past interaction history; After the question is classified, a metadata search and large-scale language model linking module searches the vector database for metadata that matches the question; A database comparison and generation module that automatically generates optimized database queries based on the meta language generated from the large-scale language model linking module; and A data processing and output module that transmits the generated database query to the database to retrieve the result, and converts the processed data through the data processing module into a response in a format suitable for the user and provides it; Database comparison system by question classification and questioner classification.
3. In claim 2, the question receiving and classification module, Determine whether the question is a data retrieval, calculation request, or report generation task. Identify the appropriate question type based on the user's intent and needs. A database comparison system by question classification and questioner classification.
4. In claim 2, the user profiling and questioner classification module, Generates optimized queries for each user by analyzing information about what data the user has previously requested and how the data has been processed. Database comparison system by question classification and questioner classification.
5. In claim 2, the metadata search and large-scale language model linking module, The retrieved metadata is fed into a large-scale language model to convert it into a meta-language. Large-scale language models are then used to generate appropriate responses to questions. A database comparison system by question classification and questioner classification.
6. In claim 2, the database comparison and creation module, Automatically generate optimized database queries based on a meta-language generated from a large-scale language model; Optimize database queries by considering the user's profile, permissions, past queries, and interaction history; Create an improved database that provides improved performance and accuracy through comparative analysis with the user's previous queries. Database comparison system by question classification and questioner classification.
7. Question reception and interpretation step that receives a question written by a user in natural language and converts it into a form that the machine can understand; A natural language processing step that analyzes the question to understand its meaning, extracts keywords or context within the question, and converts it into a form that can be queried against a database; and A database query generation step for generating a database query based on the extracted keywords and analyzed context and returning results from the database; including; A method for comparing databases by question classification and questioner classification.
8. A method for comparing databases by question classification and questioner classification performed by a computing device including at least one processor, A question reception and interpretation step that receives a question written by a user in natural language and converts it into a form that the machine can understand; A natural language processing step that analyzes the question to understand its meaning, extracts keywords or context within the question, and converts it into a form that can be queried against a database; and A database query generation step for generating a database query based on the extracted keywords and analyzed context and returning results from the database; including; A method for comparing databases by question classification and questioner classification.
9. In claim 8, the method comprises: The final results based on the metadata further include a result delivery step that is delivered to the user in real time in a streaming manner. A method for comparing databases by question classification and questioner classification.
10. A computer program stored in a computer-readable storage medium, wherein the computer program, when executed by one or more processors, performs a database comparison method by question classification and questioner classification, the method comprising: A question reception and interpretation step that receives a question written by a user in natural language and converts it into a form that the machine can understand; A natural language processing step that analyzes the question to understand its meaning, extracts keywords or context within the question, and converts it into a form that can be queried against a database; and A database query generation step comprising: generating a database query based on the extracted keywords and analyzed context and returning results from the database; A computer program stored on a computer-readable storage medium.
Citation Information
Patent Citations
Onoffmix information service agent, system and method using the same
KR1020110129713A
Battery pack
KR1020240082981A
Laminated core and manufacturing method of thereof
KR1020240174366A
Apparatus and method for servicing question and answer
KR102339794B1
Operation method of fuel cell separator module
KR102821425B1