A task processing method and device

CN122654375APending Publication Date: 2026-08-28HUAWEI TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510237429.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-27
Publication Date
2026-08-28

AI Technical Summary

Benefits of technology

[0020] It is understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122654375A_ABST
    Figure CN122654375A_ABST
Patent Text Reader

Abstract

A task processing method comprises: obtaining a first query input by a user; identifying a real intention of the user based on the first query; querying skill description information matched with the real intention to obtain a target slot name related to the real intention, wherein the skill description information is used to describe a slot name of a skill related to the user intention; inputting first data to a neural network model to extract a target slot value related to the target slot name from the first query, wherein the first data comprises the first query and the target slot name; and executing a task related to the real intention based on the target slot value. Inputting the slot name related to the real intention of the user and the first query into the neural network model together enables the neural network model to extract the slot value in the first query through the slot name, thereby improving the accuracy of parameter extraction.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of artificial intelligence (AI) technology, and in particular to a task processing method and apparatus. Background Technology

[0002] Task-based question-and-answer systems are primarily used to help users complete specific tasks or achieve goals. For example, a task-based question-and-answer system receives a query from the user and obtains the user's intent based on that query. Then, based on the user's intent, the system extracts slots (containing a slot name and a slot value) related to that intent from the query and invokes the task related to the user's intent based on the extracted slot values. The quality of the slots extracted from the user's query directly affects whether the task-based question-and-answer system can successfully invoke the task related to the user's intent. Therefore, improving the accuracy of slot extraction from user queries is a pressing issue that needs to be addressed. Summary of the Invention

[0003] This application provides a task processing method, apparatus, computing device cluster, computer storage medium, and computer product, which can improve the accuracy of task-related parameter extraction during task processing.

[0004] In a first aspect, this application provides a task processing method, comprising: obtaining a first query input by a user; identifying the user's true intent based on the first query; querying skill description information matching the true intent to obtain a target slot name related to the true intent, wherein the skill description information is used to describe the slot name of a skill related to the user's intent; inputting first data into a neural network model to extract a target slot value related to the target slot name from the first query, wherein the first data includes: the first query and the target slot name; and performing a task related to the true intent based on the target slot value.

[0005] In this way, since the first data input into the neural network model includes not only the first query but also target slot names related to the user's true intent, when the neural network model extracts slot values ​​from the first query, the target slot names related to the user's true intent can guide the neural network model to extract the slot values ​​corresponding to the target slot names related to the user's true intent from the first query. This effectively improves the accuracy of the slot values ​​extracted by the neural network model from the first query and solves the problem of low accuracy in extracting slot values ​​from user-input queries through neural network models and the inability to exhaustively enumerate a large amount of general semantic information.

[0006] In one possible implementation, the first data also includes: the user's historical query input. This allows the historical dialogue query to be used as input to the neural network model. Since the historical dialogue information provides contextual information about the first query, the neural network model can extract slot values ​​from the first query based on the historical query, effectively improving the accuracy of slot value extraction.

[0007] In one possible implementation, the target slot value includes a non-standardized description, and the skill description information is also used to describe the correspondence between the standardized and non-standardized descriptions of the slot value related to the user's intent. After extracting the target slot value related to the slot name from the first query, the implementation further includes: querying the skill description information based on the target slot value to obtain a first correspondence, which describes the correspondence between the standardized and non-standardized descriptions of the target slot value; and modifying the non-standardized description in the target slot value to a standardized description based on the first correspondence. In this way, by converting and modifying the non-standardized description slot value in the target slot value extracted from the first query by the neural network model to a standardized description, the modified target slot value can be directly used by services related to the user's true intent, effectively improving the execution efficiency of services related to the user's true intent.

[0008] In one possible implementation, the target slot value includes a natural language description, and the skill description information is also used to describe the correspondence between the natural language description and the machine language description of the slot value related to the user's intent. After extracting the target slot value related to the slot name from the first query, the implementation further includes: querying the skill description information based on the target slot value to obtain a second correspondence, which describes the correspondence between the natural language description and the machine language description of the target slot value; and modifying the natural language description in the target slot value to a machine language description based on the second correspondence. This type conversion of the slot value extracted from the first query allows the converted slot value to be directly recognized by the machine, meaning it can be directly used by services related to the user's true intent, effectively improving the execution efficiency of services related to the user's true intent.

[0009] In one possible implementation, before executing the task related to the true intent based on the target slot value, the method further includes: if a second query related to the first query exists in the skill hotfix dictionary, repairing the target slot value based on the slot value related to the second query in the skill hotfix dictionary. The skill hotfix dictionary contains at least one query and its corresponding slot value. This addresses the issue that bad cases may occur during parameter value extraction from the user-input query. Therefore, after obtaining the first query, potential bad cases can be repaired online using the skill hotfix dictionary, improving the difficulty and long cycle of bad case repair.

[0010] In one possible implementation, the neural network model is trained on a training dataset. The training dataset contains multiple queries, and its labels include the slot values ​​corresponding to the slot names in the skill description information. This ensures the similarity between the training and inference data of the neural network model by using the skill description information as input during both training the model with the training dataset generated from the skill description information and during slot value extraction. Since the skill description information is similar to the training data of the neural network model, when extracting slot values ​​from the first query using the neural network model, the slot names from the skill description information corresponding to the first query are input into the model. These slot names guide the neural network model in extracting the slot values ​​from the first query, thereby improving the accuracy of slot value extraction.

[0011] Secondly, this application provides a task processing apparatus, comprising: an acquisition module for acquiring a first query input by a user; a processing module for identifying the user's true intent based on the first query; the processing module for querying skill description information matching the true intent to obtain a target slot name related to the true intent, wherein the skill description information is used to describe the slot name of a skill related to the user's intent; the processing module is further configured to input first data into a neural network model to extract a target slot value related to the target slot name from the first query, wherein the first data includes: the first query and the target slot name; and the processing module is further configured to execute a task related to the true intent based on the target slot value.

[0012] In one possible implementation, the first data also includes: the history of user-input queries.

[0013] In one possible implementation, the target slot value contains a non-standardized description, and the skill description information is also used to describe the correspondence between the standardized and non-standardized descriptions of the slot value related to the user intent. After the processing module extracts the target slot value related to the slot name from the first query, it is further used to: query the skill description information based on the target slot value to obtain a first correspondence, which is used to describe the correspondence between the standardized and non-standardized descriptions of the target slot value; and modify the non-standardized description in the target slot value to a standardized description based on the first correspondence.

[0014] In one possible implementation, the target slot value includes a natural language description, and the skill description information is also used to describe the correspondence between the natural language description and the machine language description of the slot value related to the user intent; after the processing module extracts the target slot value related to the slot name from the first query, it is further used to: query the skill description information based on the target slot value to obtain a second correspondence, the second correspondence being used to describe the correspondence between the natural language description and the machine language description of the target slot value; and based on the second correspondence, modify the natural language description in the target slot value to a machine language description.

[0015] In one possible implementation, before the processing module performs the task related to the true intent based on the target slot value, it is further configured to: if there is a second query related to the first query in the skill hotfix dictionary, repair the target slot value based on the slot value related to the second query in the skill hotfix dictionary, wherein the skill hotfix dictionary contains at least one query and the slot value corresponding to the query.

[0016] In one possible implementation, the neural network model is trained on a training dataset, which includes multiple queries and labels that correspond to the slot values ​​in the skill description information.

[0017] Thirdly, this application provides a computing device cluster including at least one computing device, each computing device including a processor and a memory; the processor of the at least one computing device is used to execute instructions stored in the memory of the at least one computing device, so that the computing device cluster performs the method described in the first aspect or any possible implementation of the first aspect.

[0018] Fourthly, this application provides a computer-readable storage medium, characterized in that it includes computer program instructions, which, when executed by a cluster of computing devices, cause the cluster of computing devices to perform the method described in the first aspect or any possible implementation thereof, wherein the cluster of computing devices includes at least one computing device.

[0019] Fifthly, this application provides a computer program product containing instructions, characterized in that, when the instructions are run by a cluster of computing devices, the cluster of computing devices causes the cluster of computing devices to perform the method described in the first aspect or any possible implementation of the first aspect, wherein the cluster of computing devices includes at least one computing device.

[0020] It is understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here. Attached Figure Description

[0021] Figure 1 This application provides a schematic diagram of the architecture of a TQA system.

[0022] Figure 2 A schematic diagram illustrating the structure of a skill description information database provided in an embodiment of this application;

[0023] Figure 3 This application provides a schematic diagram of the architecture of a TQA system.

[0024] Figure 4 This is a schematic diagram of a slot value extraction process provided in an embodiment of this application;

[0025] Figure 5 This is a schematic diagram of another TQA system provided in an embodiment of this application;

[0026] Figure 6a This is a schematic diagram of a heat repair process provided in an embodiment of this application;

[0027] Figure 6b A schematic diagram of a thermal repair process provided in an embodiment of this application;

[0028] Figure 7 This is a schematic diagram of another TQA system provided in an embodiment of this application;

[0029] Figure 8 This is a schematic diagram illustrating a process for standardizing extracted parameters, as provided in an embodiment of this application.

[0030] Figure 9 This is a schematic diagram illustrating a specific process for standardizing extracted parameters, as provided in an embodiment of this application.

[0031] Figure 10 This is a schematic diagram of another TQA system provided in an embodiment of this application;

[0032] Figure 11 This is a schematic diagram illustrating the interaction between a tenant and a cloud computing platform, provided as an embodiment of this application.

[0033] Figure 12 A flowchart illustrating a task processing method provided in an embodiment of this application;

[0034] Figure 13 A flowchart illustrating yet another task processing method provided in an embodiment of this application;

[0035] Figure 14 A flowchart illustrating yet another task processing method provided in an embodiment of this application;

[0036] Figure 15 A flowchart illustrating yet another task processing method provided in an embodiment of this application;

[0037] Figure 16 This is a schematic diagram of the structure of a task processing device provided in an embodiment of this application;

