Database comparison system by question classification and questioner classification and method thereof
Patent Information
- Authority / Receiving Office
- KR · KR
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-11-12
- Publication Date
- 2026-08-12
Smart Images

Figure 112024124184358-PAT00002_ABST
Abstract
Description
Technology Field
[0001] The present disclosure relates to the field of natural language processing (NLP) and concerns a database comparison system and method based on question classification and questioner classification that optimizes the database query process through question classification, user profiling, and the generation of optimized database queries utilizing large-scale language models (LLM). More specifically, it provides a database comparison system and method based on question classification and questioner classification that extracts metadata from a vector database to provide personalized responses and ensures efficient data retrieval. Background Technology
[0002] Modern companies are accumulating vast amounts of data, and effectively managing and analyzing it is emerging as a key element of corporate competitiveness. Most database systems provide the same metadata structure to all users.
[0003] Patent Document 1 (Republic of Korea Registered Patent Publication No. 10-2094934) discloses a natural language question answering system and method that analyzes sentences or paragraphs of unstructured documents, classifies and indexes documents according to their meaning, and provides a response to a query.
[0004] Conventional natural language question answering (NLE) systems and methods primarily focus on analyzing user natural language queries and converting them into database query language. However, most conventional NLE systems fail to reflect individual user profiles or past interactions, and because they provide identical results to all users for the same query, it becomes difficult to generate customized queries or obtain optimized results. Furthermore, the process of simply converting natural language queries into structured query language sometimes fails to adequately reflect complex contexts or semantics. For instance, in the case of polysemous or complex questions, the system may fail to interpret them correctly, potentially generating inaccurate queries. Additionally, conventional NLE systems are mainly useful for simple queries or basic data retrieval, but they are inadequate for handling complex data retrieval or advanced queries that integrate multiple data sources. Moreover, they have limitations in processing conditions not clearly defined by the user or ambiguous questions.
[0005] Meanwhile, there has been a recent increase in attempts to advance database management and data analysis by utilizing artificial intelligence and machine learning technologies. Although Natural Language Processing (NLP)-based question-and-answer systems are being developed to understand user input in natural language and provide corresponding data, they often fail to adequately reflect user intent and domain information. In response, recommendation systems that analyze user behavior patterns to suggest necessary information are being 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 for users. Prior art literature
[0006] Korean Patent Publication No. 10-2094934 The problem to be solved
[0007] The present disclosure is conceived 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 aim to develop a transformation matrix system for realizing user-customized data retrieval. Through this, it provides higher accuracy and efficiency for user queries and improves database query performance through system automation and optimization. In particular, this system aims to automatically generate optimal database queries tailored to the different contexts and needs of each user.
[0008] The technical problems of the present disclosure are not limited to those mentioned above, and other unmentioned technical problems will be clearly understood by those skilled in the art from the description below. means of solving the problem
[0009] A method performed by a computing device according to some embodiments for solving the aforementioned problem,
[0010] A database comparison device based on question classification and questioner classification according to one aspect of the present disclosure for achieving the above-mentioned purpose comprises: a processor; and a memory in which at least one instruction executed through the processor is stored; wherein the at least one instruction may be configured such that the processor performs: a question reception and interpretation step of receiving a question written by a user in natural language and converting it 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 it into a form that can be queried to a database; and a database query generation step of generating a database query based on the extracted keywords and analyzed context and receiving a result from the database.
[0011] A database comparison system based on question classification and questioner classification according to one aspect of the present disclosure may include: a question receiving and classification module that receives and analyzes a natural language question entered by a user and classifies the type of question; a user profiling and questioner classification module that generates a user-customized query based on the user's profile and past interaction records; a metadata search and large-scale language model integration module that searches for metadata corresponding to the question in a vector database after the question is 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 integration module; and a data processing and output module that transmits the generated database query to a database to search for results and provides a response in a format suitable for the user by converting the data processed through a data processing module.
[0012] The question reception and classification module determines whether a 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.
[0013] The user profiling and questioner classification module can generate queries optimized for each user by analyzing information on what data a user previously requested and how they processed that data.
[0014] The metadata search and large-scale language model integration module inputs the searched metadata into a large-scale language model (LLM) to convert it into a meta-language, and the large-scale language model (LLM) can generate a response suitable for the question based on this.
[0015] The database comparison and generation module can automatically generate optimized database queries based on a meta-language generated from a Large Language Model (LLM), optimize database queries by considering user profiles, permissions, past queries, and interaction history, and generate an improved database that provides enhanced performance and accuracy through comparative analysis with the user's previous queries.
[0016] A database comparison method based on 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 it 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 it into a form that can be queried to a database; and a database query generation step of generating a database query based on the extracted keywords and analyzed context and receiving a result from the database.
[0017] A database comparison method based on question classification and questioner classification according to another aspect of the present disclosure is a database comparison method based on question classification and questioner classification performed by a computing device comprising 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 it 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 it into a form that can be queried to a database; and a database query generation step of generating a database query based on the extracted keywords and analyzed context and receiving a result from the database.
[0018] The above method may further include a result delivery step in which the final result based on metadata is delivered to the user in real time via a streaming method.
[0019] A computer program stored on a computer-readable storage medium according to another aspect of the present disclosure is a computer program stored on a computer-readable storage medium, wherein the computer program performs a database comparison method based on question classification and questioner classification when executed by one or more processors, and the method may include: a question reception and interpretation step of receiving a question written by a user in natural language and converting it 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 it into a form that can be queried to a database; and a database query generation step of generating a database query based on the extracted keywords and analyzed context and receiving a result from the database. Effects of the invention
[0020] The present disclosure is 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 in a database.
[0021] 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 necessary data.
[0022] The database comparison system and method based on question classification and questioner classification of the present disclosure compares and analyzes 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.
[0023] The database comparison system and method based on 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 polysemous words or complex contexts.
[0024] The database comparison system and method based on question classification and questioner classification of the present disclosure minimize unnecessary data retrieval through optimized SQL queries and reduce database processing time, thereby increasing the efficiency of the entire system.
[0025] Through this, the database comparison system and method based on question classification and questioner classification of the present disclosure provide the effect of maximizing database query processing performance and significantly improving the user experience.
[0026] Further scopes of the applicability of the present disclosure will become apparent from the following detailed description. However, since various changes and modifications within the spirit and scope of the invention are clearly understood by those skilled in the art, specific embodiments, such as the detailed description and preferred embodiments of the invention, should be understood as being given merely as examples. Brief explanation of the drawing
[0027] Various aspects are now described with reference to the drawings, wherein similar reference numbers are used to collectively refer to similar components. In the following embodiments, for illustrative purposes, a number of specific details are presented to provide a comprehensive understanding of one or more aspects. However, it will be apparent that such aspect(s) may be practiced without these specific details. In other examples, known structures and devices are illustrated in block diagram form to facilitate the description of one or more aspects. FIG. 1 is a block diagram for explaining a computing device according to one embodiment of the present disclosure. 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. FIG. 3 is a configuration diagram of a database comparison system based on question classification and questioner classification of the present disclosure. 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. FIG. 5 is a flowchart illustrating the information processing of a database comparison system based on question classification and questioner classification of the present disclosure. FIG. 6 is a flowchart illustrating a database comparison method based on question classification and questioner classification of the present disclosure. FIG. 7 illustrates a general schematic diagram of an exemplary computing environment in which embodiments of the present disclosure may be implemented. Specific details for implementing the invention
[0028] Various embodiments are now described with reference to the drawings. In this specification, various descriptions are provided to provide an understanding of the present disclosure. However, it is evident that these embodiments can be practiced without such specific descriptions.
[0029] As used herein, terms such as “component,” “module,” “system,” etc. refer to computer-related entities, hardware, firmware, software, combinations of software and hardware, or executions of software. For example, a component may be, but is not limited to, a procedure executed on a processor, a processor, an object, an execution thread, a program, and / or a computer. For example, both an application executed on a computing device and the computing device itself may be a component. One or more components may reside within a processor and / or an execution thread. A component may be localized within a single computer. A component may be distributed among two or more computers. Additionally, these components may be executed from various computer-readable media having various data structures stored therein. Components may communicate through local and / or remote processes, for example, according to signals having one or more data packets (e.g., data from a component interacting with another component in a local system or distributed system, and / or data transmitted through signals to other systems and networks such as the Internet).
[0030] The suffixes “module” and “part” for components used in the following description are assigned or used interchangeably solely for the ease of drafting the specification and do not inherently possess distinct meanings or roles.
[0031] In addition, the terms "information" and "data" as used in this specification may often be used interchangeably.
[0032] When it is stated that one component is “connected” or “connected” to another component, it should be understood that it may be directly connected to or connected to that other component, or that there may be other components in between. On the other hand, when it is stated that one component is “directly connected” or “directly connected” to another component, it should be understood that there are no other components in between.
[0033] Furthermore, the term "or" is intended to mean an implicit "or" rather than an exclusive "or." That is, unless otherwise specified or evident from the context, "X uses A or B" is intended to mean one of the natural implicit substitutions. In other words, if X uses A; if X uses B; or if X uses both A and B, "X uses A or B" may apply to any of these cases. Additionally, the term "and / or" as used herein should be understood to refer to and include all possible combinations of one or more of the enumerated related items.
[0034] Additionally, the terms “comprising” and / or “comprising” should be understood to mean that such features and / or components are present. However, the terms “comprising” and / or “comprising” should be understood not to exclude the presence or addition of one or more other features, components and / or groups thereof. Furthermore, unless otherwise specified or clearly evident from the context to indicate a singular form, the singular in this specification and claims should generally be interpreted to mean “one or more.”
[0035] Hereinafter, identical or similar components are assigned the same reference numeral regardless of drawing symbols, and redundant descriptions thereof are omitted. Furthermore, in describing the embodiments disclosed in this specification, detailed descriptions of related prior art are omitted if it is determined that such detailed descriptions may obscure the essence of the embodiments disclosed in this specification. Additionally, the attached drawings are intended only to facilitate understanding of the embodiments disclosed in this specification, and the technical concept disclosed in this specification is not limited by the attached drawings.
[0036] And, the term “at least one of A or B” should be interpreted to mean “a case including only A,” “a case including only B,” or “a combination of A and B.”
[0037] Those skilled in the art should recognize that the various exemplary logical blocks, configurations, modules, circuits, means, logics, and algorithmic steps described in connection with the embodiments disclosed herein may be implemented in electronic hardware, computer software, or a combination of both. To clearly exemplify the interchangeability of hardware and software, various exemplary components, blocks, configurations, means, logics, modules, circuits, and steps have been generally described above in terms of their functionality. Whether such functionality is implemented in hardware or software depends on the specific application and design constraints imposed on the overall system. Skilled technicians may implement the described functionality in various ways for each specific application. However, such decisions regarding implementation should not be construed as going beyond the scope of this disclosure.
[0038] Description of the presented embodiments is provided to enable those skilled in the art to use or practice the present disclosure. Various modifications to these embodiments will be apparent to those 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 presented herein. The present disclosure should be interpreted in the broadest possible scope consistent with the principles and novel features presented herein.
[0039] Hereinafter, FIGS. 1 to 7 describe a database comparison system and a method based on question classification and questioner classification according to the present disclosure.
[0040] FIG. 1 is a block diagram for explaining a computing device according to one embodiment of the present disclosure.
[0041] Referring to FIG. 1, the configuration of the computing device (100) shown 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).
[0042] The computing device (100) may include a processor (110), memory (130), and a network unit (150).
[0043] According to one embodiment of the present disclosure, the processor (110) may include all types of devices capable of processing the operation and data of a computing device (100). For example, it may refer to a data processing device embedded in hardware having a physically structured circuit to perform a function expressed by code or instructions included in a program. Examples of such data processing devices embedded in hardware may include a microprocessor, a central processing unit (CPU), a processor core, a multiprocessor, an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), etc., but the scope of the present invention is not limited thereto.
[0044] The above processor (110) may be composed of one or more cores and may include a central processing unit (CPU) of a computing device. Additionally, it may further include processors for data analysis and deep learning, such as a general purpose graphics processing unit (GPGPU) and a tensor processing unit (TPU).
[0045] 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).
[0046] 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), RAM (Random Access Memory), SRAM (Static Random Access Memory), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, a magnetic disk, and an optical disk. The computing device (100) may operate in conjunction with web storage that performs the storage function of the memory (130) on the internet. The description of the memory described above is merely an example and the present disclosure is not limited thereto.
[0047] A 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).
[0048] In addition, the network unit (150) presented in this specification may 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.
[0049] In the present disclosure, the network unit (150) can be configured regardless of the communication mode, such as wired and wireless, and can 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 a known World Wide Web (WWW) and may utilize wireless transmission technology used for short-range communication, such as Infrared Data Association (IrDA) or Bluetooth.
[0050] The technologies described in this specification can be used not only in the networks mentioned above but also in other networks.
[0051] In this specification, the database may be controlled by at least one relational database management system (RDBMS) among Oracle, PostgreSQL, MySQL, SQL Server, or SQLite. The database may perform data input and output by database statements.
[0052] Meanwhile, the application of this specification may include a separate statement execution module. When the database statement performs data input / output to the database management system (RDBMS), the statement execution module may generate a customized statement that conforms to the syntax according to the type of database. For example, through this disclosure, a user can conveniently generate, verify, and control statements using abstract formulas provided in the user interface (UI) provided by the application, regardless of the type of database.
[0053] Additionally, the application may be associated with a database (SQL) statement that performs one or more operations among Create, Read, Update, and Delete (CRUD). Here, the database (SQL) statement may be a signal associated with any one of the commands Insert, Update, or Delete, and the name or abbreviation of the database (SQL) statement may be entered or displayed in a cell of the spreadsheet. For example, the display may appear as shown in Table 1 below.
[0054] cord explanation All Includes columns in all Insert and Update operations. InsertOnly Include the column only in the Insert statement. UpdateOnly Include the column in the Update statement.
[0055] Additionally, user input information may be used to set columns related to syntax generation or to specify record conditions. For example, it may enable the execution of SQL statements even if the column order between the source data and the output data is changed or the column names are different. Furthermore, the user input information may display comments regarding the output data.
[0056] FIG. 2 is a block diagram of a database comparison system based on question classification and questioner classification of the present disclosure.
[0057] Referring to FIG. 2, the database comparison system based on 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 linkage module (30), a database comparison and generation module (40), and a data processing and output module (50).
[0058] The question reception and classification module (10) receives and analyzes a natural language question entered by a user and classifies the type of question. It determines whether the question corresponds to various tasks such as data retrieval, calculation requests, 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 question, analyzes it, and classifies the type of the question. Question classification is based on the user's intent and requirements, and identifies which task the question corresponds to among data retrieval, calculation requests, report generation, etc.
[0059] The user profiling and questioner classification module (20) is a module that generates user-customized queries based on the questioner (user)'s profile and past interaction records. It generates queries optimized for each user by analyzing information such as what data the user previously requested and how the data was processed. The transformation matrix (G-MATRIX) system classifies appropriate questions by utilizing not only the user's questions but also the user's profile and past interaction records. Through this, it generates user-customized queries based on information regarding what data the user previously requested and how the data was processed.
[0060] The metadata search and large-scale language model linkage module (30) searches for metadata corresponding to the question in the vector database after the question is classified. The retrieved metadata is input into the large-scale language model (LLM), which converts it into a meta-language and enables the generation of a response suitable for the question. The transformation matrix (G-MATRIX) system searches for metadata corresponding to the question in the vector database after the question is classified. The retrieved metadata is input into the LLM and converted into a meta-language, and the large-scale language model (LLM) generates a response suitable for the question based on this.
[0061] 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). In this process, it optimizes the queries by considering the user's profile, permissions, past queries, and interaction history, and generates database (SQL) with improved performance compared to the previous queries.
[0062] The Transformation Matrix (G-MATRIX) system generates optimal database (SQL) queries based on meta-language responses generated from a Large Language Model (LLM). In doing so, the Transformation Matrix (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 provide better performance and accuracy.
[0063] The data processing and output module (50) transmits the generated database (SQL) query to the database to retrieve results, and converts the processed data into a format suitable for the user and provides it. Through personalized responses, the user can obtain the data they need accurately and quickly. The transformation matrix (G-MATRIX) system transmits the generated database (SQL) query to the database to retrieve results, and then provides a response in a format suitable for the user through the data processing module. Through this, the user can effectively obtain personalized results.
[0064] 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 utilizing vector databases.
[0065] The database comparison system based on question classification and questioner classification of the present disclosure focuses on technologies related to user-customized question processing and the generation and optimization of database (SQL) queries. It provides a system that analyzes the questioner's past interactions and permissions using user profiles and vector databases, and converts natural language questions into optimal SQL by utilizing metadata. This 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 user requirements.
[0066] FIG. 3 is a configuration diagram of a database comparison system based on question classification and questioner classification of the present disclosure.
[0067] Referring to FIG. 3, the database comparison system based on question classification and questioner classification of the present disclosure may be a data service system based on natural language processing (NLP) technology that utilizes a meta-language to process natural language queries and generate and optimize a database (SQL) to derive suitable results from the database.
[0068] In one embodiment, the database comparison system based on question classification and questioner classification of the present disclosure may be a system that converts a user's query in natural language into a meta-language for processing. The meta-language analyzes the user query, automatically generates and executes an appropriate SQL query, and provides the resulting data back to the user in natural language. This system may include morphological analysis and similar query management functions to process natural language queries.
[0069] The database comparison system based on 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).
[0070] The user inputs a query into the system in natural language.
[0071] The transformation matrix (G-MATRIX) converts natural language into a meta-language and transmits the query content.
[0072] The Natural Language Processing (NLP) module receives a meta-language query, analyzes the natural language query, and provides a corresponding meta-language response. The Natural Language Processing (NLP) module may be a conversational AI service based on GPT, such as Chat GPT.
[0073] The optimal database generation unit (i-META) receives a meta-language command, generates an optimal SQL query, prepares a query result response from the resulting data set, and sends the result response to the user.
[0074] In one embodiment, the database comparison system based on question classification and questioner classification of the present disclosure, when a user inputs a query in natural language, extracts key nouns and verbs through morphological analysis and undergoes a synonym processing process. The extracted information is converted into a meta-language, and based on this, an SQL query is automatically generated. The generated SQL query is executed in the database to produce a result, which is then converted back into natural language through the meta-language and provided to the user. The meta-language plays an important role in the processes of query transmission, command transmission, and result reception, and the user ultimately receives the result processed in natural language.
[0075] For example, the meta generation and database optimization system based on questioner information of the present disclosure can convert a natural language query such as "show me the sales department's sales status for this year" into meta information such as "x=this year", "y=sales department", and "sales=sales amount" when a user inputs this natural language query. Based on this information, an SQL query is generated, and finally, the sales status desired by the user can be provided.
[0076] The database comparison system based on question classification and questioner classification of the present disclosure may include a function for managing similar queries, which detects queries similar to previously used queries and processes data more efficiently based on this. Furthermore, it improves query performance and reduces system response time by utilizing database (SQL) optimization and data caching technologies. Additionally, through meta-language-based query processing, users can easily obtain desired information without directly writing database (SQL) queries. Moreover, by processing database queries based on natural language, it is possible to provide a system that allows users to easily retrieve data without needing to write SQL queries, thereby enhancing data accessibility and making it easy for non-experts to use.
[0077] 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.
[0078] Referring to FIG. 4, the database comparison system based on question classification and questioner classification of the present disclosure is a system that analyzes a user's query expressed in natural language, generates an SQL query based thereon to retrieve data from a database, and provides the results in a form that the user can understand. This system is primarily used for data retrieval, such as sales management in specific business departments, such as the electric business division of a company.
[0079] In one embodiment, the database comparison system based on question classification and questioner classification of the present disclosure may include the following components.
[0080] Users query the sales status of specific business units using natural language. For example, they ask, "Please tell me how much was sold this year" or "What are the sales figures for the Electric Business Unit in 2023?"
[0081] The Transformation Matrix (G-MATRIX) is a module that analyzes a user's natural language query to generate an SQL query. For example, it processes a query regarding "Sales of S Corporation's Electric Business Division from January 1, 2023 to today".
[0082] The Optimal Database Generation Unit (i-META) converts natural language queries into a meta-language and optimizes the database (SQL) based on this meta-language.
[0083] The Natural Language Processing (NLP) module analyzes the user's natural language query, extracts necessary data, and converts it into a meta-language.
[0084] In one embodiment, the database comparison system based on question classification and questioner classification of the present disclosure may operate as follows.
[0085] When a user inputs a natural language query such as "What is the 2023 revenue of the Electric Business Division?", the NLP module analyzes this query to extract important time ranges and departments.
[0086] The Transformation Matrix (G-MATRIX) module generates a specific SQL query titled "Sales of S Corporation's Electric Business Division from January 1, 2023 to today" based on the analyzed data.
[0087] The generated SQL query is transmitted to the database and executed through the optimal database generation unit (i-META).
[0088] The execution result is organized into a data format such as Table A and provided to the user in the form of Template B.
[0089] In one embodiment, the database comparison system based on question classification and questioner classification of the present disclosure can efficiently manage sales data of a specific business unit, such as an electric business unit 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) to derive relevant information from the database.
[0090] In one embodiment, the database comparison system based on question classification and questioner classification of the present disclosure can provide an automated system that allows a user to request data in natural language, analyzes the request, and converts it into an accurate SQL query.
[0091] In one embodiment, the database comparison system based on question classification and questioner classification of the present disclosure may include a module optimized for generating SQL queries and querying data for a specific department or period.
[0092] In one embodiment, result data of the database comparison system based on question classification and questioner classification of the present disclosure may be provided in a user-customized manner, and visual reports may also be generated through templates.
[0093] 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 inputs a natural language query such as "Show me the sales of the Electric Business Division this year," the system converts the query into "Sales of S Corporation's Electric Business Division from January 1, 2023 to today" and executes an SQL query to derive a result. This result is provided in the format of Table A and is output to the user as visualized data using Template B.
[0094] In one embodiment, the database comparison system based on question classification and questioner classification of the present disclosure provides a convenient system that allows users to retrieve necessary data through natural language queries without understanding complex query languages such as SQL, thereby enabling non-experts to easily access data and efficiently manage sales and generate reports.
[0095] FIG. 5 is a flowchart illustrating the information processing of a database comparison system based on question classification and questioner classification of the present disclosure.
[0096] 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 query 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 of the present disclosure can generate an SQL query using learned metadata and provide results in real time.
[0097] 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 an SQL query based thereon to query data from a database. Here, the metadata is managed in an embedded vector store, and the system provides a response in real time through continuous query processing and caching functions.
[0098] In one embodiment, the database comparison system based on 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).
[0099] It receives natural language queries from the user. For example, it includes queries such as "What is the revenue of the Electric Business Division in 2023?"
[0100] The result platform (AUD7 Platform) is responsible for passing the user's natural language query to the transformation matrix (G-MATRIX) and returning the result back to the user.
[0101] The transformation matrix (G-MATRIX) processes the user's natural language query to generate metadata and uses a large-scale language model (LLM) to transform the natural language query into an embedded vector form.
[0102] Large-scale language models (LLMs) convert the user's natural language query into metadata and transmit the metadata to the optimal database generator (i-META), enabling the i-META to use the learned data during the process of generating and optimizing SQL queries.
[0103] The Optimal Database Generation Unit (i-META) constructs templates based on metadata generated from transformation metrics (G-MATRIX) and optimizes SQL queries.
[0104] FIG. 6 is a flowchart illustrating a database comparison method based on question classification and questioner classification of the present disclosure.
[0105] Referring to FIG. 6, the database comparison method based on question classification and questioner classification of the present disclosure may be composed of a question reception and interpretation step (S1000), a natural language processing (NLP) step (S2000), and a database query generation step (S3000).
[0106] The question reception and interpretation step (S1000) receives a question written by a user in natural language and converts it into a form that a machine can understand.
[0107] The Natural Language Processing (NLP) step (S2000) analyzes the question to understand its meaning, extracts keywords or context within the question, and converts it into a form that can be queried to the database.
[0108] The database query generation step (S3000) generates a database query based on extracted keywords and analyzed context and receives results from the database.
[0109] In one embodiment, the database comparison method based on question classification and questioner classification of the present disclosure involves, when a user inputs a query such as "What is the revenue of the electric business division in 2023?", the system analyzes the query in an embedded vector store and generates meta-information. A transformation matrix (G-MATRIX) executes an SQL query based on the generated meta-information, and an optimal database generation unit (i-META) provides an optimized template to the user. The result is provided as a real-time response via streaming.
[0110] The database comparison method based on question classification and questioner classification of the present disclosure stores meta-information learned through a large-scale language model (LLM) in a vector store and can provide an accurate response to a query based thereon.
[0111] The database comparison method based on question classification and questioner classification of the present disclosure provides a fast response by utilizing cached data related to the query and can guarantee accuracy by examining the cached data in real time.
[0112] The database comparison method based on question classification and questioner classification of the present disclosure can efficiently process data by considering the correlation with previous queries when a user continuously inputs queries. It can automatically generate SQL queries based on meta-information and optimize them for execution in a database.
[0113] The database comparison method based on question classification and questioner classification of the present disclosure can significantly shorten the data search and analysis process by utilizing a large-scale language model (LLM) and metadata to process natural language queries and providing accurate data in real time, and can maximize efficiency through caching functions and continuous query processing functions.
[0114] FIG. 7 illustrates a general schematic diagram of an exemplary computing environment in which embodiments of the present disclosure may be implemented.
[0115] Referring to FIG. 7, when the computer program is executed by one or more processors, it can perform an operation for user authorization.
[0116] Additionally, a computer-readable medium storing a data structure is disclosed according to one embodiment of the present disclosure.
[0117] A data structure can refer to the organization, management, and storage of data that enables efficient access and modification of data. A data structure can refer to the organization of data to solve specific problems (e.g., data retrieval, data storage, data modification in the shortest possible time). A data structure may also be defined by physical or logical relationships between data elements designed to support specific data processing functions. Logical relationships between data elements may include connections between user-defined data elements. Physical relationships between data elements may include actual relationships between data elements physically stored on a computer-readable storage medium (e.g., a permanent storage device). Specifically, a data structure may include sets of data, relationships between data, and functions or instructions applicable to the data. Through an effectively designed data structure, a computing device can perform operations while minimizing the use of its resources. Specifically, through an effectively designed data structure, a computing device can increase the efficiency of operations, reading, insertion, deletion, comparison, exchange, and retrieval.
[0118] Data structures can be classified into linear and non-linear data structures based on their form. A linear data structure is one where only one piece of data is connected to the next. Linear data structures can include lists, stacks, queues, and deques. A list can refer to a set of data that maintains an internal order. Lists can include linked lists. A linked list is a data structure where data is connected in a line, with each piece of data possessing a pointer. In a linked list, the pointer can contain information regarding the connection to the next or previous data. Depending on its form, a linked list can be represented as a singly linked list, a doubly linked list, or a circular linked list. A stack is a data arrangement structure that allows for restricted access to data. A stack can be a linear data structure where data can be processed (e.g., insertion or deletion) only at one end. Data stored in a stack can be a Last-In, First-Out (LIFO) data structure, meaning that the later an item is entered, the sooner it is retrieved. A queue is a data arrangement structure that allows for limited access to data; unlike a stack, it can be a FIFO (First in First Out) data structure where data stored later is retrieved later. A deque is a data structure that can process data at both ends.
[0119] Non-linear data structures can be structures where multiple data are connected after a single piece of data. Non-linear data structures can include graph data structures. Graph data structures can be defined by vertices and edges, and edges can include lines connecting two different vertices. Graph data structures can include tree data structures. A tree data structure can be a data structure where there is only one path connecting two different vertices among the multiple vertices included in the tree. In other words, it can be a data structure that does not form loops in a graph data structure.
[0120] 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. Data input to a neural network may include training data input during the neural network learning process and / or input data input to a neural network after training is complete. Data input to a neural network may include pre-processed data and / or data subject to pre-processing. Pre-processing may include a data processing process for inputting data into a neural network. Accordingly, a data structure may include data subject to pre-processing and data generated by pre-processing. The aforementioned data structure is merely an example, and the present disclosure is not limited thereto.
[0121] The data structure may include weights of the neural network. In this specification, weights and parameters may be used interchangeably. Furthermore, the data structure including the weights of the neural network may be stored on 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 to enable the neural network to perform desired functions. For example, if one or more input nodes are interconnected to a single output node by respective links, the output node may determine the data value output from the output node based on values input to the input nodes connected to the output node and weights set on the links corresponding to each input node. The aforementioned data structure is merely an example and the present disclosure is not limited thereto.
[0122] Although the present disclosure has been described as generally being implementable by a computing device, those skilled in the art will understand that the present disclosure may be implemented in combination with computer-executable instructions and / or other program modules that can be executed on one or more computers and / or as a combination of hardware and software.
[0123] Generally, a program module includes routines, programs, components, data structures, etc., that perform a specific task or implement a specific abstract data type. Furthermore, those skilled in the art will be well aware that the method of the present disclosure can be implemented in other computer system configurations, including single-processor or multi-processor computer systems, minicomputers, mainframe computers, as well as personal computers, handheld computing devices, microprocessor-based or programmable consumer electronics, etc. (each of which may be connected to and operated with one or more associated devices).
[0124] The embodiments described in the present disclosure may also be implemented in a distributed computing environment performed by remote processing devices connected via a communication network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
[0125] Computers typically include various computer-readable media. Any medium accessible by a computer may be a computer-readable medium, and such computer-readable media include volatile and non-volatile media, transitory and non-transitory media, and removable and non-removable media. By example, but not limiting, computer-readable media may include computer-readable storage media and computer-readable transmission media. Computer-readable storage media include volatile and non-volatile media, transitory and non-transitory media, and removable and non-removable media implemented by any method or technique for storing information such as computer-readable instructions, data structures, program modules, or other data. Computer-readable storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, DVD (digital video disk) or other optical disk storage devices, magnetic cassettes, magnetic tapes, magnetic disk storage devices or other magnetic storage devices, or any other media that can be accessed by a computer and used to store desired information.
[0126] Computer-readable transmission media typically include all information transmission media that implement computer-readable instructions, data structures, program modules, or other data, etc., on a modulated data signal, such as a carrier wave or other transport mechanism. The term modulated data signal means a signal in which one or more of the characteristics of the signal are set or modified to encode information within the signal. By example, not limiting, computer-readable transmission media include wired media, such as wired networks or direct-wired connections, and wireless media, such as acoustic, RF, infrared, and other wireless media. Any combination of the media described above is also considered to be within the scope of computer-readable transmission media.
[0127] An exemplary environment (1100) for implementing various aspects of the present disclosure, including a computer (1102), is shown, wherein the computer (1102) includes a processing unit (1104), system memory (1106), and a system bus (1108). The system bus (1108) connects system components, including system memory (1106) (but not limited thereto), to the processing unit (1104). The processing unit (1104) may be any processor among various commercial processors. Dual processors and other multiprocessor architectures may also be used as the processing unit (1104).
[0128] The system bus (1108) may be any of several types of bus structures that can be additionally interconnected to a local bus using any of the memory bus, peripheral bus, and various commercial bus architectures. System memory (1106) includes read-only memory (ROM) (1110) and random access memory (RAM) (1112). The basic input / output system (BIOS) is stored in non-volatile memory (1110), such as ROM, EPROM, EEPROM, etc., and this BIOS includes basic routines that help transfer information between components within the computer (1102) at times such as during startup. The RAM (1112) may also include high-speed RAM, such as static RAM, for caching data.
[0129] The computer (1102) also includes an internal hard disk drive (HDD) (1114) (e.g., EIDE, SATA)—this internal hard disk drive (1114) 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 a CD-ROM disk (1122) or reading from or writing to 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 each 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). The interface (1124) for implementing an external drive includes at least one or both of the USB (Universal Serial Bus) and IEEE 1394 interface technologies.
[0130] These drives and associated computer-readable media provide non-volatile storage of data, data structures, computer-executable instructions, etc. In the case of a computer (1102), the drives and media correspond to storing any data in a suitable digital format. Although 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 know that other types of computer-readable media, such as zip drives, magnetic cassettes, flash memory cards, cartridges, etc., may also be used in exemplary operating environments and that any of these media may contain computer-executable instructions for performing the methods of the present disclosure.
[0131] 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 part of the operating system, application, module, and / or data may also be cached in RAM (1112). It will be well known that the present disclosure may be implemented in various commercially available operating systems or combinations of operating systems.
[0132] The user can input commands and information into the computer (1102) through one or more wired / wireless input devices, such as a pointing device like a keyboard (1138) and 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, etc. These and other input devices are often connected to the processing unit (1104) via an input device interface (1142) connected to the system bus (1108), but may also be connected via other interfaces such as a parallel port, an IEEE 1394 serial port, a game port, a USB port, an IR interface, etc.
[0133] In the present disclosure, the term "user input" may refer to any form of user input related to a user request performed within a user interface (or within a webpage). For example, user input may include user input that moves a pointer object. As another example, user input may include user input that selects a specific object on the user interface. For example, user input regarding an object may be made by touching or clicking any object (e.g., a module, a tab, etc.). When user input related to a selection is received, a new object may be displayed on the user interface or webpage in response to the input, or the attributes of the object may be changed and displayed.
[0134] As another example, user input may include information such as language, characters, numbers, and symbols entered by various input means. User input is not limited to the examples mentioned above, and various forms of user actions are possible, such as mouse cursor control, mouse wheel scrolling, keyboard arrow keys, mouse clicks, and touch.
[0135] 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 generally includes other peripheral output devices (not shown), such as speakers, a printer, etc. 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-liquid crystal display (TFT LCD), an organic light-emitting diode (OLED), a flexible display, a 3D display, or an e-ink display. The display unit outputs (displays) data processed by the processor (110).
[0136] The computer (1102) may operate in a networked environment using a logical connection to one or more remote computers, such as remote computer(s) (1148), via wired and / or wireless communication. 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 generally include many or all of the components described for the computer (1102), but for brevity, only the memory storage device (1150) is illustrated. The illustrated logical connection includes a wired / wireless connection to a local area network (LAN) (1152) and / or a larger network, e.g., a wide area network (WAN) (1154). Such LAN and WAN networking environments are common in offices and companies and facilitate enterprise-wide computer networks, such as intranets, all of which can be connected to a global computer network, e.g., the Internet.
[0137] 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 communication to the LAN (1152), and the LAN (1152) may also include a wireless access point installed therein to communicate with the wireless adapter (1156). When used in a WAN networking environment, the computer (1102) may include a modem (1158), be connected to a communication computing device on the WAN (1154), or have other means to establish communication through the WAN (1154), such as through the Internet. The modem (1158), which may be an internal or external and a wired or wireless device, is connected to the system bus (1108) via a serial port interface (1142). In a networked environment, the program modules described for the computer (1102) or parts thereof may be stored in a remote memory / storage device (1150). It will be well known that the illustrated network connection is exemplary and that other means of establishing a communication link between computers may be used.
[0138] The computer (1102) operates to communicate with any wireless device or object that is deployed and operated via wireless communication, for example, a printer, scanner, desktop and / or portable computer, PDA (portable data assistant), communication satellite, any equipment or place associated with a wireless 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 simply ad hoc communication between at least two devices.
[0139] Wi-Fi (Wireless Fidelity) enables connectivity to the Internet and other sources without wires. Wi-Fi is a wireless technology, similar to a cell phone, that allows devices, such as computers, to transmit and receive data indoors and outdoors—that is, anywhere within the coverage area of a base station. Wi-Fi networks use a wireless technology 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 unlicensed 2.4 and 5 GHz wireless bands, for example, at data rates of 11 Mbps (802.11a) or 54 Mbps (802.11b), or in products that include both bands (dual band).
[0140] Those skilled in the art of the present disclosure will understand that information and signals may be represented using any various different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be 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.
[0141] Additionally, the computer (1102) may be implemented as a user terminal. Accordingly, the method according to one embodiment of the present disclosure may be adopted without limitation as a terminal as hardware capable of carrying software. The user terminal described in the present disclosure may include a mobile phone, a smartphone, a laptop computer, a digital broadcasting terminal, a PDA (personal digital assistant), a PMP (portable multimedia player), 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)), etc. Additionally, the user terminal may include a device capable of inputting and outputting data by a user, a device capable of displaying data to a user, and a device capable of wired / wireless communication, but is not limited thereto. For example, the computing device (100) may be a desktop, a laptop, a tablet PC, a portable terminal, etc.
[0142] Those skilled in the art will understand that the various exemplary logic blocks, modules, processors, means, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented by electronic hardware, various forms of programs or design code (referred to herein as software for convenience), or a combination of all such. To clearly illustrate this interoperability between hardware and software, various exemplary components, blocks, modules, circuits, and steps have been generally described above in relation to their functions. Whether such functions are implemented as hardware or software depends on the design constraints imposed on the specific application and the overall system. Those skilled in the art may implement the functions described in various ways for each specific application, but such implementation decisions should not be interpreted as being outside the scope of this disclosure.
[0143] The various embodiments presented herein may be implemented as methods, devices, or articles using standard programming and / or engineering techniques. The term "article" includes a computer program, carrier, or medium 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 discs (e.g., CDs, DVDs, etc.), smart cards, and flash memory devices (e.g., EEPROMs, cards, sticks, key drives, etc.). Additionally, the various storage media presented herein include one or more devices and / or other machine-readable media for storing information.
[0144] 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, based on design priorities, the specific order or hierarchy of steps in the processes may be rearranged within the scope of this disclosure. The appended method claims provide elements of various steps in a sample order, but do not imply limitation to the specific order or hierarchy presented.
[0145] Description of the presented embodiments is provided so that a person skilled in the art may use or practice the present disclosure. Various modifications to these embodiments will be apparent to a person 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. Thus, the present disclosure is not limited to the embodiments presented herein, but should be interpreted in the broadest possible scope consistent with the principles and novel features presented herein. Explanation of the symbols
[0146] 10: Question Reception and Classification Module 20: User Profiling and Questioner Classification Module 30: Metadata Search and Large-Scale Language Model Integration Module 40: Database Comparison and Creation Module 50: Data Processing and Output Module
Claims
Claim 1 A database comparison system based on question classification and questioner classification, comprising: a question reception and classification module that receives and analyzes natural language questions entered by a user and classifies the type of question; a user profiling and questioner classification module that generates user-customized queries based on the user's profile, past interaction records, and authorization information; a metadata search and large-scale language model integration module that searches for metadata corresponding to the question in a vector database after the question is classified; a database comparison and generation module that automatically generates optimized database queries using a meta-language generated from a large-scale language model based on the metadata and improves performance by comparing with previous queries; and a data processing and output module that transmits the generated queries to a database to search for results and converts them into a user-customized format for output. Claim 2 A computing device for executing a system according to claim 1, comprising: a processor; and a memory in which instructions executable by the processor are stored; wherein the instructions are configured such that the processor performs the functions of each module of claim 1. Claim 3 A database comparison system by question classification and questioner classification according to claim 1, wherein the question receiving and classification module determines whether a question corresponds to a data search, calculation request, or report generation task, and identifies an appropriate question type based on the user's intent and requirements. Claim 4 In claim 1, the user profiling and questioner classification module analyzes information on what data a user has previously requested and how data has been processed to generate a query optimized for each user, thereby creating a database comparison system based on question classification and questioner classification. Claim 5 In claim 1, the metadata search and large-scale language model linkage module inputs the searched metadata into a large-scale language model to convert it into a meta-language, and the large-scale language model generates a response suitable for the question based thereon, a database comparison system based on question classification and questioner classification. Claim 6 A database comparison system based on question classification and questioner classification according to claim 1, wherein the database comparison and generation module automatically generates an optimized database query based on a meta-language generated from a large-scale language model, optimizes the database query by considering the user's profile, authority, past queries and interaction history, and generates an improved database that provides enhanced performance and accuracy through comparative analysis with the user's previous queries. Claim 7 delete Claim 8 A method for comparing databases by question classification and questioner classification, performed by a computing device comprising at least one processor, comprising: a step in which a question receiving and classification module receives a question written by a user in natural language and converts it into a form that can be understood by a machine; a step in which a question receiving and classification module analyzes the question to determine its meaning and extracts keywords and context within the question to classify the question type; a step in which a user profiling and questioner classification module generates a user-customized query based on the user's profile, authority, and past interaction records; a step in which a metadata search and large-scale language model linkage module searches for metadata in a vector database based on the question type and user information and generates a meta-language through a large-scale language model; a step in which a database comparison and generation module automatically generates an optimized database query based on the generated meta-language and improves performance by comparing it with a previous query; and a step in which a data processing and output module executes the query to search for database results and provides a response in a user-customized format. Claim 9 The method of claim 8 further comprises a result providing step in which a final result based on metadata is delivered to a user in real time via a streaming method, a database comparison method based on question classification and questioner classification. Claim 10 A computer-readable storage medium characterized by a program stored on the computer-readable storage medium, wherein the program is configured to be executed by one or more processors to perform each step of the method according to claim 8.
Citation Information
Patent Citations
Onoffmix information service agent, system and method using the same
KR1020110129713A
Recommendation algorithm-based problem action suggestion system and method thereof
KR1020230073684A
Apparatus and method for servicing question and answer
KR102339794B1