WO2022105493A1 - 基于语义识别的数据查询方法、装置、设备及存储介质 - Google Patents

基于语义识别的数据查询方法、装置、设备及存储介质 Download PDF

Info

Publication number
WO2022105493A1
WO2022105493A1 PCT/CN2021/123896 CN2021123896W WO2022105493A1 WO 2022105493 A1 WO2022105493 A1 WO 2022105493A1 CN 2021123896 W CN2021123896 W CN 2021123896W WO 2022105493 A1 WO2022105493 A1 WO 2022105493A1
Authority
WO
WIPO (PCT)
Prior art keywords
intent
target
data
result
character set
Prior art date
Application number
PCT/CN2021/123896
Other languages
English (en)
French (fr)
Inventor
赵亮
Original Assignee
深圳壹账通智能科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳壹账通智能科技有限公司 filed Critical 深圳壹账通智能科技有限公司
Publication of WO2022105493A1 publication Critical patent/WO2022105493A1/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Definitions

  • the present application relates to the field of artificial intelligence, and in particular, to a data query method, apparatus, device and storage medium based on semantic recognition.
  • the inventor realized that the former controls the sentence complexity of user query sentences through offline training or interface constraints, so as to achieve more accurate analysis results; In the well-known range of the model training set, the parsing results are often incorrect, resulting in low data query efficiency.
  • a data query method based on semantic recognition includes:
  • target character set When the target character set satisfies the preset condition, generate a target SQL statement based on the target character set, query a preset database according to the target SQL statement to obtain target data, and feed back the target data to the user.
  • a data query device based on semantic recognition includes:
  • Recognition module used to receive a data query request sent by a user, obtain the first voice data carried in the request, and identify the intent result of the first voice data based on a pre-built intent template;
  • Judging module used to obtain the target character set corresponding to the intent result, and judge whether the target character set satisfies the preset condition for generating the target SQL statement;
  • Query module used to generate a target SQL statement based on the target character set when the target character set satisfies the preset condition, query a preset database to obtain target data according to the target SQL statement, and feed back the target data to the user.
  • An electronic device comprising:
  • the memory stores a program executable by the at least one processor, the program being executed by the at least one processor to enable the at least one processor to perform the steps of:
  • target character set When the target character set satisfies the preset condition, generate a target SQL statement based on the target character set, query a preset database according to the target SQL statement to obtain target data, and feed back the target data to the user.
  • a computer-readable storage medium stores a data query program based on semantic recognition, and when the data query program based on semantic recognition is executed by a processor, the following steps are implemented:
  • target character set When the target character set satisfies the preset condition, generate a target SQL statement based on the target character set, query a preset database according to the target SQL statement to obtain target data, and feed back the target data to the user.
  • the present application can improve the efficiency of user data query.
  • FIG. 1 is a schematic flowchart of a preferred embodiment of a data query method based on semantic recognition of the present application
  • FIG. 2 is a schematic block diagram of a preferred embodiment of a data query device based on semantic recognition of the present application
  • FIG. 3 is a schematic diagram of a preferred embodiment of the electronic device of the present application.
  • AI artificial intelligence
  • digital computers or machines controlled by digital computers to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use knowledge to obtain the best results.
  • the basic technologies of artificial intelligence generally include technologies such as sensors, special artificial intelligence chips, cloud computing, distributed storage, big data processing technology, operation/interaction systems, and mechatronics.
  • Artificial intelligence software technology mainly includes computer vision technology, robotics technology, biometrics technology, speech processing technology, natural language processing technology, and machine learning/deep learning.
  • the present application provides a data query method based on semantic recognition.
  • FIG. 1 it is a schematic flowchart of an embodiment of a data query method based on semantic recognition of the present application.
  • the method may be performed by an electronic device, which may be implemented by software and/or hardware.
  • Data query methods based on semantic recognition include:
  • Step S10 Receive a data query request sent by a user, acquire first voice data carried in the request, and identify an intent result of the first voice data based on a pre-built intent template.
  • the scenario of a user querying report data is taken as an example to describe the solution. It should be noted that the specific scenario of the solution is not limited to querying certain report data.
  • the user can open the application program on the terminal for querying the report data, and input the relevant data to be queried through the application program by voice. For example, after clicking the "Report Data Query" virtual button on the human-computer interaction interface of the application, the terminal prompts "Please input the specific information you want to query" on the interface, and the user can send report data to the terminal after inputting the relevant voice.
  • the terminal parses the request and obtains the first voice data carried in the request.
  • the request may include voice data input by the user, and may also include the storage path and unique identifier of the voice data. That is to say, the first voice data may be entered by the user when submitting the data query request.
  • the semantic information of the first speech data is identified according to a pre-built intent template, where the intent template may refer to an NLU template, and the NLU template is an abbreviation of Nature Language Understanding.
  • NLU templates record the intent corresponding to various sentence patterns. E.g:## intent: thank you
  • the square brackets are placeholders, which can be any relevant scene words. For example, in the loan data table scenario, it can be overdue rate, non-performing rate, etc.
  • the content in parentheses is the entity type of this placeholder, and these templates correspond to the "one_amb_rule" intent.
  • identifying the intent result of the first voice data based on a pre-built intent template includes:
  • Identify the semantic result of the first speech data according to the pre-trained semantic recognition model match the semantic result with multiple pre-built intent templates, and determine whether the intent template associated with the semantic result is matched.
  • the intent template associated with the semantic result is matched, the intent information corresponding to the intent template is used as the intent result of the first speech data.
  • the semantic recognition model can be trained according to the bert model, and the Rasa framework can be used to train the semantic recognition model.
  • Rasa is an open source machine learning framework for building contextual AI assistants and chatbots. Rasa embeds large-scale semantic recognition such as bert and XLnet The model greatly improves the accuracy of the model's intention understanding. After identifying the semantic result of the first speech data, match the identified semantic result with a plurality of pre-built intent templates, determine whether the intent template associated with the semantic result is matched, and when matched, the intent template corresponds to The intent information is used as the intent result of the first voice data.
  • the judging whether the intent template associated with the semantic result is matched includes:
  • the similarity value of the intent information corresponding to the semantic result and each intent template is calculated respectively, and when there is a similarity value greater than a preset threshold, the similarity value
  • the intent information corresponding to the largest intent template is used as the intent result of the first voice data.
  • the intent information corresponding to the intent template with the largest similarity value is selected as the intent result of the first voice data, and the situation that the intent template obtains the intent result of the first voice data can also be provided when the corresponding intent template is not matched.
  • the method further includes:
  • the first preset prompt information is fed back to the user.
  • the user's first voice data does not match the intent template, and the similarity between the semantic result and the intent corresponding to each intent template is less than the preset threshold, it means that the user's first voice data has nothing to do with the intent of the intent template. It can feedback prompt information to the user, for example, "please re-enter the query information by voice" and so on.
  • the method before receiving the request for data query sent by the user, the method further includes:
  • the whitelist can refer to the list of users with query data reports. When there is data matching the user's identity information in the whitelist, the user is considered It has the right to initiate a data query request. When there is no data matching the user's identity information in the whitelist, it is considered that the user does not have the right, and a preset prompt message is sent.
  • the preset prompt message can be "no query permission" and so on.
  • Step S20 Obtain a target character set corresponding to the intent result, and determine whether the target character set satisfies a preset condition for generating a target SQL statement.
  • the target character set corresponding to the intent result is obtained, and it is judged whether the target character set satisfies a preset condition for generating an SQL statement, and the preset condition may be the existence of the target character set and the select, where and groupby parts of the SQL statement. the corresponding character.
  • the purpose of identifying the intent result is to gradually fill in the SQL by filling the slot to make it an executable SQL statement.
  • the SQL statement is composed of select, from, where, groupby, orderby, etc., and the slots are the above-mentioned various entity type.
  • the entities of type Measure and rule correspond to the select aggregation function part, the dimension corresponds to the specific select column and the groupby part, and the filter and time numbers correspond to the where filter condition part.
  • the related keywords of the preset data table are classified and mapped to the entity types of the above-mentioned intent template, and the SQL statement generated by the target character set of the intent result can determine which types of data in the data table correspond to the user's first voice data, for example :
  • the time type has nothing to do with the specific scene, and can be identified through named entity recognition, regular expressions, etc.
  • the method further includes:
  • the target story line corresponding to the intent information is determined from a pre-built story line set, and the first voice data is identified according to the target story line The corresponding target character set.
  • the target story line corresponding to the intent information is determined from the pre-built story line set, and the target character corresponding to the first voice data is identified according to the target story line. For example, if the user's first voice data is "How about the recent overdue rate?", it can be determined that the target story line is the overdue rate story line, not the non-performing rate story line.
  • the determining the target story line corresponding to the intention information from the pre-built story line set includes:
  • Multi-round Dialogue Assistant Do you want to ask the overdue rate of different products or the overdue rate of different institutions?
  • Multi-round Conversation Assistant Shows you the overdue rate of different products in the past six months.
  • Step S30 when the target character set satisfies the preset condition, generate a target SQL statement based on the target character set, query a preset database according to the target SQL statement to obtain target data, and feed back the target data to the target character set. described user.
  • the content corresponding to the characters in the target character set is filled into the preset SQL template
  • the target report can be obtained by querying the preset database according to the target SQL statement.
  • the preset database may be a local database of a financial institution or a third-party database, and then the target report will be fed back to the user.
  • Multi-round Conversation Assistant Shows you the overdue rate of different products in the past six months. At the same time output a report.
  • FIG. 2 it is a schematic diagram of functional modules of the data query apparatus 100 based on semantic recognition of the present application.
  • the data query apparatus 100 based on semantic recognition described in this application can be installed in an electronic device.
  • the data query apparatus 100 based on semantic recognition may include a recognition module 110 , a judgment module 120 and a query module 130 .
  • the modules described in the present invention can also be called units, which refer to a series of computer program segments that can be executed by the electronic device processor and can perform fixed functions, and are stored in the memory of the electronic device.
  • each module/unit is as follows:
  • the identification module 110 is configured to receive a data query request sent by a user, obtain the first voice data carried in the request, and identify the intent result of the first voice data based on a pre-built intent template.
  • the scenario of a user querying report data is used as an example to describe the solution. It should be noted that the specific scenario of the solution is not limited to querying certain report data.
  • the user can open the application program on the terminal for querying the report data, and input the relevant data to be queried through the application program by voice. For example, after clicking the "Report Data Query" virtual button on the human-computer interaction interface of the application, the terminal prompts "Please input the specific information you want to query" on the interface, and the user can send report data to the terminal after inputting the relevant voice.
  • the terminal parses the request and obtains the first voice data carried in the request.
  • the request may include the voice data input by the user, and may also include the storage path and unique identifier of the voice data. That is to say, the first voice data may be entered by the user when submitting the data query request.
  • the semantic information of the first speech data is identified according to a pre-built intent template, where the intent template may refer to an NLU template, and the NLU template is an abbreviation of Nature Language Understanding.
  • NLU templates record the intent corresponding to various sentence patterns. E.g:## intent: thank you
  • the square brackets are placeholders, which can be any relevant scene words. For example, in the loan data table scenario, it can be overdue rate, non-performing rate, etc.
  • the content in parentheses is the entity type of this placeholder, and these templates correspond to the "one_amb_rule" intent.
  • identifying the intent result of the first voice data based on a pre-built intent template includes:
  • Identify the semantic result of the first speech data according to the pre-trained semantic recognition model match the semantic result with multiple pre-built intent templates, and determine whether the intent template associated with the semantic result is matched.
  • the intent template associated with the semantic result is matched, the intent information corresponding to the intent template is used as the intent result of the first speech data.
  • the semantic recognition model can be trained according to the bert model, and the Rasa framework can be used to train the semantic recognition model.
  • Rasa is an open source machine learning framework for building contextual AI assistants and chatbots. Rasa embeds large-scale semantic recognition such as bert and XLnet The model greatly improves the accuracy of the model's intention understanding. After identifying the semantic result of the first speech data, match the identified semantic result with a plurality of pre-built intent templates, determine whether the intent template associated with the semantic result is matched, and when matched, the intent template corresponds to The intent information is used as the intent result of the first voice data.
  • the judging whether the intent template associated with the semantic result is matched includes:
  • the similarity value of the intent information corresponding to the semantic result and each intent template is calculated respectively, and when there is a similarity value greater than a preset threshold, the similarity value
  • the intent information corresponding to the largest intent template is used as the intent result of the first voice data.
  • the intent information corresponding to the intent template with the largest similarity value is selected as the intent result of the first voice data, and the situation that the intent template obtains the intent result of the first voice data can also be provided when the corresponding intent template is not matched.
  • identification module is also used for:
  • the first preset prompt information is fed back to the user.
  • the user's first voice data does not match the intent template, and the similarity between the semantic result and the intent corresponding to each intent template is less than the preset threshold, it means that the user's first voice data has nothing to do with the intent of the intent template. It can feedback prompt information to the user, for example, "please re-enter the query information by voice" and so on.
  • the identification module is also used to:
  • the whitelist can refer to the list of users with query data reports. When there is data matching the user's identity information in the whitelist, the user is considered It has the right to initiate a data query request. When there is no data matching the user's identity information in the whitelist, it is considered that the user does not have the right, and a preset prompt message is sent.
  • the preset prompt message can be "no query permission" and so on.
  • the judgment module 120 is configured to obtain the target character set corresponding to the intent result, and judge whether the target character set satisfies the preset condition for generating the target SQL statement.
  • the target character set corresponding to the intent result is obtained, and it is determined whether the target character set satisfies a preset condition for generating an SQL statement.
  • the preset condition may be the character of the target character set and the select, where and groupby in the SQL statement.
  • the purpose of identifying the intent result is to gradually fill in the SQL by filling the slot to make it an executable SQL statement.
  • the SQL statement is composed of select, from, where, groupby, orderby, etc. Slots are the various entity types mentioned above. Measure and rule type entities correspond to the select aggregation function part, dimension corresponds to the specific select column and groupby part, and filter, time numbers, etc. correspond to the where filter condition part.
  • the related keywords of the preset data table are classified and mapped to the entity types of the above-mentioned intent template, and the SQL statement generated by the target character set of the intent result can determine which types of data in the data table correspond to the user's first voice data, for example :
  • the time type has nothing to do with the specific scene, and can be identified through named entity recognition, regular expressions, etc.
  • the judgment module is also used for:
  • the target story line corresponding to the intent information is determined from a pre-built story line set, and the first voice data is identified according to the target story line The corresponding target character set.
  • the target character set corresponding to the user's first voice data cannot generate a complete SQL statement, determine the target story line corresponding to the intent information from the pre-built story line set, and identify the target character corresponding to the first voice data according to the target story line . For example, if the user's first voice data is "How about the recent overdue rate?", it can be determined that the target story line is the overdue rate story line, not the non-performing rate story line.
  • the determining the target story line corresponding to the intention information from the pre-built story line set includes:
  • Multi-round Dialogue Assistant Do you want to ask the overdue rate of different products or the overdue rate of different institutions?
  • Multi-round Conversation Assistant Shows you the overdue rate of different products in the past six months.
  • the query module 130 is configured to generate a target SQL statement based on the target character set when the target character set satisfies the preset condition, query a preset database according to the target SQL statement to obtain target data, and store the target data feedback to the user.
  • the content corresponding to the characters in the target character set is filled into the preset SQL template
  • the target report can be obtained by querying the preset database according to the target SQL statement.
  • the preset database may be a local database of a financial institution or a third-party database, and then the target report will be fed back to the user.
  • Multi-round Conversation Assistant Shows you the overdue rate of different products in the past six months. At the same time output a report.
  • FIG. 3 it is a schematic diagram of a preferred embodiment of the electronic device 1 of the present application.
  • the electronic device 1 includes but is not limited to: a memory 11 , a processor 12 , a display 13 and a network interface 14 .
  • the electronic device 1 is connected to the network through the network interface 14 to obtain original data.
  • the network may be an intranet (Intranet), the Internet (Internet), a global system for mobile communications (Global System of Mobile communication, GSM), Wideband Code Division Multiple Access (WCDMA), 4G network, 5G network, Bluetooth (Bluetooth), Wi-Fi, call network and other wireless or wired networks.
  • the memory 11 includes at least one type of readable storage medium, and the readable storage medium includes flash memory, hard disk, multimedia card, card-type memory (for example, SD or DX memory, etc.), random access memory (RAM), static Random Access Memory (SRAM), Read Only Memory (ROM), Electrically Erasable Programmable Read Only Memory (EEPROM), Programmable Read Only Memory (PROM), Magnetic Memory, Magnetic Disk, Optical Disk, etc.
  • the memory 11 may be an internal storage unit of the electronic device 1 , such as a hard disk or a memory of the electronic device 1 .
  • the memory 11 may also be an external storage device of the electronic device 1, for example, a plug-in hard disk equipped with the electronic device 1, a smart memory card (Smart Media Card, SMC), Secure Digital (SD) card, Flash Card (Flash Card), etc.
  • the memory 11 may also include both an internal storage unit of the electronic device 1 and an external storage device thereof.
  • the memory 11 is generally used to store the operating system and various application software installed in the electronic device 1 , such as program codes of the data query program 10 based on semantic recognition.
  • the memory 11 can also be used to temporarily store various types of data that have been output or will be output.
  • the processor 12 may be a central processing unit (Central Processing Unit) in some embodiments. Processing Unit, CPU), controller, microcontroller, microprocessor, or other data processing chip.
  • the processor 12 is generally used to control the overall operation of the electronic device 1, such as performing data interaction or communication-related control and processing.
  • the processor 12 is configured to run the program code or process data stored in the memory 11 , for example, run the program code of the data query program 10 based on semantic recognition and the like.
  • the display 13 may be referred to as a display screen or a display unit.
  • the display 13 may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, and an organic light emitting diode (Organic Light Emitting Diode). Light-Emitting Diode, OLED) touch device, etc.
  • the display 13 is used for displaying information processed in the electronic device 1 and for displaying a visual working interface, for example, displaying the results of data statistics.
  • the network interface 14 may optionally include a standard wired interface, a wireless interface (such as a WI-FI interface), and the network interface 14 is usually used to establish a communication connection between the electronic device 1 and other electronic devices.
  • FIG. 3 only shows the electronic device 1 having the components 11-14 and the data query program 10 based on semantic recognition, but it should be understood that it is not required to implement all the shown components, and more or less may be implemented instead. s component.
  • the electronic device 1 may further include a user interface, and the user interface may include a display (Display), an input unit such as a keyboard (Keyboard), and an optional user interface may further include a standard wired interface and a wireless interface.
  • the display may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, an organic light-emitting diode (Organic Light-Emitting Diode, OLED) touch device, and the like.
  • the display may also be appropriately called a display screen or a display unit, which is used for displaying information processed in the electronic device 1 and for displaying a visualized user interface.
  • the electronic device 1 may also include a radio frequency (Radio Frequency, RF) circuits, sensors and audio circuits, etc., and will not be repeated here.
  • RF Radio Frequency
  • target character set When the target character set satisfies the preset condition, generate a target SQL statement based on the target character set, query a preset database according to the target SQL statement to obtain target data, and feed back the target data to the user.
  • the storage device may be the memory 11 of the electronic device 1 , or may be other storage devices communicatively connected to the electronic device 1 .
  • an embodiment of the present application further provides a computer-readable storage medium, where the computer-readable storage medium may be non-volatile or volatile.
  • the computer-readable storage medium may be a hard disk, a multimedia card, an SD card, a flash memory card, an SMC, a read only memory (ROM), an erasable programmable read only memory (EPROM), a portable compact disk read only memory (CD- ROM), USB memory, etc. any one or any combination of several.
  • the computer-readable storage medium includes a storage data area and a storage program area, the storage data area stores data created according to the use of blockchain nodes, and the storage program area stores a data query program 10 based on semantic recognition. When the semantically recognized data query program 10 is executed by the processor, the following operations are realized:
  • target character set When the target character set satisfies the preset condition, generate a target SQL statement based on the target character set, query a preset database according to the target SQL statement to obtain target data, and feed back the target data to the user.
  • all the above-mentioned data can also be stored in a node of a blockchain.
  • the first voice data and target data, etc. these data can be stored in the blockchain node.
  • Blockchain essentially a decentralized database, is a series of data blocks associated with cryptographic methods. Each data block contains a batch of network transaction information to verify its Validity of information (anti-counterfeiting) and generation of the next block.
  • the blockchain can include the underlying platform of the blockchain, the platform product service layer, and the application service layer.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Machine Translation (AREA)