[0038] Figure 17 This is a schematic diagram of the structure of a computing device provided in an embodiment of this application;

[0039] Figure 18 This is a schematic diagram of the structure of a computing device cluster provided in an embodiment of this application;

[0040] Figure 19 This is a schematic diagram of another computing device cluster provided in an embodiment of this application. Detailed Implementation

[0041] In this article, the term "and / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. The symbol " / " in this article indicates that the related objects are in an "or" relationship; for example, A / B means A or B.

[0042] The terms "first" and "second," etc., used in the specification and claims herein are used to distinguish different objects, not to describe a specific order of objects. For example, "first response message" and "second response message," etc., are used to distinguish different response messages, not to describe a specific order of response messages.

[0043] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0044] In the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more, for example, multiple processing units means two or more processing units, multiple elements means two or more elements, etc.

[0045] First, we will introduce the relevant technical terms involved in the technical solution provided in the application.

[0046] (1) Intent and slot

[0047] Intent refers to the task or goal a user wants to accomplish in a conversation. It is usually a classification problem, where the system needs to identify the category of intent behind the user's utterance. For example, if a user says, "I want to book a movie ticket," the intent here is "book a movie ticket."

[0048] A slot, in this context, refers to key information or parameters that need to be collected under a specific intent. Each intent typically has a set of predefined slots used to capture specific information from the user's expression. For example, in the intent to "book movie tickets," slots might include "movie name," "cinema name," "time," "quantity," and "seat location." Each slot can contain a slot name and a slot value. The slot name is a general description of the slot content, used to identify the semantic information category represented by the slot; the slot value is the specific text content, the actual information in the user's utterance corresponding to the slot name. For example, in a weather query scenario, "city" is the slot name, "Beijing" is the slot value, "date" is the slot name, and "January 15, 2025" is the slot value. During the process of realizing the intent, the slot name and the intent can be naturally connected through skills. For example, for the intent to "check the weather," the skill "weather query" is required, and the slot name corresponding to the weather query skill could include "city" and "date." When a user wants to check the weather, they can do so by specifying the city and date in the two slots.

[0049] Intent and slot together constitute "user action". Electronic devices cannot directly understand natural language, so the role of intent recognition is to map natural language or operation into a structured semantic representation that machines can understand.

[0050] (2) Task Question Answering (TQA)

[0051] TQA (Task Quality Assurance) is an artificial intelligence technology that performs specific tasks by understanding user intent and extracting slots from dialogue. TQA technology involves several steps: intent recognition, slot extraction, task execution, result feedback, and multi-turn dialogue management. Intent recognition refers to the TQA system identifying the intent behind the user's input question or command; slot extraction refers to the TQA system extracting the necessary slots for task execution from the user's input, such as time, location, and people; task execution refers to the TQA system executing the corresponding task after obtaining the clear intent and necessary slots, such as calling a database, performing calculations, or sending requests; result feedback refers to the TQA system providing feedback to the user after task completion; and multi-turn dialogue management refers to the TQA system tracking the context of the dialogue during multiple turns to ensure coherent and accurate responses throughout the conversation with the user.

[0052] For example, such as Figure 1 As shown, a TQA system can consist of a task planning module, a task question-and-answer module, and a task action module. The task planning module can identify the intent behind the user's input questions or instructions and determine the task to fulfill that intent. For example, refer to... Figure 1 The user inputs the command "Query the weather for XX city on XX date". The task planning module recognizes the intent of the command as a weather query and determines that a weather query service needs to be invoked to perform the weather query.

[0053] The task Q&A module is used to extract slots from user-input commands based on user intent. For example, it can extract the slots "XX City" and "XX Date" from user input. Then, the module can determine if there are any empty slots for the weather query task. If an empty slot exists, the module can output a prompt to encourage the user to input the corresponding slot. If no empty slot exists, the module can send the slot value for the weather query task to the task execution module.

[0054] The task execution module is used to call the weather query service based on the slot values ​​output by the task Q&A module to perform a weather query. For example, the task execution module will use the slot values ​​"city" and "date" to call the weather query service interface, passing the slot values ​​as parameters to the service to obtain and return the corresponding weather information.

[0055] For example, such as Figure 1As shown, TQA systems can also be implemented through agents. In artificial intelligence, an agent is an intelligent entity that can autonomously perceive its environment and take actions to achieve its goals. That is, an agent acts as a representative of a person or organization, performing specific behaviors and transactions to reduce the complexity of a person's or organization's work and reduce workload and communication costs.

[0056] (3) Bad case

[0057] A bad case refers to a situation where the model or specific rules fail to predict the outcome well. For example, the model might produce a result different from the expected result during the inference phase. Taking a classification model as an example, if a sample should be classified as negative, but the model predicts it as positive, then this sample can be considered a bad case.

[0058] (4) self-instruct

[0059] Self-instruction is a framework for improving the ability of trained language models to follow instructions. It enhances the model's ability to follow instructions and reduces reliance on manually written instruction data by guiding the model to generate its own instructions, input, and output samples. Self-instruction can generate large amounts of high-quality training data, which can be used to fine-tune pre-trained language models, enabling them to better follow instructions and improve their instruction-following and generalization abilities.

[0060] (5) Skill Description Information Database

[0061] The skill description information database contains multiple skill descriptions. These skill descriptions can be used to describe slot names related to user intent. For example, the skill description information can also be used to describe the correspondence between standardized and non-standardized descriptions of slot values ​​related to user intent. Non-standardized descriptions can refer to descriptions using generic language, while standardized descriptions can refer to descriptions using written language or general standards / de facto standards in a specific domain; this application embodiment does not limit this. In this application embodiment, generic language can refer to multiple languages. For example, parameters described using generic language can refer to parameters described using multiple languages. For example, the skill description information can also be used to describe the correspondence between natural language descriptions and machine language descriptions of slot values ​​related to user intent.

[0062] A skill description information repository serves as a container for storing skill description information. This repository can be a file, a database, or other information. For example, Figure 2A schematic diagram of the structure of a skill description information database is shown. See also Figure 2 Multiple skill descriptions can be stored in a single file, where each skill's description can be a sub-file, and each sub-file can be named after the skill. The skill descriptions contained in each sub-file can be as follows:

[0063] "id":1715XXXX33,

[0064] "skill_name":"XXXX",

[0065] "skill_slots": "{parameter name: parameter type, XX:XX, XX:XX, XX:XX, XX:XX, XX:XX}",

[0066] "skill_infos": "This is a skill quest for XX, XXX".

[0067] "Skill Parameter Value Dictionary": {"Non-standardized Parameter Values": "Standardized Parameter Values"}

[0068] "Skill Parameter Type Dictionary": {"Parameter Value Type 1": "Parameter Value Type 2"},

[0069] In this dictionary, "id" can serve as an identifier for a skill, used to distinguish and identify each skill. In this embodiment, "id" is optional. "skill_name" refers to the name of the skill. "skill_slots" refers to the skill slots, which define the data type and structure of the input required for skill execution. Each slot can be considered an input variable for the skill, requiring specific data to perform its function. "skill_infos" refers to detailed information about the skill, including its function, purpose, limitations, and any other relevant contextual information. This information helps users understand how to use the skill and its application in specific scenarios. The skill parameter value dictionary describes the correspondence between standardized (written) and non-standardized (colloquial) descriptions of slot values ​​related to user intent. For example, in the skill parameter value dictionary, "Sichuan spicy tofu, Sichuan numbing and spicy tofu" are colloquial descriptions of slot values, while "Sichuan Mapo tofu" is a standardized description of slot values. The skill parameter type dictionary is used to describe the correspondence between natural language descriptions and machine language descriptions of slot values ​​related to user intent. For example, the machine language description type corresponding to "time" is "baseline time type", and the machine language description type corresponding to "number of people" is "int type name".

[0070] Understandably, skill description information may include one or more of the following: skill name (skill_name), skill slots (skill_slots), skill details (skill_infos), a dictionary of skill parameter values, and a dictionary of skill parameter types.

[0071] Continue to refer to Figure 2 Taking "weather query skill" as an example. The skill description information corresponding to the weather query skill can be as follows:

[0072] "id":1715XXXX33,

[0073] "skill_name": "Weather query"

[0074] “skill_slots”:{city: int, time: base time type; ...},

[0075] "skill_infos": "This is a skill quest for XX, XXX".

[0076] "Skill Parameter Value Dictionary": {"Capital": "Beijing";}

[0077] "Skill Parameter Type Dictionary": {"Time": "Base Time Type"; "City": "int Type"; ...}.

[0078] (6) Skill Hotfix Dictionary

[0079] The skill hotfix dictionary is used to fix bad cases that occur in the TQA system. The skill hotfix dictionary contains queries and their corresponding slot values. For example, a skill hotfix dictionary might look like this:

[0080] {"query1":"slot value 1, slot value 2"; "query2":"slot value 3"; ...}

[0081] Here, query1 and query2 can refer to the queries entered by the user. Slot value 1 and slot value 2 are slot values ​​extracted from query1; slot value 3 is a slot value extracted from query2.

