Task processing method, apparatus, device, and computer-readable storage medium

By parsing user input to generate query commands and introducing analysis commands when specified conditions cannot be met, the problem of complex data analysis needs in existing technologies is solved, and accurate response and efficient processing of user requests are achieved.

CN119005327BActive Publication Date: 2025-11-21BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202410851944.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-06-27
Publication Date
2025-11-21
Estimated Expiration
2044-06-27

AI Technical Summary

Technical Problem

When faced with complex data analysis needs, especially cross-time period comparative analysis, trend prediction, and anomaly detection, existing technologies cannot effectively solve these problems by simply relying on SQL queries. They also struggle to accurately understand users' complex computational problems and select appropriate tools to complete the task execution requests.

Method used

By parsing user input, query instructions are generated. When it is determined that the input cannot meet the specified conditions, analysis instructions are introduced for further data analysis. The query and analysis instructions are combined to resolve the task execution request.

Benefits of technology

It enables effective responses to complex data analysis needs, accurately understands user requests, and solves problems through multiple methods, thereby improving the efficiency and accuracy of data processing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119005327B_ABST
    Figure CN119005327B_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure provide a task processing method, device, equipment and computer readable storage medium. The method comprises: parsing a received user input to obtain a parsing result, the user input indicating a task execution request for a target application; generating a query instruction based on the parsing result; and in response to determining that a query result obtained by using the query instruction does not satisfy a specified condition, generating an analysis instruction, the analysis instruction being used for analyzing the query result obtained by using the query instruction. The respective advantages of the query instruction and the analysis instruction can be fully utilized, thereby completing task processing.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The exemplary embodiments disclosed herein relate generally to the field of computers, and more particularly to task processing methods, apparatus, devices, and computer-readable storage media. Background Technology

[0002] With the development of information technology, various terminal devices can provide people with a variety of services in work and life. Applications providing these services can be deployed on these terminal devices. The terminal devices present relevant content and interact with users through the application's user interface to meet various user needs. In some cases, users may initiate task processing requests within the application. Therefore, how to accurately complete these task processing requests is a key concern. Summary of the Invention

[0003] In a first aspect of this disclosure, a task processing method is provided. The method includes: parsing received user input to obtain a parsing result, wherein the user input indicates a task execution request for a target application; generating a query instruction based on the parsing result; and, in response to determining that a query result obtained using the query instruction does not meet specified conditions, generating an analysis instruction for analyzing the query result obtained using the query instruction.

[0004] In a second aspect of this disclosure, a task processing apparatus is provided, comprising: a parsing module configured to parse received user input to obtain a parsing result, wherein the user input indicates a task execution request for a target application; a query instruction generation module configured to generate a query instruction based on the parsing result; and an analysis instruction generation module configured to generate an analysis instruction in response to determining that a query result obtained using the query instruction does not meet specified conditions, wherein the analysis instruction is used to analyze the query result obtained using the query instruction.

[0005] In a third aspect of this disclosure, an electronic device is provided. The device includes at least one processing unit; and at least one memory coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit. When executed by the at least one processing unit, the instructions cause the electronic device to perform the method of the first aspect.

[0006] In a fourth aspect of this disclosure, a computer-readable storage medium is provided. A computer program is stored on the medium, which, when executed by a processor, implements the method of the first aspect.

[0007] It should be understood that the description in this section is not intended to limit the key or essential features of the embodiments of this disclosure, nor is it intended to restrict the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description

[0008] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. In the drawings, the same or similar reference numerals denote the same or similar elements, wherein:

[0009] Figure 1 A schematic diagram of an example environment in which embodiments of the present disclosure can be implemented is shown;

[0010] Figure 2 A block diagram illustrating a task processing procedure according to some embodiments of the present disclosure is shown;

[0011] Figure 3 A schematic diagram of user input according to some embodiments of the present disclosure is shown;

[0012] Figure 4 A schematic diagram of a task processing procedure according to some embodiments of the present disclosure is shown;

[0013] Figure 5 A schematic diagram is shown of a page displaying data results according to some embodiments of the present disclosure;

[0014] Figure 6 A schematic structural block diagram of a task processing apparatus according to some embodiments of the present disclosure is shown;

[0015] Figure 7 A block diagram of an electronic device that can implement one or more embodiments of the present disclosure is shown. Detailed Implementation

[0016] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.

[0017] In the description of embodiments of this disclosure, the term "comprising" and similar terms should be understood as open-ended inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may also be included below.

[0018] In this document, unless explicitly stated otherwise, performing a step in response to A does not mean that the step is performed immediately after A, but may include one or more intermediate steps.

[0019] It is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition, use, storage or deletion of the data) shall comply with the requirements of relevant laws, regulations and related provisions.

[0020] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, relevant users should be informed of the type, scope of use, and usage scenarios of the information involved in this disclosure through appropriate means in accordance with relevant laws and regulations, and authorization should be obtained from the relevant users. Among them, relevant users may include any type of rights holder, such as individuals, enterprises, and groups.

[0021] For example, in response to receiving an active request from a user, a prompt message is sent to the relevant user to clearly inform the user that the requested operation will require obtaining and using the user's information, thereby enabling the relevant user to choose whether to provide information to the software or hardware such as the electronic device, application, server, or storage medium that performs the operation of the technical solution disclosed herein based on the prompt message.

[0022] As an optional but non-restrictive implementation, in response to a user's active request, a prompt message can be sent to the user, such as a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide information to the electronic device.

[0023] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of this disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of this disclosure. The activation of digital assistant-related functions, the acquisition of data, the processing and storage of data, etc., in the embodiments of this disclosure shall all require prior authorization from the user and other rights holders associated with the user, and shall comply with the agreements and rules between relevant laws and regulations and rights holders.