Abstract

本申请涉及人工智能领域,提供了一种基于语义识别的数据查询方法、装置、设备及存储介质。通过接收用户发出的数据查询的请求,获取请求中携带的第一语音数据,基于预先构建的意图模板识别出第一语音数据的意图结果,获取意图结果对应的目标字符集,判断目标字符集是否满足预设的生成目标SQL语句的条件,当目标字符集满足生成目标SQL语句的条件时,基于目标字符集生成目标SQL语句,根据目标SQL语句查询预设数据库得到目标数据,将目标数据反馈至用户,利用本申请可以提高数据查询的效率。本申请还涉及区块链技术领域,上述第一语音数据及目标数据还可以存储于一区块链的节点中。

Description

基于语义识别的数据查询方法、装置、设备及存储介质
本申请要求于2020年11月17日提交中国专利局、申请号为CN202011283796.8,发明名称为“基于语义识别的数据查询方法、装置、设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及人工智能领域,尤其涉及一种基于语义识别的数据查询方法、装置、设备及存储介质。
背景技术
目前,现有自然语言查询功能都是基于规则或基于深度学习实现查询的。
技术问题
发明人意识到前者通过线下培训或者界面约束的形式,控制用户查询语句的句式复杂度,从而实现较准确的解析结果;后者通过大规模预料进行训练,当用户问句的形式超出了模型训练集所熟知的范围,解析结果往往是不正确的,导致数据查询效率较低。
发明内容
一种基于语义识别的数据查询方法,该方法包括:
接收用户发出的数据查询的请求,获取所述请求中携带的第一语音数据,基于预先构建的意图模板识别出所述第一语音数据的意图结果;
获取所述意图结果对应的目标字符集,判断所述目标字符集是否满足生成目标SQL语句的预设条件;
当所述目标字符集满足所述预设条件时,基于所述目标字符集生成目标SQL语句,根据所述目标SQL语句查询预设数据库得到目标数据,将所述目标数据反馈至所述用户。
一种基于语义识别的数据查询装置,该基于语义识别的数据查询装置包括:
识别模块:用于接收用户发出的数据查询的请求,获取所述请求中携带的第一语音数据,基于预先构建的意图模板识别出所述第一语音数据的意图结果;
判断模块:用于获取所述意图结果对应的目标字符集,判断所述目标字符集是否满足生成目标SQL语句的预设条件;
查询模块:用于当所述目标字符集满足所述预设条件时,基于所述目标字符集生成目标SQL语句,根据所述目标SQL语句查询预设数据库得到目标数据,将所述目标数据反馈至所述用户。
一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的程序,所述程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如下步骤:
接收用户发出的数据查询的请求,获取所述请求中携带的第一语音数据,基于预先构建的意图模板识别出所述第一语音数据的意图结果;
获取所述意图结果对应的目标字符集,判断所述目标字符集是否满足生成目标SQL语句的预设条件;
当所述目标字符集满足所述预设条件时,基于所述目标字符集生成目标SQL语句,根据所述目标SQL语句查询预设数据库得到目标数据,将所述目标数据反馈至所述用户。
一种计算机可读存储介质,所述计算机可读存储介质存储有基于语义识别的数据查询程序,所述基于语义识别的数据查询程序被处理器执行时,实现如下步骤:
接收用户发出的数据查询的请求,获取所述请求中携带的第一语音数据,基于预先构建的意图模板识别出所述第一语音数据的意图结果;
获取所述意图结果对应的目标字符集,判断所述目标字符集是否满足生成目标SQL语句的预设条件;
当所述目标字符集满足所述预设条件时,基于所述目标字符集生成目标SQL语句,根据所述目标SQL语句查询预设数据库得到目标数据,将所述目标数据反馈至所述用户。
有益效果
本申请可以提升用户数据查询的效率。
附图说明
图1为本申请基于语义识别的数据查询方法较佳实施例的流程图示意图;
图2为本申请基于语义识别的数据查询装置较佳实施例的模块示意图;
图3为本申请电子设备较佳实施例的示意图;
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
本发明的实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
本申请提供一种基于语义识别的数据查询方法。参照图1所示,为本申请基于语义识别的数据查询方法的实施例的方法流程示意图。该方法可以由一个电子设备执行,该电子设备可以由软件和/或硬件实现。基于语义识别的数据查询方法包括:
步骤S10:接收用户发出的数据查询的请求,获取所述请求中携带的第一语音数据,基于预先构建的意图模板识别出所述第一语音数据的意图结果。
在本实施例中,以用户查询报表数据场景为例对本方案进行说明,需要说明的是,本方案的具体场景并不仅限于某种报表数据的查询。当用户需要查询报表数据时,例如,用户查询某个金融产品的报表数据,用户可以开启终端上用于查询报表数据的应用程序,通过该应用程序用语音方式输入需要查询的相关数据。例如,点击应用程序的人机交互界面上的“报表数据查询”虚拟按钮后,终端在界面提示“请语音输入您想要查询的具体信息”,用户输入相关的语音后可以向终端发起报表数据查询的请求,终端接收到用户发出的查询数据报表的请求后,解析该请求,获取请求中携带的第一语音数据。请求中可以包括用户输入的语音数据,也可以包括该语音数据的存储路径及唯一的标识。也就是说,第一语音数据可以是用户在提交数据查询请求时一并录入。
之后,根据预先构建的意图模板识别出第一语音数据的语义信息,意图模板可以是指NLU模板,NLU模板为Nature Language Understanding的缩写。NLU模板记录了各种句式对应的意图。例如:## intent:thankyou
- 谢谢
- 感谢
- 多谢
谢谢、感谢、多谢等,都是“thankyou”意图。
## intent:one_amb_rule
- 最近[占位符指标](rule)情况如何?
- [占位符指标](rule)情况如何?
- 给我看一下[占位符指标](rule)情况
- 最近[占位符指标](rule)怎么样?
中括号里是占位符,可以是相关的任意场景词。例如,在贷款数据表场景中,可以是逾期率、不良率等,小括号里的内容是这个占位符的实体类型,这些模板对应着“one_amb_rule”意图。
在一个实施例中,所述基于预先构建的意图模板识别出所述第一语音数据的意图结果包括:
根据预先训练的语义识别模型识别出所述第一语音数据的语义结果,将所述语义结果与预先构建的多个意图模板进行匹配,判断是否匹配到所述语义结果相关联的意图模板,当匹配到所述语义结果相关联的意图模板时,将该意图模板对应的意图信息作为所述第一语音数据的意图结果。
语义识别模型可以是根据bert模型训练得到的,可以采用Rasa框架训练语义识别模型,Rasa是一个开源的机器学习框架,用于构建上下文AI助手和聊天机器人,Rasa嵌入了bert、XLnet等大型语义识别模型,使得模型意图理解正确率大幅度提升。识别出第一语音数据的语义结果后,将识别出的语义结果与预先构建的多个意图模板进行匹配,判断是否匹配到语义结果相关联的意图模板,当匹配到时,将该意图模板对应的意图信息作为第一语音数据的意图结果。
进一步地,所述判断是否匹配到所述语义结果相关联的意图模板包括:
当未匹配到所述语义结果相关联的意图模板时,分别计算所述语义结果与各意图模板对应的意图信息的相似度值,当存在大于预设阈值的相似度值时,将相似度值最大的意图模板对应的意图信息作为所述第一语音数据的意图结果。
选取相似度值最大的意图模板对应的意图信息作为第一语音数据的意图结果,可以在未匹配到相应的意图模板时,也能提供意图模板得到第一语音数据的意图结果的情况。
进一步地,在所述分别计算所述语义结果与各意图模板对应的意图信息的相似度值之后,所述方法还包括:
当不存在大于预设阈值的相似度值时,向所述用户反馈第一预设提示信息。
当用户的第一语音数据未匹配到意图模板,且语义结果与各意图模板对应的意图的相似度均小于预设阈值时,说明此时用户的第一语音数据与意图模板的意图无关,此时可以向用户反馈提示信息,例如,“请重新语音输入查询信息”等等。
在一个实施例中,在所述接收用户发出的数据查询的请求之前,所述方法还包括:
获取所述用户的身份信息,将所述身份信息与具备发起查询数据请求权限的白名单进行匹配,当匹配成功时,执行后续的步骤,当匹配失败时,拒绝请求并发送第二预设提示信息。
将用户的身份信息与预设数据库中的具备查询请求权限的白名单进行匹配,白名单可以是指具有查询数据报表的用户名单,当白名单中存在与用户身份信息匹配的数据时,认为用户具备发起数据查询请求的权限,当白名单中不存在与用户身份信息匹配的数据时,认为用户不具备权限,并发送预设提示信息,预设的提示信息可以是“无查询权限”等。
步骤S20:获取所述意图结果对应的目标字符集,判断所述目标字符集是否满足生成目标SQL语句的预设条件。
在本实施例中,获取意图结果对应的目标字符集,判断目标字符集是否满足预设的生成SQL语句的条件,预设的条件可以是目标字符集中存在与SQL语句中select、where及groupby部分相对应的字符。识别意图结果的目的是通过填槽的方式,逐步将SQL进行填充,使其成为一个可执行的SQL语句,SQL语句是由select、from、where、groupby、orderby等组成,槽位为上述各种实体类型。Measure、rule类型的实体对应的是select聚合函数部分,dimension对应的是具体的select列以及groupby部分,filter、time数字等对应的是where筛选条件部分。
需要识别出用户的第一语音数据中哪些关键词是与预设数据表中相关的(列名、value等),及第一语音数据中的时间描述词,例如“2020年”、“近三年”、“去年”等等。
将预设数据表相关关键字进行分类,映射至上述意图模板的实体类型中,通过意图结果的目标字符集生成的SQL语句可以确定用户的第一语音数据对应数据表中哪些类型的数据,例如:
数据表中的数值型列名—measure类型
数据表中的枚举型列名—dimension类型
数据表中的枚举值—filter类型
指标—rule类型
时间字符串—time类型
数字—number类型
时间类型与具体场景无关,可以通过命名实体识别、正则表达式等进行识别。
在一个实施例中,在所述判断所述目标字符集是否满足生成目标SQL语句的预设条件之后,所述方法还包括:
当所述目标字符集不满足所述生成目标SQL语句的条件时,从预先构建的故事线集中确定所述意图信息对应的目标故事线,根据所述目标故事线识别出所述第一语音数据对应的目标字符集。
当用户的第一语音数据对应的目标字符集不能生成完整的SQL语句时,从预先构建的故事线集中确定意图信息对应的目标故事线,根据目标故事线识别出第一语音数据对应的目标字符。例如,用户的第一语音数据为“最近的逾期率情况如何?”,则可以确定目标故事线为逾期率的故事线,而不是不良率的故事线。
进一步地,所述从预先构建的故事线集中确定所述意图信息对应的目标故事线包括:
将所述意图信息与所述故事线集的多个根节点的语句进行匹配,将匹配成功的根节点的第一语句反馈至所述用户,接收所述用户基于所述第一语句的第二语音数据,基于预先构建的意图模板识别出所述第二语音数据的意图信息,将该意图信息的目标字符添加至所述目标字符集,重新判断该目标字符集是否满足预设的生成SQL语句的条件。
用户往往是不能够清楚表达出自己的需求,可能提一些较为模糊的查询问题,得到能够生成SQL语句的意图结果对应的目标字符集。通过故事线不断征询和提示用户,引导用户从模糊的查询语音,到最终输入正确的查询语音,提升了用户数据查询的效率。例如:
用户:最近六个月的逾期率情况如何?
多轮对话助手:您是想问不同产品的逾期率还是不同机构的逾期率?
用户:不同产品。
多轮对话助手:向您展示的是近六个月不同产品的逾期率。
步骤S30:当所述目标字符集满足所述预设条件时,基于所述目标字符集生成目标SQL语句,根据所述目标SQL语句查询预设数据库得到目标数据,将所述目标数据反馈至所述用户。
在本实施例中,当满足生成SQL语句的条件时,即目标字符集中存在与SQL语句select、where及groupby部分相对应的内容时,将目标字符集的字符对应的内容填充至预设SQL模板的相关位置,例如,将目标字符集中rule类型对应的内容填充至SQL模板的select位置,将目标字符集中time类型的内容填充至SQL模板的where位置,将目标字符集中dimension类型的内容填充至SQL模板的groupby位置,可以生成一个可执行的目标SQL语句。生成目标SQL语句后,根据该目标SQL语句查询预设数据库可以得到目标报表,预设数据库可以是金融机构的本地数据库,也可以是第三方数据库,之后将目标报表反馈至用户。例如:
用户:最近六个月的产品的逾期率情况如何?
多轮对话助手:向您展示的是近六个月不同产品的逾期率。同时输出一张报表。
参照图2所示,为本申请基于语义识别的数据查询装置100的功能模块示意图。
本申请所述基于语义识别的数据查询装置100可以安装于电子设备中。根据实现的功能,所述基于语义识别的数据查询装置100可以包括识别模块110、判断模块120及查询模块130。本发所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:
识别模块110,用于接收用户发出的数据查询的请求,获取所述请求中携带的第一语音数据,基于预先构建的意图模板识别出所述第一语音数据的意图结果。
在本实施例中,以用户查询报表数据场景为例对本方案进行说明,需要说明的是,本方案的具体场景并不仅限于某种报表数据的查询。当用户需要查询报表数据时,例如,用户查询某个金融产品的报表数据,用户可以开启终端上用于查询报表数据的应用程序,通过该应用程序用语音方式输入需要查询的相关数据。例如,点击应用程序的人机交互界面上的“报表数据查询”虚拟按钮后,终端在界面提示“请语音输入您想要查询的具体信息”,用户输入相关的语音后可以向终端发起报表数据查询的请求,终端接收到用户发出的查询数据报表的请求后,解析该请求,获取请求中携带的第一语音数据。请求中可以包括用户输入的语音数据,也可以包括该语音数据的存储路径及唯一的标识。也就是说,第一语音数据可以是用户在提交数据查询请求时一并录入。
之后,根据预先构建的意图模板识别出第一语音数据的语义信息,意图模板可以是指NLU模板,NLU模板为Nature Language Understanding的缩写。NLU模板记录了各种句式对应的意图。例如:## intent:thankyou
- 谢谢
- 感谢
- 多谢
谢谢、感谢、多谢等,都是“thankyou”意图。
## intent:one_amb_rule
- 最近[占位符指标](rule)情况如何?
- [占位符指标](rule)情况如何?
- 给我看一下[占位符指标](rule)情况
- 最近[占位符指标](rule)怎么样?
中括号里是占位符,可以是相关的任意场景词。例如,在贷款数据表场景中,可以是逾期率、不良率等,小括号里的内容是这个占位符的实体类型,这些模板对应着“one_amb_rule”意图。
在一个实施例中,所述基于预先构建的意图模板识别出所述第一语音数据的意图结果包括:
根据预先训练的语义识别模型识别出所述第一语音数据的语义结果,将所述语义结果与预先构建的多个意图模板进行匹配,判断是否匹配到所述语义结果相关联的意图模板,当匹配到所述语义结果相关联的意图模板时,将该意图模板对应的意图信息作为所述第一语音数据的意图结果。
语义识别模型可以是根据bert模型训练得到的,可以采用Rasa框架训练语义识别模型,Rasa是一个开源的机器学习框架,用于构建上下文AI助手和聊天机器人,Rasa嵌入了bert、XLnet等大型语义识别模型,使得模型意图理解正确率大幅度提升。识别出第一语音数据的语义结果后,将识别出的语义结果与预先构建的多个意图模板进行匹配,判断是否匹配到语义结果相关联的意图模板,当匹配到时,将该意图模板对应的意图信息作为第一语音数据的意图结果。
进一步地,所述判断是否匹配到所述语义结果相关联的意图模板包括:
当未匹配到所述语义结果相关联的意图模板时,分别计算所述语义结果与各意图模板对应的意图信息的相似度值,当存在大于预设阈值的相似度值时,将相似度值最大的意图模板对应的意图信息作为所述第一语音数据的意图结果。
选取相似度值最大的意图模板对应的意图信息作为第一语音数据的意图结果,可以在未匹配到相应的意图模板时,也能提供意图模板得到第一语音数据的意图结果的情况。
进一步地,识别模块还用于:
当不存在大于预设阈值的相似度值时,向所述用户反馈第一预设提示信息。
当用户的第一语音数据未匹配到意图模板,且语义结果与各意图模板对应的意图的相似度均小于预设阈值时,说明此时用户的第一语音数据与意图模板的意图无关,此时可以向用户反馈提示信息,例如,“请重新语音输入查询信息”等等。
在一个实施例中,识别模块还用于:
获取所述用户的身份信息,将所述身份信息与具备发起查询数据请求权限的白名单进行匹配,当匹配成功时,执行后续的步骤,当匹配失败时,拒绝请求并发送第二预设提示信息。
将用户的身份信息与预设数据库中的具备查询请求权限的白名单进行匹配,白名单可以是指具有查询数据报表的用户名单,当白名单中存在与用户身份信息匹配的数据时,认为用户具备发起数据查询请求的权限,当白名单中不存在与用户身份信息匹配的数据时,认为用户不具备权限,并发送预设提示信息,预设的提示信息可以是“无查询权限”等。
判断模块120,用于获取所述意图结果对应的目标字符集,判断所述目标字符集是否满足生成目标SQL语句的预设条件。
在本实施例中,获取意图结果对应的目标字符集,判断目标字符集是否满足预设的生成SQL语句的条件,预设的条件可以是目标字符集的字符与SQL语句中select、where及groupby部分的内容相对应,识别意图结果的目的是通过填槽的方式,逐步将SQL进行填充,使其成为一个可执行的SQL语句,SQL语句是由select、from、where、groupby、orderby等组成,槽位为上述各种实体类型。Measure、rule类型的实体对应的是select聚合函数部分,dimension对应的是具体的select列以及groupby部分,filter、time数字等对应的是where筛选条件部分。
需要识别出用户的第一语音数据中哪些关键词是与预设数据表中相关的(列名、value等),及第一语音数据中的时间描述词,例如“2020年”、“近三年”、“去年”等等。
将预设数据表相关关键字进行分类,映射至上述意图模板的实体类型中,通过意图结果的目标字符集生成的SQL语句可以确定用户的第一语音数据对应数据表中哪些类型的数据,例如:
数据表中的数值型列名—measure类型
数据表中的枚举型列名—dimension类型
数据表中的枚举值—filter类型
指标—rule类型
时间字符串—time类型
数字—number类型
时间类型与具体场景无关,可以通过命名实体识别、正则表达式等进行识别。
在一个实施例中,判断模块还用于:
当所述目标字符集不满足所述生成目标SQL语句的条件时,从预先构建的故事线集中确定所述意图信息对应的目标故事线,根据所述目标故事线识别出所述第一语音数据对应的目标字符集。
当用户的第一语音数据对应的目标字符集不能生成完整的SQL语句时,从预先构建的故事线集中确定意图信息对应的目标故事线,根据目标故事线识别出第一语音数据对应的目标字符。例如,用户的第一语音数据为“最近的逾期率情况如何?”,则可以确定目标故事线为逾期率的故事线,而不是不良率的故事线。
进一步地,所述从预先构建的故事线集中确定所述意图信息对应的目标故事线包括:
将所述意图信息与所述故事线集的多个根节点的语句进行匹配,将匹配成功的根节点的第一语句反馈至所述用户,接收所述用户基于所述第一语句的第二语音数据,基于预先构建的意图模板识别出所述第二语音数据的意图信息,将该意图信息的目标字符添加至所述目标字符集,重新判断该目标字符集是否满足预设的生成SQL语句的条件。
用户往往是不能够清楚表达出自己的需求,可能提一些较为模糊的查询问题,得到能够生成SQL语句的意图结果对应的目标字符集。通过故事线不断征询和提示用户,引导用户从模糊的查询语音,到最终输入正确的查询语音,提升了用户数据查询的效率。例如:
用户:最近六个月的逾期率情况如何?
多轮对话助手:您是想问不同产品的逾期率还是不同机构的逾期率?
用户:不同产品。
多轮对话助手:向您展示的是近六个月不同产品的逾期率。
查询模块130,用于当所述目标字符集满足所述预设条件时,基于所述目标字符集生成目标SQL语句,根据所述目标SQL语句查询预设数据库得到目标数据,将所述目标数据反馈至所述用户。
在本实施例中,当满足生成SQL语句的条件时,即目标字符集中存在与SQL语句select、where及groupby部分相对应的内容时,将目标字符集的字符对应的内容填充至预设SQL模板的相关位置,例如,将目标字符集中rule类型对应的内容填充至SQL模板的select位置,将目标字符集中time类型的内容填充至SQL模板的where位置,将目标字符集中dimension类型的内容填充至SQL模板的groupby位置,可以生成一个可执行的目标SQL语句。生成目标SQL语句后,根据该目标SQL语句查询预设数据库可以得到目标报表,预设数据库可以是金融机构的本地数据库,也可以是第三方数据库,之后将目标报表反馈至用户。例如:
用户:最近六个月的产品的逾期率情况如何?
多轮对话助手:向您展示的是近六个月不同产品的逾期率。同时输出一张报表。
参照图3所示,为本申请电子设备1较佳实施例的示意图。
该电子设备1包括但不限于:存储器11、处理器12、显示器13及网络接口14。所述电子设备1通过网络接口14连接网络,获取原始数据。其中,所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,GSM)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi、通话网络等无线或有线网络。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器11可以是所述电子设备1的内部存储单元,例如该电子设备1的硬盘或内存。在另一些实施例中,所述存储器11也可以是所述电子设备1的外部存储设备,例如该电子设备1配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)等。当然,所述存储器11还可以既包括所述电子设备1的内部存储单元也包括其外部存储设备。本实施例中,存储器11通常用于存储安装于所述电子设备1的操作系统和各类应用软件,例如基于语义识别的数据查询程序10的程序代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述电子设备1的总体操作,例如执行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行基于语义识别的数据查询程序10的程序代码等。
显示器13可以称为显示屏或显示单元。在一些实施例中显示器13可以是LED显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(Organic Light-Emitting Diode,OLED)触摸器等。显示器13用于显示在电子设备1中处理的信息以及用于显示可视化的工作界面,例如显示数据统计的结果。
网络接口14可选地可以包括标准的有线接口、无线接口(如WI-FI接口),该网络接口14通常用于在所述电子设备1与其它电子设备之间建立通信连接。
图3仅示出了具有组件11-14以及基于语义识别的数据查询程序10的电子设备1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
可选地,所述电子设备1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(Organic Light-Emitting Diode,OLED)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备1中处理的信息以及用于显示可视化的用户界面。
该电子设备1还可以包括射频(Radio Frequency,RF)电路、传感器和音频电路等等,在此不再赘述。
在上述实施例中,处理器12执行存储器11中存储的基于语义识别的数据查询程序10时可以实现如下步骤:
接收用户发出的数据查询的请求,获取所述请求中携带的第一语音数据,基于预先构建的意图模板识别出所述第一语音数据的意图结果;
获取所述意图结果对应的目标字符集,判断所述目标字符集是否满足生成目标SQL语句的预设条件;
当所述目标字符集满足所述预设条件时,基于所述目标字符集生成目标SQL语句,根据所述目标SQL语句查询预设数据库得到目标数据,将所述目标数据反馈至所述用户。
所述存储设备可以为电子设备1的存储器11,也可以为与电子设备1通讯连接的其它存储设备。
关于上述步骤的详细介绍,请参照上述图2关于基于语义识别的数据查询装置100实施例的功能模块图以及图1关于基于语义识别的数据查询方法实施例的流程图的说明。
此外,本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质可以是非易失性的,也可以是易失性的。该计算机可读存储介质可以是硬盘、多媒体卡、SD卡、闪存卡、SMC、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、便携式紧致盘只读存储器(CD-ROM)、USB存储器等等中的任意一种或者几种的任意组合。所述计算机可读存储介质中包括存储数据区和存储程序区,存储数据区存储根据区块链节点的使用所创建的数据,存储程序区存储有基于语义识别的数据查询程序10,所述基于语义识别的数据查询程序10被处理器执行时实现如下操作:
接收用户发出的数据查询的请求,获取所述请求中携带的第一语音数据,基于预先构建的意图模板识别出所述第一语音数据的意图结果;
获取所述意图结果对应的目标字符集,判断所述目标字符集是否满足生成目标SQL语句的预设条件;
当所述目标字符集满足所述预设条件时,基于所述目标字符集生成目标SQL语句,根据所述目标SQL语句查询预设数据库得到目标数据,将所述目标数据反馈至所述用户。
本申请之计算机可读存储介质的具体实施方式与上述基于语义识别的数据查询方法的具体实施方式大致相同,在此不再赘述。
在另一个实施例中,本申请所提供的基于语义识别的数据查询方法,为进一步保证上述所有出现的数据的私密和安全性,上述所有数据还可以存储于一区块链的节点中。例如第一语音数据及目标数据等,这些数据均可存储在区块链节点中。
需要说明的是,本申请所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
需要说明的是,上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,电子装置,或者网络设备等)执行本申请各个实施例所述的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (20)

  1. 一种基于语义识别的数据查询方法,其中,所述方法包括:
    接收用户发出的数据查询的请求,获取所述请求中携带的第一语音数据,基于预先构建的意图模板识别出所述第一语音数据的意图结果;
    获取所述意图结果对应的目标字符集,判断所述目标字符集是否满足生成目标SQL语句的预设条件;
    当所述目标字符集满足所述预设条件时,基于所述目标字符集生成目标SQL语句,根据所述目标SQL语句查询预设数据库得到目标数据,将所述目标数据反馈至所述用户。
  2. 如权利要求1所述的基于语义识别的数据查询方法,其中,所述基于预先构建的意图模板识别出所述第一语音数据的意图结果包括:
    根据预先训练的语义识别模型识别出所述第一语音数据的语义结果,将所述语义结果与预先构建的多个意图模板进行匹配,判断是否匹配到所述语义结果相关联的意图模板,当匹配到所述语义结果相关联的意图模板时,将该意图模板对应的意图信息作为所述第一语音数据的意图结果。
  3. 如权利要求2所述的基于语义识别的数据查询方法,其中,所述判断是否匹配到所述语义结果相关联的意图模板包括:
    当未匹配到所述语义结果相关联的意图模板时,分别计算所述语义结果与各意图模板对应的意图信息的相似度值,当存在大于预设阈值的相似度值时,将相似度值最大的意图模板对应的意图信息作为所述第一语音数据的意图结果。
  4. 如权利要求3所述的基于语义识别的数据查询方法,其中,在所述分别计算所述语义结果与各意图模板对应的意图信息的相似度值之后,所述方法还包括:
    当不存在大于预设阈值的相似度值时,向所述用户反馈第一预设提示信息。
  5. 如权利要求1所述的基于语义识别的数据查询方法,其中,在所述判断所述目标字符集是否满足生成目标SQL语句的预设条件之后,所述方法还包括:
    当所述目标字符集不满足所述生成目标SQL语句的条件时,从预先构建的故事线集中确定所述意图信息对应的目标故事线,根据所述目标故事线识别出所述第一语音数据对应的目标字符集。
  6. 如权利要求5所述的基于语义识别的数据查询方法,其中,所述从预先构建的故事线集中确定所述意图信息对应的目标故事线包括:
    将所述意图信息与所述故事线集的多个根节点的语句进行匹配,将匹配成功的根节点的第一语句反馈至所述用户,接收所述用户基于所述第一语句的第二语音数据,基于预先构建的意图模板识别出所述第二语音数据的意图信息,将该意图信息的目标字符添加至所述目标字符集,重新判断该目标字符集是否满足预设的生成SQL语句的条件。
  7. 如权利要求1至6中任意一项所述的基于语义识别的数据查询方法,其中,在所述接收用户发出的数据查询的请求之前,所述方法还包括:
    获取所述用户的身份信息,将所述身份信息与具备发起查询数据请求权限的白名单进行匹配,当匹配成功时,执行后续的步骤,当匹配失败时,拒绝请求并发送第二预设提示信息。
  8. 一种基于语义识别的数据查询装置,其中,所述装置包括:
    识别模块:用于接收用户发出的数据查询的请求,获取所述请求中携带的第一语音数据,基于预先构建的意图模板识别出所述第一语音数据的意图结果;
    判断模块:用于获取所述意图结果对应的目标字符集,判断所述目标字符集是否满足生成目标SQL语句的预设条件;
    查询模块:用于当所述目标字符集满足所述预设条件时,基于所述目标字符集生成目标SQL语句,根据所述目标SQL语句查询预设数据库得到目标数据,将所述目标数据反馈至所述用户。
  9. 一种电子设备,其中,所述电子设备包括:
    至少一个处理器;以及,
    与所述至少一个处理器通信连接的存储器;其中,
    所述存储器存储有可被所述至少一个处理器执行的程序,所述程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如下步骤:
    接收用户发出的数据查询的请求,获取所述请求中携带的第一语音数据,基于预先构建的意图模板识别出所述第一语音数据的意图结果;
    获取所述意图结果对应的目标字符集,判断所述目标字符集是否满足生成目标SQL语句的预设条件;
    当所述目标字符集满足所述预设条件时,基于所述目标字符集生成目标SQL语句,根据所述目标SQL语句查询预设数据库得到目标数据,将所述目标数据反馈至所述用户。
  10. 如权利要求9所述的电子设备,其中,所述基于预先构建的意图模板识别出所述第一语音数据的意图结果包括:
    根据预先训练的语义识别模型识别出所述第一语音数据的语义结果,将所述语义结果与预先构建的多个意图模板进行匹配,判断是否匹配到所述语义结果相关联的意图模板,当匹配到所述语义结果相关联的意图模板时,将该意图模板对应的意图信息作为所述第一语音数据的意图结果。
  11. 如权利要求10所述的电子设备,其中,所述判断是否匹配到所述语义结果相关联的意图模板包括:
    当未匹配到所述语义结果相关联的意图模板时,分别计算所述语义结果与各意图模板对应的意图信息的相似度值,当存在大于预设阈值的相似度值时,将相似度值最大的意图模板对应的意图信息作为所述第一语音数据的意图结果。
  12. 如权利要求11所述的电子设备,其中,在所述分别计算所述语义结果与各意图模板对应的意图信息的相似度值之后,所述至少一个处理器还执行如下步骤:
    当不存在大于预设阈值的相似度值时,向所述用户反馈第一预设提示信息。
  13. 如权利要求9所述的电子设备,其中,在所述判断所述目标字符集是否满足生成目标SQL语句的预设条件之后,所述至少一个处理器还执行如下步骤:
    当所述目标字符集不满足所述生成目标SQL语句的条件时,从预先构建的故事线集中确定所述意图信息对应的目标故事线,根据所述目标故事线识别出所述第一语音数据对应的目标字符集。
  14. 如权利要求13所述的电子设备,其中,所述从预先构建的故事线集中确定所述意图信息对应的目标故事线包括:
    将所述意图信息与所述故事线集的多个根节点的语句进行匹配,将匹配成功的根节点的第一语句反馈至所述用户,接收所述用户基于所述第一语句的第二语音数据,基于预先构建的意图模板识别出所述第二语音数据的意图信息,将该意图信息的目标字符添加至所述目标字符集,重新判断该目标字符集是否满足预设的生成SQL语句的条件。
  15. 如权利要求9至14中任意一项所述的电子设备,其中,在所述接收用户发出的数据查询的请求之前,所述至少一个处理器还执行如下步骤:
    获取所述用户的身份信息,将所述身份信息与具备发起查询数据请求权限的白名单进行匹配,当匹配成功时,执行后续的步骤,当匹配失败时,拒绝请求并发送第二预设提示信息。
  16. 一种计算机可读存储介质,其中,所述计算机可读存储介质存储有基于语义识别的数据查询程序,所述基于语义识别的数据查询程序被处理器执行时,实现如下步骤:
    接收用户发出的数据查询的请求,获取所述请求中携带的第一语音数据,基于预先构建的意图模板识别出所述第一语音数据的意图结果;
    获取所述意图结果对应的目标字符集,判断所述目标字符集是否满足生成目标SQL语句的预设条件;
    当所述目标字符集满足所述预设条件时,基于所述目标字符集生成目标SQL语句,根据所述目标SQL语句查询预设数据库得到目标数据,将所述目标数据反馈至所述用户。
  17. 如权利要求16所述的计算机可读存储介质,其中,所述基于预先构建的意图模板识别出所述第一语音数据的意图结果包括:
    根据预先训练的语义识别模型识别出所述第一语音数据的语义结果,将所述语义结果与预先构建的多个意图模板进行匹配,判断是否匹配到所述语义结果相关联的意图模板,当匹配到所述语义结果相关联的意图模板时,将该意图模板对应的意图信息作为所述第一语音数据的意图结果。
  18. 如权利要求17所述的计算机可读存储介质,其中,所述判断是否匹配到所述语义结果相关联的意图模板包括:
    当未匹配到所述语义结果相关联的意图模板时,分别计算所述语义结果与各意图模板对应的意图信息的相似度值,当存在大于预设阈值的相似度值时,将相似度值最大的意图模板对应的意图信息作为所述第一语音数据的意图结果。
  19. 如权利要求18所述的计算机可读存储介质,其中,在所述分别计算所述语义结果与各意图模板对应的意图信息的相似度值之后,所述基于语义识别的数据查询程序被处理器执行时,还实现如下步骤:
    当不存在大于预设阈值的相似度值时,向所述用户反馈第一预设提示信息。
  20. 如权利要求16所述的计算机可读存储介质,其中,在所述判断所述目标字符集是否满足生成目标SQL语句的预设条件之后,所述基于语义识别的数据查询程序被处理器执行时,还实现如下步骤:
    当所述目标字符集不满足所述生成目标SQL语句的条件时,从预先构建的故事线集中确定所述意图信息对应的目标故事线,根据所述目标故事线识别出所述第一语音数据对应的目标字符集。