[0082] After receiving a user input command, the TQA system can extract slots related to the user's intent from the input command. The TQA system can also match the user's input query with queries in the skill hotfix dictionary. If a match exists (e.g., query1 matches the user's input query), the system retrieves the slot values ​​corresponding to query1 (slot value 1, slot value 2). Then, the TQA system matches the slot values ​​extracted from the user input command with the slot values ​​corresponding to query1. If the extracted slot values ​​do not match the slot values ​​corresponding to query1 (i.e., a bad case occurs in the TQA system), the TQA system replaces the extracted slot values ​​with the slot values ​​corresponding to text information 1.

[0083] (7) Request body

[0084] The request body refers to the main part of the request data carried by the client when sending a request to the server. For example, in the field of AI, the request body is a crucial part of the communication between the client and the AI ​​service, carrying the input data required for AI model processing. For instance, when a client sends a request to an AI service, the request body can be used to carry the request data.

[0085] The technical solution provided in this application will be described below.

[0086] Generally, a TQA system receives user input instructions or questions, executes specific tasks based on these instructions or questions, and outputs corresponding results. After receiving user input instructions or questions, the TQA system identifies the user's intent. Then, based on the user's intent, the TQA system determines the slots for the tasks to be executed and extracts the relevant slot values ​​from the user's input instructions or questions. Finally, the TQA system executes the tasks related to the user's intent based on the extracted slot values ​​and outputs the results. The accuracy of the slot value extraction directly affects the accuracy of the TQA system's output.

[0087] For the process of extracting slots in the TQA system, a rule-based matching method can be used. For example, for each slot name to be extracted, a large number of corresponding candidate slot values ​​can be configured. After the TQA system receives the query input by the user, it automatically traverses the string in the query from beginning to end. If a candidate slot value appears in the query input by the user, the text corresponding to the candidate slot value is extracted and filled into the corresponding position of the configured slot name, thus completing the hard matching and extraction of slot values. Although the rule-based matching method can extract slots, the following problems still exist when using the rule-based matching method to extract slot values: (1) There is no generalized universal slot extraction capability. For each slot name, only the manually configured candidate slot values ​​can be extracted to a limited extent. (2) There is a large amount of general semantic information that cannot be exhaustively enumerated. Although some explicit slot names, such as time, country, gender, etc., can be exhaustively enumerated, in actual business there will be a large number of slot names, such as the candidate slot values ​​corresponding to parameter names such as event, public matters, office business, etc., which cannot be completely exhaustively enumerated. (3) Manual labeling and maintenance costs are relatively high. For each new slot, a large amount of manpower is needed to label and maintain the data, resulting in high usage costs.

[0088] Alternatively, the natural language understanding capabilities of large language models (LLMs) can be directly utilized to extract relevant slot names and corresponding candidate slot values. However, using LLMs directly to extract relevant slot names and corresponding candidate slot values ​​still suffers from issues such as low accuracy in candidate slot value extraction and the inability to directly call plugins with the extracted general semantic text. Furthermore, when using LLMs to extract relevant slot names and corresponding candidate slot values, LLMs act as a "black box." While batch retraining of the model can resolve some bad cases, this approach suffers from long processing times, high costs, and unreliable results.

[0089] In view of this, embodiments of this application provide a task processing method that can effectively improve the accuracy of extracting slot values ​​related to user intent during task processing.

[0090] For example, Figure 3 A schematic diagram of the architecture of a TQA system provided in an embodiment of this application is shown. Figure 3 As shown, the TQA system 300 includes: a request body construction module 310, a neural network model 320, and a multi-round follow-up questioning module 330.

[0091] The request body construction module 310 can be used to receive a first query input by the user. Then, the request body construction module 310 can identify the user's true intent (hereinafter also described as user intent) from the first query. In one possible example, the request body construction module 310 can preprocess the first query input by the user. Then, the request body construction module 310 can input the preprocessed first query into a pre-trained intent recognition model to obtain the user intent corresponding to the first query. Preprocessing the first query may include cleaning and normalizing the first query, such as removing punctuation, converting to lowercase, word segmentation, and removing stop words. In another possible example, the request body construction module 310 can identify the user's true intent from the first query input by the user based on a rule-based matching method. For example, a keyword table can be pre-established, and the first query input by the user can be matched against the keyword table to identify the user's true intent. For example, if the first query contains "weather," the true intent corresponding to the first query input by the user can be identified as querying the weather.

[0092] The request body construction module 310, based on the identified user intent, filters out first skill description information from the skill description information database. This first skill description information includes slot names related to the user intent. The request body construction module 310 can then construct a request body based on the first skill description information and the first query. For example... Figure 4 As shown, the process of constructing the request body by the request body construction module 310 can include two stages (stage 1 and stage 2). In stage 1, the first query is obtained, which can be understood as a question or request raised by the user. In stage 2, the online request body is constructed. When constructing the request body, it can be built based on the first query and the first skill description information.

[0093] In some embodiments, the request body may also include historical queries. After receiving the first query, the request body construction module 310 concatenates the first skill description information, the historical queries, and the first query into a request body. That is, the request body contains a skill description information field, a historical query field, and a query field. When there is no historical query in the user's current round of dialogue, the historical query field in the request body can be empty. It should be understood that when constructing the request body, the historical queries in the request body can be selected according to the actual situation.

[0094] In some embodiments, the skill description information base can be pre-generated. For example, the skill description information base can be generated during the offline phase of the TQA system. Exemplarily, the process of generating the skill description information base during the offline phase can be as follows: Figure 4 As shown. The process of generating a skill description information database can include two stages. In stage 5, skill description information is imported. This skill description information can be input by the user or obtained from databases on other platforms. In this embodiment, the method of obtaining skill description information is not limited. In one possible example, the description information for each skill may include one or more of the following: skill name, skill description information, skill parameter list, skill parameter value dictionary, and skill parameter type dictionary. In stage 6, the skill description information is structured. Since the structure of the imported skill description information may not be uniform, it can be structured. This structuring operation refers to converting the acquired skill description information into a more ordered, manageable, and analyzable form. For example, a machine learning model can be pre-trained to automatically convert the acquired skill description information into a skill description information database.

[0095] For example, the skill description information entered by the user can be a piece of text. After receiving the skill description information entered by the user, the TQA system can convert the skill description information into a pre-set format. For example, for the skill "weather query", the skill description information entered by the user is as follows: "The weather query software provides a weather forecast query function. The weather query function can provide the weather forecast for the target city on a specified date. When using the weather query function, the user needs to enter the target city to be queried, the specified date, etc. Among them, the target city can include: Guangdong, Shanghai, Chengdu, etc. The weather query software can query the weather of the target city on a specified date from the official website of the meteorological bureau. For example, it can obtain the weather information of the target city every 6 hours and output it to the user. When outputting the weather of the target city on a specified date, the weather query software can provide corresponding clothing suggestions and outdoor activity suggestions." After performing a structured operation on the skill description information of the "weather query" skill entered by the user, the skill description information corresponding to the "weather query" skill can be as follows:

[0096] skill_name: Weather query

[0097] skill_slots: city: The name of the city where the user wants to check the weather.

[0098] Date: The specific date the user wants to query.

[0099] skill_infos:

[0100] Function: Provides weather forecasts for a specified city on a specific date.

[0101] Purpose: To help users plan outdoor activities and prepare appropriate clothing.

[0102] Limitations: Weather information is provided for only a limited number of cities and does not include extreme weather forecasts.

[0103] Data source: Data from the Meteorological Bureau website.

[0104] Update frequency: Weather data is updated every 6 hours.

[0105] Skill parameter value dictionary: {Capital city of Sichuan Province: Chengdu; Capital: Beijing}.

[0106] Skill parameter type dictionary: {City: int type, Time: base time type...}.

[0107] The neural network model 320 is used to extract slot values ​​from the first query based on the request body constructed by the request body construction module 310. For example, such as... Figure 4 As shown, the process of extracting slot values ​​from the first query using a neural network model can include two stages. In stage 3, the neural network model 320 extracts the slot values ​​from the first query (i.e., online model inference). After extracting the slot values ​​from the first query, the extracted slot values ​​can be filled into the corresponding slots of the first query. For example, the first query is "Query Shanghai's weather tomorrow," and the corresponding slots are "City" and "Time." The neural network model 320 extracts the slot values ​​"Shanghai" and "Tomorrow" from the first query. The neural network model 320 then fills the slots corresponding to the first query with the extracted slot values, resulting in: "City: Shanghai; Time: Tomorrow." Here, "City" and "Time" are the slot names, and "Shanghai" and "Tomorrow" are the slot values. When extracting slot values ​​from the first query using the neural network model 320, the slot name is included in the constructed request body, guiding the neural network model 320 to extract the slot value corresponding to that slot name from the first query. This improves the accuracy of slot value extraction by the neural network model 320. In stage 4, the slot values ​​extracted by the neural network model 320 are output. After obtaining the slot values ​​from the first query, the extracted slot values ​​can be output for further processing. Specifically, when outputting the slot values ​​extracted from the first query, the neural network model 320 can fill the extracted slot values ​​into the corresponding slots of the first query and then output the slots corresponding to the first query.

[0108] In some embodiments, before inputting the request body constructed by the request body construction module 310 into the neural network model 320, the request body can be converted into a prompt, which is then input into the neural network model. For example, the request body can be added to a prompt template to obtain the prompt.

[0109] In some embodiments, the neural network model 320 can be a neural network model that takes a query and slot name as input data and slot values ​​as output data. Before extracting the slot value from the first query using the neural network model 320, the neural network model 320 can be trained using skill description information from a skill description information database. Since the skill description information in the skill description information database is limited, and training the neural network model 320 requires a large amount of data, the skill description information in the skill description information database can be expanded to obtain a larger-scale training dataset.

[0110] In one possible example, each skill description can be expanded to generate multiple training datasets, whose labels can be the slot values ​​corresponding to the slot names in the skill description. For instance, the slot names for "Weather Skill Description" in the skill description database include "Location, Time". Expanding "Weather Skill Description" yields query1 "Query the weather in Beijing on Monday", labeled "Beijing, Monday"; and query2 "Query the weather in Shanghai on March 25th", labeled "Shanghai, March 25th". The slot names for both "Beijing, Monday" and "Shanghai, March 25th" are "Location, Time".

[0111] In another possible example, the skill description information in the skill description information base can be expanded using self-instruction techniques to increase the size of the training dataset. For example... Figure 4 As shown, the training process for the neural network model 320 can include two stages (stage 7 and stage 8). In stage 7, training data (i.e., ...) is generated based on self-instruction techniques and skill description information. Figure 4(Data generation via self-instruction). When generating the training dataset for neural network model 320 using the self-instruction technique, an initial seed dataset is typically needed to initiate the entire training data generation process. Through an iterative bootstrapping method, the seed dataset can generate a large amount of high-quality training data. Typically, the initial seed dataset consists of a small set of manually written instructions and corresponding input / output instances. In this example, data contained in the skill description information can be used as input / output instances in the initial seed dataset. Then, a large amount of training data is generated using the self-instruction technique, where each training data point corresponds to a sample data point and a label. For example, the sample data generated using the self-instruction technique might be "Query the weather in Beijing next Monday," with the label "Beijing, next Monday." In stage 8, neural network model 320 is trained based on the generated training data. The training data can be input into neural network model 320, iteratively updating the model parameters until neural network model 320 converges or reaches the predetermined number of iterations.

[0112] In one possible example, neural network model 320 could be an LLM model.

[0113] After receiving the slot corresponding to the first query output by the neural network model 320, the multi-turn follow-up module 330 can determine whether there is an empty slot. If an empty slot exists, the multi-turn follow-up module 330 can output a prompt message (i.e., system follow-up) to prompt the user to input the slot value corresponding to the empty slot. If no empty slot exists, the multi-turn follow-up module 330 can invoke a service related to the user's intent based on the received slot value.

[0114] In a possible example, if the slot corresponding to the first query is empty and the multi-turn follow-up module 330 outputs a prompt, the user can input a second query. The request body construction module 310 can construct a request body based on the first skill description information, the second query, and the first query. When constructing the request body, the first query can serve as a historical query to provide context for the current dialogue, allowing the neural network model 320 to more accurately extract the slot value corresponding to the second query after inputting the request body. For example, the user's first query is "Query Beijing weather". The slot extracted based on the first query is: "City: Beijing, Time: null". The user's second query is "Query Beijing weather tomorrow". When extracting the slot value from the second query through the neural network model 320, the first query is used as a historical query in the request body, ensuring that the neural network model 320 extracts the slot value "tomorrow" corresponding to the time when extracting the slot value from the second query.

[0115] Understandably, for the TQA system 300, after initially receiving the user's input query, it can determine the user's true intent based on the query and then determine the slots and services related to that intent. During the process of obtaining slot values ​​related to the user's intent, each query input by the user is saved as a historical query until the end of the current dialogue round. The end of a dialogue round between the user and the TQA system can be achieved manually by the user, such as by closing the corresponding dialogue display interface of the TQA system. Alternatively, the current dialogue round can end when the TQA system obtains all slot values ​​related to the user's intent and makes the relevant service calls (i.e., the current dialogue round automatically ends when the TQA system calls a service).

[0116] In the aforementioned TQA system, the skill description information is used as input to the neural network model 320 during training and slot value extraction, ensuring the similarity between the training and inference data (i.e., the training and inference data are identically distributed). Since the skill description information is similar to the training data of the neural network model 320 and contains slot names related to the first query, it guides the model's extraction of slot values ​​from the first query, thus improving accuracy. Furthermore, historical queries are input into the neural network model 320 during slot value extraction, providing context for the first query. This effectively improves the accuracy of slot value extraction from user-input queries.

[0117] As can be seen from the description of the TQA system 300 above, the system trains the neural network model 320 with pre-generated skill description information during the offline phase, and uses the skill description information and the user-input query as input to the neural network model 320 during the slot value extraction phase. This effectively improves the accuracy of the neural network model 320 in extracting slot values ​​from the query. Furthermore, to improve the fault tolerance of the TQA system in extracting slot values ​​from the first query during task processing, after obtaining the first query, it can also identify and correct potential bad cases in the TQA system based on the first query. Based on this concept, this application embodiment provides another TQA system. The following describes the other TQA system provided in this application embodiment.

[0118] For example, Figure 5 A schematic diagram of another TQA system provided in an embodiment of this application is shown. Figure 5 As shown, the TQA system 500 mainly includes: a request body construction module 310, a neural network model 320, a hot-fix bypass module 510, a parameter fusion module 520, and a multi-round follow-up questioning module 330. The request body construction module 310, the neural network model 320, and the multi-round follow-up questioning module 330 can be found in the aforementioned... Figure 3 The description will not be repeated here.

[0119] The hotfix bypass module 510 can be used to handle bad cases that may occur in the TQA system 500 during the slot value extraction process of the neural network model 320. For example, after the TQA system 500 receives the first query input by the user, the TQA system 500 can send the first query to the request body construction module 310 for request body construction, and also send the first query to the hotfix bypass module 510 for bad case handling. For example, as shown... Figure 6a As shown, the hot-repair bypass module 330 can identify and handle bad cases through two repair methods.

[0120] In the first repair method, during the operation of the TQA system 500, the hot-fix bypass module 330 repairs bad cases based on the skill hot-fix dictionary. This includes steps such as: obtaining the target information input by the user, loading the bad case hot-fix vocabulary (i.e., the skill hot-fix dictionary), parameter value strategy fusion (also known as hot-fix vocabulary replacement), and parameter value output. For example, the hot-fix bypass module 510 obtains the first query. Then, the hot-fix bypass module 510 matches the obtained first query with queries in the skill hot-fix dictionary. If a second query in the skill hot-fix dictionary matches the first query, the hot-fix bypass module 510 considers the TQA system 500 to have a bad case. At this time, the hot-fix bypass module 510 can obtain the slot value corresponding to the second query in the skill hot-fix dictionary, where the slot value corresponding to the second query can be considered the actual slot value corresponding to the first query. When matching the first query with queries in the skill hot-fix dictionary, similarity matching can be performed. If the similarity between the first query and the second query in the skill hotfix dictionary is greater than a threshold, then the first query can be considered to match the second query in the skill hotfix dictionary.

[0121] In the second repair method, if the operations and maintenance personnel determine that the TQA system 500 has a bad case, they can repair the bad case online, including steps such as: online input of matching rules, updating the rule matching dictionary (i.e., the skill hot-fix dictionary), and persistence of the rule matching dictionary. In some examples, the hot-fix module 330 can also receive repair text information input by the operations and maintenance personnel. This repair text information contains the correct slot value corresponding to the query entered by the user. After receiving the repair text information input by the operations and maintenance personnel, the hot-fix module 330 needs to store the repair text information in the skill hot-fix dictionary, so that when the hot-fix bypass module 330 identifies the same bad case again, it can output the correct slot value. In some embodiments, after receiving the first query, the TQA system 500 extracts the slot value from the first query through the request body construction module 310 and the neural network model 320. The neural network model 320 can output the extracted slot value after extracting it from the query. Maintenance personnel can determine whether there is a bad case in the TQA system 500 by inputting the slot value in the TQA system 500.

[0122] The parameter fusion module 520 is used to fuse the slot values ​​output by the neural network model 320 and the slot values ​​output by the hotfix bypass module 510. Specifically, if the slot value output by the hotfix bypass module 510 is empty, the parameter fusion module 520 directly outputs the slot value extracted by the neural network model 320. If the slot value output by the hotfix bypass module 510 is not empty, the parameter fusion module 520 matches the slot value extracted by the neural network model 320 with the slot value output by the hotfix bypass module 510. If the match is successful, the parameter fusion module 520 outputs the slot value extracted by the neural network model 320. If the match fails, the parameter fusion module 520 outputs the slot value output by the hotfix bypass module 510. In other words, when both the neural network model 320 and the hotfix bypass module 510 output slot values, the slot value output by the hotfix bypass module 510 has a higher priority than the slot value output by the neural network model 320.

[0123] In one possible example, continue to refer to Figure 6bThe first query is "view newsstand next to the pedestrian crossing". The slot value extracted by the neural network model 320 is "pedestrian crossing". The slot value extracted by the hot-fix bypass module 510 is "newsstand next to the pedestrian crossing". The parameter fusion module 520 matches "pedestrian crossing" and "newsstand next to the pedestrian crossing" and confirms that the slot value extracted by the neural network model 320 does not match the slot value extracted by the hot-fix bypass module 510. At this time, the parameter fusion module 520 can use the slot value "newsstand next to the pedestrian crossing" extracted by the hot-fix bypass module 510 as the slot value corresponding to the first query.

[0124] In the aforementioned TQA system 500, during the process of extracting the slot value for the first query, the skill hot repair dictionary is used online to repair possible bad cases, thus improving the problems of difficult and long repair cycles.

[0125] As can be seen from the description of the TQA system 300 above, the system trains the neural network model 320 with pre-generated skill description information during the offline phase, and uses the skill description information and the query from which the slot values ​​need to be extracted as input to the neural network model 320 during the slot value extraction phase. This effectively improves the accuracy of the neural network model 320 in extracting slot values ​​from the query. Furthermore, to ensure that the slot values ​​extracted by the neural network model 320 can be directly used by relevant services, thus saving the task processing time of the TQA system, the slot values ​​extracted by the neural network model 320 can be standardized before the TQA system 300 calls the relevant services. Based on this concept, this application embodiment provides another TQA system. The following describes the other TQA system provided in this application embodiment.

[0126] For example, Figure 7 A schematic diagram of another TQA system provided in an embodiment of this application is shown. Figure 7 As shown, the TQA system 700 mainly includes: a request body construction module 310, a neural network model 320, a parameter standardization module 710, and a multi-round follow-up questioning module 330. The request body construction module 310, the neural network model 320, and the multi-round follow-up questioning module 330 can be found in the aforementioned... Figure 3 The description will not be repeated here.

[0127] The parameter standardization module 710 is used to further process the slot values ​​extracted by the neural network model 320 to solve the problem that the slot values ​​extracted by the neural network model 320 cannot be directly used by the services that need to be called. For example, such as... Figure 8As shown, the process of standardizing the slot values ​​extracted by the neural network model 320 using the parameter standardization module 710 can be divided into two stages: parameter value dictionary update and model parameter type conversion. In the parameter value dictionary update stage, steps such as "parameter extraction result," "parameter value dictionary mapping update," and "parameter value replacement" are used to map the non-standardized slot values ​​extracted by the neural network model 320 to standardized slot values. For example, in the "parameter extraction result" step, the slots output by the neural network model 320 are obtained; each slot contains a slot name and a slot value. In the "parameter value dictionary mapping update" step, the slot values ​​extracted by the neural network model 320 can be used as target items. Then, the non-standardized slot values ​​in the skill parameter value dictionary are traversed. If a target item appears in the skill parameter value dictionary, the "standardized slot value" corresponding to the target item in the skill parameter dictionary is directly used to replace the slot value in the output slot of the neural network model 320. For example, referring to... Figure 8 After receiving the slots (information 1) sent by the neural network model 320, the parameter standardization module 710 uses multiple slot values ​​in information 1 as target items. Then, the parameter standardization module 710 traverses the non-standardized parameter values ​​in the skill parameter value dictionary and obtains the slot values ​​containing the non-standardized descriptions "Sichuan Spicy Tofu" and "Xiao Zhou Concert" from the skill parameter value dictionary, matching them with the slot values ​​in information 1. Then, the parameter standardization module 710 retrieves the slot values ​​of the two non-standardized descriptions "Sichuan Spicy Tofu" and "Xiao Zhou Concert" from the skill parameter value dictionary, and the corresponding standardized description slot values ​​"Sichuan Mapo Tofu" and "Xiao Zhou Concert", replacing "Sichuan Spicy Tofu" and "Xiao Zhou Concert" in information 1, resulting in information 2.

[0128] In the parameter type conversion stage, steps such as "acquiring skill description information," "parameter type model conversion," and "standardizing parameter values" can be used to convert the parameter value types of the slot values ​​extracted by the neural network model 320. This achieves the goal of converting the slot values ​​described in natural language extracted by the neural network model 320 into slot values ​​described in machine language. For example, in the "acquiring skill description information" step, the parameter standardization module 710 can obtain the type of each slot value in the output slots of the neural network model 320. In the "parameter type model conversion" step, the parameter standardization module 710 inputs each obtained slot value and the skill parameter type dictionary into the second model for parameter value type conversion. The skill parameter type dictionary guides the second model to perform type conversion on the input slot values. For example, the second model can be a pre-trained LLM model. Figure 9As shown, the parameter standardization module 710 inputs information 2 and the skill parameter type dictionary into the second model to convert the slot values ​​described in natural language in the second information into slot values ​​described in machine language. For example, the slot value "tomorrow" in information 2 is converted into a base time type (2024-08-30 00:00:00), the slot value "two people" is converted into an int type (2), and the slot value "twenty-six degrees" is converted into an int type (26).

[0129] In the aforementioned TQA system 700, after obtaining the slot values ​​from the first query, the non-standardized slot values ​​are replaced with standardized slot values, and the extracted slot values ​​described in natural language are converted into slot values ​​described in machine language. This allows the extracted slot values ​​to be used directly when calling the service, saving time in the service call process.

[0130] As can be seen from the description of the TQA system 700 above, the system trains the neural network model 320 with pre-generated skill description information during the offline phase, and uses the pre-generated skill description information and the user-input query as input to the neural network model 320 during the slot value extraction phase. This effectively improves the accuracy of the neural network model 320 in extracting slot values ​​from the query. Furthermore, the slot values ​​extracted by the neural network model 320 are input to the parameter standardization module 710 for standardization processing, allowing the processed slot values ​​to be directly used by the service, saving the time of the TQA system 700 in calling the service. To improve the fault tolerance of the TQA system in extracting slot values ​​from the first query during task processing, after obtaining the first query, it can also identify and repair potential bad cases in the TQA system based on the first query. Based on this concept, this application embodiment provides another TQA system. The following describes the other TQA system provided in this application embodiment.

[0131] For example, Figure 10 A schematic diagram of another TQA system provided in an embodiment of this application is shown. Figure 10 As shown, the TQA system 1000 mainly includes: a request body construction module 310, a neural network model 320, a parameter normalization module 710, a hot-fix bypass module 510, a parameter fusion module 520, and a multi-round follow-up questioning module 330. The request body construction module 310, the neural network model 320, and the multi-round follow-up questioning module 330 can be found in the aforementioned... Figure 3 The descriptions of the hot repair bypass module 510 and the parameter fusion module 520 can be found in the foregoing. Figure 5 The description and parameter standardization module 710 can be found in the foregoing. Figure 7The description is omitted here.

[0132] In some embodiments, the TQA system described above can be configured on a cloud computing platform, for example, deployed on at least one instance such as a virtual machine or container, so that the cloud computing platform can provide task processing services. Of course, the TQA system can also be configured on nodes other than the cloud computing platform, for example, deployed in at least one data center or on at least one server, depending on the actual situation, and is not limited here. The cloud computing platform can provide pages related to public cloud services for tenants to remotely access public cloud services. In this embodiment, tenants (also referred to as "users") can pre-purchase the task processing services provided by the TQA system on the cloud computing platform. For ease of understanding, the interaction between the tenant and the cloud computing platform is described below. Figure 11 As shown, the interaction between the tenant and the cloud computing platform mainly includes: the tenant logs into the cloud computing platform 1100 through a client webpage, selects and purchases cloud services (i.e., task processing services) related to the TQA system on the cloud computing platform 1100, and after purchase, the tenant can perform task processing on the cloud computing platform 1100 based on the functions provided by the task processing service. The cloud computing platform 1100 is primarily used to manage the infrastructure running the task processing service. For example, the infrastructure running the task processing service may include multiple data centers located in different regions, each data center including multiple servers. The data centers can provide basic resources for the task processing service, such as computing resources and storage resources. Therefore, when purchasing and using the task processing service, the tenant mainly pays for the resources used. When using the task processing service, the tenant can input task-related data through the configuration interface, application program interface (API), or other interfaces provided by the cloud computing platform 1100. The cloud computing platform 1100 can then process the task according to the tenant's input.

[0133] Next, based on the above content, a task processing method provided by an embodiment of this application will be introduced.

[0134] For example, Figure 12 This diagram illustrates a task processing method according to an embodiment of this application. It is understood that this method can be executed by any device, equipment, platform, or cluster of devices with computing and processing capabilities. For example, this method can be executed by a cloud computing platform, wherein the device can be implemented by software and / or hardware, and can be configured in, but is not limited to, electronic devices or servers; typically, it can be configured on a cloud computing platform. For ease of description, the following description uses a cloud computing platform as the execution entity. Figure 12As shown, this task processing method may include:

[0135] Step 1201: Obtain the first query input by the user.

[0136] In this embodiment, the first query can be understood as a question or request raised by the user.

[0137] Step 1202: Based on the first query, identify the user's true intent.

[0138] In this embodiment, the cloud computing platform can identify the user's true intent in various ways. For example, the platform can identify the user's true intent from the first query input by the user based on a rule-based matching method. For instance, a keyword table can be pre-established, and the first query input by the user can be matched against the keyword table to identify the user's true intent. For example, if the first query contains "weather," the true intent corresponding to the first query input can be identified as querying the weather. Alternatively, the cloud computing platform can preprocess the first query input by the user. Then, the platform can input the preprocessed first query into a pre-trained intent recognition model to obtain the user intent corresponding to the first query. Preprocessing the first query can include cleaning and normalizing it, such as removing punctuation, converting to lowercase, word segmentation, and removing stop words.

[0139] Step 1203: Query the skill description information that matches the true intent to obtain the target slot name related to the true intent. The skill description information is used to describe the slot name of the skill related to the user's intent.

[0140] In this embodiment, the skill description information database contains at least one skill description. After obtaining the true intent corresponding to the user's first query, the cloud computing platform can filter out the first skill description information from the skill description information database based on the user's true intent. The first skill description information contains the target slot name related to the user's true intent. For example, the user's true intent can be matched with the skill names in the skill description information database based on similarity. If the similarity between the skill name of the first skill in the skill description information database and the user's true intent exceeds a set threshold, then the first skill description information corresponding to the first skill is obtained.

[0141] Step 1204: Input the first data into the neural network model to extract the target slot value related to the target slot name from the first query, wherein the first data includes: the first query and the target slot name.

[0142] In this embodiment, the neural network model can be a neural network model that needs pruning. Users can upload neural network models to the cloud computing platform through a client associated with the cloud computing platform, but are not limited to this. For example, the client associated with the cloud computing platform can provide a model upload portal, through which users can select the model they want to prune. The client associated with the cloud computing platform can be a desktop application, mobile application, web application, or web-based application, etc. For example, the neural network model can be one of the above-mentioned... Figure 3 The neural network model described in [the document].

[0143] When extracting slot values ​​from the first query using a neural network model, the first query and the first skill description information are input together into the neural network model. Since the first skill description information contains the target slot name related to the user's true intent, it guides the neural network model in extracting slot values ​​from the first query, thus improving the accuracy of slot value extraction.

[0144] As a possible implementation, to improve the efficiency and accuracy of the neural network model in extracting slot values ​​from the first query, the first skill description information and the first query can be concatenated into a request body, which is then input into the neural network model. Concatenating the first skill description information and the first query into a request body specifies the order of information input into the neural network model, improving its information processing efficiency. For example, concatenating the first skill description information and the first query into a request body in the order of "first skill description information + first query" allows the neural network model to determine that the first field in the request body is "skill description information," and the second field is "the query entered by the user." In some examples, when concatenating the first skill description information and the first query into a request body, the "first query" field can be used as the last field of the request body, for example, concatenating them in the order of "first skill description information + first query." In this way, when the neural network model identifies the request body, it can ensure that the information of the "first query" field obtained by the neural network is not interfered with by other information (such as the first skill description information read first), thus ensuring the accuracy of the "first query" field obtained by the neural network model.

[0145] As another possible implementation, to improve the accuracy of the neural network model in extracting slot values ​​from the first query, historical queries can be input into the neural network model. For example, the first skill description information, the first query, and historical queries can be concatenated into a request body in the order of "first skill description information + historical query + first query". When extracting slot values ​​from the first query, the neural network model can refer to the context of the first query provided by the historical queries, which can effectively improve the accuracy of slot value extraction from the first query.

[0146] Step 1205: Based on the target slot value, execute a task related to the true intent.

[0147] In this embodiment, after obtaining the slot value of the first query, the cloud computing platform can invoke a task related to the user's true intent based on the obtained slot value. For example, the task execution module will use the values ​​of the "city" and "date" slots to call the weather query service interface, passing the slot values ​​as parameters to the service, thereby obtaining and returning the corresponding weather information.

[0148] In this way, the skill description information containing the slot name and the user-input query are used together as input to the neural network model. This allows the neural network model to extract slot values ​​from the user-input query by using the skill description information to guide it in extracting the slot values ​​related to the slot names in the description information, thereby improving the accuracy of slot value extraction from the user-input query by the neural network model.

[0149] In some embodiments, after extracting the target slot value from the first query, the cloud computing platform can also obtain a first correspondence from the skill parameter value dictionary based on the first query. This first correspondence describes the correspondence between the standardized and non-standardized descriptions of the target slot value. Based on this first correspondence, the cloud computing platform can modify the non-standardized description in the target slot value to a standardized description.

[0150] In some embodiments, after extracting the target slot value from the first query, the cloud computing platform can also obtain a second correspondence from the skill parameter type dictionary based on the first query. This second correspondence describes the correspondence between the natural language description and the machine language description of the target slot value. Based on the second correspondence, the cloud computing platform can modify the slot value described in natural language to a slot value described in machine language.

[0151] In some embodiments, before executing a task related to the true intent based on the target slot value, the cloud computing platform may also determine whether a second query related to the first query exists in the skill hotfix dictionary. If a second query related to the first query exists in the skill hotfix dictionary, the target slot value is repaired based on the slot value related to the second query in the skill hotfix dictionary, wherein the skill hotfix dictionary contains at least one query and the slot value corresponding to the query.

[0152] In some embodiments, after obtaining the slot value of the first query, the cloud computing platform can further fill the obtained slot value into the slot corresponding to the first intent. Then, if there is no empty slot corresponding to the first intent, the cloud computing platform invokes the task related to the first intent. If there is an empty slot corresponding to the first intent, the cloud computing platform inputs a prompt message to prompt the user to input the slot value related to the first intent.

[0153] In some embodiments, after extracting the slot value corresponding to the first query through a neural network model, in order to enable the extracted slot value to directly participate in invoking tasks related to the user's true intent, the extracted slot value can also be standardized. Based on this concept, embodiments of this application also provide another task processing method.

[0154] For example, Figure 13 This illustration shows a flowchart of another task processing method provided in an embodiment of this application. It is understood that this method can be executed by any device, equipment, platform, or cluster of devices with computing and processing capabilities. For example, this method can be executed by a cloud computing platform, wherein the device can be implemented by software and / or hardware, and can be configured in, but is not limited to, electronic devices or servers; typically, it can be configured on a cloud computing platform. For ease of description, the following description uses a cloud computing platform as the execution entity. Figure 13 As shown, the task processing method may include steps 1301-1309. The implementation process of steps 1301-1304 is as described above. Figure 12 The implementation process of steps 1201-1204 is the same, and will not be repeated here.

[0155] Step 1301: Obtain the first query input by the user.

[0156] Step 1302: Based on the first query, identify the user's true intent.

[0157] Step 1303: Query the skill description information that matches the true intent to obtain the target slot name related to the true intent. The skill description information is used to describe the slot name of the skill related to the user's intent.

[0158] Step 1304: Input the first data into the neural network model to extract the target slot value related to the target slot name from the first query, wherein the first data includes: the first query and the target slot name.

[0159] Step 1305: Based on the skill parameter value dictionary in the skill description information, modify the non-standardized description slot value in the target slot value to a standardized description.

[0160] In this embodiment, after the cloud computing platform queries the skill description information database based on the first query to obtain the first skill description information, the cloud computing platform can modify the non-standardized description slot values ​​extracted from the first query into standardized descriptions based on the skill parameter value dictionary in the first skill description information. Here, non-standardized parameters are parameters described using generic language, and standardized parameters are parameters described using written language. For example, the cloud computing platform can use the slot value corresponding to the first query as the target item, and then iterate through the non-standardized parameter values ​​(i.e., slot values ​​with non-standardized descriptions) in the skill parameter value dictionary. If a non-standardized parameter value matching the target item exists in the skill parameter value dictionary, the cloud computing platform obtains the standardized parameter value corresponding to that non-standardized parameter value and replaces the non-standardized description slot value in the first query with that standardized parameter value.

[0161] Step 1306: Based on the skill parameter type dictionary in the skill description information, modify the slot values ​​in the target slot values ​​that are described in natural language to machine language descriptions.

[0162] In this embodiment, the cloud computing platform can also perform parameter value type conversion on the slot values ​​corresponding to the first query, so as to convert the slot values ​​described in natural language to slot values ​​described in machine language, so that the slot values ​​extracted from the first query can be directly used by services related to the intent. For example, the cloud computing platform obtains the slot values ​​corresponding to the first query and the skill parameter type dictionary and inputs them into a pre-trained LLM model, and the LLM model performs parameter value type conversion.

[0163] Step 1307: Determine whether there is an empty slot in the slot corresponding to the first service related to the user's true intent. If there is an empty slot, proceed to step 1308; otherwise, proceed to step 1309.

[0164] In this embodiment, after obtaining the slot value corresponding to the first query, the cloud computing platform can fill the slot value corresponding to the first service into the slot corresponding to the first service. Then, the cloud computing platform determines whether there is an empty slot in the slot corresponding to the first service. If there is an empty slot in the slot corresponding to the first service, the first service cannot be called yet, and it is necessary to continue obtaining the slot value corresponding to the first service until there are no empty slots in the slot corresponding to the first service.

[0165] For example, the user's first query is "View the weather in XX city". The first service corresponding to the first query is the weather query service, and the slots for the weather query service are "city" and "time". The cloud computing platform extracts the slot value "XX city" from the first query and fills "XX city" into the "city" slot. Then, the cloud computing platform determines that the "time" slot corresponding to the first service is empty. At this time, the weather query service cannot be called, and the "time" parameter needs to be obtained further.

[0166] Step 1308: Save the first query entered by the user and prompt the user to enter the slot value related to the first service.

[0167] In this embodiment, if there is an empty slot in the slot corresponding to the first service, the first query entered by the user can be saved as a historical query.

[0168] Step 1309: Invoke the first service.

[0169] In this embodiment, if there is no empty slot in the slot corresponding to the first service, the cloud computing platform can call the first service to achieve the first intention.

[0170] In some embodiments, to improve the fault tolerance rate of the cloud computing platform in extracting slot values ​​from user-input queries during task processing, after obtaining the user-input query, it is also possible to identify and repair potential bad cases on the cloud computing platform based on the user-input query. Based on this concept, embodiments of this application also provide another task processing method.

[0171] For example, Figure 14 This illustration shows a flowchart of another task processing method provided in an embodiment of this application. It is understood that this method can be executed by any device, equipment, platform, or cluster of devices with computing and processing capabilities. For example, this method can be executed by a cloud computing platform, wherein the device can be implemented by software and / or hardware, and can be configured in, but is not limited to, electronic devices or servers; typically, it can be configured on a cloud computing platform. For ease of description, the following description uses a cloud computing platform as the execution entity. Figure 14As shown, the task processing method may include steps 1401-1412. The implementation process of steps 1401-1404 is similar to... Figure 12 The implementation process of steps 1201-1204 is the same, and steps 1408-1410 are the same. Figure 13 The implementation process of steps 1307-1309 is the same, and will not be repeated here.

[0172] Step 1401: Obtain the first query input by the user.

[0173] Step 1202: Based on the first query, identify the user's true intent.

[0174] Step 1403: Query the skill description information that matches the true intent to obtain the target slot name related to the true intent. The skill description information is used to describe the slot name of the skill related to the user's intent.

[0175] Step 1404: Input the first data into the neural network model to extract the target slot value related to the target slot name from the first query, wherein the first data includes: the first query and the target slot name.

[0176] Step 1405: Obtain the skill hotfix dictionary.

[0177] In this embodiment, bad cases may occur during the slot value extraction process for the first query input by the user. Therefore, after obtaining the first query input by the user, a skill hotfix dictionary can be loaded online to identify potential bad cases. The skill hotfix dictionary contains multiple queries and their corresponding slot values.

[0178] Step 1406: Match the first query with the queries in the skill hotfix dictionary. If there is a second query in the skill hotfix dictionary that matches the first query, generate first information, which includes the slot value corresponding to the second query.

[0179] In this embodiment, the cloud computing platform can perform similarity matching between the first query and the second query in the skill hotfix dictionary. If the similarity between the second query and the first query in the skill hotfix dictionary is greater than a threshold, the first query and the second query can be considered a match. At this time, the cloud computing platform can obtain the slot value corresponding to the second query and use the slot value corresponding to the second query as the first information.

[0180] In some embodiments, the cloud computing platform can generate first information regardless of whether a query in the skill hotfix dictionary matches the first query. Specifically, if a query in the skill hotfix dictionary matches the first query, the first information includes the slot value corresponding to the query that matches the first query. If no query in the skill hotfix dictionary matches the first query, the first information is empty.

[0181] Step 1407: Match the slot value carried in the first information with the slot value corresponding to the first query. If the slot value carried in the first information does not match the slot value corresponding to the first query, replace the slot value corresponding to the first query with the slot value carried in the first information.

[0182] In this embodiment, after the cloud computing platform performs online slot value extraction and bad case identification on the first query input by the user, the platform can determine the final slot value corresponding to the first query based on the online parameter extraction results (i.e., the slot value corresponding to the first query) and the hot-fix results (i.e., the first information). For example, the platform can first determine whether the first information is empty. If the first information is empty, no processing is required on the slot value corresponding to the first query. If the first information is not empty, it determines whether the slot value corresponding to the first query matches the slot value contained in the first information. If the slot value corresponding to the first query matches the slot value contained in the first information, no processing is required on the slot value corresponding to the first query. If the slot value corresponding to the first query does not match the slot value contained in the first information, the slot value corresponding to the first query is replaced with the slot value carried in the first information.

[0183] Step 1408: Determine whether there is an empty slot in the slot corresponding to the first service related to the user's true intent. If there is an empty slot, proceed to step 1409; otherwise, proceed to step 1410.

[0184] Step 1409: Save the first query entered by the user and prompt the user to enter the slot value related to the first service.

[0185] Step 1410: Invoke the first service.

[0186] It is understandable that steps 1401-1404 are mainly used to extract slot values ​​from the first query, and steps 1405-1407 are mainly used for hotfix of bad cases that may occur during the extraction of slot values ​​from the first query. There is no specific execution order between steps 1401-1404 and steps 1405-1407.

[0187] In some cases, during the operation of a cloud computing platform, operations and maintenance personnel can periodically conduct spot checks to check for bad cases. Once a bad case is identified, operations and maintenance personnel can perform online repairs, which may include steps 1411-1412.

[0188] Step 1411: Obtain the second information, which carries a slot value. This slot value is the actual slot value corresponding to the first query.

[0189] In this embodiment, after the operations and maintenance personnel determine that a bad case has occurred during task processing on the cloud computing platform, they can input the correct slot value corresponding to the first query. After receiving the correct slot value corresponding to the first bad case, the cloud computing platform can also replace the slot value corresponding to the first query extracted by the neural network model with that correct slot value.

[0190] Step 1412: Save the slot values ​​carried in the first query and the second information into the skill hotfix dictionary.

[0191] In this embodiment, after receiving the first query and the corresponding slot value input by the operation and maintenance personnel, the first query and the corresponding slot value can also be saved to the skill hot repair dictionary, so that when the cloud computing platform receives the same query again, it can extract the correct slot value corresponding to the query through the skill hot repair dictionary.

[0192] In some embodiments, to improve the fault tolerance rate of the cloud computing platform in extracting slot values ​​from user-input queries during task processing, after obtaining the user-input query, it is also possible to identify and repair potential bad cases on the cloud computing platform based on the user-input query. Based on this concept, embodiments of this application also provide another task processing method.

[0193] For example, Figure 15This illustration shows a flowchart of another task processing method provided in an embodiment of this application. It is understood that this method can be executed by any device, equipment, platform, or cluster of devices with computing and processing capabilities. For example, this method can be executed by a cloud computing platform, wherein the device can be implemented by software and / or hardware, and can be configured in, but is not limited to, electronic devices or servers; typically, it can be configured on a cloud computing platform. For ease of description, the following description uses a cloud computing platform as the execution entity. Figure 15 As shown, the task processing method may include steps 1501-1515. The implementation process of steps 1501-1504 is similar to... Figure 12 The implementation process of steps 1201-1204 is the same, and steps 1505, 1506, and 1511-1513 are the same. Figure 13 The implementation process of steps 1305-1309 is the same, and steps 1507-1509, 1513, and 1514 are the same. Figure 14 Steps 1405-1408, 1412, and 1413 are the same and will not be repeated here.

[0194] Step 1501: Obtain the first query input by the user.

[0195] Step 1202: Based on the first query, identify the user's true intent.

[0196] Step 1503: Query the skill description information that matches the true intent to obtain the target slot name related to the true intent. The skill description information is used to describe the skill slot name related to the user's intent.

[0197] Step 1504: Input the first data into the neural network model to extract the target slot value related to the target slot name from the first query, wherein the first data includes: the first query and the target slot name.

[0198] Step 1505: Based on the skill parameter value dictionary in the skill description information, modify the non-standardized description slot value in the target slot value to a standardized description.

[0199] Step 1506: Based on the skill parameter type dictionary in the skill description information, modify the slot values ​​in the target slot values ​​that are described in natural language to machine language descriptions.

[0200] Step 1507: Obtain the skill hotfix dictionary.

[0201] Step 1508: Match the first query with the queries in the skill hotfix dictionary. If there is a second query in the skill hotfix dictionary that matches the first query, generate first information, which contains the slot value corresponding to the second query.

[0202] Step 1509: Match the slot value carried in the first information with the slot value corresponding to the first query. If the slot value carried in the first information does not match the slot value corresponding to the first query, replace the slot value corresponding to the first query with the slot value carried in the first information.

[0203] Step 1510: Determine whether there is an empty slot in the slot corresponding to the first service related to the user's true intent. If there is an empty slot, proceed to step 1511; otherwise, proceed to step 1512.

[0204] Step 1511: Save the first query entered by the user and prompt the user to enter the slot value related to the first service.

[0205] Step 1512: Invoke the first service.

[0206] In some cases, during the operation of a cloud computing platform, operations and maintenance personnel can periodically conduct spot checks to see if any bad cases occur. Once a bad case is identified, operations and maintenance personnel can perform online repairs, which may include steps 1513-1514.

[0207] Step 1513: Obtain the second information, which carries a slot value. This slot value is the actual slot value corresponding to the first query.

[0208] Step 1514: Save the slot values ​​carried in the first query and the second information into the skill hotfix dictionary.

[0209] It is understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application. In addition, the various embodiments described above can be combined according to actual conditions, and the combined solutions are still within the protection scope of this application.

[0210] Based on the methods in the above embodiments, this application also provides a task processing device.

[0211] For example, Figure 16 A schematic diagram of the structure of a task processing device provided in an embodiment of this application is shown. Figure 16 As shown, the task processing device includes an acquisition module 1601 and a processing module 1602. The acquisition module 1601 acquires a first query input by the user. The processing module 1602 identifies the user's true intent based on the first query. The processing module 1602 further queries skill description information matching the true intent to obtain a target slot name related to the true intent, wherein the skill description information describes the slot name of the skill related to the user's intent. The processing module 1602 also inputs first data into a neural network model to extract a target slot value related to the target slot name from the first query, wherein the first data includes the first query and the target slot name. The processing module 1602 further executes a task related to the true intent based on the target slot value.

[0212] In some embodiments, the first data may further include: the history of user-input queries.

[0213] In some embodiments, the skill description information is further used to describe the correspondence between standardized and non-standardized descriptions of slot values ​​related to user intent. After extracting the target slot value related to the slot name from the first query, the processing module 1602 is further configured to: query the skill description information based on the first query to obtain a first correspondence, which describes the correspondence between standardized and non-standardized descriptions of the target slot value. Then, based on the first correspondence, the processing module 1602 modifies the non-standardized description in the target slot value to a standardized description.

[0214] In some embodiments, the skill description information is further used to describe the correspondence between the natural language description and the machine language description of the slot value related to the user intent. After extracting the target slot value related to the slot name from the first query, the processing module 1602 is further used to: query the skill description information based on the first query to obtain a second correspondence, the second correspondence being used to describe the correspondence between the natural language description and the machine language description of the target slot value; and modifying the natural language description in the target slot value to a machine language description based on the second correspondence.

[0215] In some embodiments, before performing a task related to the true intent based on the target slot value, the processing module 1602 is further configured to: repair the target slot value based on the slot value related to the second query in the skill hotfix dictionary if a second query related to the first query exists in the skill hotfix dictionary, wherein the skill hotfix dictionary contains at least one query and the slot value corresponding to the query.

[0216] In some embodiments, the neural network model is trained based on a training dataset, the sample data of which includes multiple queries, and the labels of which include the slot values ​​in the multiple queries that correspond to the slot names in the skill description information.

[0217] In some embodiments, Figure 16 Both the acquisition module 1601 and the processing module 1602 shown can be implemented in software or in hardware. For example, the implementation of the acquisition module 1601 will be described below. Similarly, the implementation of the processing module 1602 can refer to the implementation of the acquisition module 1601.

[0218] As an example of a software functional unit, module 1601 may include code running on a computing instance. The computing instance may include at least one of a physical host (computing device), a virtual machine, or a container. Further, the aforementioned computing instance may be one or more. For example, module 1601 may include code running on multiple hosts / virtual machines / containers. It should be noted that the multiple hosts / virtual machines / containers used to run the code may be distributed within the same region or in different regions. Further, the multiple hosts / virtual machines / containers used to run the code may be distributed within the same availability zone (AZ) or in different AZs, each AZ including one or more geographically proximate data centers. Typically, a region may include multiple AZs.

[0219] Similarly, multiple hosts / virtual machines / containers used to run this code can be distributed within the same Virtual Private Cloud (VPC) or across multiple VPCs. Typically, a VPC is set up within a region. Communication between two VPCs within the same region, as well as between VPCs in different regions, requires a communication gateway to be set up within each VPC to enable interconnection between VPCs.

[0220] As an example of a hardware functional unit, the acquisition module 1601 may include at least one computing device, such as a server. Alternatively, the acquisition module 1601 may also be a device implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The PLD may be implemented using a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), generic array logic (GAL), or any combination thereof.