[0024] As used in this paper, the term "model" refers to a model that learns the relationship between inputs and outputs from training data, enabling it to generate corresponding outputs for a given input after training. Model generation can be based on machine learning techniques. Deep learning is a machine learning algorithm that processes inputs and provides corresponding outputs using multiple layers of processing units. A neural network model is an example of a deep learning-based model. In this paper, "model" may also be referred to as a "machine learning model," "learning model," "machine learning network," or "learning network," and these terms are used interchangeably.

[0025] Figure 1 A schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented is shown. Environment 100 relates to an application management platform 110, which can support the creation and / or execution of applications. In some embodiments, the portion of the application management platform 110 used to support application creation may also be referred to as an application creation portion. In some embodiments, the portion of the application management platform 110 used to support application execution may also be referred to as an application execution portion.

[0026] As shown in the figure, the application creation section provides an environment for user 105 to create and publish applications. User 105 can be referred to as the application creation user or creator. In some embodiments, the application creation section can be a low-code platform that provides a collection of tools for application creation. The application creation section can support visual development of various types of applications, allowing developers to skip the manual coding process and accelerate the application development cycle and reduce costs. The application creation section can support any suitable platform for users to develop one or more types of applications, such as an application platform as a service (aPaaS) based platform. Such a platform enables users to efficiently develop applications, enabling operations such as application creation and application function adjustment.

[0027] The application creation component can be deployed locally on user 105's terminal device and / or supported by a server-side device. For example, user 105's terminal device can run a client with the application creation component, which can support interaction between the user and the application creation component provided by the server. When the application creation component runs locally on the user's terminal device, user 105 can directly interact with the local application creation component using the terminal device. When the application creation component runs on a server-side device, the server-side device can provide services to the client running on the terminal device based on the communication connection with the terminal device. The application creation component can present a corresponding page 130 to user 105 based on user 105's actions, to output and / or receive application creation-related information from user 105.

[0028] In some embodiments, the application creation section may be associated with a corresponding database, which stores the data or information required for the application creation process supported by the application creation section. For example, the database may store the code and description information corresponding to the various functional modules that make up the application. The application creation section can also perform operations such as calling, adding, deleting, and updating the functional modules in the database. The database may also store operations that can be performed on different functional blocks. For example, in a scenario where an application needs to be created, the application creation section can call the corresponding functional blocks from the database to build the application.

[0029] In embodiments of this disclosure, user 105 can create and publish target application 120 as needed in the application creation section. Target application 120 can be published to any suitable application runtime section, as long as the application runtime section can support the operation of target application 120. After publication, target application 120 can be operated by one or more end users 145. End user 145 can operate target application 120 through an associated terminal device 146 and thereby interact with application management platform 110. End user 145 can be referred to as the end user of target application 120. In some embodiments, target application 120 may include or be implemented as digital assistant 122.

[0030] Digital assistant 122 can be configured to have intelligent conversational capabilities. In the example shown, digital assistant 122 can be integrated into target application 120, serving as part of target application 120 to assist in task processing within target application 120. In other examples, digital assistant 122 can be configured as a standalone application, such as a web application or other type of application. In such examples, digital assistant 122 and target application 120 can be considered as the same application. Digital assistant 122 is provided to assist users with various task processing needs in different applications and scenarios. During interaction with digital assistant 122, the user inputs interactive messages, and digital assistant 122 responds to the user's input by providing reply messages. Typically, digital assistant 122 can support users inputting questions in natural language and performs tasks and provides replies based on its understanding of natural language input and logical reasoning capabilities.

[0031] In some embodiments, the digital assistant 122 can interact with the end user 145 as a contact. For example, the digital assistant 122 can be implemented in an instant messaging (IM) application. The digital assistant 122 can interact with the end user 145 in a one-on-one chat session. In some embodiments, the digital assistant 122 can interact with multiple users in a group chat session that includes multiple users.

[0032] For each end user 145, the client of the application runtime portion can present an interaction window 142 of the target application 120 or digital assistant 122 in the client interface, such as a conversation window with the digital assistant 122. The end user 145 can enter conversation messages in the conversation window, and the target application 120 can determine the response message from the digital assistant 122 based on the created configuration information and present it to the user in the interaction window 142. In some embodiments, depending on the configuration of the target application 120, the interaction messages with the target application 120 can include multimodal messages, such as text messages (e.g., natural language text), voice messages, image messages, video messages, and so on.