PCT/CN2021/123896 2020-11-17 2021-10-14 基于语义识别的数据查询方法、装置、设备及存储介质 WO2022105493A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202011283796.8A CN112380240A (zh) 2020-11-17 2020-11-17 基于语义识别的数据查询方法、装置、设备及存储介质
CN202011283796.8 2020-11-17

Publications (1)

Publication Number Publication Date
WO2022105493A1 true WO2022105493A1 (zh) 2022-05-27

Family

ID=74584905

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/123896 WO2022105493A1 (zh) 2020-11-17 2021-10-14 基于语义识别的数据查询方法、装置、设备及存储介质

Country Status (2)

Country Link
CN (1) CN112380240A (zh)
WO (1) WO2022105493A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115033416A (zh) * 2022-06-24 2022-09-09 建信金融科技有限责任公司 确定异常信息的方法、装置、电子设备及存储介质
CN115905284A (zh) * 2022-11-15 2023-04-04 北京火山引擎科技有限公司 一种数据处理方法、装置、设备及存储介质
CN117909389A (zh) * 2024-03-19 2024-04-19 成都虚谷伟业科技有限公司 一种sql模糊查询方法、设备及存储介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112380240A (zh) * 2020-11-17 2021-02-19 深圳壹账通智能科技有限公司 基于语义识别的数据查询方法、装置、设备及存储介质
CN113626468B (zh) * 2021-08-12 2024-03-01 平安科技(深圳)有限公司 基于人工智能的sql语句生成方法、装置、设备及存储介质
CN114253990A (zh) * 2021-11-08 2022-03-29 广州广电运通信息科技有限公司 数据库查询方法、装置、计算机设备和存储介质
CN114186026A (zh) * 2021-12-14 2022-03-15 中国建设银行股份有限公司 自然语言处理方法、装置、设备及存储介质
CN114661751B (zh) * 2022-03-22 2023-01-31 医渡云(北京)技术有限公司 基于sql知识库的数据生产方法、装置、系统、设备及介质
CN117993381B (zh) * 2024-03-06 2024-10-01 杭州安司源科技有限公司 信息处理方法、装置、计算机设备及存储介质
CN117892762B (zh) * 2024-03-14 2024-05-24 临沂美联重工有限公司 一种滑移装载机用基本数据查询系统及方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160063063A1 (en) * 2014-09-02 2016-03-03 Salesforce.Com, Inc. Database query system
CN108427722A (zh) * 2018-02-09 2018-08-21 卫盈联信息技术(深圳)有限公司 智能交互方法、电子装置及存储介质
CN109299129A (zh) * 2018-09-05 2019-02-01 深圳壹账通智能科技有限公司 自然语言的数据查询方法、装置、计算机设备及存储介质
CN110347784A (zh) * 2019-05-23 2019-10-18 深圳壹账通智能科技有限公司 报表查询方法、装置、存储介质及电子设备
CN110659366A (zh) * 2019-09-24 2020-01-07 Oppo广东移动通信有限公司 语义解析方法、装置、电子设备以及存储介质
WO2020180001A1 (ko) * 2019-03-07 2020-09-10 삼성전자주식회사 전자 장치 및 이의 제어 방법
CN112380240A (zh) * 2020-11-17 2021-02-19 深圳壹账通智能科技有限公司 基于语义识别的数据查询方法、装置、设备及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160063063A1 (en) * 2014-09-02 2016-03-03 Salesforce.Com, Inc. Database query system
CN108427722A (zh) * 2018-02-09 2018-08-21 卫盈联信息技术(深圳)有限公司 智能交互方法、电子装置及存储介质
CN109299129A (zh) * 2018-09-05 2019-02-01 深圳壹账通智能科技有限公司 自然语言的数据查询方法、装置、计算机设备及存储介质
WO2020180001A1 (ko) * 2019-03-07 2020-09-10 삼성전자주식회사 전자 장치 및 이의 제어 방법
CN110347784A (zh) * 2019-05-23 2019-10-18 深圳壹账通智能科技有限公司 报表查询方法、装置、存储介质及电子设备
CN110659366A (zh) * 2019-09-24 2020-01-07 Oppo广东移动通信有限公司 语义解析方法、装置、电子设备以及存储介质
CN112380240A (zh) * 2020-11-17 2021-02-19 深圳壹账通智能科技有限公司 基于语义识别的数据查询方法、装置、设备及存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115033416A (zh) * 2022-06-24 2022-09-09 建信金融科技有限责任公司 确定异常信息的方法、装置、电子设备及存储介质
CN115905284A (zh) * 2022-11-15 2023-04-04 北京火山引擎科技有限公司 一种数据处理方法、装置、设备及存储介质
CN117909389A (zh) * 2024-03-19 2024-04-19 成都虚谷伟业科技有限公司 一种sql模糊查询方法、设备及存储介质
CN117909389B (zh) * 2024-03-19 2024-06-11 成都虚谷伟业科技有限公司 一种sql模糊查询方法、设备及存储介质