[0221] The multiple computing devices included in the acquisition module 1601 can be distributed in the same region or in different regions. Similarly, the multiple computing devices included in the acquisition module 1601 can be distributed in the same Availability Zone (AZ) or in different AZs. Likewise, the multiple computing devices included in the acquisition module 1601 can be distributed in the same Virtual Private Cloud (VPC) or in multiple VPCs. These multiple computing devices can be any combination of computing devices such as servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.

[0222] It should be noted that, in other embodiments, the acquisition module 1601 can be used to execute any step in the task processing method described in the above embodiments, and the processing module 1602 can be used to execute any step in the task processing method described in the above embodiments. Furthermore, the steps implemented by the acquisition module 1601 and the processing module 1602 can be specified as needed, and different steps in the task processing method described in the above embodiments can be implemented by the acquisition module 1601 and the processing module 1602 respectively. Figure 16 The task processing unit 1600 shown has all the functions.

[0223] This application also provides a computing device 1700. For example... Figure 17 As shown, computing device 1700 includes: bus 1702, processor 1704, memory 1706, and communication interface 1708. Processor 1704, memory 1706, and communication interface 1708 communicate with each other via bus 1702. Computing device 1700 can be a server or electronic device. It should be understood that this application does not limit the number of processors and memories in computing device 1700.

