Intelligent question-answering method, device, server, and storage medium
By generating replies voice data and expression data, and driving virtual digital human facial expressions, automatic reply to online user requests is realized, solving the problem of low automatic reply efficiency in the prior art, and improving user experience and satisfaction.
Patent Information
- Application Number
- CN202211668493.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-24
- Publication Date
- 2025-03-25
- Estimated Expiration
- 2042-12-24
AI Technical Summary
The prior art is difficult to realize automatic reply to online user requests, resulting in low user satisfaction and low manual customer service efficiency.
Provide an intelligent question-and-answer method, which drives virtual digital human facial expressions by generating replies voice data and expression data, and sends them to the client to achieve the effect of automatic question-and-answer.
It realizes automatic reply to user questions or instructions, improves user experience, and enhances the interaction between users and virtual digital people.
Smart Images

Figure CN115834519B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of intelligent customer service, and in particular to an intelligent question-and-answer method, device, server, and storage medium. Background Art
[0002] With the rise of online platforms and applications, people's online life has become more colorful. For example, online shopping platforms, online movie viewing platforms, and online game platforms, users can install the corresponding clients to shop, watch videos, play games, and interact with others online.
[0003] In the process of online life, users may have some application function problems or business problems. For example, when playing a game, the user wants to set the scene resolution, but the user may not know where to set it, thus causing problems with the application function. Furthermore, when playing a game, the user may need to consult some game-related businesses, or when the user is shopping online, there is a problem with the item received, and the user needs to communicate with the corresponding merchant to return or exchange the goods. In order to improve user satisfaction, usually when the user asks relevant questions or issues relevant instructions and other requests, each online platform needs to respond to the questions or instructions raised by the user to improve user satisfaction.
[0004] If manual customer service is used to respond to user requests, the efficiency is low, the manpower consumption is high, and it may not be possible to respond to user questions and requests in a timely manner. Based on this, for various online applications, how to automatically respond to user questions or requests becomes a key issue. Summary of the invention
[0005] In order to automatically reply to users' questions, the present application provides an intelligent question-answering method, device, server and storage medium.
[0006] In the first aspect, the present application provides an intelligent question-answering method, which adopts the following technical solution:
[0007] An intelligent question-answering method, comprising:
[0008] When receiving user request information sent by the client, generating corresponding reply voice data and reply expression data based on the user request information, wherein the user request information is used to represent the question request or instruction request issued by the user, and the reply voice data and the reply expression data are data generated in response to the user request information;
[0009] Sending the reply voice data to the client, so that the client plays the reply voice data;
[0010] Based on the reply expression data, the facial expression of the virtual digital human is driven, and the driven virtual digital human is sent to the client, so that the client displays the driven virtual digital human.
[0011] By adopting the above technical solution, when user request information sent by the client is received, reply voice data and reply expression data for replying to the user will be generated according to the user request information, and then the facial expression of the virtual digital person will be driven and fed back to the client, and the reply voice data will also be sent to the client, so that when the user asks a question or an instruction, it can automatically reply based on the user question or instruction, thereby achieving the effect of automatic question and answer. Furthermore, by displaying the virtual digital person and playing the voice for reply, the user can have the feeling of communicating with the virtual digital person, which is conducive to improving the user experience.
[0012] In a possible implementation, the reply expression data includes at least two expression frame data;
[0013] The step of driving the facial expression of the virtual digital human based on the reply expression data includes:
[0014] Obtaining a timestamp of the client currently calling back the reply voice data, where the timestamp is used to indicate the progress of the client currently calling back the reply voice data;
[0015] Based on the timestamp, determining the expression frame data corresponding to the timestamp;
[0016] Based on the corresponding expression frame data, the facial expression of the virtual digital person is driven, and the steps of obtaining the timestamp of the client currently calling back the reply voice data, determining the expression frame data corresponding to the timestamp based on the timestamp, and driving the facial expression of the virtual digital person based on the corresponding expression frame data are cyclically performed until a preset condition is met, and the preset condition includes at least one of the following:
[0017] Detecting that the progress of the client calling back the reply voice data reaches a preset progress;
[0018] It is detected that the expression frame data corresponding to the facial expression of the currently driven virtual digital human is the preset expression frame data.
[0019] By adopting the above technical solution, the reply voice data is fed back to the client, and the progress of the client's current voice playback can be determined according to the timestamp of the client's callback reply voice data. The expression frame data corresponding to the current playback progress is determined according to the progress, so that the facial expression driving the virtual digital human corresponds to the currently played voice, so that the expression made by the virtual digital human on the client can be synchronized with the sound currently played by the client, reducing the adverse effect of the lack of synchronization between sound and expression on the user experience and improving the user experience.
[0020] In another possible implementation, the generating corresponding reply voice data and reply expression data based on the user request information includes:
[0021] Based on the user request information, determine the key requirements corresponding to the user request information, and determine the response voice data and response expression data corresponding to each of the key requirements, wherein the key requirements are used to characterize the specific matters requested by the user, and the response voice data and the response expression data are data generated in response to the corresponding key requirements;
[0022] Combining each of the response voice data into reply voice data according to a first preset manner;
[0023] Each of the response expression data is combined into reply expression data according to a second preset manner.
[0024] By adopting the above technical solution, when generating reply voice data and reply expression data, the key requirements corresponding to the user request information issued by the user will be identified, and the response voice data and response expression data corresponding to each key requirement will be obtained according to the key requirements. Then the response voice data and the response expression data will be combined to obtain reply voice data and reply expression data, so that a reply can be automatically made according to the user request information.
[0025] In another possible implementation, determining the response voice data and response expression data corresponding to any key requirement includes any of the following:
[0026] Acquire the first preset voice data and the first preset expression data corresponding to any one of the key requirements, use the first preset voice data as the response voice data corresponding to any one of the key requirements, and use the first preset expression data as the response expression data corresponding to any one of the key requirements;
[0027] When the type of any one of the key requirements belongs to the query requirement type, the target data corresponding to the any one of the key requirements is obtained, the query requirement type is the type of requirement corresponding to when the user needs to query relevant information, the target data is the data corresponding to the content that the user expects to obtain, the second preset voice data and the corresponding second preset expression data corresponding to the any one of the key requirements are obtained, the second preset voice data is used to represent the voice template when answering user questions, based on the second preset voice data and the target data, the response voice data corresponding to the any one of the key requirements is determined, and based on the second preset expression data and the target data, the response expression data corresponding to the any one of the key requirements is determined.
[0028] By adopting the above technical scheme, when generating response voice data and response expression data corresponding to key requirements, on the one hand, the pre-set first preset voice data can be directly used as the response voice data, and the first preset expression data can be used as the response expression data. On the other hand, when the type of key requirement is a query requirement type, it is also possible to obtain specific information of the user's query, a voice template for replying to the user, and an expression template for replying to the user, obtain response voice data according to the specific information and the voice template, and obtain response expression data according to the specific information and the expression template, so that the information that the user wants to query can be directly replied, so that the content of the reply is more in line with the user's needs.
[0029] In another possible implementation, when the number of determined key requirements is at least two, combining each of the response voice data into reply voice data in a first preset manner includes any one of the following:
[0030] According to the preset order of each of the key requirements, the answer voice data corresponding to each of the key requirements are sequentially combined into reply voice data;
[0031] According to the relationship between each key requirement, each key requirement is sorted according to preset rules, and the response voice data corresponding to each key requirement is combined in sequence to obtain reply voice data, wherein the preset rules include: the serial numbers of at least two key requirements with an associated relationship are adjacent, and the key requirements with the associated relationship are associated with each other.
[0032] By adopting the above technical solution, when the user request information sent by the user includes at least two key requirements, on the one hand, the response voice data can be combined according to the preset order corresponding to each key requirement, so that multiple requirements generated by the user at the same time can be responded to; on the other hand, a unified response can be made to the key requirements with a related relationship, and the key requirements with a related relationship can be arranged to be adjacent to each other during sorting, so that in the combined response voice data, the response voice data with a related relationship are adjacent to each other, so as to achieve the effect of concentrated response to related questions, thereby increasing the logic when responding to users.
[0033] In another possible implementation, combining the answer voice data corresponding to each of the key requirements into reply voice data in sequence according to the preset order of each of the key requirements includes:
[0034] According to the preset order of each of the key requirements, sequentially determine the transition voice data corresponding to each of the key requirements, wherein the transition voice data is the voice data preset for transition between the various response voice data;
[0035] Combining each of the transitional voice data with the corresponding response voice data to obtain intermediate voice data;
[0036] Based on the preset order of each of the key requirements, each of the intermediate voice data is combined in turn to obtain reply voice data.
[0037] By adopting the above technical solution, transition voice data is set for each response voice data, and the response voice data is combined with the corresponding transition voice data. After the combination, the intermediate voice data is combined in a preset order to obtain reply voice data, so that when replying to the user, the reply voice is more coherent.
[0038] In another possible implementation, the method further includes:
[0039] When receiving user request information sent by the client, determining whether the user request information belongs to historical request information;
[0040] If yes, taking the reply voice data and reply expression data corresponding to the historical request information as the reply voice data and reply expression data corresponding to the user request information;
[0041] The generating corresponding reply voice data and reply expression data based on the user request information includes:
[0042] If not, corresponding reply voice data and reply expression data are generated based on the user request information.
[0043] By adopting the above technical solution, when receiving user request information, it is determined whether the user request information belongs to historical request information. If it does, it indicates that reply voice data and reply expression data corresponding to the user request information have been generated in history. Therefore, the reply voice data and reply expression data generated in history are used as the reply voice data and reply expression data corresponding to the user request information. If it does not belong to historical request information, the corresponding reply voice data and reply expression data are generated based on the user request information, thereby reducing unnecessary calculation processes for generating reply voice data and reply expression data.
[0044] In a second aspect, the present application provides an intelligent question-answering device, which adopts the following technical solution:
[0045] An intelligent question-answering device, comprising:
[0046] A data generation module, configured to generate corresponding reply voice data and reply expression data based on the user request information when receiving the user request information sent by the client, wherein the user request information is used to represent the question request or instruction request sent by the user, and the reply voice data and the reply expression data are data generated in response to the user request information;
[0047] A voice feedback module, used for sending the reply voice data to the client, so that the client plays the reply voice data;
[0048] The expression driving module is used to drive the facial expression of the virtual digital human based on the reply expression data, and send the driven virtual digital human to the client so that the client displays the driven virtual digital human.
[0049] By adopting the above technical solution, when the data generation module receives the user request information sent by the client, the data generation module will generate reply voice data and reply expression data for replying to the user according to the user request information. Then the expression driving module will drive the facial expression of the virtual digital person and feed it back to the client. The voice feedback module will also send the reply voice data to the client, so that when the user asks a question or an instruction, it can automatically reply based on the user question or instruction to achieve the effect of automatic question and answer. Furthermore, by displaying the virtual digital person and playing the voice for reply, the user can have the feeling of communicating with the virtual digital person, which is conducive to improving the user experience.
[0050] In a possible implementation, the reply expression data includes at least two expression frame data;
[0051] Wherein, when the expression driving module drives the facial expression of the virtual digital human based on the reply expression data, it is specifically used to:
[0052] Obtaining a timestamp of the client currently calling back the reply voice data, where the timestamp is used to indicate the progress of the client currently calling back the reply voice data;
[0053] Based on the timestamp, determining the expression frame data corresponding to the timestamp;
[0054] Based on the corresponding expression frame data, the facial expression of the virtual digital person is driven, and the steps of obtaining the timestamp of the client currently calling back the reply voice data is cyclically executed, determining the expression frame data corresponding to the timestamp based on the timestamp, and driving the facial expression of the virtual digital person based on the corresponding expression frame data until a preset condition is met, and the preset condition includes at least one of the following:
[0055] Detecting that the progress of the client calling back the reply voice data reaches a preset progress;
[0056] It is detected that the expression frame data corresponding to the facial expression of the currently driven virtual digital human is the preset expression frame data.
[0057] In another possible implementation, when the data generation module generates corresponding reply voice data and reply expression data based on the user request information, it is specifically used to:
[0058] Based on the user request information, determine the key requirements corresponding to the user request information, and determine the response voice data and response expression data corresponding to each of the key requirements, wherein the key requirements are used to characterize the specific matters requested by the user, and the response voice data and the response expression data are data generated in response to the corresponding key requirements;
[0059] Combining each of the response voice data into reply voice data according to a first preset manner;
[0060] Each of the response expression data is combined into reply expression data according to a second preset manner.
[0061] In another possible implementation, when determining the response voice data and the response expression data corresponding to any key requirement, the data generation module is specifically used to:
[0062] Acquire the first preset voice data and the first preset expression data corresponding to any one of the key requirements, use the first preset voice data as the response voice data corresponding to any one of the key requirements, and use the first preset expression data as the response expression data corresponding to any one of the key requirements; or,
[0063] When the type of any one of the key requirements belongs to the query requirement type, the target data corresponding to the any one of the key requirements is obtained, the query requirement type is the type of requirement corresponding to when the user needs to query relevant information, the target data is the data corresponding to the content that the user expects to obtain, the second preset voice data and the corresponding second preset expression data corresponding to the any one of the key requirements are obtained, the second preset voice data is used to represent the voice template when answering user questions, based on the second preset voice data and the target data, the response voice data corresponding to the any one of the key requirements is determined, and based on the second preset expression data and the target data, the response expression data corresponding to the any one of the key requirements is determined.
[0064] In another possible implementation, when the number of determined key requirements is at least two, the data generation module is specifically used to combine each of the response voice data into reply voice data in a first preset manner:
[0065] According to the preset order of each of the key requirements, the answer voice data corresponding to each of the key requirements are sequentially combined into reply voice data; or,
[0066] According to the relationship between each key requirement, each key requirement is sorted according to preset rules, and the response voice data corresponding to each key requirement is combined in sequence to obtain reply voice data, wherein the preset rules include: the serial numbers of at least two key requirements with an associated relationship are adjacent, and the key requirements with the associated relationship are associated with each other.
[0067] In another possible implementation, when the data generating module sequentially combines the answer voice data corresponding to each of the key requirements into the reply voice data according to the preset order of each of the key requirements, it is specifically used to:
[0068] According to the preset order of each of the key requirements, sequentially determine the transition voice data corresponding to each of the key requirements, wherein the transition voice data is the voice data preset for transition between the various response voice data;
[0069] Combining each of the transitional voice data with the corresponding response voice data to obtain intermediate voice data;
[0070] Based on the preset order of each of the key requirements, each of the intermediate voice data is combined in turn to obtain reply voice data.
[0071] In another possible implementation, the device further includes:
[0072] A judgment module, configured to judge whether the user request information belongs to historical request information when receiving the user request information sent by the client;
[0073] A data determination module, for, when it belongs to, using the reply voice data and reply expression data corresponding to the historical request information as the reply voice data and reply expression data corresponding to the user request information;
[0074] Wherein, when the data generation module generates corresponding reply voice data and reply expression data based on the user request information, it is specifically used to:
[0075] When it does not belong to the above, corresponding reply voice data and reply expression data are generated based on the user request information.
[0076] In a third aspect, the present application provides a server, which adopts the following technical solution:
[0077] A server, comprising:
[0078] at least one processor;
[0079] Memory;
[0080] At least one application, wherein the at least one application is stored in a memory and configured to be executed by at least one processor, and the at least one application is configured to: execute the above-mentioned intelligent question-answering method.
[0081] In a fourth aspect, the present application provides a computer-readable storage medium, which adopts the following technical solution:
[0082] A computer-readable storage medium includes: a computer program that can be loaded by a processor and execute the above-mentioned intelligent question-answering method.
[0083] In summary, this application includes the following beneficial technical effects:
[0084] When receiving user request information sent by the client, reply voice data and reply expression data for replying to the user will be generated according to the user request information, and then the facial expression of the virtual digital person will be driven and fed back to the client, and the reply voice data will also be sent to the client, so that when the user asks a question or an instruction, it can automatically reply based on the user's question or instruction, thereby achieving the effect of automatic question and answer. Furthermore, by displaying the virtual digital person and playing the voice for reply, the user can have the feeling of communicating with the virtual digital person, which is conducive to improving the user experience. BRIEF DESCRIPTION OF THE DRAWINGS
[0085] Figure 1 It is a scene diagram of the intelligent question-answering scene in an embodiment of the present application;
[0086] Figure 2 It is a flowchart of the intelligent question-answering method according to an embodiment of the present application;
[0087] Figure 3 It is a schematic diagram of an example provided in an embodiment of the present application;
[0088] Figure 4 is a block diagram of an intelligent question-answering device according to an embodiment of the present application;
[0089] Figure 5 It is a schematic diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION
[0090] The following is combined with Figure 1-5 This application is described in further detail.
[0091] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0092] Online customer service is usually set up in online platforms. When a user sends a question or request such as an instruction in the chat window of the online customer service, the client sends the request to the server. The server will automatically determine the corresponding preset voice and / or text to be replied according to the user's question, and feedback to the client to reply to the user, so as to solve the problem request raised by the customer or respond to the user's instruction in the form of a reply. However, most online customer service replies to users through voice or text or a combination of the two. In this way, users can generally only see text or hear voice, and have the feeling of communicating with a machine. There is a lack of interaction and real communication, which may result in a low user experience.
[0093] The present application embodiment provides an intelligent question-answering method, which is executed by a server, referring to Figure 1 , the server includes: a digital human platform, an AI server and a UE; wherein the digital human platform, the AI server and the UE may belong to the same server or to different servers, which is not limited in the embodiments of the present application. For example, the digital human platform, the AI server and the UE are all components of server a1; it is also possible that: the digital human platform corresponds to server b1, and the AI server and the UE correspond to server b2; it is also possible that: the digital human platform corresponds to server c1, the AI server corresponds to server c2 and the UE corresponds to server c3.
[0094] Among them, the digital human platform is used to exchange information with the client, AI server and UE. The AI server is used to generate data for replying to users. The UE is used to interact with the client and drive the virtual digital human according to the data generated by the AI server for replying to users, and render and feed back to the client for reply.
[0095] Specifically, refer to Figure 2 , the method comprising:
[0096] Step 201: When receiving user request information sent by a client, generate corresponding reply voice data and reply expression data based on the user request information.
[0097] The user request information is used to represent the question request or instruction request issued by the user, and the reply voice data and reply expression data are data generated in response to the user request information.
[0098] Specifically, when a user asks a question on the client, it indicates that the user has issued a question request, for example, the user asks a question request of “how to return or exchange goods”; when a user asks a command on the client, it indicates that the user has issued a command request, for example, the user enters a command of “check my account balance” on the client. When a user issues a question request and / or a command request through the client, the client sends the question request and / or command request issued by the user to the server in the form of user request information, which is received by the server, specifically, by the digital human platform of the server.
[0099] The user request information may be a question request and / or an instruction request issued by a user, or may be information converted into a text format after the question request and / or the instruction request issued by a user is converted into a text format, which is not limited in the embodiments of the present application. When the user request information is a question request and / or an instruction request issued by a user, when the server receives the user request information, the digital human platform receives the user request information and performs format conversion on the user request information to convert it into a text format user request information.
[0100] When the server receives user request information, it needs to respond according to the user's question request or instruction request. The Digital Human Platform sends the user request information in text format to the AI server, and the AI server generates reply voice data and reply expression data for replying to the user based on the user request information.
[0101] Step S202: Send the reply voice data to the client, so that the client plays the reply voice data.
[0102] Step S203: Based on the reply expression data, the facial expression of the virtual digital human is driven, and the driven virtual digital human is sent to the client, so that the client displays the driven virtual digital human.
[0103] Specifically, after the AI server generates reply voice data and reply expression data, the UE is used to render a virtual digital human based on the reply voice data and reply expression data, and then feeds the virtual digital human back to the client to reply to the user.
[0104] Specifically, the UE side may receive reply voice data and reply expression data in a manner that may include: the AI server side sends the reply voice data and reply expression data to the UE side, and may also include: after the AI server side generates the reply voice data and reply expression data, the reply voice data and reply expression data are stored in the asset library, and the UE side obtains the reply voice data and reply expression data from the asset library, wherein the UE side may obtain the reply voice data and reply expression data from the asset library in a manner that may include: the UE server side reads the reply voice data and reply expression data from the asset library according to the asset identifier corresponding to the received user request information, and the asset identifier is generated by the AI server side based on the user request information when generating the reply voice data and reply expression data, and after the AI server side stores the reply voice data and reply expression data in the asset library, the AI server side sends the asset identifier to the digital human platform, and the digital human platform forwards the asset identifier to the UE side.
[0105] The UE drives the facial expression of the virtual digital human to the expression corresponding to the reply expression data according to the reply expression data, and sends the driven virtual digital human to the client. The virtual digital human displayed in the client will show the corresponding expression. At the same time, the UE feeds back the reply voice data to the client, and plays the voice used to reply to the user on the client, so as to achieve the effect of automatically replying according to the user's question request or instruction request. Furthermore, the user can also see the expression of the virtual digital human and hear the sound of the virtual digital human "speaking" in the client, so that the user can have the feeling of having a conversation with the virtual digital human. On the basis of realizing automatic reply to user questions and / or responding to user instructions, it can increase the user's sense of interaction and experience.
[0106] The embodiment of the present application provides an intelligent question-and-answer method. When receiving user request information sent by a client, reply voice data and reply expression data for replying to the user will be generated according to the user request information. Then, the facial expression of the virtual digital person will be driven and fed back to the client, and the reply voice data will also be sent to the client, so that when the user asks a question or an instruction, it can automatically reply based on the user question or instruction, thereby achieving the effect of automatic question-and-answering. Furthermore, by displaying the virtual digital person and playing the voice for reply, the user can have the feeling of communicating with the virtual digital person, which is conducive to improving the user experience.
[0107] When the user issues the same question request or instruction request in the client, if the AI server needs to generate reply voice data and reply expression data for reply every time, it will cause resource waste and unnecessary computing power consumption. In order to reduce computing power consumption, the method also includes step Sa1 (not shown in the figure) and step Sa2 (not shown in the figure), wherein:
[0108] Step Sa1: When receiving user request information sent by the client, determine whether the user request information belongs to historical request information.
[0109] Specifically, the historical request information represents the user request information corresponding to the reply voice data and reply expression data generated in the historical process. For example, in the last time, according to the user request information of "query account balance", the corresponding reply voice data and reply expression data have been generated, then the historical request information includes "query account balance".
[0110] The Digital Human Platform sends the received user request information to the AI server. Before generating the reply voice data and reply expression data, the AI server determines whether the user request information exists in the history according to the user request information, or determines whether the reply voice data and reply expression data have been generated according to the same user request information in the history, that is, determines whether the user request information belongs to the historical request information. When the user request information belongs to the historical request information, it indicates that the AI server has generated the reply voice data and reply expression data according to the same user request information in the history. When the user request information does not belong to the historical request information, it indicates that the AI server has not generated the reply voice data and reply expression data corresponding to the user request information.
[0111] Step Sa2: If yes, the reply voice data and reply expression data corresponding to the historical request information are used as the reply voice data and reply expression data corresponding to the user request information.
[0112] Specifically, when it is historical request information, it indicates that the AI server has previously generated reply voice data and reply expression data corresponding to the user request information, and the reply voice data and reply expression data generated by the AI server in the historical process have been saved in the asset library. At this time, in order to reduce the computing power consumption of the server, the reply voice data and reply expression data corresponding to the historical request information can be directly used as the reply voice data and reply expression data corresponding to the user request information. That is, the UE can directly obtain the reply voice data and reply expression data corresponding to the user request information from the asset library, and then drive the virtual digital person, etc., without the need for the AI server to repeatedly calculate and generate reply voice data and reply expression data based on the same user request, thereby reducing the waste of resources caused by repeated calculations.
[0113] Wherein, in step S201, corresponding reply voice data and reply expression data are generated based on the user request information, including: if it does not belong, then corresponding reply voice data and reply expression data are generated based on the user request information.
[0114] Specifically, when it does not belong to historical user request information, that is, when the reply voice data and reply expression data corresponding to the user request information are not stored in the asset library, the AI server will generate reply voice data and reply expression data corresponding to the user request information based on the user request information, so that the UE can render and drive the virtual digital person according to the reply voice data and reply expression data.
[0115] When the AI server calculates and obtains the reply voice data and the reply expression data, it generates the corresponding reply voice data and the reply expression data based on the user request information. The specific generation method may include step S2011 (not shown in the figure), step S2012 (not shown in the figure) and step S2013 (not shown in the figure), wherein:
[0116] Step S2011: Based on the user request information, determine the key requirements corresponding to the user request information, and determine the response voice data and response expression data corresponding to each key requirement.
[0117] Among them, the key requirement is used to represent the specific matters requested by the user, and the response voice data and response expression data are data generated in response to the corresponding key requirement;
[0118] Specifically, the AI server determines the key requirements in the following ways: identifying and extracting keywords in the user request information from the user request information through semantic recognition, and using the keywords as the key requirements corresponding to the user request information. For example, a user sends a voice message "Please check my account balance", and after semantic recognition of "Please check my account balance", the keyword of the user request information is "check account balance", that is, the key requirement of the user request information is "check account balance".
[0119] The number of key requirements determined by the AI server can be one, two, or more, depending on the user's request information. When a voice message sent by the user in the client reflects two of the user's requirements at the same time, the number of key requirements determined by the AI server is two. For example, the user's request information corresponds to "Please check my account balance and how to recharge it", which indicates that the user wants to check the account balance and how to recharge it. The user's request information is semantically recognized, and keyword 1 "check account balance" and keyword 2 "how to recharge" are identified, which indicates that the user's needs correspond to two key requirements, key requirement 1 is "check account balance" and key requirement 2 is "how to recharge".
[0120] After the AI server determines the key requirements, it needs to determine the response voice data and response expression data corresponding to each key requirement. For any key requirement, the method of determining the response voice data and response expression data corresponding to any key requirement can be achieved through method one or method two, where:
[0121] Method 1: Obtain the first preset voice data and the first preset expression data corresponding to any key requirement, use the first preset voice data as the response voice data corresponding to any key requirement, and use the first preset expression data as the response expression data corresponding to any key requirement.
[0122] Specifically, the first preset voice data and the first preset expression data are pre-stored in the asset library, and are pre-set data for replying to corresponding key requirements. When answering the user request information corresponding to any key requirement, the first preset voice data corresponding to any key requirement stored in the asset library can be directly used as the response voice data corresponding to the key requirement, and the corresponding first preset expression data stored in the asset library can be used as the response expression data corresponding to the key requirement. For example: for the key requirement of "querying account balance", the first preset voice data and the first preset expression data on how to query the account balance are pre-stored in the asset library. The first preset voice data can specifically be the data corresponding to "You can click My at the bottom of the interface, and then click Account Balance to view the account balance", and the first preset voice data is directly used as the response voice data.
[0123] Method 2: When the type of any key requirement belongs to the query requirement type, obtain the target data of the query corresponding to any key requirement, and obtain the second preset voice data and the corresponding second preset expression data corresponding to any key requirement; based on the second preset voice data and the target data, determine the response voice data corresponding to any key requirement; based on the second preset expression data and the target data, determine the response expression data corresponding to any key requirement.
[0124] Among them, the query demand type is the type of demand corresponding to when the user needs to query relevant information, the target data is the data corresponding to the content that the user expects to obtain, and the second preset voice data is used to represent the voice template when answering user questions.
[0125] Specifically, when a user needs to query specific information, the type of key demand corresponding to the user request information sent belongs to the query demand type, such as querying account balances and querying commodity logistics information. For this type of key demand, when generating the corresponding response voice data and the corresponding response expression data, the query can be automatically performed and then a reply can be made based on the query results to improve the intelligence of the reply.
[0126] Specifically, when replying to the key requirement, the voice template corresponding to any key requirement, that is, the second preset voice data, and the second preset expression data corresponding to the second preset voice data are found from the asset library according to any key requirement. The second preset voice data corresponding to each key requirement belonging to the query requirement type are stored in the asset library, wherein the second preset voice data corresponding to different key requirements may be the same or different, which is not limited in the embodiment of the present application. For example: the asset library stores the second preset voice data a "the queried account balance is" and the second preset voice data b "the queried commodity logistics is", and any key requirement corresponds to "query account balance", then any key requirement corresponds to the second preset voice data a. For another example: the asset library stores the second preset voice data c "the content you are querying is", and the second preset voice data corresponding to each key requirement belonging to the query requirement type are the second preset voice data c.
[0127] When obtaining the second preset voice data and the second preset expression data, the AI server simultaneously queries the information queried by the user, and generates corresponding voice data and expression data based on the information queried by the user, and uses the corresponding voice data and expression data as target data. For example, any one of the key requirements corresponds to "query account balance". The AI server obtains the account balance corresponding to the user through the user's account information. If the account balance corresponding to the user is 8888, the queried information is "8888", and the corresponding voice data in the generated target data is the voice corresponding to "8888", and the generated expression data is the expression data obtained according to the expression corresponding to the mouth shape when the voice corresponding to "8888" is uttered.
[0128] According to the second preset voice data and the target data, the target data is combined with the second preset voice data to obtain the answering voice data for replying to the user. Continuing with the above example, if the corresponding second preset voice data is "the queried account balance is", and the target data is "8888", the answering voice data is "the queried account balance is 8888". Then, in the same way, the second preset expression data is combined with the expression data corresponding to the target data to obtain the answering expression data.
[0129] It is worth noting that when the number of key requirements is at least two, it is necessary to determine the response voice data and response expression data corresponding to each key requirement, wherein when determining the response voice data and response expression data corresponding to each key requirement, it can be determined by the above-mentioned method one or method two.
[0130] Step S2012: Combine each response voice data into reply voice data according to a first preset method.
[0131] Step S2013: combine each response expression data into reply expression data according to a second preset method.
[0132] Specifically, when the number of key requirements is one, the response voice data corresponding to the key requirement is directly used as the reply voice data, and the response expression data corresponding to the key requirement is used as the reply expression data.
[0133] When the number of determined key requirements is at least two, such as "query account balance" and "how to recharge", in step S2012, each answer voice data is combined into reply voice data according to a first preset method, which can be implemented by method 1 or method 2, wherein:
[0134] Method 1: According to the preset order of each key requirement, the answer voice data corresponding to each key requirement is combined into reply voice data in sequence.
[0135] Specifically, the preset order can be the order in which the key requirements appear in the user request information. For example, the user request information is "Please check the balance of my account and how to recharge it." At this time, key requirement 1 is to check the account balance, and key requirement 2 is how to recharge. The order of the two key requirements is to check the account balance first and how to recharge later.
[0136] After combining the response voice data corresponding to each key requirement in a preset order, the response voice data corresponding to the user's request information can be obtained. For example: checking the account balance comes first, and how to recharge comes later. When the response voice data corresponding to checking the account balance is "Your account balance is ****", and when the response voice data corresponding to how to recharge is "You can recharge through ***", the response voice data obtained after combination is "Your account balance is ****, you can recharge through ***".
[0137] Method 2: Based on the relationship between each key requirement, each key requirement is sorted according to preset rules, and the response voice data corresponding to each key requirement is combined in sequence to obtain reply voice data, wherein the preset rules include: the sorted serial numbers of at least two key requirements with an associated relationship are adjacent, and the associated relationship is used to characterize the relationship between the corresponding key requirements.
[0138] Specifically, when users have different questions about the same thing, there may be a correlation between the key requirements corresponding to the user request information issued, that is, the key requirements corresponding to the user request information may be associated with each other. For example, the two key requirements of "query account balance" and "how to recharge" mentioned above are both related questions about the account balance, that is, there is a correlation between querying the account balance and how to recharge.
[0139] For two or more related key needs, when answering users, if you can focus on answering questions corresponding to the related key needs, then the response to the user may be more logical and provide a better user experience. For example, when a user asks "check my account balance, check item purchase information, how to recharge", you can focus on answering "check account balance" and "how to recharge", which can make answering questions more intelligent compared to answering in sequence. Therefore, when combining the response voice data corresponding to each key need, sort each key need according to preset rules. Specific preset rules may include: arranging each key need with an associated relationship in adjacent positions, and randomly sorting other key needs. For example: among key needs a, key need b and key need c, key need a and key need c are key needs with an associated relationship, then key need a is sorted as the first, key need c is sorted as the second, and key need b is sorted as the third.
[0140] Afterwards, the response voice data corresponding to each key requirement are combined in the order of the key requirements to obtain the reply voice data. When replying to the user, related questions can be answered together, which is conducive to improving the user experience.
[0141] When combining the various response voice data into reply voice data by way of method 1, according to the preset order of each key requirement, the response voice data corresponding to each key requirement is sequentially combined into reply voice data, which may specifically include step Sb1 (not shown in the figure), step Sb2 (not shown in the figure) and step Sb3 (not shown in the figure), wherein:
[0142] Step Sb1, according to the preset order of each key requirement, determine the transitional voice data corresponding to each key requirement in turn.
[0143] The transition voice data is the voice data preset for transition between various response voice data.
[0144] Specifically, when different response voice data are directly combined, there will be no transition between different key requirements in the combined reply voice data, which will make the reply content less coherent. In order to reduce the adverse impact on the user experience when the reply content is directly changed, the transition voice data corresponding to each key requirement is determined. For example, the transition voice data can be transition words such as "first", "second", "first", "secondly", "then", and "finally". When determining the transition voice data corresponding to each keyword, it can be determined in sequence according to the preset order of each keyword, for example, the transition voice data corresponding to the first keyword is determined to be "first", and the transition voice data corresponding to the second keyword is determined to be "secondly", etc.
[0145] Step Sb2: Combine each transition voice data with the corresponding response voice data to obtain intermediate voice data.
[0146] Step Sb3: Based on the preset order of each key requirement, each intermediate voice data is combined in turn to obtain reply voice data.
[0147] Specifically, when combining the transitional voice data with the response voice data, the intermediate voice data can be obtained by combining them in a manner of transitional voice data first and response voice data later. For example, intermediate voice data 1 is "First, your account balance is ****", and intermediate voice data 2 is "Secondly, you can recharge through ***". Then, the intermediate voice data corresponding to each key requirement are combined in sequence according to a preset order to obtain the response voice data. For example, the response voice data is "First, your account balance is ****, and secondly, you can recharge through ***". By setting the transitional voice data to transition between the response voice data of multiple key requirements, the sense of interaction between the user and the virtual digital person can be further enhanced, thereby improving the user experience.
[0148] When the response voice data is combined according to the first preset method, the response expression data also needs to be combined according to the second preset method. Specifically, the second preset method can be the same as the first preset method. While the response voice data is combined in sequence according to the preset order, the response expression data will also be combined in the preset order, so that the combined reply expression data can correspond to the reply voice data.
[0149] When the UE drives the facial expression of the virtual digital person, if the facial expression and the voice are not synchronized, the facial expression and the voice of the virtual digital person displayed in the client will be inconsistent, which will affect the user experience. In order to improve the user experience, in step S203, the facial expression of the virtual digital person is driven based on the reply expression data, including step S2031 (not shown in the figure), step S2032 (not shown in the figure), step S2033 (not shown in the figure) and step S2034 (not shown in the figure), wherein:
[0150] Step S2031: Obtain the timestamp of the client's current callback reply voice data.
[0151] The timestamp is used to indicate the progress of the client's current callback reply voice data; the reply voice data corresponds to an audio of a preset duration, such as 10 seconds of audio; the timestamp corresponds to the progress of the reply voice data. When the timestamp is 00:00:05 (simplified as 00:00:05), it indicates that the voice playback progress corresponding to the timestamp is the 5th second of the audio.
[0152] Specifically, after the UE feeds back the reply voice data to the client, the client will play the reply voice data by callback, and the UE will obtain the timestamp when the client currently calls back the reply voice data in real time.
[0153] Step S2032: Based on the timestamp, determine the expression frame data corresponding to the timestamp.
[0154] The reply expression data includes at least two expression frame data.
[0155] Step S2033: driving the facial expression of the virtual digital human based on the corresponding expression frame data.
[0156] Specifically, different voices usually correspond to different expressions. When playing a voice, the expression of the virtual digital person can also change with the voice. For example, the facial expression of the virtual digital person will be different depending on the mouth shape of the text being uttered. When the voice and expression are synchronized, the user will have a stronger sense of interaction, and the simulated virtual digital person will be more realistic.
[0157] To this end, when the AI server generates reply voice data and reply expression data, the reply expression data usually corresponds to the reply voice data, and the expression frame data corresponding to the reply expression data respectively correspond to the progress of the reply voice data, that is, each timestamp of the reply voice data corresponds to an expression frame data. For example, for 10 seconds of reply voice data, when the callback is played to the fifth second, it corresponds to expression frame data a, and when the callback is played to the seventh second, it corresponds to expression frame data b.
[0158] Therefore, when the UE feeds back expression data to the client, the expression frame data corresponding to the timestamp currently obtained is determined, the facial expression of the virtual digital human is driven according to the expression frame data corresponding to the timestamp, and the driven virtual digital human is fed back to the client, so that when the client plays the voice, the facial expression of the virtual digital human can be driven to be the facial expression corresponding to the expression frame data corresponding to the current voice playback progress.
[0159] Step S2034, looping and executing the steps of obtaining the timestamp of the client's current callback reply voice data, determining the expression frame data corresponding to the timestamp based on the timestamp, and driving the facial expression of the virtual digital human based on the corresponding expression frame data until a preset condition is met, wherein the preset condition includes at least one of the following:
[0160] Detect that the progress of the client callback reply voice data reaches the preset progress;
[0161] It is detected that the expression frame data corresponding to the facial expression of the currently driven virtual digital human is the preset expression frame data.
[0162] Specifically, the voice is always in a state of continuous playback, and the facial expression of the virtual digital human needs to be adjusted with the progress of the voice playback. Therefore, after completing the current driving of the facial expression of the virtual digital human according to the timestamp, it is necessary to recycle steps S2031, S2032 and S2033 to obtain the timestamp again, determine the corresponding expression frame data according to the timestamp, and then drive the facial expression of the virtual digital human according to the corresponding expression frame data on the UE side, and feed back the facial expression of the virtual digital human to the client until it is detected that the client has completed the playback of all the callback voice data, and / or the UE side has driven the facial expression of the virtual digital human according to each expression frame data, and fed back the driven virtual digital human to the client.
[0163] Among them, when the progress of the client callback of the reply voice data reaches the preset progress, it means that the client has played all the reply voice data, that is, it means that the client has played all the voices used to reply to the user and no longer needs to play. Specifically, the method of detecting that the progress of the client callback of the reply voice data reaches the preset progress can specifically include: judging whether the progress has reached the preset progress according to the currently obtained timestamp, when the obtained timestamp is the last timestamp corresponding to the callback voice data, that is, it means that the progress has reached the preset progress, for example, the duration of the reply voice data is 10 seconds, and the timestamp is the 10th second, that is, it means that the reply voice data has been played.
[0164] When it is detected that the expression frame data corresponding to the facial expression currently driving the virtual digital human is the preset expression frame data, the expression frame data indicating the facial expression currently driving the virtual digital human on the UE side is the last expression frame data, which means that the reply to the user has been completed. Specifically, if each expression frame data corresponding to the reply expression data is sorted in order according to the order of reply, the last expression frame data is the preset expression frame data.
[0165] The above embodiment introduces a method for intelligent question answering. Here, an example is provided to illustrate the process of intelligent question answering. Figure 3The server includes a digital human platform, an AI server, and a UE. When the client receives voice and / or text sent by the user, the client sends the user request data such as the voice and / or text to the digital human platform. The digital human platform converts the user request data into user request information in text format, and sends the user request information to the AI server. Based on the user request information, the AI server generates an asset identifier corresponding to the user request information, as well as reply voice data and reply expression data corresponding to the user request information for replying to the user. Afterwards, the AI server saves the reply voice data and reply expression data to an asset library. The asset library can be an independent storage device or a storage device integrated in the server. The AI server sends the asset identifier to the digital human platform, and the digital human platform converts the asset identifier into a text format user request information. The UE side forwards the data to the UE side. The UE side reads the reply voice data and reply expression data corresponding to the user request information from the asset library according to the received asset identifier. The UE side sends the reply voice data to the client side. The client plays the voice through callback. At the same time, the UE side obtains the timestamp of the client callback target voice data in real time, determines the progress of the client playing the voice according to the timestamp, drives the facial expression of the virtual digital human according to the progress and the reply expression data, and synchronously sends the driven virtual digital human to the client side, so that the client side displays the driven virtual digital human and plays the voice for reply, thereby realizing the function of automatic question and answer, and replying the user's questions through the virtual digital human, so that the user can have the feeling of communicating with the virtual digital human in the client, which is beneficial to improving the user experience.
[0166] The above embodiment introduces an intelligent question-answering method from the perspective of method flow, and the following embodiment introduces an intelligent question-answering device from the perspective of a virtual module or a virtual unit. For details, please refer to the following embodiment.
[0167] Reference Figure 4 , an intelligent question-answering device 400, comprising:
[0168] The data generation module 401 is used to generate corresponding reply voice data and reply expression data based on the user request information when receiving the user request information sent by the client, wherein the user request information is used to represent the question request or instruction request sent by the user, and the reply voice data and reply expression data are data generated in response to the user request information;
[0169] The voice feedback module 402 is used to send the reply voice data to the client so that the client plays the reply voice data;
[0170] The expression driving module 403 is used to drive the facial expression of the virtual digital human based on the reply expression data, and send the driven virtual digital human to the client so that the client can display the driven virtual digital human.
[0171] Specifically, when the data generation module 401 receives the user request information sent by the client, the data generation module 401 will generate reply voice data and reply expression data for replying to the user according to the user request information. Then the expression driving module 403 will drive the facial expression of the virtual digital human and feed it back to the client. The voice feedback module 402 will also send the reply voice data to the client, so that when the user asks a question or an instruction, it can automatically reply based on the user's question or instruction to achieve the effect of automatic question and answer. Furthermore, by displaying the virtual digital human and playing the voice for reply, the user can have the feeling of communicating with the virtual digital human, which is conducive to improving the user experience.
[0172] In a possible implementation manner of the embodiment of the present application, the reply expression data includes at least two expression frame data;
[0173] The expression driving module 403 is specifically used to drive the facial expression of the virtual digital human based on the reply expression data:
[0174] Get the timestamp of the client's current callback reply voice data. The timestamp is used to indicate the progress of the client's current callback reply voice data.
[0175] Based on the timestamp, determining the expression frame data corresponding to the timestamp;
[0176] Based on the corresponding expression frame data, the facial expression of the virtual digital person is driven, and the timestamp of the client's current callback reply voice data is obtained in a loop. Based on the timestamp, the expression frame data corresponding to the timestamp is determined, and based on the corresponding expression frame data, the facial expression of the virtual digital person is driven until the preset conditions are met, and the preset conditions include at least one of the following:
[0177] Detect that the progress of the client callback reply voice data reaches the preset progress;
[0178] It is detected that the expression frame data corresponding to the facial expression of the currently driven virtual digital human is the preset expression frame data.
[0179] In a possible implementation of the embodiment of the present application, when the data generation module 401 generates corresponding reply voice data and reply expression data based on the user request information, it is specifically used to:
[0180] Based on the user request information, determine the key requirements corresponding to the user request information, and determine the response voice data and response expression data corresponding to each key requirement. The key requirements are used to represent the specific matters requested by the user, and the response voice data and response expression data are data generated to reply to the corresponding key requirements;
[0181] Combining each answer voice data into reply voice data according to a first preset manner;
[0182] Each response expression data is combined into reply expression data according to a second preset manner.
[0183] In a possible implementation of the embodiment of the present application, when the data generation module 401 determines the response voice data and the response expression data corresponding to any key requirement, it is specifically used to:
[0184] Acquire the first preset voice data and the first preset expression data corresponding to any key requirement, use the first preset voice data as the response voice data corresponding to any key requirement, and use the first preset expression data as the response expression data corresponding to any key requirement; or,
[0185] When the type of any key requirement belongs to the query requirement type, obtain the target data of the query corresponding to any key requirement, the query requirement type is the type of requirement corresponding to the user's need to query relevant information, the target data is the data corresponding to the content the user expects to obtain, obtain the second preset voice data and the corresponding second preset expression data corresponding to any key requirement, the second preset voice data is used to represent the voice template when answering user questions, based on the second preset voice data and the target data, determine the response voice data corresponding to any key requirement, based on the second preset expression data and the target data, determine the response expression data corresponding to any key requirement.
[0186] In a possible implementation of the embodiment of the present application, when the number of determined key requirements is at least two, the data generation module 401 combines each response voice data into reply voice data in a first preset manner, specifically for:
[0187] The answering voice data corresponding to each key requirement are sequentially combined into replying voice data according to the preset order of each key requirement; or,
[0188] According to the relationship between each key requirement, each key requirement is sorted according to preset rules, and the response voice data corresponding to each key requirement is combined in sequence to obtain reply voice data, wherein the preset rules include: the serial numbers of at least two key requirements with an associated relationship are adjacent, and each key requirement with an associated relationship is associated with each other.
[0189] In a possible implementation of the embodiment of the present application, the data generation module 401 is specifically used to combine the answer voice data corresponding to each key requirement into reply voice data according to the preset order of each key requirement:
[0190] According to the preset order of each key requirement, the transition voice data corresponding to each key requirement is determined in sequence, where the transition voice data is the voice data preset for transition between various response voice data;
[0191] Combining each transition voice data with the corresponding response voice data to obtain intermediate voice data;
[0192] Based on the preset order of each key requirement, each intermediate voice data is combined in turn to obtain the reply voice data.
[0193] In a possible implementation manner of the embodiment of the present application, the apparatus 400 further includes:
[0194] A judgment module, used for judging whether the user request information belongs to historical request information when receiving the user request information sent by the client;
[0195] A data determination module, for, when it belongs to, using the reply voice data and reply expression data corresponding to the historical request information as the reply voice data and reply expression data corresponding to the user request information;
[0196] Among them, when the data generation module generates corresponding reply voice data and reply expression data based on the user request information, it is specifically used to:
[0197] When it does not belong, corresponding reply voice data and reply expression data are generated based on the user request information.
[0198] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0199] The embodiment of the present application also introduces a server from the perspective of a physical device, such as Figure 5 As shown, Figure 5 The server 500 shown includes: a processor 501 and a memory 503. The processor 501 and the memory 503 are connected, such as through a bus 502. Optionally, the server 500 may also include a transceiver 504. It should be noted that in actual applications, the transceiver 504 is not limited to one, and the structure of the server 500 does not constitute a limitation on the embodiments of the present application.
[0200] Processor 501 may be a CPU (Central Processing Unit), a general-purpose processor, a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. It may implement or execute various exemplary logic blocks, modules and circuits described in conjunction with the disclosure of this application. Processor 501 may also be a combination that implements computing functions, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, etc.
[0201] The bus 502 may include a path to transmit information between the above components. The bus 502 may be a PCI (Peripheral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus. The bus 502 may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 5 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0202] The memory 503 may be a ROM (Read Only Memory) or other types of static storage devices that can store static information and instructions, a RAM (Random Access Memory) or other types of dynamic storage devices that can store information and instructions, or an EEPROM (Electrically Erasable Programmable Read Only Memory), a CD-ROM (Compact Disc Read Only Memory) or other optical disk storage, optical disk storage (including compressed optical disk, laser disk, optical disk, digital versatile disk, Blu-ray disk, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto.
[0203] The memory 503 is used to store the application code for executing the solution of the present application, and the execution is controlled by the processor 501. The processor 501 is used to execute the application code stored in the memory 503 to implement the contents shown in the above method embodiment.
[0204] The embodiment of the present application provides a computer-readable storage medium, on which a computer program is stored, and when the computer is run on a computer, the computer can execute the corresponding content in the aforementioned method embodiment. In the embodiment of the present application, when a user request information sent by a client is received, reply voice data and reply expression data for replying to the user will be generated according to the user request information, and then the facial expression of the virtual digital person will be driven and fed back to the client, and the reply voice data will also be sent to the client, so that when the user asks a question or an instruction, it can automatically reply based on the user's question or instruction to achieve the effect of automatic question and answer. Furthermore, by displaying the virtual digital person and playing the voice for reply, the user can have the feeling of communicating with the virtual digital person, which is conducive to improving the user experience.
[0205] It should be understood that, although the steps in the flowchart of the accompanying drawings are displayed in sequence as indicated by the arrows, these steps are not necessarily executed in sequence in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least a part of the steps in the flowchart of the accompanying drawings may include multiple sub-steps or multiple stages, and these sub-steps or stages are not necessarily executed at the same time, but can be executed at different times, and their execution order is not necessarily sequential, but can be executed in turn or alternately with other steps or at least a part of the sub-steps or stages of other steps.
[0206] The above are only some implementation methods of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.
Claims
1. An intelligent question-answering method, characterized in that: include: When receiving user request information sent by the client, generating corresponding reply voice data and reply expression data based on the user request information, wherein the user request information is used to represent the question request or instruction request issued by the user, and the reply voice data and the reply expression data are data generated in response to the user request information; The reply expression data includes at least two expression frame data; Sending the reply voice data to the client, so that the client plays the reply voice data; Based on the reply expression data, driving the facial expression of the virtual digital human, and sending the driven virtual digital human to the client, so that the client displays the driven virtual digital human; The step of driving the facial expression of the virtual digital human based on the reply expression data includes: Obtaining a timestamp of the client currently calling back the reply voice data, where the timestamp is used to indicate the progress of the client currently calling back the reply voice data; Based on the timestamp, determining the expression frame data corresponding to the timestamp; Based on the corresponding expression frame data, the facial expression of the virtual digital person is driven, and the steps of obtaining the timestamp of the client currently calling back the reply voice data, determining the expression frame data corresponding to the timestamp based on the timestamp, and driving the facial expression of the virtual digital person based on the corresponding expression frame data are cyclically performed until a preset condition is met, and the preset condition includes at least one of the following: Detecting that the progress of the client calling back the reply voice data reaches a preset progress; It is detected that the expression frame data corresponding to the facial expression of the currently driven virtual digital human is the preset expression frame data; The generating corresponding reply voice data and reply expression data based on the user request information includes: Based on the user request information, determine the key requirements corresponding to the user request information, and determine the response voice data and response expression data corresponding to each of the key requirements, wherein the key requirements are used to characterize the specific matters requested by the user, and the response voice data and the response expression data are data generated in response to the corresponding key requirements; Combining each of the response voice data into reply voice data according to a first preset manner; Combining each of the response expression data into reply expression data according to a second preset manner; Determine the response voice data and response expression data corresponding to any key requirement, including any of the following: Acquire the first preset voice data and the first preset expression data corresponding to any one of the key requirements, use the first preset voice data as the response voice data corresponding to any one of the key requirements, and use the first preset expression data as the response expression data corresponding to any one of the key requirements; When the type of any one of the key requirements belongs to the query requirement type, the target data corresponding to the any one of the key requirements is obtained, the query requirement type is the type of requirement corresponding to when the user needs to query relevant information, the target data is the data corresponding to the content that the user expects to obtain, the second preset voice data and the corresponding second preset expression data corresponding to the any one of the key requirements are obtained, the second preset voice data is used to represent the voice template when answering user questions, based on the second preset voice data and the target data, the response voice data corresponding to the any one of the key requirements is determined, and based on the second preset expression data and the target data, the response expression data corresponding to the any one of the key requirements is determined.
2. The method according to claim 1, characterized in that When the number of the determined key requirements is at least two, combining each of the response voice data into reply voice data in a first preset manner includes any one of the following: According to the preset order of each of the key requirements, the answer voice data corresponding to each of the key requirements are sequentially combined into reply voice data; According to the relationship between each key requirement, each key requirement is sorted according to preset rules, and the response voice data corresponding to each key requirement is combined in sequence to obtain reply voice data, wherein the preset rules include: the serial numbers of at least two key requirements with an associated relationship are adjacent, and the key requirements with the associated relationship are associated with each other.
3. The method according to claim 2, characterized in that The step of combining the answer voice data corresponding to each of the key requirements into reply voice data in sequence according to the preset order of each of the key requirements comprises: According to the preset order of each of the key requirements, sequentially determine the transition voice data corresponding to each of the key requirements, wherein the transition voice data is the voice data preset for transition between the various response voice data; Combining each of the transitional voice data with the corresponding response voice data to obtain intermediate voice data; Based on the preset order of each of the key requirements, each of the intermediate voice data is combined in turn to obtain reply voice data.
4. The method according to any one of claims 1 to 3, characterized in that The method further comprises: When receiving user request information sent by the client, determining whether the user request information belongs to historical request information; If yes, taking the reply voice data and reply expression data corresponding to the historical request information as the reply voice data and reply expression data corresponding to the user request information; The generating corresponding reply voice data and reply expression data based on the user request information includes: If not, corresponding reply voice data and reply expression data are generated based on the user request information.
5. An intelligent question-answering device, characterized in that: include: A data generation module, configured to generate corresponding reply voice data and reply expression data based on the user request information when receiving the user request information sent by the client, wherein the user request information is used to represent the question request or instruction request sent by the user, and the reply voice data and the reply expression data are data generated in response to the user request information; A voice feedback module, used for sending the reply voice data to the client, so that the client plays the reply voice data; An expression driving module, used to drive the facial expression of the virtual digital human based on the reply expression data, and send the driven virtual digital human to the client, so that the client displays the driven virtual digital human; The reply expression data includes at least two expression frame data; Wherein, when the expression driving module drives the facial expression of the virtual digital person based on the reply expression data, it is specifically used to: obtain the timestamp of the client currently calling back the reply voice data, the timestamp is used to characterize the progress of the client currently calling back the reply voice data; determine the expression frame data corresponding to the timestamp based on the timestamp; drive the facial expression of the virtual digital person based on the corresponding expression frame data, and cyclically execute the steps of obtaining the timestamp of the client currently calling back the reply voice data, determining the expression frame data corresponding to the timestamp based on the timestamp, and driving the facial expression of the virtual digital person based on the corresponding expression frame data until a preset condition is met, and the preset condition includes at least one of the following: detecting that the progress of the client calling back the reply voice data reaches a preset progress; detecting that the expression frame data corresponding to the facial expression currently driving the virtual digital person is the preset expression frame data; The data generation module is specifically used to determine the key requirements corresponding to the user request information based on the user request information, and determine the response voice data and response expression data corresponding to each of the key requirements, the key requirements are used to characterize the specific matters requested by the user, and the response voice data and the response expression data are data generated to reply to the corresponding key requirements; each of the response voice data is combined into reply voice data according to a first preset method; each of the response expression data is combined into reply expression data according to a second preset method; The data generation module, when determining the response voice data and response expression data corresponding to any key requirement, is specifically used to perform any of the following: obtaining the first preset voice data and the first preset expression data corresponding to any key requirement, using the first preset voice data as the response voice data corresponding to any key requirement, and using the first preset expression data as the response expression data corresponding to any key requirement; when the type of any key requirement belongs to the query requirement type, obtaining the target data corresponding to any key requirement, the query requirement type is the type of requirement corresponding to when the user needs to query relevant information, and the target data is the data corresponding to the content that the user expects to obtain, obtaining the second preset voice data and the corresponding second preset expression data corresponding to any key requirement, the second preset voice data is used to represent the voice template when answering user questions, based on the second preset voice data and the target data, determining the response voice data corresponding to any key requirement, based on the second preset expression data and the target data, determining the response expression data corresponding to any key requirement.
6. A server, characterized in that: The server includes: at least one processor; Memory; At least one application, wherein the at least one application is stored in a memory and configured to be executed by at least one processor, and the at least one application is configured to: execute the intelligent question-answering method according to any one of claims 1 to 4.
7. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed in a computer, the computer is caused to execute the intelligent question-answering method according to any one of claims 1 to 4.
Citation Information
Patent Citations
Response method in man-machine conversation, conversation system and storage medium
CN111737411A
Response method and device, server and storage medium
CN111753063A
Intention label setting method and device, computer equipment and storage medium
CN112328761A
Customer service question and answer method, device and equipment, storage medium and computer program product
CN114694224A