Also Published As

Publication number Publication date
CN112380240A (zh) 2021-02-19

Similar Documents

Publication Publication Date Title
WO2022105493A1 (zh) 基于语义识别的数据查询方法、装置、设备及存储介质
TWI636452B (zh) 語音識別方法及系統
WO2021151270A1 (zh) 图像结构化数据提取方法、装置、设备及存储介质
WO2019184217A1 (zh) 热点事件分类方法、装置及存储介质
WO2019153522A1 (zh) 智能交互方法、电子装置及存储介质
CN113707300B (zh) 基于人工智能的搜索意图识别方法、装置、设备及介质
AU2017408800B2 (en) Method and system of mining information, electronic device and readable storable medium
CN111552799B (zh) 信息处理方法、装置、电子设备及存储介质
CN112417102A (zh) 一种语音查询方法、装置、服务器和可读存储介质
CN112509682A (zh) 基于文本识别的问诊方法、装置、设备及存储介质
WO2019062010A1 (zh) 语义识别方法、电子装置及计算机可读存储介质
WO2022100067A1 (zh) 数据库数据查询方法、装置、电子设备及存储介质
CN111508502B (zh) 用于显示结果的备选的方法和系统
CN112559687B (zh) 问题识别及查询方法、装置、电子设备及存储介质
CN111797217B (zh) 基于faq匹配模型的信息查询方法、及其相关设备
CN112651236B (zh) 提取文本信息的方法、装置、计算机设备和存储介质
CN108763202A (zh) 识别敏感文本的方法、装置、设备及可读存储介质
CN111552798B (zh) 基于名称预测模型的名称信息处理方法、装置、电子设备
CN112395391A (zh) 概念图谱构建方法、装置、计算机设备及存储介质
CN110890090A (zh) 基于上下文的辅助交互控制方法及系统
CN117932022A (zh) 一种智能问答方法、装置、电子设备及存储介质
CN115169370B (zh) 语料数据增强方法、装置、计算机设备及介质
CN113486169B (zh) 基于bert模型的同义语句生成方法、装置、设备及存储介质
CN113204613B (zh) 地址生成方法、装置、设备和存储介质
CN112989044B (zh) 文本分类方法、装置、设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21893642

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 220823)

122 Ep: pct application non-entry in european phase

Ref document number: 21893642

Country of ref document: EP

Kind code of ref document: A1