[0224] The 1702 bus can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of representation, Figure 17 The bus 1704 may be represented by a single line, but this does not mean that there is only one bus or one type of bus. The bus 1704 may include a path for transmitting information between various components of the computing device 1700 (e.g., memory 1706, processor 1704, communication interface 1708).

[0225] Processor 1704 may include any one or more processors such as a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).

[0226] The memory 1706 may include volatile memory, such as random access memory (RAM). The processor 1704 may also include non-volatile memory, such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid state drive (SSD).

[0227] The memory 1706 stores executable program code, and the processor 1704 executes the executable program code to implement the aforementioned functions. Figure 16 The functions of the acquisition module 1601 and processing module 1602 shown are implemented to realize the task processing method described in the above embodiments. That is, the memory 1706 stores instructions for executing the task processing method described in the above embodiments.

[0228] Alternatively, the memory 1706 stores executable code, and the processor 1704 executes the executable code to implement the aforementioned functions respectively. Figure 16 The task processing device 1600 shown in the figure performs the functions of the task processing method described in the above embodiments, thereby implementing the task processing method described in the above embodiments. That is, the memory 1706 stores instructions for executing the task processing method described in the above embodiments.

[0229] The communication interface 1703 uses transceiver modules, such as, but not limited to, network interface cards and transceivers, to enable communication between the computing device 1700 and other devices or communication networks.

