Data generation method, device, equipment and computer readable storage medium
By automatically generating SQL syntax trees and table data to combine dialogue templates, the problem of high training data cost for TableQA models is solved, enabling efficient and diverse training data generation and supporting the training of semantic parsing models for multi-turn dialogues.
Patent Information
- Application Number
- CN202210087092.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-01-25
- Publication Date
- 2026-01-27
- Estimated Expiration
- 2042-01-25
AI Technical Summary
In existing technologies, generating training data for TableQA models is costly and inefficient, making it difficult to scale up.
By automatically generating SQL syntax trees and combining them with sampled table data, and using pre-configured dialogue templates, a large number of SQL statements and their corresponding natural language text sample pairs are generated. Multi-turn dialogue sample pairs are then generated through editing strategies as training data.
It reduces the cost of training data, improves the efficiency of generating training data, supports the training of semantic parsing models for multi-turn dialogues, and ensures the accuracy and diversity of natural language text.
Smart Images

Figure CN114547068B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer application technology, and in particular to data generation methods, apparatus, devices and computer-readable storage media. Background Technology
[0002] Currently, intelligent question answering is widely used in customer service, marketing, and service acquisition scenarios, serving as a supplement to GUI (Graphical User Interface) to provide users with an efficient and personalized experience. It has even been integrated into hardware devices such as smart speakers, smart homes, and smart navigation systems. TableQA, as one form of intelligent question answering, is widely used in various scenarios. In TableQA, knowledge is organized in a tabular format. For example, a merchant's product information is stored in a table. When a user asks about the specific attributes of a product, the question answering model can convert the natural language input by the user into an SQL (Structured Query Language) statement and then locate the answer from the table.
[0003] Transforming natural language into SQL typically employs semantic parsing models such as NL2SQL (Natural Language To Structured Query Language). These models require a large amount of training data during training, and obtaining training data through manual annotation is extremely expensive and inefficient, making it difficult to scale up. Summary of the Invention
[0004] In view of this, this application provides a data generation method, apparatus, device, and computer-readable storage medium, thereby reducing the cost of obtaining training data for semantic parsing models and improving efficiency.
[0005] This application provides the following solution:
[0006] Firstly, a data generation method is provided, the method comprising:
[0007] Obtain the Structured Query Language (SQL) syntax tree, wherein the SQL syntax tree is pre-generated using SQL syntax rules;
[0008] Using the SQL syntax tree in combination with the sampled table data, generate one or more SQL statements;
[0009] Based on pre-configured script templates, corresponding natural language texts are generated for each SQL statement to obtain multiple sample pairs, each consisting of an SQL statement and its corresponding natural language text.
[0010] Sample at least one sample pair from the obtained plurality of sample pairs;
[0011] Each sample pair is used as a sample pair for the first round of dialogue, and sample pairs for the subsequent N rounds of dialogue are generated, where N is a positive integer.
[0012] The sample pairs from the first round of dialogue and the sample pairs from the subsequent N rounds of dialogue are combined to form a set of multi-round dialogue sample pairs.
[0013] According to one possible implementation method in the embodiment, the SQL syntax tree includes operation part nodes and condition part nodes;
[0014] The operation section nodes include operation keywords, focus parameters, and aggregation functions;
[0015] The condition section nodes include condition keywords, condition parameters, and condition operators;
[0016] The focus parameter and / or the condition parameter indicate the corresponding table data type.
[0017] According to one feasible method in the embodiments, generating one or more SQL statements by combining the SQL syntax tree with sampled table data includes:
[0018] Traverse the SQL syntax tree and fill in the key parameters and / or condition parameters encountered by the traversal using the sampled table data to obtain more than one SQL statement.
[0019] According to one achievable method in the embodiments, generating corresponding natural language text for each SQL statement based on a pre-configured script template includes:
[0020] Determine the word-granularity word templates corresponding to the focus parameters, condition parameters, aggregate functions, and conditional operators in the SQL statement;
[0021] Based on the logical relationships between the focus parameters, condition parameters, aggregate functions, and conditional operators in the SQL statement, the determined word-level word templates are combined to obtain more than one phrase-level word template.
[0022] Based on the logical relationship between phrases in the SQL statement, the more than one phrase-level word template is combined to obtain more than one sentence-level word template.
[0023] Determine the natural language text corresponding to the SQL statement from one or more sentence-level phrasing templates.
[0024] According to one possible implementation method in the embodiments, generating sample pairs for subsequent N rounds of dialogue based on the sample pairs from the first round of dialogue includes:
[0025] The sample pairs from the first round of dialogue are used as the sample pairs for the current round;
[0026] Determine the appropriate editing strategy for the sample pairs in the current round from the preset set of editing strategies;
[0027] Sampling an editing strategy from the defined editing strategies, the sample SQL statement and natural language text in the current round of the sample pair are edited using the sampled editing strategy, and the edited SQL statement and natural language text are used as the sample pair for the next round of dialogue.
[0028] The sample pair of the next round of dialogue obtained through editing is used as the sample pair of the current round, and the operation of determining the editing strategy applicable to the sample pair of the current round from the preset editing strategy set is carried out until the sample pair of the first round of dialogue is obtained and the sample pair of the N rounds of dialogue are obtained.
[0029] According to one achievable method in the embodiments, the set of editing strategies includes at least one of the following editing strategies:
[0030] Add conditions, modify conditions, delete conditions, change focus, modify aggregate functions, delete focus, restart, refuse recognition, and switch tables.
[0031] Secondly, a data generation method is provided, the method comprising:
[0032] Obtain the Structured Query Language (SQL) syntax tree, wherein the SQL syntax tree is pre-generated using SQL syntax rules;
[0033] Using the SQL syntax tree in combination with the sampled table data, generate one or more SQL statements;
[0034] Based on pre-configured script templates, corresponding natural language text is generated for each SQL statement to obtain multiple sample pairs, each consisting of an SQL statement and its corresponding natural language text.
[0035] According to one possible implementation method in the embodiment, the SQL syntax tree includes operation part nodes and condition part nodes;
[0036] The operation section nodes include operation keywords, focus parameters, and aggregation functions;
[0037] The condition section nodes include condition keywords, condition parameters, and condition operators;
[0038] The focus parameter and / or the condition parameter indicate the corresponding table data type.
[0039] According to one feasible method in the embodiments, generating one or more SQL statements by combining the SQL syntax tree with sampled table data includes:
[0040] Traverse the SQL syntax tree and fill in the key parameters and / or condition parameters encountered by the traversal using the sampled table data to obtain more than one SQL statement.
[0041] According to one feasible method in the embodiments, populating the traversed focus parameters and / or condition parameters with sampled tabular data includes:
[0042] The focus parameter is populated using the sampled table name and / or column name; and / or,
[0043] The conditional parameters are populated using the sampled column names and record values.
[0044] According to one achievable method in the embodiments, generating corresponding natural language text for each SQL statement based on a pre-configured script template includes:
[0045] Determine the word-granularity word templates corresponding to the focus parameters, condition parameters, aggregate functions, and conditional operators in the SQL statement;
[0046] Based on the logical relationships between the focus parameters, condition parameters, aggregate functions, and conditional operators in the SQL statement, the determined word-level word templates are combined to obtain more than one phrase-level word template.
[0047] Based on the logical relationship between phrases in the SQL statement, the more than one phrase-level word template is combined to obtain more than one sentence-level word template.
[0048] Determine the natural language text corresponding to the SQL statement from one or more sentence-level phrasing templates.
[0049] According to the third aspect, a method for obtaining training data is provided, the method comprising:
[0050] Acquire sample pairs as training data, wherein the sample pairs include multi-turn dialogue sample pairs generated by the method described in the first aspect, or sample pairs generated by the method described in the second aspect;
[0051] The training data is used to train a table-based pre-trained language model or a table-based semantic parsing model.
[0052] According to the fourth aspect, a data generation apparatus is provided, the apparatus comprising:
[0053] The syntax tree acquisition unit is configured to acquire a structured query language (SQL) syntax tree, wherein the SQL syntax tree is pre-generated using SQL syntax rules;
[0054] The SQL statement generation unit is configured to generate one or more SQL statements by combining the SQL syntax tree with sampled table data.
[0055] The text generation unit is configured to generate corresponding natural language text for each SQL statement based on a pre-configured discourse template, so as to obtain multiple sample pairs, wherein each sample pair consists of an SQL statement and its corresponding natural language text.
[0056] A multi-round sample generation unit is configured to sample at least one sample pair from the obtained plurality of sample pairs; use each sample pair as a sample pair for the first round of dialogue to generate sample pairs for the subsequent N rounds of dialogue, where N is a positive integer; and combine the sample pairs for the first round of dialogue and the sample pairs for the subsequent N rounds of dialogue to form a set of multi-round dialogue sample pairs.
[0057] According to a fifth aspect, a data generation apparatus is provided, the apparatus comprising:
[0058] The syntax tree acquisition unit is configured to acquire a structured query language (SQL) syntax tree, wherein the SQL syntax tree is pre-generated using SQL syntax rules;
[0059] The SQL statement generation unit is configured to generate one or more SQL statements by combining the SQL syntax tree with sampled table data.
[0060] The text generation unit is configured to generate corresponding natural language text for each SQL statement based on a pre-configured discourse template, so as to obtain multiple sample pairs, wherein each sample pair consists of an SQL statement and its corresponding natural language text.
[0061] According to a sixth aspect, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the method described in any one of the first aspects.
[0062] According to a seventh aspect, an electronic device is provided, characterized in that it comprises:
[0063] One or more processors; and
[0064] A memory associated with the one or more processors, the memory being used to store program instructions that, when read and executed by the one or more processors, perform the steps of the method described in any one of the first aspects above.
[0065] The following advantages can be achieved according to the specific embodiments provided in this application:
[0066] 1) This application can automatically generate a large number of sample pairs consisting of SQL statements and their natural language text as training data for semantic parsing models, saving costs and improving efficiency, and facilitating large-scale promotion.
[0067] 2) This application ensures the accuracy of natural language text by generating natural language text through pre-set dialogue templates, and ensures the diversity of natural language text by performing fine-grained division of dialogue templates.
[0068] 3) This application is able to generate multi-turn dialogue sample pairs based on the obtained text pairs, thereby providing training data for training a semantic parsing model that supports multi-turn dialogue.
[0069] Of course, any product implementing this application does not necessarily need to achieve all of the advantages described above at the same time. Attached Figure Description
[0070] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0071] Figure 1 An exemplary system architecture diagram is shown that can be applied to embodiments of this application;
[0072] Figure 2 A main flowchart of the data generation method provided in the embodiments of this disclosure;
[0073] Figure 3 This is a partial illustrative representation of an SQL syntax tree provided in an embodiment of this application;
[0074] Figure 4 This is a flowchart of generating multi-turn dialogue sample pairs provided in an embodiment of this application;
[0075] Figure 5 A schematic block diagram of the data generation apparatus according to one embodiment is shown;
[0076] Figure 6 This is a schematic diagram of the architecture of the electronic device provided in the embodiments of this application. Detailed Implementation
[0077] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of this application are within the scope of protection of this application.
[0078] The terminology used in the embodiments of this invention is for the purpose of describing particular embodiments only and is not intended to limit the invention. The singular forms “a,” “the,” and “the” as used in the embodiments of this invention and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise.
[0079] It should be understood that the term "and / or" used in this article is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. Additionally, the character " / " in this article generally indicates that the preceding and following related objects have an "or" relationship.
[0080] Depending on the context, the word "if" as used here can be interpreted as "when," "when," "in response to determination," or "in response to detection." Similarly, depending on the context, the phrase "if determination" or "if detection (of the stated condition or event)" can be interpreted as "when determination," "in response to determination," "when detection (of the stated condition or event)," or "in response to detection (of the stated condition or event)."
[0081] Figure 1 An exemplary system architecture that can be applied to embodiments of this application is shown.
[0082] like Figure 1 As shown, the system architecture may include terminal devices 101 and 102, a network 103, and a server 104. Network 103 serves as the medium for providing a communication link between terminal devices 101, 102, and server 104. Network 103 may include various connection types, such as wired or wireless communication links, or fiber optic cables, etc.
[0083] Users can use terminal devices 101 and 102 to interact with server 104 via network 103. Various applications can be installed on terminal devices 101 and 102, such as voice interaction applications, web browser applications, communication applications, etc.
[0084] Terminal devices 101 and 102 can be various electronic devices, including those with screens and those without. These include, but are not limited to, smartphones, tablets, smart speakers, smart TVs, PCs (Personal Computers), wearable devices, and so on.
[0085] Server 104 can be a single server, a server cluster consisting of multiple servers, or a cloud server. A cloud server, also known as a cloud computing server or cloud host, is a host product within the cloud computing service system, designed to address the shortcomings of traditional physical hosts and Virtual Private Servers (VPs) services, such as high management difficulty and weak service scalability. The data generation device provided in this application can be configured and run on the aforementioned server 104. It can be implemented as multiple software programs or software modules (e.g., to provide distributed services) or as a single software program or software module; no specific limitations are made here.
[0086] The data generation device in server 104 generates data using the method provided in this application.<SQL,Text> Sample pairs, where,<SQL,Text> In this context, SQL refers to SQL statements, and Text refers to the natural language text corresponding to those SQL statements. These sample pairs can be used as training data for semantic parsing models. Semantic parsing models are an important component of models such as Table QA. After receiving a question from terminal device 101 or terminal device 102, server 104 can use the Table QA model to obtain the answer to the question and return the answer to the terminal device 101 or terminal device 102 that sent the question.
[0087] The questions and answers can be in text or speech format. If speech is used, the server 104 will also include a corresponding speech processing component, such as speech parsing and speech synthesis modules; this application does not impose any restrictions on this.
[0088] It should be understood that Figure 1 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.
[0089] Figure 2 This is a main flowchart of the data generation method provided in the embodiments of this disclosure. The method can be generated by… Figure 1 The execution is performed on server 104 in the architecture shown. Besides the server, it can also be performed by other computer devices with strong computing power. For example... Figure 2 As shown, the method may include the following main steps:
[0090] Step 201: Obtain the SQL syntax tree, which is pre-generated using SQL syntax rules.
[0091] Step 202: Use the SQL syntax tree in conjunction with the sampled table data to generate one or more SQL statements.
[0092] Step 203: Based on the pre-configured script template, generate corresponding natural language text for each SQL statement to obtain multiple sample pairs. Each sample pair consists of an SQL statement and its corresponding natural language text.
[0093] As can be seen from the above process, this application automatically generates SQL statements by combining SQL syntax trees with sampled tabular data. Based on pre-configured discourse templates, it automatically generates natural language text for each SQL statement, thus obtaining a large number of text pairs that can be used as training data for semantic parsing models. Compared with manual annotation, this method significantly saves costs and improves efficiency, facilitating large-scale deployment.
[0094] Furthermore, in order to support model training in multi-round interaction scenarios, the above process may further include step 204: sampling at least one sample pair from the multiple sample pairs obtained, using each sample pair as the sample pair for the first round of dialogue, and generating sample pairs for the subsequent N rounds of dialogue; and combining the sample pairs for the first round of dialogue and the sample pairs for the subsequent N rounds of dialogue to form a set of multi-round dialogue sample pairs.
[0095] The following is a detailed description of each step in the above process. First, step 201, "obtaining the SQL syntax tree," will be described in detail with reference to an embodiment.
[0096] SQL is a standard computer language used to access and manipulate databases. It allows you to execute queries, retrieve data, insert new records, update existing data, delete records, create new databases, create new tables, and perform other database operations. Most operations performed on a database can be accomplished using SQL statements.
[0097] SQL has specific syntax rules, and an abstract syntax tree can be generated based on these rules. This abstract syntax tree contains the possible syntactic structures of SQL statements. The SQL syntax tree mainly consists of operation part nodes and condition part nodes.
[0098] The operation section mainly includes operation keywords, focus parameters, and aggregate functions. Operation keywords are used to indicate specific operations, such as "select," "from," "update," and "delete" (SQL syntax is case-insensitive). Aggregate functions can be specific function names, such as the averaging function `avg`, the maximum value function `max`, and the minimum value function `min`. Focus parameters mainly indicate the focus of the SQL query. In the SQL syntax tree, the focus parameter node can indicate the corresponding table data type, such as the table name and column names.
[0099] The condition section mainly includes condition keywords, condition parameters, and condition operators. Condition keywords are used to indicate conditions, such as "where". Condition operators can be specific function names, logical operators, or mathematical operators, such as and, or, not, >, <, and =.
[0100] Figure 3 This application provides a partial illustrative representation of an SQL syntax tree, such as... Figure 3 As shown in the diagram. A SELECT statement can include an operation section node and a condition section node. The operation section node includes the operation keywords "SELECT" and "FROM". The fields section after SELECT can include the focus parameter "fieldname", which may contain information indicating the corresponding column name. The fields section can also include function names (e.g., functionA(), functionB(), etc.). The tables section after FROM can include the focus parameter "tablename", which may contain information indicating the corresponding table name. The tables section can also include other SELECT statements. The condition section node includes the condition keyword "WHERE". The condition section after WHERE can include specific condition parameters, such as expA, expB, expC, etc., which may contain information indicating the corresponding column name. The condition section can also include operators such as AND, OR, NOT, >, <, and =.
[0101] The SQL syntax tree can also indicate which parts are optional, such as the condition section and certain keywords in the operation section. It should be noted that... Figure 3 This is merely illustrative; the actual SQL syntax tree may use other structures, but the underlying principles are similar.
[0102] The following describes step 202, namely "generating one or more SQL statements by combining the SQL syntax tree with the sampled table data", in detail with reference to the embodiments.
[0103] In this step, various SQL statement expressions are obtained by traversing the SQL syntax tree. These expressions are context-independent. During the traversal of the SQL syntax tree, for the focus parameters and / or condition parameters encountered, table data can be sampled from the database according to the table data type indicated by the syntax tree. The sampled table data is then used to fill in the encountered focus parameters and / or condition parameters to obtain the SQL statement. Through the combination of the above traversal and various sampling methods, a large number of SQL statements can be obtained.
[0104] For example, during the traversal of the SQL syntax tree, one possible SQL statement expression is: "select (column name) from (table name) where (column name) > (record value)". The parentheses contain the focus parameter and condition parameters, represented by the tabular data type they indicate. By sampling column names, table names, and record values from the table data and filling in the above expression, the following SQL statement can be obtained:
[0105] SELECT name FROM student_registration_table WHERE height>180
[0106] SELECT name FROM student_registration_table WHERE weight>100
[0107] SELECT product_name FOR product_table WHERE price>200
[0108] ...
[0109] Besides traversing the SQL syntax tree as described above, all templates can be pre-organized based on the SQL syntax tree, and then the templates can be populated using sampled table data. Other feasible methods will not be listed here. However, since traversing the SQL syntax tree combined with sampled table data is more efficient, this method is preferred.
[0110] The following describes in detail step 203, namely, "based on the pre-configured discourse template, generate corresponding natural language text for each SQL statement to obtain multiple sample pairs", with reference to the embodiments.
[0111] After obtaining a large number of SQL statements, the semantic parsing model requires a large amount of training data.<SQL,Text> Therefore, for the large number of SQL statements already obtained, it is necessary to generate corresponding natural language text for each statement. Natural language refers to language that evolves naturally with culture, that is, the language forms commonly used by humans for expression, including Chinese, English, Japanese, etc. In this application's embodiments, Chinese is used as an example for description.
[0112] The capabilities of semantic parsing models typically depend heavily on the accuracy and diversity of their training data. Accuracy determines whether the model can effectively support the service, while diversity ensures the model's performance. In this embodiment, the accuracy of natural language text is ensured by pre-setting dialogue templates, and the diversity of natural language text is ensured by using these templates for fine-grained segmentation.
[0113] Firstly, service providers are allowed to pre-set some script templates to accurately describe user needs, which correspond to the processing of tables in the database. Specifically, to ensure diversity, the script templates can be set at three levels: word granularity, phrase granularity, and sentence granularity.
[0114] Firstly, at the granularity level, we can determine the corresponding granularity language templates for key parameters, conditional parameters, aggregate functions, and conditional operators in SQL statements. For example, in financial products, the granularity language template for the operator `max` can be predefined as "highest". However, in Chinese expression, a large number of synonyms can accumulate. Diversity in granularity can be achieved through synonym substitution. For instance, after performing synonym substitution at the granularity level, the operator `max` can also yield the granularity language template "maximum".
[0115] Then, at the phrase granularity level, based on the logical relationships between focus parameters, conditional parameters, aggregate functions, and conditional operators in the SQL statement, the determined phrase-granularity word templates are combined to obtain more than one phrase-granularity word template. For example, in financial products, combining the conditional parameter "yield" with the operator max yields the phrase-granularity word template "maximum yield." Similarly, using synonym substitution, phrase-granularity word templates such as "highest yield" and "most aggressive" can also be obtained.
[0116] Next, based on the logical relationships between phrases in the SQL statement, the obtained phrase-level word templates are combined to obtain more than one sentence-level word template. Taking the SQL statement "select financial product where return type=principal guaranteed and max return rate" as an example, the phrase-level word template corresponding to "return type=principal guaranteed" is "principal guaranteed," the phrase-level word template corresponding to "max (return rate)" is "highest return rate," "most aggressive," or "maximum return rate," and the phrase-level word template corresponding to "select financial product" is "what financial products are available" or "what financial products are available." After combining these, the natural language text corresponding to this SQL statement is as follows:
[0117] What are the highest-yielding principal-protected wealth management products?
[0118] "What financial products offer principal protection and the highest returns?"
[0119] What are the most aggressive principal-protected wealth management products?
[0120] What are some principal-protected wealth management products with the highest yield?
[0121] ...
[0122] It can be seen that by combining the above-mentioned granularity speech templates, data can be generated exponentially, increasing the diversity of the generated natural language texts, thereby improving the performance of the semantic parsing model trained using these as training data.
[0123] Then, the natural language text corresponding to the SQL statement can be determined from the aforementioned sentence-level phrasing templates. For example, all determined sentence-level phrasing templates can be used as the natural language text corresponding to the SQL statement. Alternatively, other natural language evaluation methods can be combined to score each natural language text, such as scoring based on fluency, grammatical compliance, etc., and finally, the sentence-level phrasing template that meets the preset requirements can be selected as the natural language text corresponding to the SQL statement. Specific scoring methods can utilize some existing natural language models, which will not be detailed here.
[0124] This yields a large number of sample pairs consisting of SQL statements and their corresponding natural language text. These sample pairs are context-independent, meaning they are not generated under specific contextual semantics. However, in real-world scenarios, user questions are often multi-turn and usually have semantic connections within the context, thus requiring a multi-turn dialogue semantic parsing model. Therefore, step 204 above needs to be further executed, and step 204 will be described in detail below with reference to an embodiment.
[0125] After obtaining a large number of context-independent results through the above steps<SQL,Text> Beyond the sample pairs, multi-turn dialogue sample pairs can be generated for all sample pairs, or multiple-turn sample pairs can be generated only for a subset of sample pairs. If the latter approach is adopted, context-independent dialogue samples can be generated from previously obtained samples.<SQL,Text> At least one sample pair is selected from the sample pairs, and multi-turn dialogue sample pairs are generated for each sample pair. That is, each sample pair is used as the sample pair for the first round of dialogue, and sample pairs for the subsequent N rounds of dialogue are generated. In this way, the sample pair for the first round of dialogue and the sample pairs for the subsequent N rounds of dialogue constitute a set of multi-turn dialogue sample pairs. Where N is a positive integer.
[0126] Taking a value of N of 2 as an example, suppose one of the context-independent sample pairs is...<SQL1,Text1> So, we can target<SQL1,Text1> Generate sample pairs for the second round.<SQL2,Text2> Then, a third round of sample pairs is generated.<SQL3,Text3> The generation process is described in detail below.
[0127] As one feasible approach, when using one of the sampled pairs as the sample pair for the first round of dialogue to determine the sample pairs for the subsequent N rounds of dialogue, the following method can be adopted: Figure 4 The process shown includes the following steps:
[0128] Step 401: Use the sample pairs from the first round of dialogue as the sample pairs for the current round.
[0129] For example, with<SQL1,Text1> First, it serves as the sample pair for the current round.
[0130] Step 402: Determine the editing strategy applicable to the sample pairs in the current round from the preset set of editing strategies.
[0131] Analysis of multiple rounds of problems occurring in real-world scenarios revealed that most problems were derived from edits of previous rounds (e.g., deleting or modifying conditions). Therefore, in this embodiment, the relationship between each round in the real-world scenario can be analyzed beforehand, and a set of editing strategies can be pre-defined. These editing strategies reflect the semantic relationships between problems in adjacent rounds, i.e., what type of semantic editing was performed.
[0132] The editing strategies mentioned above may include, but are not limited to: adding conditions, modifying conditions, deleting conditions, changing focus, modifying aggregate functions, deleting focus, restarting, refusing recognition, and table switching. These will be detailed in the next step.
[0133] Since different editing strategies are applicable to different sample pairs, for example, only SQL statements with existing conditions can be edited using strategies to modify or delete conditions. Only SQL statements with aggregate functions can be edited using strategies to modify aggregate functions. Therefore, appropriate editing strategies can be pre-defined for the syntax of various SQL statements (the syntax structure of SQL statements and their corresponding natural language texts is similar, or it can be set according to the syntax of the natural language texts). In this step, the editing strategy applicable to the sample pairs in the current round is first determined.
[0134] Step 403: Sample an editing strategy from the determined editing strategies, and use the sampled editing strategy to edit the SQL statement and natural language text in the sample pair of the current round, so as to obtain the edited SQL statement and natural language text as the sample pair for the next round of dialogue.
[0135] Assuming, for<SQL1,Text1> The applicable editing strategies are determined to be: Editing Strategy 1, Editing Strategy 2, and Editing Strategy 3. One editing strategy is sampled from these, for example, Editing Strategy 1 is randomly selected. Then, Editing Strategy 1 is used to edit SQL1 and Text1 respectively, resulting in SQL2 and Text2.<SQL2,Text2> They will be used as the second round of sample pairs.
[0136] Examples of each editing strategy are given below:
[0137] Example 1: SQL1 is "select financial products where yield>5%", and Text1 is "What financial products have a yield greater than 5%?" If the sampling editing strategy is to add a condition, then SQL2 will be "select financial products where yield>5% and yield type=principal guaranteed", and Text2 will be "What financial products have a yield greater than 5% and are principal guaranteed?" The condition added to the SQL statement must be consistent with the condition added to the natural language text. This condition can be randomly selected from the SQL syntax tree and generated by sampling column names and records in the table data, similar to the method used in the previous SQL generation process. The natural language text is then supplemented with the phrase-level wording template corresponding to the added condition to obtain the edited natural language text.
[0138] Example 2: SQL1 is "select wealth management products where yield > 5%", and Text1 is "What wealth management products have a yield greater than 5%?" If the sampling editing strategy is to modify the condition, new column names and record values can be sampled to modify the condition, resulting in SQL2 as "select wealth management products where withdrawal rate > 20%". In the natural language text, the phrase-level wording template corresponding to the original condition is replaced with the phrase-level wording template of the modified condition, and Text2 becomes "What wealth management products have a withdrawal rate greater than 20%?"
[0139] Example 3: SQL1 is "select wealth management products where yield>5%", and Text1 is "What wealth management products have a yield greater than 5%?". If the sampling editing strategy is a deletion condition, then SQL2 will be "select wealth management products", and Text2 will be "What wealth management products are available?".
[0140] Example 4: SQL1 is "select financial products where yield>5%", and Text1 is "What financial products have a yield greater than 5%?". If the sampling editing strategy is to modify the focus, the focus parameter can be modified using new table and column names. For example, SQL2 can be generated as "select stocks where yield>5%". The natural resources text is then replaced using the phrase-level wording template corresponding to the new focus parameter, resulting in Text2 as "What stocks have a yield greater than 5%?".
[0141] Example 5: SQL1 is "select count financial products where yield>5%", and Text1 is "How many financial products have a yield greater than 5%?". If the sampling editing strategy is to modify the aggregate function, the aggregate function in SQL1 can be replaced with the new aggregate function, resulting in SQL2 as "select top5 financial products where yield>5%". The natural language text is then replaced using the word-granularity phrasing template corresponding to the new aggregate function, resulting in Text2 as "What are the top 5 financial products with yields greater than 5%?".
[0142] Example 6: SQL1 is "select wealth management products count wealth management products where yield>5%", and Text1 is "What wealth management products have a yield greater than 5%, and how many are there?" If the sampling editing strategy is to remove focus, at least one focus can be removed from SQL1, but it must be ensured that the focus is still present in the new SQL2. For example, SQL2 would be "select wealth management products where yield>5%", and Text2 would be "What wealth management products have a yield greater than 5%?"
[0143] Example 7: SQL1 is "select wealth management products where yield > 5%", and Text1 is "What wealth management products have a yield greater than 5%?" If the sampling editing strategy is restart, a new SQL2 will be generated: "select count stocks where issuance time > 3 years", and Text2 will be "How many stocks have an issuance time greater than 3 years?" Restarting is equivalent to generating new SQL statements and natural language text, which can be reused in this case. Figure 2 Steps 201-202 shown in the diagram first generate SQL statements, and then reuse them. Figure 2 Step 203, as shown, generates the corresponding natural language text for the newly generated SQL statement. However, it should be noted that the queried table is not changed in this case.
[0144] Example 8: SQL1 is "select financial products where yield>5%", and Text1 is "What financial products have a yield greater than 5%?". If the sampling editing policy is set to refuse recognition, then SQL2 and Text2 will not be generated.<SQL1,Text1> The next round is empty, or the next round is still empty.<SQL1,Text1> .
[0145] Example 9: SQL1 is "select wealth management products where yield > 5%", and Text1 is "What wealth management products have a yield greater than 5%?". If the sampling editing strategy is table switching, then a new SQL2 will be generated as "select song title where singer = XX and lyricist = YY", and Text2 will be "What is the song sung by XX and composed by YY?". This situation is similar to the restart in Example 7 above, except that the table being queried needs to be changed in this case.
[0146] It should be noted that the above editing strategies are merely examples listed in this embodiment, and the above editing strategies can be extended. As long as they are within the spirit and principles of this application, they are all within the scope of protection of this application.
[0147] Step 404: Determine whether sample pairs from N rounds after the first round of dialogue have been obtained. If not, proceed to step 405; if yes, proceed to step 406.
[0148] Step 405: Use the sample pair of the next round of dialogue obtained from the editing as the sample pair of the current round, and proceed to step 402.
[0149] Step 406: Combine the sample pairs from the first round of dialogue with the sample pairs from the subsequent N rounds of dialogue to form a set of multi-round dialogue sample pairs, and end the process.
[0150] Assuming N is 2,<SQL1,Text1> In the current round, the sampling-based editing strategy is used to edit SQL1 and Text1 respectively, resulting in...<SQL2,Text2> Then in<SQL2,Text2> In the current round, the sampling-based editing strategy is used to edit SQL2 and Text2 respectively, resulting in...<SQL3,Text3> This results in a set of multi-round sample pairs:
[0151] <SQL1,Text1> ,<SQL2,Text2> and<SQL3,Text3> .
[0152] In addition to using the context-independent sample pairs automatically generated in the above embodiments as training data to train the semantic parsing model, the multi-turn dialogue sample pairs automatically generated in the above embodiments can also be used as training data to train the semantic parsing model, thereby helping the semantic parsing model understand the semantic relationships between multi-turn questions and thus enhancing the understanding ability of the semantic parsing model.
[0153] It should also be noted that the large number of automatically generated sample pairs (including context-independent sample pairs or multi-turn dialogue sample pairs) mentioned above can be used as training data for training a pre-trained language model. After training the pre-trained language model, further fine-tuning can be performed on the pre-trained language model to obtain the semantic parsing model. This application does not impose any limitations on this.
[0154] The foregoing has described specific embodiments of this specification. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired result. In some embodiments, multitasking and parallel processing are possible or may be advantageous.
[0155] According to another embodiment, a data generation apparatus is provided. Figure 5 A schematic block diagram of the data generation apparatus according to one embodiment is shown, the apparatus being disposed in Figure 1 The server-side component in the illustrated architecture can be an application located on the server side, or a plugin or software development kit (SDK) functional unit within an application located on the server side, or it can be located on a computer terminal with strong computing capabilities. This embodiment of the invention does not impose any particular limitations on these aspects. Figure 5As shown, the device 500 includes: a syntax tree acquisition unit 501, an SQL statement generation unit 502, and a text generation unit 503, and may further include a multi-round sample generation unit 504. The main functions of each component are as follows:
[0156] Syntax tree acquisition unit 501 is configured to acquire an SQL syntax tree, wherein the SQL syntax tree is pre-generated using SQL syntax rules.
[0157] SQL statement generation unit 502 is configured to generate one or more SQL statements by combining the SQL syntax tree with sampled table data.
[0158] The text generation unit 503 is configured to generate corresponding natural language text for each SQL statement based on a pre-configured discourse template, so as to obtain multiple sample pairs, each consisting of an SQL statement and its corresponding natural language text.
[0159] The SQL syntax tree includes operation nodes and condition nodes; operation nodes include operation keywords, focus parameters, and aggregate functions; condition nodes include condition keywords, condition parameters, and condition operators; and focus parameters and / or condition parameters indicate the corresponding table data type.
[0160] The SQL statement generation unit 502 can be specifically configured to traverse the SQL syntax tree and fill the traversed focus parameters and / or condition parameters with sampled table data to obtain more than one SQL statement.
[0161] Specifically, the SQL statement generation unit 502 can fill the focus parameter with the sampled table name and / or column name; and / or fill the condition parameter with the sampled column name and record value.
[0162] In a preferred embodiment, the text generation unit 503 may be specifically configured to: determine the word-level discourse templates corresponding to the focus parameters, condition parameters, aggregate functions, and conditional operators in the SQL statement; combine the determined word-level discourse templates according to the logical relationships between the focus parameters, condition parameters, aggregate functions, and conditional operators in the SQL statement to obtain more than one phrase-level discourse template; combine the more than one phrase-level discourse templates according to the logical relationships between the phrases in the SQL statement to obtain more than one sentence-level discourse template; and determine the natural language text corresponding to the SQL statement from more than one sentence-level discourse template.
[0163] The multi-round sample generation unit 504 is configured to sample at least one sample pair from the multiple sample pairs obtained; use each sample pair as the sample pair for the first round of dialogue to generate sample pairs for the subsequent N rounds of dialogue, where N is a positive integer; and combine the sample pairs for the first round of dialogue and the sample pairs for the subsequent N rounds of dialogue to form a set of multi-round dialogue sample pairs.
[0164] Specifically, when the multi-round sample generation unit 504 generates sample pairs for subsequent N rounds of dialogue based on the sample pairs from the first round of dialogue, it can perform the following operations:
[0165] Use the sample pairs from the first round of dialogue as the sample pairs for the current round;
[0166] Determine the appropriate editing strategy for the sample pairs in the current round from the preset set of editing strategies;
[0167] Sampling an editing strategy from the defined editing strategies, the sample SQL statement and natural language text in the current round of the sample pair are edited using the sampled editing strategy, and the edited SQL statement and natural language text are used as the sample pair for the next round of dialogue.
[0168] The sample pair of the next round of dialogue obtained from the editing is used as the sample pair of the current round. The operation of determining the editing strategy applicable to the sample pair of the current round from the preset editing strategy set is carried out until the sample pair of the first round of dialogue is obtained and the sample pair of the N rounds of dialogue are obtained.
[0169] The set of editing strategies includes at least one of the following editing strategies:
[0170] Add conditions, modify conditions, delete conditions, change focus, modify aggregate functions, delete focus, restart, refuse recognition, and switch tables.
[0171] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, for system or system embodiments, since they are basically similar to method embodiments, the description is relatively simple, and relevant parts can be referred to the descriptions in the method embodiments. The systems and system embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without creative effort.
[0172] It should be noted that the embodiments of this application may involve the use of user data. In practical applications, user-specific personal data may be used in the scheme described herein within the scope permitted by applicable laws and regulations, provided that it complies with the applicable laws and regulations of the country (e.g., with the user's explicit consent, with the user being properly notified, etc.).
[0173] In addition, embodiments of this application also provide a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of the method described in any of the foregoing method embodiments.
[0174] And an electronic device, comprising:
[0175] One or more processors; and
[0176] A memory associated with the one or more processors, the memory being used to store program instructions that, when read and executed by the one or more processors, perform the steps of the method described in any of the foregoing method embodiments.
[0177] in, Figure 6 An exemplary architecture of an electronic device is shown, which may include a processor 610, a video display adapter 611, a disk drive 612, an input / output interface 613, a network interface 614, and a memory 620. The processor 610, video display adapter 611, disk drive 612, input / output interface 613, network interface 614, and memory 620 can communicate with each other via a communication bus 630.
[0178] The processor 610 can be implemented using a general-purpose CPU, microprocessor, application-specific integrated circuit (ASIC), or one or more integrated circuits to execute relevant programs and implement the technical solution provided in this application.
[0179] The memory 620 can be implemented in the form of ROM (Read Only Memory), RAM (Random Access Memory), static storage device, dynamic storage device, etc. The memory 620 can store the operating system 621 for controlling the operation of the electronic device 600, and the basic input / output system (BIOS) 622 for controlling the low-level operations of the electronic device 600. Additionally, it can store a web browser 623, a data storage management system 624, and a data generation device 625, etc. The aforementioned data generation device 625 can be the application program that specifically implements the aforementioned steps in this embodiment. In summary, when the technical solution provided in this application is implemented through software or firmware, the relevant program code is stored in the memory 620 and is called and executed by the processor 610.
[0180] Input / output interface 613 is used to connect input / output modules to realize information input and output. Input / output modules can be configured as components in the device (not shown in the figure) or externally connected to the device to provide corresponding functions. Input devices may include keyboards, mice, touch screens, microphones, various sensors, etc., and output devices may include displays, speakers, vibrators, indicator lights, etc.
[0181] Network interface 614 is used to connect a communication module (not shown in the figure) to enable communication between this device and other devices. The communication module can communicate via wired means (such as USB, Ethernet cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.).
[0182] Bus 630 includes a pathway for transmitting information between various components of the device, such as processor 610, video display adapter 611, disk drive 612, input / output interface 613, network interface 614, and memory 620.
[0183] It should be noted that although the above-described device only shows the processor 610, video display adapter 611, disk drive 612, input / output interface 613, network interface 614, memory 620, bus 630, etc., in specific implementations, the device may also include other components necessary for normal operation. Furthermore, those skilled in the art will understand that the above-described device may only include the components necessary for implementing the solution of this application, and does not necessarily include all the components shown in the figures.
[0184] As can be seen from the above description of the embodiments, those skilled in the art can clearly understand that this application can be implemented by means of software plus necessary general-purpose hardware platforms. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in various embodiments or some parts of the embodiments of this application.
[0185] The data processing methods, apparatus, devices, and computer-readable storage media provided in this application have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are only for the purpose of helping to understand the methods and core ideas of this application. Furthermore, those skilled in the art will recognize that, based on the ideas of this application, there will be changes in specific implementation methods and application scope. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. A data generation method, the method comprising: Obtain the Structured Query Language (SQL) syntax tree, wherein the SQL syntax tree is pre-generated using SQL syntax rules; Using the SQL syntax tree in combination with sampled table data, one or more SQL statements are generated, wherein the sampled table data is obtained from the database according to the table data type indicated by the SQL syntax tree; Based on pre-configured script templates, corresponding natural language texts are generated for each SQL statement to obtain multiple sample pairs, each consisting of an SQL statement and its corresponding natural language text. Sample at least one sample pair from the obtained plurality of sample pairs; Each sample pair is used as a sample pair for the first round of dialogue, and sample pairs for the subsequent N rounds of dialogue are generated, where N is a positive integer. Use the sample pairs from the first round of dialogue as the sample pairs for the current round; The SQL statements and natural language text in the sample pairs of the current round are edited using the sampling editing strategy, and the edited SQL statements and natural language text are used as sample pairs for the next round of dialogue.
2. The method according to claim 1, wherein, The SQL syntax tree includes operation section nodes and condition section nodes; The operation section nodes include operation keywords, focus parameters, and aggregation functions; The condition section nodes include condition keywords, condition parameters, and condition operators; The focus parameter and / or the condition parameter indicate the corresponding table data type.
3. The method according to claim 2, wherein generating one or more SQL statements by combining the SQL syntax tree with sampled table data includes: Traverse the SQL syntax tree and fill in the key parameters and / or condition parameters encountered by the traversal using the sampled table data to obtain more than one SQL statement.
4. The method according to claim 1, wherein, The process of generating corresponding natural language text for each SQL statement based on a pre-configured script template includes: Determine the word-granularity word templates corresponding to the focus parameters, condition parameters, aggregate functions, and conditional operators in the SQL statement; Based on the logical relationships between the focus parameters, condition parameters, aggregate functions, and conditional operators in the SQL statement, the determined word-level word templates are combined to obtain more than one phrase-level word template. Based on the logical relationship between phrases in the SQL statement, the more than one phrase-level word template is combined to obtain more than one sentence-level word template. Determine the natural language text corresponding to the SQL statement from one or more sentence-level phrasing templates.
5. The method according to claim 1, wherein, The generation of sample pairs for subsequent N rounds of dialogue based on the sample pairs from the first round of dialogue includes: The sample pairs from the first round of dialogue are used as the sample pairs for the current round; Determine the appropriate editing strategy for the sample pairs in the current round from the preset set of editing strategies; Sampling an editing strategy from the defined editing strategies, the sample SQL statement and natural language text in the current round of the sample pair are edited using the sampled editing strategy, and the edited SQL statement and natural language text are used as the sample pair for the next round of dialogue. The sample pair of the next round of dialogue obtained through editing is used as the sample pair of the current round, and the operation of determining the editing strategy applicable to the sample pair of the current round from the preset editing strategy set is carried out until the sample pair of the first round of dialogue is obtained and the sample pair of the N rounds of dialogue are obtained.
6. The method according to claim 5, wherein, The set of editing strategies includes at least one of the following editing strategies: Add conditions, modify conditions, delete conditions, change focus, modify aggregate functions, delete focus, restart, refuse recognition, and switch tables.
7. A data generation method, the method comprising: Obtain a Structured Query Language (SQL) syntax tree, wherein the SQL syntax tree is pre-generated using SQL syntax rules; Using the SQL syntax tree in combination with sampled table data, one or more SQL statements are generated, wherein the sampled table data is obtained from the database according to the table data type indicated by the SQL syntax tree; Based on pre-configured script templates, corresponding natural language texts are generated for each SQL statement to obtain multiple sample pairs, each consisting of an SQL statement and its corresponding natural language text. The method further includes: sampling at least one sample pair from the obtained plurality of sample pairs; using each sample pair as a sample pair for the first round of dialogue to generate sample pairs for the subsequent N rounds of dialogue, where N is a positive integer; using the sample pair for the first round of dialogue as the sample pair for the current round; and using the sampling editing strategy to edit the SQL statement and natural language text in the sample pair for the current round, so as to obtain the edited SQL statement and natural language text as the sample pair for the next round of dialogue, wherein the editing strategy is used to reflect the semantic relationship between adjacent rounds of data.
8. The method according to claim 7, wherein, The SQL syntax tree includes operation section nodes and condition section nodes; The operation section nodes include operation keywords, focus parameters, and aggregation functions; The condition section nodes include condition keywords, condition parameters, and condition operators; The focus parameter and / or the condition parameter indicate the corresponding table data type.
9. The method according to claim 8, wherein, Using the SQL syntax tree in combination with the sampled table data, generating one or more SQL statements includes: Traverse the SQL syntax tree and fill in the key parameters and / or condition parameters encountered by the traversal using the sampled table data to obtain more than one SQL statement.
10. The method according to claim 7, wherein, The process of generating corresponding natural language text for each SQL statement based on a pre-configured script template includes: Determine the word-granularity word templates corresponding to the focus parameters, condition parameters, aggregate functions, and conditional operators in the SQL statement; Based on the logical relationships between the focus parameters, condition parameters, aggregate functions, and conditional operators in the SQL statement, the determined word-level word templates are combined to obtain more than one phrase-level word template. Based on the logical relationship between phrases in the SQL statement, the more than one phrase-level word template is combined to obtain more than one sentence-level word template. Determine the natural language text corresponding to the SQL statement from one or more sentence-level phrasing templates.
11. A method for acquiring training data, the method comprising: Acquire sample pairs as training data, wherein the sample pairs include multi-turn dialogue sample pairs generated by the method of any one of claims 1 to 6, or sample pairs generated by the method of any one of claims 7 to 10; The training data is used to train a table-based pre-trained language model or a table-based semantic parsing model.
12. A data generation apparatus, the apparatus comprising: The syntax tree acquisition unit is configured to acquire a structured query language (SQL) syntax tree, wherein the SQL syntax tree is pre-generated using SQL syntax rules; The SQL statement generation unit is configured to generate one or more SQL statements by combining the SQL syntax tree with sampled table data, wherein the sampled table data is sampled from the database according to the table data type indicated by the SQL syntax tree; The text generation unit is configured to generate corresponding natural language text for each SQL statement based on a pre-configured discourse template, so as to obtain multiple sample pairs, wherein each sample pair consists of an SQL statement and its corresponding natural language text. A multi-round sample generation unit is configured to sample at least one sample pair from the obtained plurality of sample pairs; and to use each sample pair as the sample pair for the first round of dialogue to generate sample pairs for the subsequent N rounds of dialogue, where N is a positive integer. The multi-round sample generation unit is also used to take the sample pairs from the first round of dialogue as the sample pairs for the current round; and to use the sampling editing strategy to edit the SQL statements and natural language text in the sample pairs for the current round, so as to obtain the edited SQL statements and natural language text as the sample pairs for the next round of dialogue.
13. A data generation apparatus, the apparatus comprising: The syntax tree acquisition unit is configured to acquire a structured query language (SQL) syntax tree, wherein the SQL syntax tree is pre-generated using SQL syntax rules; The SQL statement generation unit is configured to generate one or more SQL statements by combining the SQL syntax tree with sampled table data, wherein the sampled table data is sampled from the database according to the table data type indicated by the SQL syntax tree; The text generation unit is configured to generate corresponding natural language text for each SQL statement based on a pre-configured discourse template, so as to obtain multiple sample pairs, wherein each sample pair consists of an SQL statement and its corresponding natural language text. The text generation unit is further configured to sample at least one sample pair from the obtained plurality of sample pairs; use each sample pair as a sample pair for the first round of dialogue to generate sample pairs for the subsequent N rounds of dialogue, where N is a positive integer; use the sample pairs for the first round of dialogue as the sample pairs for the current round; and use the sampling editing strategy to edit the SQL statements and natural language text in the sample pairs for the current round, so as to obtain the edited SQL statements and natural language text as the sample pairs for the next round of dialogue, wherein the editing strategy is used to reflect the semantic relationship between adjacent rounds of data.
14. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the steps of the method according to any one of claims 1 to 11.
15. An electronic device, characterized in that, include: One or more processors; as well as A memory associated with the one or more processors, the memory being used to store program instructions that, when read and executed by the one or more processors, perform the steps of the method according to any one of claims 1 to 11.
Citation Information
Patent Citations
Database audit result translation method and system based on natural language
CN103886021A
Data pair generation method and device, electronic equipment and storage medium
CN112559552A