[0033] Similar to the application creation component, the application runtime component can be deployed locally on each end user's (145's) terminal device and / or supported by a server device. For example, the end user's (145's) terminal device can run a client with the application runtime component, which can support interaction between the user and the application runtime component provided by the server. When the application runtime component runs locally on the user's terminal device, the end user (145) can directly interact with the local application runtime component using the terminal device. When the application runtime component runs on a server device, the server device can provide services to the client running on the terminal device based on the communication connection with the terminal device. The application runtime component can present corresponding application pages to the end user (145) based on the user's (145's) actions, outputting and / or receiving application-related information from the user (145).

[0034] In some embodiments, the implementation of at least some functions of the target application 120, and / or the implementation of at least some functions of the digital assistant 122 within the target application 120, may be based on models. During the creation or operation of the target application 120, one or more models 155 may be invoked, such as the capabilities of model 155. In the target application 120, the digital assistant 122 may utilize model 155 to understand user input and provide responses to the user based on the output of model 155.

[0035] During the creation process, the application management platform 110 needs to use model 155 to test the target application 120 to determine whether the running results of the target application 120 meet expectations. During operation, in response to different operation requests from users of the target application 120, the application operation part may need to use model 155 to determine the response results to users.

[0036] Although shown as independent of the application management platform 110, one or more models 155 may run on the application management platform 110 or other remote servers. In some embodiments, model 155 may be a machine learning model, a deep learning model, a learning model, a neural network, etc. In some embodiments, the model may be based on a language model (LM). A language model, by learning from a large corpus, is capable of question answering. Model 155 may also be based on other suitable models.

[0037] The application management platform 110 can run on suitable electronic devices. These electronic devices can be any type of computing-capable device, including terminal devices or server devices. Terminal devices can be any type of mobile terminal, fixed terminal, or portable terminal, including mobile phones, desktop computers, laptop computers, notebook computers, netbook computers, tablet computers, media computers, multimedia tablets, personal communication system (PCS) devices, personal navigation devices, personal digital assistants (PDAs), audio / video players, digital cameras / camcorders, positioning devices, television receivers, radio receivers, e-book devices, gaming devices, or any combination of the foregoing, including accessories and peripherals of these devices or any combination thereof. Server devices can include, for example, computing systems / servers, such as mainframes, edge computing nodes, computing devices in cloud environments, and so on. In some embodiments, the management platform 110 can be implemented based on cloud services.

[0038] It should be understood that the structure and function of environment 100 are described for illustrative purposes only and do not imply any limitation on the scope of this disclosure. For example, although a single user interacting with the application creation section and a single user interacting with the application running section are illustrated, in reality multiple users can access application management platform 110 to each create a digital assistant, and each digital assistant can be used to interact with multiple users.

[0039] Currently, target applications typically receive user input, which constitutes a task execution request for the target application. Taking data analysis requirements as an example, structured query language (SQL) is usually used to retrieve the necessary information from large datasets. However, as data analysis needs become increasingly complex, such as requiring cross-time period comparative analysis, trend prediction, and anomaly detection, the limitations of relying solely on SQL queries become increasingly apparent. Complex calculations, such as year-on-year and month-on-month comparisons, often cannot be completed using only SQL queries. Therefore, it is worthwhile to explore how applications can accurately understand the complex calculation problems posed by users and select appropriate tools to solve the problems presented in the task execution requests.

[0040] This disclosure provides an improved task processing scheme. In this scheme, received user input is parsed to obtain a parsing result, whereby the user input indicates a task execution request for a target application. A query instruction is generated based on the parsing result. In response to determining that the query result obtained using the query instruction does not meet specified conditions, an analysis instruction is generated to analyze the query result obtained using the query instruction. In this way, a suitable query instruction is first selected based on the parsing result of the user input, and the user input corresponds to the task execution request sent by the user to the target application. Even when it is determined that the query instruction cannot meet specified conditions, i.e., when it is determined that relying solely on the query instruction is not the optimal solution, the analysis instruction can be combined. The analysis instruction is used to analyze and perform calculations on the query result obtained from the query instruction, thereby solving the problem posed by the task execution request using multiple methods.

[0041] The following description will detail some exemplary embodiments of this disclosure with reference to the accompanying drawings. It should be understood that the pages shown in the drawings are merely examples, and various page designs are possible in practice. The various graphic elements on the page may have different arrangements and different visual representations, one or more elements may be omitted or replaced, and one or more other elements may also be present. The embodiments of this disclosure are not limited in this respect.

[0042] The task management process described in the embodiments of this disclosure can be implemented on an application management platform, a terminal device with the application management platform installed, and / or a server corresponding to the application management platform. In the examples below, for the sake of discussion, the description is from the perspective of the application management platform, for example... Figure 1 The application management platform 110 is shown. The user interface presented by the application management platform 110 can be presented via the terminal device of the end user 145, and the application management platform 110 can receive user input via the terminal device of the end user 145. In some embodiments of this disclosure, the end user 145 is the end user of the target application 120. It should be understood that the user interface presented by the application management platform 110 can also be presented via the terminal device of user 105, and the application management platform 110 can also receive user input via the terminal device of user 105. In some embodiments of this disclosure, user 105 is the creator, manager, or maintainer of the target application 120.

[0043] Figure 2 A block diagram of a task processing procedure 200 according to some embodiments of the present disclosure is shown. This task processing procedure can be implemented on an application management platform 110. The following is in conjunction with... Figure 1 To describe Figure 2 The task processing procedure is shown.

[0044] like Figure 2 As shown in box 201, the application management platform 110 parses the received user input and obtains the parsing result. The user input indicates a task execution request for the target application 120.

[0045] User input can be natural language received during a conversation between the end user and the digital assistant. User input is a task execution request for the target application 120. For example, user input could be "a list of students who got full marks in math on the final exam in this class," or "the monthly sales percentage change of product A last year," and so on. Furthermore, the conversation between the end user and the digital assistant typically includes explanations or illustrative descriptions of terms that may be involved in the task to be performed.

[0046] After receiving user input, the application management platform 110 can parse the user input. For example, parsing can be performed by the application management platform 110 calling model 155, leveraging the natural language processing capabilities of model 155. Model 155 is also the corresponding target model. Model 155 can also be called a machine learning model. By parsing the user input, the parsing result can be obtained. For example, the parsing may include at least the question posed in the task execution request, and the data required to solve the question.

[0047] Taking the user input as "a list of students who got full marks in math on the final exam in this class" as an example, the application management platform 110 can determine that the task execution request asks for the list of people to be retrieved. The required data is the math scores of all students in the class on the final exam.

[0048] Taking a user input of "the change in the monthly sales percentage of product A last year" as an example, the application management platform 110 can determine that the task execution request asks for a sales comparison. It needs to obtain monthly sales data for product A from January to December last year, as well as monthly sales data for all products from January to December last year.

[0049] refer to Figure 3 , Figure 3An example of a data information acquisition page 300 according to some embodiments of the present disclosure is shown. Page 300 includes a query content input area 301, a terminology set area 302, a dialogue record area 303, and a reference prompt area 304, etc. The query content input area 301 can be used to receive user input from the terminal user 145. The terminology set area 302 can be used to receive terms. Terminology includes explanations or examples of terms used by the user group of the target application. The dialogue record area 303 can be used to record the dialogue process between the terminal user 145 and the digital assistant, including query instructions and / or analysis instructions generated by the digital assistant 122, etc. The reference prompt area 304 can be used to receive reference prompt content. Through the reference prompts, better guidance can be provided to the digital assistant 122 to help the digital assistant 122 better complete the user's tasks. That is, the content of the reference prompt area 304 is the role description that the model 155 can receive from the terminal user 145 to the digital assistant 122, thereby completing the guidance for the digital assistant 122.

[0050] like Figure 2 As shown in box 202, the application management platform 110 can generate query instructions based on the parsing results.

[0051] Based on the parsing results, the application management platform 110 can generate query instructions corresponding to those results. For example, if the parsing result is to retrieve the math scores of all students in the class's final exam, the application management platform 110 can generate a query instruction to retrieve the math scores of all students in the class's final exam based on the known database, the tables in the known database, and the columns in the tables. Similarly, if the parsing result is to retrieve the sales data of product A for each month from January to December of last year, and the sales data of all products for each month from January to December of last year, the application management platform 110 can generate a query instruction to retrieve the sales volume of product A and the sales volume of all products based on the known database, the tables in the known database, and the columns in the tables.

[0052] The management platform 110 can use the code compilation instructions of model 155 to combine user input as tokens for the generated query instructions. Furthermore, the management platform 110 can input parsing results and user interaction content as context information into model 155. Finally, the management platform 110 can also input database information, such as database name and database access address, into model 155. This allows the generation of query instructions using model 155. For example, the query instruction can be an SQL query statement.

[0053] like Figure 2As shown in box 203, in response to determining that the query result obtained by the query command does not meet the specified conditions, the application management platform 110 generates an analysis command, which is used to analyze the query result obtained by the query command.

[0054] After generating a query command, the application management platform 110 can send the query command to the target application 120, causing the target application 120 to execute the query command and obtain the query results. The application management platform 110 can determine whether the query results can resolve the problem raised in the task execution request. The determination of the query results includes whether it can resolve the problem or not.

[0055] Based on the example of user input being "a list of students who achieved a perfect score in the math final exam in this class," the application management platform 110 can determine that the obtained data represents the math scores of all students in the class. Therefore, the application management platform 110's query result is unresolved. However, if the application management platform 110 determines that the query result can be optimized by combining it with other query statements to obtain a list of students who achieved a perfect score in the math final exam, then the query result can be considered resolvable. For example, a filtering query can be used to filter out students who achieved a perfect score in math, thus obtaining a list of all students who achieved a perfect score in math.

[0056] Based on the example of the user input being "the change in the monthly sales percentage of product A last year," if the application management platform 110 obtains the monthly sales figures for product A over the past 12 months, as well as the monthly sales figures for all products over the past 12 months, it can determine that sales data alone cannot resolve the issue of determining the change in sales percentage. For example, if the application management platform 110 determines that there are no other query commands that can yield the result of the change in sales percentage, then it can be determined that the query result is insufficient to resolve the issue.

[0057] If the application management platform 110 determines that the query results obtained using the query command do not meet the specified conditions, it can indicate that the query command alone cannot resolve the problem raised in the task execution request. In response, the application management platform 110 can introduce an analysis command. While the advantage of the query command is its ability to quickly retrieve data, the advantage of the analysis command lies in its capacity to perform complex calculations on the data. For example, issues such as percentage, year-on-year comparison, month-on-month comparison, and data analysis can all involve complex calculations. In this current embodiment, the code compilation for both the query command and the analysis command can be completed by the application management platform 110 calling model 155. Utilizing the code compilation capabilities of model 155 saves the time and effort previously spent on manual code compilation.

[0058] Based on the aforementioned example where the user input is "the change in the monthly sales percentage of product A last year," the analysis command can be configured by the application management platform 110 to calculate the monthly sales percentage of product A. Furthermore, the analysis command can also be configured by the application management platform 110 to derive the monthly change in the monthly sales percentage of product A based on the sales percentage over the past 12 months.

[0059] By parsing the user input, the system first matches the query command corresponding to the parsing result. Then, if the query command does not meet the specified conditions, an analysis command is introduced. Combining the analysis and query commands leverages the advantages of query commands in data retrieval efficiency and the advantages of analysis commands in handling complex data analysis problems. This allows for the integration of different approaches to complete the response to task execution requests.

[0060] In some embodiments, the application management platform 110 can utilize a target model to determine, based on user input, that a task execution request requires multiple execution steps. In response to a request to split the task execution request into multiple subtasks based on the requirement of multiple execution steps, this is presented as a parsing result.

[0061] As previously mentioned, the application management platform 110 can call model 155 and utilize its natural language processing capabilities to parse user input. Taking the example of user input as "the change in the monthly sales percentage of product A last year," the parsing result from the application management platform 110 is that it needs to obtain the monthly sales figures for product A from January to December of last year, as well as the monthly sales figures for all products from January to December of last year. Therefore, the application management platform 110 can determine that the task execution request requires multiple execution steps. For example, the first step is to obtain the monthly sales figures for product A from January to December of last year. The second step is to obtain the monthly sales figures for all products from January to December of last year. Further subdividing, the application management platform 110 can further divide the first step into 12 sub-steps, meaning each sub-step corresponds to obtaining the sales figures for product A in one month of last year. Similarly, the application management platform 110 can further subdivide the second step into 12 sub-steps, meaning each sub-step corresponds to obtaining the sales figures for all products in one month of last year.

[0062] For the sub-steps of the first step, the application management platform 110 can generate 12 query commands, each configured to retrieve one month's sales data for product A. For the sub-steps of the second step, the application management platform 110 can also generate 12 query commands, each configured to retrieve one month's sales data for all products. By splitting the task execution requests, a complex problem can be broken down into multiple simpler problems.

[0063] In some embodiments, the application management platform 110 may determine the data description of the data to be acquired based on the parsing results. The data description is used to indicate at least one of the terms and examples of the data to be acquired, and to generate query instructions based on the data description using the target model.

[0064] As previously mentioned, parsing can be completed by the application management platform 110 calling model 155, leveraging the natural language processing capabilities of model 155 to obtain the parsing results. On one hand, the parsing results are based on user input and the natural language processing capabilities of model 155, therefore they are typically unstructured. On the other hand, query instructions, such as SQL queries, are structured, which may lead to discrepancies between the parsing results and the query instructions. Therefore, after obtaining the parsing results, the application management platform 110 can match the parsing results with the terminology examples received in the terminology set display area 302, thereby using the successfully matched terms as data descriptions for the data to be acquired.

[0065] Furthermore, after obtaining the parsing results, the application management platform 110 can declare examples of the data to be acquired based on those results. These examples can indicate the data format, content, etc., of the data to be acquired. They can also serve as a data description of the data to be acquired.

[0066] After determining the data description of the data to be acquired, Model 155 can generate a query instruction based on the data description of the data to be acquired, so that the query instruction can better match the data acquisition needs of the parsing results.

[0067] In some embodiments, after obtaining the query results from the query instruction, the application management platform 110 can also add a data source identifier to the query results obtained through the query instruction. The data source identifier is used to indicate the source of the query results in the source data.

[0068] After obtaining the query results from the query command, the application management platform 110 can also add a data source identifier to the query results. The data source identifier is used to indicate the origin of the query results in the source data. For example, the data source identifier can be used to indicate information such as the database name, the table in the database, and the columns in the table from which the query results obtained by the query command originate.

[0069] The significance of adding data source labels is that it can mark the authenticity of data, thereby avoiding false data without a source.

[0070] In some embodiments, the application management platform 110 determines that the query result obtained using the query instruction does not meet the specified conditions, including: in response to the query result obtained using the query instruction failing to resolve the problem raised in the task execution request, determining the reason, which is the reason why the problem raised in the task execution request cannot be resolved; in response to the reason indicating that the instruction category of the query instruction is correct, adjusting the query instruction to obtain an adjusted query instruction, the adjustment including one of replacing the query instruction and adding a new query instruction; and in response to the adjustment satisfying a preset adjustment process, and the query result obtained using the adjusted query instruction still failing to resolve the problem raised in the task execution request, determining the reason indicating that the instruction category of the query instruction is incorrect.

[0071] Figure 4 The diagram shown is a flowchart of the task processing method 400. Combined with... Figure 4 As shown, after generating the query command in box 401, in box 402, the application management platform 110 needs to determine whether the query result obtained from the query command can solve the problem raised in the task execution request, that is, to determine whether the problem is solved. The query result can include whether it can be solved or not.

[0072] If the query result indicates that the problem can be resolved, then the generated query instruction is correct and requires no adjustment. Therefore, in box 403, feedback can be sent to the end user 145, which means the query instruction is sent in the interaction window 142. Conversely, if the query result indicates that the problem cannot be resolved, the application management platform 110 needs to further determine the reason for the problem's inability to be resolved in box 404, that is, to determine whether the reason is an error in the query instruction category. Generally, the reason for the problem being unresolved can be categorized as the query instruction category being correct, but the query instruction needs adjustment; or the reason for the problem being unresolved can be categorized as the query instruction category being incorrect. If it is determined that the reason for the unresolved problem is that the query instruction category is correct, then it can be indicated that the current query instruction needs adjustment, that is, returning to box 401. Adjustments can include replacing or adding new query instructions.

[0073] Taking replacement as an example, if the query command generated based on the parsing results cannot resolve the problem raised in the task execution request, the application management platform 110 can generate a new query command based on the actual situation. The new query command replaces the original query command for data retrieval. The so-called actual situation can be the result of analysis based on model 155, or it can be the instruction obtained after interaction with the end user 145. The specific process of obtaining the actual situation will not be elaborated here.

[0074] Taking the addition of a new query command as an example, combined with the previous example of user input being "a list of students who achieved a perfect score in the math final exam of this class," the application management platform 110 can retrieve the math scores of all students in the class based on the obtained data. If the application management platform 110 determines that the query results obtained using the query command cannot resolve the problem raised in the task execution request, and the reason indicates that the command category of the query command is correct, then it can choose to add a new query command. The new query command could be to search for students who achieved a perfect score in the math final exam of all students in the class.

[0075] The pre-defined adjustment process can be used to indicate the adjustment capabilities of the application management platform 110. For example, the adjustment capability can indicate the application management platform 110's ability to generate new query commands. If the capability to generate new query commands is to generate m (m is a positive integer) new query commands, but the query results obtained from the newly generated m query commands still cannot resolve the problem raised in the task execution request, the cause can be determined to be an incorrect command category of the query commands. Alternatively, the adjustment capability can indicate the number of adjustments. If, after n adjustments (n is a positive integer), the query results obtained from the query commands still cannot resolve the problem raised in the task execution request, the cause of the inability to resolve the problem raised in the task execution request can also be determined to be an incorrect command category of the query commands.

[0076] If the query results obtained using query commands cannot resolve the issue raised in the task execution request, and the reason lies in the inaccurate selection or omission of the query commands, the query commands can be adjusted to select a more suitable one. Conversely, if adjusting the query commands still fails to resolve the issue, it can be determined that query commands alone are insufficient. This can trigger the introduction of analysis commands, thereby better fulfilling the task execution request.

[0077] In some embodiments, the application management platform 110 further determines that the query result obtained by the query instruction does not meet the specified conditions by: in response to the reason indicating that the instruction category of the query instruction is incorrect, determining that the query result obtained by the query instruction does not meet the specified conditions.

[0078] If the cause of the query instruction is an incorrect instruction category, it can be directly determined that the query result obtained using the query instruction does not meet the specified conditions. The application management platform 110 can determine the instruction category error using the analytical capabilities of model 155. For example, the parsing results and the query results obtained from the query instruction can be input into model 155, and model 155 can determine that the reason for the inability to resolve the problem raised in the task execution request is an incorrect instruction category.

[0079] In some embodiments, the application management platform 110 generating analysis instructions may include: obtaining context information, which includes at least one of user input, parsing results, query instructions, query results obtained using the query instructions, and reasons why the query results do not meet specified conditions; and generating analysis instructions based on the context information.

[0080] Still referencing Figure 4 As shown, in box 405, the application management platform 110 can use model 155 to generate analysis instructions based on context information. For example, the application management platform 110 can obtain context information, which includes at least one of the following: user input, parsing results of the user input, all previously selected query instructions, query results corresponding to each query instruction, and reasons why the query results failed to meet specified conditions.

[0081] After obtaining the context information, model 155 can be used to determine the analysis instructions based on the context. Taking the example of the user input being "the monthly sales percentage change of product A last year," after obtaining the user input, parsing the results, the query instructions, and understanding that the query instructions cannot resolve the problem raised by the task execution request because the query instructions have an incorrect instruction category, the application management platform 110 can use model 155 to perform analysis, thereby determining the necessary analysis instructions to solve the problem. Furthermore, it can be determined that the analysis instructions can be configured to perform percentage calculations and to analyze the results of the percentage calculations.

[0082] It's easy to understand that if the generated analysis instructions still cannot resolve the problem posed by the task execution request, the application management platform 110 can use model 155 for analysis to adjust the analysis instructions. The goal of the adjustment is for the adjusted analysis instructions to resolve the problem posed by the task execution request. For example, regarding changes in sales percentage, the first round of analysis instructions can determine the percentage data, but the percentage data is not equivalent to the percentage change. Therefore, a second round of analysis instructions can be generated, which is to derive the final analysis result of the percentage change based on the percentage data from multiple statistical periods.

[0083] Therefore, the problem can be solved through multiple rounds of analysis of instructions. (Still combined with...) Figure 4 As shown in box 406, once the analysis command is determined, it can be executed.

[0084] The analysis instructions can be compiled using any programming language capable of performing the analysis task. The basic statements of programming languages ​​include arithmetic and logical operators, thus easily handling complex problems such as same-scale comparisons, year-on-year comparisons, and percentage comparisons. The compilation process of the programming language code can be completed using the code compilation capabilities of Model 155. Figure 5An example of a page 500 displaying data results according to some embodiments of the present disclosure is shown. User input can be displayed in the query content display area 511. The data results display area 512 can display the data sources involved in obtaining the final data results, the query instructions generated or used in obtaining the final data results (query instruction generation), the analysis instructions generated or used in obtaining the final data results (analysis instruction generation), and the final analysis results.

[0085] In this embodiment, when the data obtained solely through query commands cannot resolve the user's problem, analysis commands can be introduced based on communication with the user and the factual conclusions drawn during the communication process. The user's problem is resolved by combining analysis commands with query commands.

[0086] In some embodiments, a prompt message is determined based on the context information, and the analysis instruction is generated based on the prompt message using the target model.

[0087] After obtaining the context information, prompts can be generated based on it. For example, structured processing can be performed on the context information to obtain prompts. Structured processing might begin by identifying key fields, such as user input or parsing results. Then, corresponding content is added to different key fields to obtain the prompts. The process of identifying key fields and / or adding corresponding content can also include text deduplication and simplification. After obtaining the prompts, Model 155 can be used to determine the analysis instructions based on them. That is, Model 155 performs natural language code compilation based on the prompts to obtain the corresponding analysis instruction code.

[0088] In some embodiments, the application management platform 110 may also perform the following steps: storing data results in a designated storage area, the data results including at least one of query results obtained from query instructions and analysis results obtained from analysis instructions; and representing the data results using the address of the storage area.

[0089] After obtaining data results through data processing using query or analysis commands, the application management platform 110 can store the data results in a designated storage area. For example, the designated area can be a cache area within the sandbox where the analysis commands are executed. After the data results are stored, the application management platform 110 can generate a storage identifier based on the address where the data results are stored. The storage identifier can be used to represent the data. Therefore, when the application management platform 110 generates a new query command or a generated analysis command that requires data access, it can generate a storage identifier read command, thereby using the storage identifier read command to read the data results stored in the designated storage area.

[0090] Through the above process, data access between different instructions is only performed through storage identifiers. This reduces the dimensionality of the token data involved in the compilation of code for query and analysis instructions called by the application management platform 110 in model 155. In other words, during code compilation, it is not necessary to list all the data to be retrieved using tokens; only the addresses of the storage areas need to be used to represent the data to be read. Given the limited data reception capacity of the model 155 context window, this significantly reduces the model's resource overhead.

[0091] In some embodiments, the application management platform 110 can also execute analysis instructions to obtain analysis results. Executing analysis instructions includes: sending information related to the analysis instructions and query results to the instruction execution environment, and obtaining the analysis results output by the instruction execution environment, wherein the analysis results are obtained by processing the query results based on the analysis instructions.

[0092] Analysis instructions can run in an instruction execution environment. For example, the instruction execution environment can be a sandbox environment, a sandboxed environment, etc. That is, the application management platform 110 can send the code corresponding to the analysis instruction and the query results required by the analysis instruction to the instruction execution environment. Referring to the previous example, for the query results required by the analysis instruction, the address of the storage area corresponding to the query results can be sent to the instruction execution environment. Thus, in the instruction execution environment, the corresponding query results can be obtained based on the address of the storage area.

[0093] Analysis instructions are executed in the instruction execution environment to process the query results, thereby obtaining the analysis results. The analysis results can be sent from the instruction execution environment to a designated storage area. The analysis results stored in the designated storage area can be the final analysis results. Alternatively, the analysis results can be directly displayed on the user interface presented by the application management platform 110.

[0094] Figure 6 A schematic structural block diagram of a task processing apparatus 600 according to some embodiments of the present disclosure is shown. Apparatus 600 may be implemented in or included in an application management platform 110, for example. The various modules / components in apparatus 600 may be implemented by hardware, software, firmware, or any combination thereof.

[0095] As shown in the figure, the device 600 includes a parsing module 601, which is configured to parse the received user input to obtain a parsing result. The user input indicates a task execution request for the target application.

[0096] Query instruction generation module 602 is configured to generate query instructions based on the parsing results; and

[0097] The analysis instruction generation module 603 is configured to generate an analysis instruction in response to determining that the query result obtained by the query instruction does not meet the specified conditions. The analysis instruction is used to analyze the query result obtained by the query instruction.

[0098] In some embodiments, the parsing module 601 is further configured to include: an execution step identification submodule, which is configured to use a target model to determine, based on user input, that a task execution request requires multiple execution steps; and a splitting submodule, which is configured to, in response to a request to split the task execution request into multiple subtasks based on the requirement that the task execution request requires multiple execution steps, as the parsing result.

[0099] In some embodiments, the query instruction generation module 602 is further configured to determine, based on the parsing results, a data description for the data to be acquired, the data description being used to indicate at least one of the terms and examples of the data to be acquired; and to generate a query instruction based on the data description using a target model.

[0100] In some embodiments, the apparatus 600 further includes a data source identifier adding module, which is configured to add a data source identifier to the query result obtained by the query instruction. The data source identifier is used to indicate the source of the query result in the source data.

[0101] In some embodiments, the analysis instruction generation module 603 is further configured to include a cause determination submodule, configured to determine a cause in response to the query result obtained using the query instruction failing to resolve the problem raised in the task execution request, the cause being the reason why the problem raised in the task execution request cannot be resolved; a query instruction adjustment submodule, configured to adjust the query instruction in response to the cause indicating that the instruction category of the query instruction is correct, obtaining an adjusted query instruction, the adjustment including one of replacing the query instruction and adding a new query instruction; and an instruction category error determination submodule, configured to determine a cause indicating that the instruction category of the query instruction is incorrect in response to the adjustment meeting a preset adjustment process, and the query result obtained using the adjusted query instruction still failing to resolve the problem raised in the task execution request.

[0102] In some embodiments, the instruction category error determination submodule is further configured to determine, in response to an instruction category error indicating a cause of query instruction, that the query result obtained using the query instruction does not meet the specified conditions.

[0103] In some embodiments, the analysis instruction generation module 603 is further configured to obtain context information, which includes at least one of user input, parsing results, query instructions, query results obtained using the query instructions, and reasons why the query results do not meet specified conditions; and to generate analysis instructions based on the context information.

[0104] In some embodiments, the analysis instruction generation module 603 is further configured to determine the prompt information based on context information, and generate analysis instructions based on the prompt information using the target model.

[0105] In some embodiments, the apparatus 600 further includes a data characterization module configured to store data results in a designated storage area, the data results including at least one of query results obtained from query instructions and analysis results obtained from analysis instructions; and to characterize the data results using the stored address.

[0106] In some embodiments, the apparatus 600 further includes an analysis instruction execution module, which is configured to: send information related to analysis instructions and query results to an instruction execution environment; and obtain analysis results output by the instruction execution environment, wherein the analysis results are obtained based on the analysis instructions processing the query results.

[0107] Figure 7 A block diagram of an electronic device 700 in which one or more embodiments of the present disclosure may be implemented is shown. It should be understood that... Figure 7 The electronic device 700 shown is merely exemplary and should not be construed as limiting the functionality and scope of the embodiments described herein. Figure 7 The illustrated electronic device 700 may include or be implemented as Figure 1 Application management platform 110, or Figure 6 Device 600.

[0108] like Figure 7 As shown, electronic device 700 is in the form of a general-purpose electronic device. Components of electronic device 700 may include, but are not limited to, one or more processors or processing units 710, memory 720, storage device 730, one or more communication units 740, one or more input devices 750, and one or more output devices 760. Processing unit 710 may be a physical or virtual processor and is capable of performing various processes according to programs stored in memory 720. In a multiprocessor system, multiple processing units execute computer-executable instructions in parallel to improve the parallel processing capability of electronic device 700.

[0109] Electronic device 700 typically includes multiple computer storage media. Such media can be any accessible media that is accessible to electronic device 700, including but not limited to volatile and non-volatile media, removable and non-removable media. Memory 720 can be volatile memory (e.g., registers, cache, random access memory (RAM)), non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. Storage device 730 can be removable or non-removable media and can include machine-readable media, such as flash drives, disks, or any other media that can be used to store information and / or data and can be accessed within electronic device 700.

[0110] Electronic device 700 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not explicitly stated... Figure 7 As shown, disk drives for reading from or writing to removable, non-volatile disks (e.g., "floppy disks") and optical disk drives for reading from or writing to removable, non-volatile optical disks can be provided. In these cases, each drive can be connected to a bus (not shown) via one or more data media interfaces. Memory 720 may include computer program product 725 having one or more program modules configured to perform various methods or actions of various embodiments of this disclosure.

[0111] The communication unit 740 enables communication with other electronic devices via a communication medium. Additionally, the functionality of the components of the electronic device 700 can be implemented using a single computing cluster or multiple computing machines capable of communicating via communication connections. Therefore, the electronic device 700 can operate in a networked environment using logical connections to one or more other servers, network personal computers (PCs), or another network node.

[0112] Input device 750 can be one or more input devices, such as a mouse, keyboard, trackball, etc. Output device 760 can be one or more output devices, such as a monitor, speaker, printer, etc. Electronic device 700 can also communicate with one or more external devices (not shown) via communication unit 740 as needed. These external devices include storage devices, display devices, etc., and can communicate with one or more devices that enable user interaction with electronic device 700, or with any device that enables electronic device 700 to communicate with one or more other electronic devices (e.g., network card, modem, etc.). Such communication can be performed via input / output (I / O) interface (not shown).

[0113] According to an exemplary implementation of this disclosure, a computer-readable storage medium is provided that stores computer-executable instructions thereon, wherein the computer-executable instructions are executed by a processor to implement the methods described above. According to an exemplary implementation of this disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, which are executed by a processor to implement the methods described above.

[0114] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatuses, devices, and computer program products implemented according to this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0115] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to create a machine such that, when executed by the processing unit of the computer or other programmable data processing apparatus, they produce means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0116] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions that execute on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0117] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0118] Various implementations of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is chosen to best explain the principles, practical applications, or improvements to technology in the market, or to enable others skilled in the art to understand the various implementations disclosed herein.