[0230] This application also provides a computing device cluster. The computing device cluster includes at least one computing device. This computing device can be a server, such as a central server, an edge server, or a local server in a local data center.

[0231] like Figure 18 As shown, the computing device cluster includes at least one computing device 1700. The memory 1706 of one or more computing devices 1700 in the computing device cluster may store the same instructions for executing the task processing method described in the above embodiments.

[0232] In some possible implementations, the memory 1706 of one or more computing devices 1700 in the computing device cluster may also store partial instructions for executing the task processing method described in the above embodiments. In other words, a combination of one or more computing devices 1700 can jointly execute instructions for executing the task processing method described in the above embodiments.

[0233] It should be noted that the memory 1706 in different computing devices 1700 within the computing device cluster can store different instructions, each used to execute the aforementioned instructions. Figure 16 This illustrates some of the functions of the task processing device 1600. Specifically, the instructions stored in the memory 1706 of the different computing devices 1700 can implement the functions of one or more modules in the acquisition module 1601 and processing module 1602.

[0234] In some possible implementations, one or more computing devices in a computing device cluster can be connected via a network. This network can be a wide area network (WAN) or a local area network (LAN), etc. Figure 19 One possible implementation is shown. For example... Figure 19 As shown, the two computing devices 1700A and 1700B are connected via a network. Specifically, they are connected to the network through communication interfaces in each computing device. In this possible implementation, the memory 1706 in computing device 1700A stores instructions for executing the functions of the acquisition module 1601. Simultaneously, the memory 1706 in computing device 1700B stores instructions for executing the functions of the processing module 1602.

[0235] It should be understood that Figure 19 The functions of computing device 1700A shown can also be performed by multiple computing devices 1700. Similarly, the functions of computing device 1700B can also be performed by multiple computing devices 1700.

[0236] This application also provides another computing device cluster. The connection relationships between the computing devices in this computing device cluster can be similarly referred to... Figure 18 and Figure 19 The connection method of the computing device cluster is different in that the memory 1706 of one or more computing devices 1700 in the computing device cluster can store the same instructions for executing the methods in the above embodiments.

[0237] In some possible implementations, the memory 1706 of one or more computing devices 1700 in the computing device cluster may also store partial instructions for executing the aforementioned data processing method. In other words, a combination of one or more computing devices 1700 can jointly execute the instructions for executing the aforementioned data processing method.

[0238] Based on the methods in the above embodiments, this application provides a computer-readable storage medium including computer program instructions. When the computer program instructions are executed by a computing device, the computing device performs the methods in the above embodiments; or, when the computer program instructions are executed by a cluster of computing devices, the cluster of computing devices performs the methods in the above embodiments. Exemplarily, the computer-readable storage medium can be any available medium that the computing device can store, or a data storage device such as a data center containing one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state drive), etc.

[0239] Based on the methods in the above embodiments, this application provides a computer program product containing instructions that, when executed by a computing device, cause the computing device to perform the methods in the above embodiments, or, when executed by a cluster of computing devices, cause the cluster of computing devices to perform the methods in the above embodiments.