Claims

1. A task processing method, comprising: The received user input is parsed to obtain a parsing result. The user input indicates a task execution request for a target application. The parsing includes at least determining the problem indicated by the task execution request and determining the data to be acquired to solve the problem. Based on the parsing results, a query instruction is generated for the data to be retrieved. In response to determining that the query result obtained using the query instruction does not meet the specified conditions, an analysis instruction is generated using the target model; as well as The query results are analyzed using the analysis instructions within the instruction execution environment to resolve the problem indicated by the task execution request. The parsing of received user input includes: Using the target model, based on the user input, it is determined that the task execution request requires multiple execution steps; as well as In response to a request that the task execution request requires multiple execution steps, the request is split into multiple sub-tasks, which are then used as the parsing result.

2. The method according to claim 1, wherein generating a query instruction based on the parsing result includes: Based on the parsing results, a data description for the data to be acquired is determined, wherein the data description is used to indicate at least one of the terms and examples of the data to be acquired; as well as The query instruction is generated based on the target model and the data description.

3. The method according to claim 1, further comprising: Add a data source identifier to the query result obtained through the query instruction. The data source identifier is used to indicate the source of the query result in the source data.

4. The method according to claim 1, wherein determining that the query result obtained using the query instruction does not meet the specified conditions includes: In response to the fact that the query result obtained using the query instruction cannot resolve the problem raised in the task execution request, the reason is determined, and the reason is the reason why the problem raised in the task execution request cannot be resolved; In response to the reason indicating that the query instruction category is correct, the query instruction is adjusted to obtain an adjusted query instruction. The adjustment includes one of replacing the query instruction or adding a new query instruction. as well as If the adjustment meets the preset adjustment process, and the query result obtained by the adjusted query instruction still cannot solve the problem raised by the task execution request, the cause is determined to be an instruction category error of the query instruction.

5. The method according to claim 4, wherein determining that the query result obtained using the query instruction does not meet the specified conditions further includes: In response to the reason indicating that the query instruction has an incorrect instruction category, it is determined that the query result obtained using the query instruction does not meet the specified conditions.

6. The method according to any one of claims 1 to 5, wherein generating analysis instructions comprises: Obtain context information, which includes at least one of the following: user input, parsing result, query instruction, query result obtained using the query instruction, and reason why the query result does not meet the specified conditions; as well as Based on the context information, the analysis instructions are generated using the target model.

7. The method of claim 6, wherein generating the analysis instructions using the target model comprises: The prompt information is determined based on the context information; as well as Using the target model, the analysis instructions are generated based on the prompt information.

8. The method according to any one of claims 1 to 5, further comprising: The data results are stored in a designated storage area, and the data results include at least one of the query results obtained from the query command and the analysis results obtained from the analysis command. as well as The stored address is used to characterize the data result.

9. The method according to claim 1, further comprising: Send the analysis command and information related to the query results to the command execution environment; as well as Obtain the analysis results output by the instruction execution environment, wherein the analysis results are obtained by processing the query results based on the analysis instructions.

10. A task processing apparatus, comprising: The parsing module is configured to parse received user input to obtain a parsing result, wherein the user input indicates a task execution request for a target application, and the parsing includes at least determining the problem indicated by the task execution request and determining the data to be acquired to solve the problem; The query instruction generation module is configured to generate a query instruction for the data to be retrieved based on the parsing result. as well as The analysis instruction generation module is configured to generate an analysis instruction using the target model in response to determining that the query result obtained using the query instruction does not meet the specified conditions. The query results are analyzed using the analysis instructions within the instruction execution environment to resolve the problem indicated by the task execution request. The parsing module is further configured as follows: Using the target model, based on the user input, it is determined that the task execution request requires multiple execution steps; and In response to a request that the task execution request requires multiple execution steps, the request is split into multiple sub-tasks, which are then used as the parsing result.

11. An electronic device, comprising: At least one processing unit; as well as At least one memory is coupled to at least one processing unit and stores instructions for execution by the at least one processing unit, which, when executed by the at least one processing unit, cause the electronic device to perform the method according to any one of claims 1 to 9.

12. A computer-readable storage medium having a computer program stored thereon, the computer program being executable by a processor to implement the method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • Data query method, platform and device and storage medium

    CN110825767A

  • Information interaction method and device, electronic equipment and medium

    CN116894078A

  • Task processing method and electronic equipment

    CN118210619A