[0240] It is understood that the processor in the embodiments of this application can be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. A general-purpose processor can be a microprocessor or any conventional processor.

[0241] The method steps in the embodiments of this application can be implemented in hardware or by a processor executing software instructions. The software instructions can consist of corresponding software modules, which can be stored in random access memory (RAM), flash memory, read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, portable hard disks, CD-ROMs, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can reside in an ASIC.

[0242] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted through the computer-readable storage medium. The computer instructions can be transmitted from one website, computer, cloud computing platform, or data center to another website, computer, cloud computing platform, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a cloud computing platform or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state disk (SSD)).

[0243] It is understood that the various numerical designations used in the embodiments of this application are merely for descriptive convenience and are not intended to limit the scope of the embodiments of this application.

[0244] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the protection scope of the technical solutions of the embodiments of this application.

Claims

1. A task processing method, characterized in that, include: Get the first query input by the user; Based on the first query, identify the user's true intent; Query the skill description information that matches the true intent to obtain the target slot name related to the true intent, wherein the skill description information is used to describe the slot name of the skill related to the user's intent; The first data is input into a neural network model to extract the target slot value related to the target slot name from the first query, wherein the first data includes: the first query and the target slot name; Based on the target slot value, execute a task related to the true intent.

2. The method according to claim 1, characterized in that, The first data also includes: the user-inputted historical query.

3. The method according to claim 1 or 2, characterized in that, The target slot value includes a non-standardized description, and the skill description information is also used to describe the correspondence between the standardized and non-standardized descriptions of the slot value related to the user intent. After extracting the target slot value related to the slot name from the first query, the process further includes: Based on the target slot value, the skill description information is queried to obtain a first correspondence relationship. The first correspondence relationship is used to describe the correspondence relationship between the standardized description and the non-standardized description of the target slot value. Based on the first correspondence, the non-standardized description in the target slot value is modified into a standardized description.

4. The method according to any one of claims 1-3, characterized in that, The target slot value includes a natural language description, and the skill description information is also used to describe the correspondence between the natural language description and the machine language description of the slot value related to the user intent; After extracting the target slot value related to the slot name from the first query, the process further includes: Based on the target slot value, the skill description information is queried to obtain a second correspondence relationship. The second correspondence relationship is used to describe the correspondence between the natural language description and the machine language description of the target slot value. Based on the second correspondence, the natural language description in the target slot value is modified to a machine language description.

5. The method according to any one of claims 1-4, characterized in that, Before executing the task related to the true intent based on the target slot value, the method further includes: If a second query related to the first query exists in the skill hotfix dictionary, the target slot value is repaired based on the slot value related to the second query in the skill hotfix dictionary. The skill hotfix dictionary contains at least one query and the slot value corresponding to the query.

6. The method according to any one of claims 1-5, characterized in that, The neural network model is trained based on a training dataset, the sample data of which includes multiple queries, and the labels of the training dataset include the slot values ​​in the multiple queries that correspond to the slot names in the skill description information.

7. A task processing device, characterized in that, include: The retrieval module is used to retrieve the first query input by the user; The processing module identifies the user's true intent based on the first query; The processing module is further configured to query skill description information that matches the true intent, and obtain the target slot name related to the true intent, wherein the skill description information is used to describe the slot name of the skill related to the user's intent; The processing module is further configured to input the first data into a neural network model to extract the target slot value related to the target slot name from the first query, wherein the first data includes: the first query and the target slot name; The processing module is also used to perform tasks related to the true intent based on the target slot value.

8. The apparatus according to claim 7, characterized in that, The first data also includes: the user-inputted historical query.

9. The apparatus according to claim 7 or 8, characterized in that, The target slot value includes a non-standardized description, and the skill description information is also used to describe the correspondence between the standardized and non-standardized descriptions of the slot value related to the user intent. After extracting the target slot value related to the slot name from the first query, the processing module is further configured to: Based on the target slot value, the skill description information is queried to obtain a first correspondence relationship. The first correspondence relationship is used to describe the correspondence relationship between the standardized description and the non-standardized description of the target slot value. Based on the first correspondence, the non-standardized description in the target slot value is modified into a standardized description.

10. The apparatus according to any one of claims 7-9, characterized in that, The target slot value includes a natural language description, and the skill description information is also used to describe the correspondence between the natural language description and the machine language description of the slot value related to the user intent; After extracting the target slot value related to the slot name from the first query, the processing module is further configured to: Based on the target slot value, the skill description information is queried to obtain a second correspondence relationship. The second correspondence relationship is used to describe the correspondence between the natural language description and the machine language description of the target slot value. Based on the second correspondence, the natural language description in the target slot value is modified to a machine language description.

11. The apparatus according to any one of claims 7-10, characterized in that, Before executing the task related to the true intent based on the target slot value, the processing module is further configured to: If a second query related to the first query exists in the skill hotfix dictionary, the target slot value is repaired based on the slot value related to the second query in the skill hotfix dictionary. The skill hotfix dictionary contains at least one query and the slot value corresponding to the query.

12. The apparatus according to any one of claims 7-11, characterized in that, The neural network model is trained based on a training dataset, the sample data of which includes multiple queries, and the labels of the training dataset include the slot values ​​in the multiple queries that correspond to the slot names in the skill description information.

13. A computing device cluster, characterized in that, It includes at least one computing device, each computing device including a processor and memory; The processor of the at least one computing device is configured to execute instructions stored in the memory of the at least one computing device to cause the cluster of computing devices to perform the method as described in any one of claims 1-6.

14. A computer-readable storage medium, characterized in that, The method includes computer program instructions that, when executed by a cluster of computing devices, cause the cluster of computing devices to perform the method as described in any one of claims 1-6, wherein the cluster of computing devices includes at least one computing device.

15. A computer program product containing instructions, characterized in that, When the instruction is executed by the computing device cluster, the computing device cluster causes the computing device cluster to perform the method as described in any one of claims 1-6, wherein the computing device cluster includes at least one computing device.