Task processing method and device, equipment and storage medium
By receiving user input in the terminal device and selecting appropriate function processing tasks using the priority of multiple function selection modes, the problems of opacity in application function selection and interruption in task processing are solved, and the efficiency and user experience of task processing are improved.
Patent Information
- Application Number
- CN202311825496.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-27
- Publication Date
- 2025-06-27
Smart Images

Figure CN120216157A_ABST
Abstract
Description
Technical Field
[0001] Example embodiments of the present disclosure generally relate to the field of computers, and particularly to a task processing method, apparatus, device, and computer-readable storage medium. Background Art
[0002] With the development of information technology, various terminal devices can provide people with various services in aspects such as work and life. Applications that provide services can be deployed in the terminal devices. The terminal devices present corresponding content through the user interfaces of the applications and implement interactions with users to meet various needs of the users. In some cases, a user may initiate a task processing request within an application. Therefore, how to improve the efficiency of task processing is an issue of concern. Summary of the Invention
[0003] In a first aspect of the present disclosure, a task processing method is provided. The method includes: receiving a first user input associated with at least one task for a target application; selecting at least one function for the first user input from multiple functions of the target application by using at least one function selection mode among multiple function selection modes according to the corresponding priorities of the multiple function selection modes; and invoking the at least one function to process the at least one task respectively.
[0004] In a second aspect of the present disclosure, a task processing apparatus is provided, including: a first user input receiving module configured to receive a first user input associated with at least one task for a target application; a function selection module configured to select at least one function for the first user input from multiple functions of the target application by using at least one function selection mode among multiple function selection modes according to the corresponding priorities of the multiple function selection modes; and a task processing module configured to invoke the at least one function to process the at least one task respectively.
[0005] In a third aspect of the present 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 the instructions are executed by the at least one processing unit, the electronic device executes the method of the first aspect.
[0006] In a fourth aspect of the present disclosure, a computer-readable storage medium is provided. A computer program is stored on the medium, and when the computer program is executed by a processor, the method of the first aspect is implemented.
[0007] It should be understood that the content described in this section is not intended to define the key features or important features of the embodiments of the present disclosure, nor is it used to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] In conjunction with the accompanying drawings and with reference to the following detailed description, the above and other features, advantages, and aspects of the embodiments of the present disclosure will become more apparent. In the drawings, the same or similar reference numerals denote the same or similar elements, where:
[0009] Figure 1 FIG. shows a schematic diagram of an exemplary environment in which embodiments of the present disclosure can be implemented;
[0010] Figure 2 FIG. shows a block diagram of a task processing procedure according to some embodiments of the present disclosure;
[0011] Figure 3 FIG. shows a schematic diagram of a task processing procedure according to some embodiments of the present disclosure;
[0012] Figures 4A to 4C FIG. shows a schematic diagram of an exemplary interface according to some embodiments of the present disclosure;
[0013] Figure 5 FIG. shows a flowchart of a task management procedure according to some embodiments of the present disclosure;
[0014] Figure 6 FIG. shows a schematic structural block diagram of a task management apparatus according to some embodiments of the present disclosure;
[0015] Figure 7 FIG. shows a block diagram of an electronic device that can implement one or more embodiments of the present disclosure. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0016] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Instead, these embodiments are provided to more thoroughly and completely understand the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are for illustrative purposes only and are not used to limit the scope of protection of the present disclosure.
[0017] In the description of the embodiments of the present disclosure, the term "including" and its similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "an embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". There may also be other explicit and implicit definitions hereinafter.
[0018] In this article, unless otherwise specified, performing a step "in response to A" does not mean that the step is immediately performed after "A", but may include one or more intermediate steps.
[0019] It can be understood that the data involved in the technical solution (including but not limited to the data itself, the acquisition, use, storage or deletion of the data) should comply with the requirements of the corresponding laws, regulations and related provisions.
[0020] It can be understood that before using the technical solutions disclosed in the embodiments of the present disclosure, the type, scope of use, usage scenarios, etc. of the information involved in the present disclosure should be informed to the relevant users in an appropriate manner and the authorization of the relevant users should be obtained in accordance with the relevant laws and regulations. Among them, the relevant users may include any type of right subject, such as individuals, enterprises, and groups.
[0021] For example, when receiving an active request from a user, a prompt message is sent to the relevant user to clearly prompt the relevant user that the operation requested by it will require obtaining and using the information of the relevant user, so that the relevant user can autonomously choose whether to provide information to software or hardware such as an electronic device, an application program, a server or a storage medium that performs the operations of the technical solution of the present disclosure according to the prompt message.
[0022] As an optional but non-limiting implementation manner, the manner of sending a prompt message to the relevant user in response to receiving an active request from the relevant user may be, for example, in the form of a pop-up window, and the prompt message may be presented in text in the pop-up window. In addition, the pop-up window may also carry a selection control for the user to choose "agree" or "disagree" to provide information to the electronic device.
[0023] It can be understood that the above process of notifying and obtaining user authorization is only illustrative and does not limit the implementation manner of the present disclosure. Other manners that meet the relevant laws and regulations can also be applied to the implementation manner of the present disclosure. The enabling of the digital assistant-related functions, the data obtained, the processing and storage methods of the data, etc. in the embodiments of the present disclosure should all obtain the prior authorization of the user and other right subjects associated with the user, and should comply with the relevant laws, regulations and the agreements and rules between the right subjects.
[0024] As used herein, the term "model" can learn the correlation between corresponding inputs and outputs from training data, so that after training, for a given input, a corresponding output can be generated. The generation of the model can be based on machine learning techniques. Deep learning is a machine learning algorithm that processes inputs and provides corresponding outputs by using multiple layers of processing units. A neural network model is an example of a model based on deep learning. In this document, "model" can also be referred to as "machine learning model", "learning model", "machine learning network", or "learning network", and these terms are used interchangeably herein.
[0025] Figure 1 FIG. shows a schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented. Environment 100 relates to an application management platform 110, which can support the creation and / or running of applications. In some embodiments, the part of the application management platform 110 for supporting application creation can also be referred to as the application creation part. In some embodiments, the part of the application management platform 110 for supporting application running can also be referred to as the application running part.
[0026] As shown in the figure, the application creation part can provide an environment for the creation and release of applications for user 105. User 105 can be referred to as an application creation user, a creator. In some embodiments, the application creation part can be a low-code platform that provides a collection of tools for application creation. The application creation part can support visual development of various types of applications, enabling developers to skip the manual coding process and accelerate the application development cycle and cost. The application creation part can support any suitable platform for users to develop one or more types of applications, such as a platform based on application platform as a service (aPaaS). Such a platform can support users to efficiently develop applications and implement operations such as application creation and application function adjustment.
[0027] The application creation part can be deployed locally on the terminal device of user 105 and / or can be supported by a server device. For example, the terminal device of user 105 can run a client of the application creation part, and this client can support the interaction between the user and the application creation part provided by the server. When the application creation part runs locally on the user's terminal device, user 105 can directly interact with the local application creation part using the terminal device. When the application creation part runs on the server device, the server device can supply services to the client running on the terminal device based on the communication connection with the terminal device. The application creation part can present a corresponding page 130 to user 105 based on the operation of user 105 to output and / or receive information related to application creation from user 105.
[0028] In some embodiments, the application creation part may be associated with a corresponding database that stores data or information required for the application creation process supported by the application creation part. For example, the database may store the code and description information corresponding to each functional module that makes up the application. The application creation part may also perform operations such as calling, adding, deleting, and updating the functional modules in the database. The database may also store the operations executable on different functional blocks. Exemplarily, in a scenario where an application is to be created, the application creation part may call the corresponding functional blocks from the database to build the application.
[0029] In an embodiment of the present disclosure, user 105 may create a target application 120 on the application creation part as needed and publish the target application 120. The target application 120 may be published to any suitable application running part as long as the application running part can support the operation of the target application 120. After being published, the target application 120 may be used by one or more end users 145 for operation. The end user 145 may operate the target application 120 through the associated terminal device 146 and thereby interact with the application management platform 110. The end user 145 may be referred to as the end user of the target application 120. In some embodiments, the target application 120 may include or be implemented as a digital assistant 122.
[0030] The digital assistant 122 may be configured to have the ability of intelligent conversation. In the example shown in the figure, the digital assistant 122 may be integrated within the target application 120 and assist in performing task processing within the target application 120 as a part of the target application 120. In other examples, the digital assistant 122 may be configured as an independently running application, such as a web application or other types of applications. In such examples, the digital assistant 122 and the target application 120 may be regarded as the same application. The digital assistant 122 is provided to assist users with various task processing requirements in different applications and scenarios. During the interaction with the digital assistant 122, the user inputs an interaction message, and the digital assistant 122 provides a reply message in response to the user input. Generally, the digital assistant 122 can support the user to input questions in a natural language manner and perform tasks and provide replies based on the understanding of the natural language input and logical reasoning ability.
[0031] In some embodiments, the digital assistant 122 may interact with the end user 145 as a contact of the end user 145. For example, the digital assistant 122 may be implemented in an instant messaging (IM) application. The digital assistant 122 may interact with the end user 145 in a one-on-one chat session with the end user 145. In some embodiments, the digital assistant 122 may interact with multiple users in a group chat session including multiple users.
[0032] For each end user 145, the client of the application running part can present an interaction window 142 of the target application 120 or the digital assistant 122 in the client interface, such as a session window with the digital assistant 122. The end user 145 can input a session message in the session window, and the target application 120 can determine a reply message of 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 messages in multimodal forms, such as text messages (e.g., natural language text), voice messages, image messages, video messages, and so on.
[0033] Similar to the application creation part, the application running part can be deployed locally on the terminal device of each end user 145, and / or can be supported by the server device. For example, the terminal device of the end user 145 can run a client of the application running part, and this client can support the interaction between the user and the application running part provided by the server. When the application running part runs locally on the user's terminal device, the end user 145 can directly interact with the local application running part using the terminal device. When the application running part runs on the server device, the server device can implement the service supply to the client running on the terminal device based on the communication connection with the terminal device. The application running part can present corresponding application pages to the end user 145 based on the operations of the end user 145 to output and / or receive information related to application usage from the end user 145.
[0034] In some embodiments, the implementation of at least part of the functions of the target application 120, and / or the implementation of at least part of the functions of the digital assistant 122 in the target application 120 can be based on a model. During the creation or running process of the target application 120, one or more models 155 can be called, such as the capabilities of the model 155. In the target application 120, the digital assistant 122 can use the model 155 to understand user input and provide a reply to the user based on the output of the model 155.
[0035] During the creation process, the application management platform 110 needs to use the model 155 to determine that the running result of the target application 120 meets the expectations for the test of the target application 120. During the running process, in response to different operation requests of the users of the target application 120, the application running part may need to use the model 155 to determine the response results for the 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, the 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). By learning from a large corpus, the language model can be capable of question-and-answer capabilities. The model 155 may also be based on other suitable models.
[0037] The application management platform 110 may run on a suitable electronic device. The electronic device here may be any type of device with computing capabilities, including terminal devices or server devices. Terminal devices may 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 broadcast 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 may include, for example, computing systems / servers, such as mainframes, edge computing nodes, computing devices in a cloud environment, and so on. In some embodiments, the management platform 110 may be implemented based on cloud services.
[0038] It should be understood that the structure and functions of the environment 100 are described only for exemplary purposes and do not imply any limitation on the scope of the present disclosure. For example, although a single user interacting with the application creation part and a single user interacting with the application running part are shown in the figure, in fact, multiple users may access the application management platform 110 to create digital assistants respectively, and each digital assistant may be used to interact with multiple users.
[0039] Currently, the selection mode of functions in the target application is not transparent. Because there may be multiple ways and means to select functions. For users, due to the opacity of the function selection mode, users do not know which function will be triggered by the input instruction and are also unclear why the function is selected. In addition, due to some priority and conflict issues in the selection of functions, the function used to process the task corresponding to the user input cannot be enabled or is interrupted during the processing, resulting in the inability to process the task. For application users (such as user 145), how to efficiently select functions in the application to process tasks associated with user input is worthy of exploration.
[0040] In an embodiment of the present disclosure, an improved solution for task processing is provided. In this solution, a first user input associated with at least one task for a target application is received. According to the corresponding priorities of multiple function selection modes, at least one function selection mode among the multiple function selection modes is used to select at least one function for the first user input from multiple functions of the target application. Then, the at least one function is called to process the at least one task respectively. In this way, on the one hand, the user can know the relevance between the user input and the functions triggered on the target application, improving the user usage transparency. On the other hand, by using different priorities of the function selection modes to select the functions for task processing, function selection conflicts can be avoided and the task processing efficiency can be improved.
[0041] Some exemplary embodiments of the present disclosure will be described in detail below with reference to examples of the drawings. It should be understood that the pages shown in the drawings are only examples, and various page designs can actually exist. Each graphic element in the page can have different arrangements and different visual representations, one or more of which can be omitted or replaced, and there can also be one or more other elements. The embodiments of the present disclosure are not limited in this regard.
[0042] The task management process described in the embodiments of the present disclosure can be implemented in an application management platform, a terminal device installed with the application management platform, and / or the server corresponding to the application management platform. In the following examples, for the sake of discussion, it is described from the perspective of the application management platform, for example Figure 1 the application management platform 110 shown. The user interface presented by the application management platform 110 can be presented via the terminal device of user 145, and the application management platform 110 can receive user input via the terminal device of user 145. In some embodiments of the present disclosure, user 145 is the terminal 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 the present disclosure, user 105 is the creator, manager, or maintainer of the target application 120.
[0043] Figure 2 A block diagram of a task processing process 200 according to some embodiments of the present disclosure is shown. This task processing process can be implemented in the application management platform 110. The following is combined with Figure 1 to describe Figure 2 the task processing process shown.
[0044] As Figure 2As shown, the application management platform 110 receives a first user input 201 for the target application 120. This first user input is associated with at least one task. Multiple function selection modes are used to select at least one function for this first user input from multiple functions of the target application.
[0045] For example, the multiple function selection modes may include an interrupted function restart mode 210, a user-specified mode 220, a configuration-based function selection mode 230, and a model-based function selection mode 240. The interrupted function restart mode 210 may be configured to select a function that is currently in an interrupted state; the user-specified mode 220 may be configured to select at least one function specified by the user in the interaction context associated with the first user input; the configuration-based function selection mode 230 may be configured to select available functions from multiple functions based on the configuration information of the target application, and the model-based function selection mode 240 may be configured to select available functions from multiple functions based on the first user input using at least one target model.
[0046] The multiple function selection modes may have different priorities. The application management platform 110 may determine at least one function selection mode for selecting at least one function for this first user input from multiple functions of the target application based on the different priorities of the multiple function selection modes.
[0047] For example, the interrupted function restart mode 210 may have the highest priority. The interrupted function restart mode 210 may be associated with a function (hereinafter referred to as the first function) that has been previously called but is identified as interrupted for some reason. The user-specified mode 220 may have the second highest priority. The configuration-based function selection mode 230 and the model-based function selection mode 240 have the second lowest priority and the lowest priority respectively. It should be understood that the configuration of the respective priorities of the above multiple function selection modes is only for illustrative purposes and is not a limitation on the solution of the present disclosure.
[0048] Generally speaking, if the application management platform 110 determines that no available function for the first user input can be determined based on the first function selection mode (with a higher priority) among the multiple function selection modes, then it may determine whether there is an available function for the first user input among the multiple functions of the target application based on the second function selection mode (with a lower priority) among the multiple function selection modes.
[0049] As Figure 2 shown, when the application management platform 110 receives the first user input 201, it may first determine whether there is an available function for this first user input among the multiple functions of the target application based on the interrupted function restart mode 210 among the multiple function selection modes.
[0050] As described above, before receiving the first user input 201, one or more functions may have been selected as functions for processing at least one task based on previous user inputs (e.g., the second user input 202). However, the one or more functions are identified as interrupted for some reason, such that the corresponding at least one task cannot be continued.
[0051] Figure 3 A schematic diagram of a task processing procedure 300 according to some embodiments of the present disclosure is shown. The following Figure 3 details an embodiment of selecting a function for processing a task based on an interrupted function restart mode 210 among multiple function selection modes.
[0052] As Figure 3 shown, at block 305, the application management platform 110 receives a second user input for a target application. The second user input indicates a target task. It should be understood that the application management platform 110 receives the second user input 202 before receiving Figure 2 the first user input 201 as shown.
[0053] At block 310, the application management platform 110 invokes a first function among multiple functions of the target application 120 to execute the target task indicated by the second user input 202. For example, the second user input 202 may be "Please help me add a new employee XX in the personnel platform", and the target task is "Add a new employee XX in the personnel platform". The application management platform 110 may, for example, invoke the human resource management assistant of the target application 120 to execute the target task.
[0054] At block 315, if the application management platform 110 determines that further user input is required to execute the target task, that is, the target task cannot be completed based on the current user input, then at block 320, the application management platform 110 identifies the first function as interrupted.
[0055] For example, in the example listed above, executing "Add a new employee XX in the personnel platform" requires relevant information of the new employee XX. Therefore, executing this task may require the user to further input the relevant information of the corresponding new employee XX (hereinafter also referred to as the first user input 201).
[0056] In some embodiments, the application management platform 110 may prompt the user to enter a first user input to continue task execution. For example, the application management platform 110 may present a prompt for the user 145 to enter relevant information about the new employee XX. For instance, the application management platform 110 may present a new employee registration form to be filled out so that the user 145 can enter relevant information about the new employee XX. Alternatively, the application management platform 110 may present an entry that enables the user 145 to upload the information registration form of the new employee XX.
[0057] In block 325, if the application management platform 110 receives the first user input 201, and in block 330, if it is determined that the first function that has been called is identified as interrupted, then, according to the priority, in the interrupted function restart mode 210, the previously called first function (such as "Human Resources Management Assistant") is selected for the first user input 201 (such as "relevant information about the new employee XX"). As described in connection with Figure 2 what has been described, the first user input 201 is a user input for the target application 120 and is associated with the target task.
[0058] In block 335, based on the first user input 201 (such as "relevant information about the new employee XX") and the previously received second user input 202 (such as "Please help me add a new employee X to the personnel platform"), the first function identified as interrupted is restarted to execute the target task. That is, the received first user input enables the target task that could not continue to execute due to the first function being identified as interrupted to continue execution.
[0059] It should be understood that executing the target task through the first function may include multiple task nodes. After the first function is restarted, the subsequent task nodes of the target task can be executed starting from the previously interrupted task node.
[0060] In some embodiments, in block 345, once the first function (such as "Human Resources Management Assistant") completes the target task (such as "add a new employee XX to the personnel platform") according to the first user input 201 (such as "relevant information about the new employee XX"), then in block 350, the application management platform 110 cancels the identification of the first function as interrupted.
[0061] In other embodiments, after restarting the first function to execute the target task, in block 340, if it is determined that the first user input 201 indicates cancellation of the target task, then in block 350, the application management platform 110 cancels the identification of the first function as interrupted.
[0062] By setting the interruption function restart mode 210 to have the highest priority, it is possible to first guide the user input to execute the target task that cannot continue to be executed due to function interruption, thereby improving the efficiency of task processing.
[0063] Re-reference Figure 2 If the application management platform 110 determines that no available function for the first user input 201 can be determined based on the interruption function restart mode 210 (for example, the first user input is not related to the function that has been previously called), or there is no function identified as interrupted, the application management platform 110 determines whether an available function for the first user input 201 can be determined based on the user-specified mode 220.
[0064] In some embodiments, the application management platform 110 may receive from the user 145 a user specification 203 including one or more functions of the target application 120. The user specification 203 of the one or more functions may be received, for example, before the application management platform 110 receives the first user input.
[0065] For example, the application management platform 110 may present an entry at the terminal device 146 of the user 145 that enables the user 145 to input a user specification of one or more functions of the target application 120.
[0066] Figure 4A and Figure 4B are schematic diagrams showing example interfaces 400A and 400B according to some embodiments of the present disclosure.
[0067] Figure 4A The interface 400A shown, for example, may be an interface for the user 145 to interact with the digital assistant 122 of the target application 120. If the user 145 operates on the control 402 in the dialog box 401 (for example, selects by clicking), the application management platform 110 may present a prompt interface 410. The prompt interface 410 presents controls 412 to 418 corresponding to multiple functions of the target application 120. The user can input a user specification of one or more functions of the target application 120 by selecting one or more of the controls 412 to 418. In addition, the user 145 can also indicate to the application management platform 110 that one or more functions can be automatically selected based on the first user input to process at least one task related to the first user input by selecting the control 411.
[0068] Figure 4BThe interface 400B shown presents a guidance page of the digital assistant 122 of the target application 120, which can be presented to the user 145, for example, when starting to enable the digital assistant 122. The interface 400B presents controls 421 to 427 corresponding to multiple functions of the target application 120. The user can input a user specification for one or more of the multiple functions of the target application 120 by selecting one or more of the controls 421 to 427. In addition, the user 145 can also indicate, by selecting the control 428, that the application management platform 110 can automatically match one or more functions based on the first user input to process at least one task related to the first user input.
[0069] If the application management platform 110 has received a user specification for one or more of the multiple functions, in the case of the user specification mode 220, the one or more functions are selected for the first user input, that is, for processing the task associated with the first user input.
[0070] If the application management platform 110 has received an indication to automatically select / match one or more functions, then in the user specification mode 220, the application management platform 110 selects one or more functions to process the task associated with the first user input.
[0071] In some embodiments, the user can also indicate to the application management platform 110 the call order of the specified one or more functions. Accordingly, the application management platform 110 can receive a user specification of the call order of the one or more functions. It should be understood that the user specification of the call order and the user specification 203 of the one or more functions described above can be received together or separately. The embodiments of the present disclosure are not limited in this regard.
[0072] If the user specifies a call order, in the user specification mode 220, the application management platform 110 can select the specified one or more functions according to the specified call order for the first user input 201. For example, the application management platform 110 can first call the function ranked first to process the task associated with the first user input 201. If this function fails to execute the task (for example, reports an error) or the execution result receives negative feedback from the user, the application management platform 110 can continue to call the function ranked second to process the task associated with the first user input 201, and so on.
[0073] As Figure 2As shown, if the application management platform 110 determines that no available function for the first user input 201 can be determined based on the user-specified mode 220, for example, the existing functions in the target application and / or one or more functions specified by the user cannot handle the task associated with the first user input, the application management platform 110 determines whether an available function for the first user input 201 can be determined according to the configuration-based function selection mode.
[0074] As already described above, the configuration-based function selection mode is configured to select available functions from multiple functions based on the configuration information 204 of the target application 120. In some embodiments, the configuration information 204 may include a selection indication for at least one of the multiple functions. The configuration information can be obtained, for example, from the user 105, i.e., the creator, manager, or maintainer of the target application 120.
[0075] Figure 4C A schematic diagram of an example interface according to some embodiments of the present disclosure is shown. As Figure 4C shown, the user interface 400C presented by the application management platform 110 can be presented through the terminal device of the user 105. In the character setting area 430 of the digital assistant 122 of the target application 120 presented in the user interface 400C, the dialog box 431 for role setting can receive the example configuration information 431 input by the user 105. The example configuration information may include a selection indication for at least one of the multiple functions in the function area 440 presented in the user interface 400C. For example, the example configuration information 431 “<!-lockskill: e-commerce data analysis>” may include a selection indication for the function 441 “e-commerce data analysis” in the function area 440.
[0076] Once the application management platform 110 receives the first user input 201, a prompt word can be determined according to the first user input 201 and the configuration information 204. Assuming that the first user input is “Analyze this e-commerce data report for me” and the configuration information is “<!-lockskill: e-commerce data analysis>”, the application management platform 110 provides the prompt word determined by the first user input and the configuration information to the machine learning model to obtain the first output of the machine learning model. The application management platform 110 invokes the function indicated by the configuration information (such as the “e-commerce data analysis” function) based on the first output of the target model to process the task associated with the first user input (such as e-commerce data report analysis).
[0077] As Figure 2As shown, if the application management platform 110 determines that the available functions for the first user input 201 cannot be determined based on the configuration-based function selection mode 230, or the result of performing the task associated with the first user input using the functions selected by the configuration-based function selection mode 230 is not satisfactory, then the application management platform 110 determines whether the available functions for the first user input 201 can be determined based on the model-based function selection mode.
[0078] In the model-based function selection mode, the application management platform 110 determines at least one second prompt word based on the first user input. The application management platform 110 provides the at least one second prompt word to at least one machine learning model respectively to obtain the corresponding second outputs of the at least one machine learning model. The application management platform 110 determines at least one function selected for processing the task associated with the first user input based on the corresponding second outputs.
[0079] In some embodiments, the first user input may indicate multiple tasks, such as indicating a first task and a second task. In this case, the corresponding second outputs obtained by the at least one machine learning model may indicate a first function for the first task and a second function for the second task. That is, the first user input is disassembled by the at least one machine learning model to obtain the corresponding functions for different tasks.
[0080] In some other embodiments, in the case where the first user input indicates multiple tasks, such as indicating a first task and a second task, the corresponding second outputs obtained by the at least one machine learning model may indicate a first function for the first task. The application management platform 110 determines a third prompt word based on the execution result after invoking the first function to execute the first task and the first user input. The application management platform 110 provides the third prompt word to the at least one machine learning model, obtains the third outputs of the at least one machine learning model, and determines a second function for the second task based on the third outputs.
[0081] That is, the application management platform 110 disassembles the multiple tasks involved in the first user input, and first sends the prompt word associated with one task to the at least one machine learning model to obtain a result. Then, the application management platform 110 sends the result and the prompt word associated with another task to the at least one machine learning model to obtain a result.
[0082] For example, assume that the first user input is "Help me summarize this data table and send it to zz". This first user input involves the tasks of "summarizing the data table" and "sending the data table". In some embodiments, the application management platform 110 sends at least one second prompt word determined from the first user input involving these two tasks to the machine learning model, and the corresponding output obtained can respectively indicate a first function for the first task and a second function for the second task.
[0083] In other embodiments, for example, the prompt word can be determined based on the first task (e.g., the task of "summarizing the data table") among the two tasks involved in the first user input. After sending this prompt word to the machine learning model, the output obtained is an indication of the first function for the first task. The application management platform 110 first executes the first task with the first function and determines a prompt word based on the execution result and the second task (e.g., the task of "sending the data table") among the two tasks involved in the first user input. After sending this prompt word to the machine learning model, the output obtained is an indication of the second function for the second task.
[0084] In this way, the target application can determine tasks based on the user input and select a function to process the tasks according to the priority rules, thereby improving the efficiency, speed, and accuracy of task processing.
[0085] Figure 5 FIG. shows a flowchart of a task processing procedure 500 according to some embodiments of the present disclosure. The procedure 500 can be implemented at the application management platform 110. The following refers to Figure 1 Describe the procedure 500.
[0086] In block 510, the application management platform 110 receives a first user input associated with at least one task for the target application.
[0087] In block 520, the application management platform 110 selects at least one function for the first user input from multiple functions of the target application by using at least one function selection mode according to the corresponding priority of the multiple function selection modes.
[0088] In block 530, the application management platform 110 invokes the at least one function to process the at least one task respectively.
[0089] In some embodiments, selecting at least one function from the multiple functions of the target application includes: determining whether there is an available function for the first user input among the multiple functions based on a first function selection mode among the multiple function selection modes; and in response to being unable to determine an available function for the first user input based on the first function selection mode among the multiple function selection modes, determining whether there is an available function for the first user input among the multiple functions based on a second function selection mode among the multiple function selection modes, where the priority of the first function selection mode is higher than the priority of the second function selection mode.
[0090] In some embodiments, the multiple function selection modes include two or more of the following function selection modes: an interrupted function restart mode, configured to select a function that is currently in an interrupted state; a user-specified mode, configured to select at least one function specified by the user in an interaction context associated with the first user input; a configuration-based function selection mode, configured to select an available function from the multiple functions based on configuration information of the target application; a model-based function selection mode, configured to select an available function from the multiple functions based on the first user input using at least one target model.
[0091] In some embodiments, the priority of the interrupted function restart mode is higher than other function selection modes.
[0092] In some embodiments, the priority of the model-based function selection mode is lower than other function selection modes.
[0093] In some embodiments, method 500 further includes: receiving a second user input for the target application indicating the at least one task; invoking a first function among the multiple functions to execute the at least one task; in response to the execution of the at least one task requiring further user input, identifying the first function as being in an interrupted state, and where in the interrupted function restart mode, the first function is selected for the first user input.
[0094] In some embodiments, method 500 further includes: in response to at least one of the following, canceling the identification of the first function as being in an interrupted state: completion of the execution of the at least one task, or receipt of a user instruction to cancel the at least one task.
[0095] In some embodiments, method 500 further includes: receiving a user specification of one or more functions among the multiple functions, and where in the user-specified mode, the one or more functions are selected for the first user input.
[0096] In some embodiments, method 500 further includes: receiving a user specification of the call order of the one or more functions, and in the user-specified mode, the one or more functions are selected for the first user input according to the call order.
[0097] In some embodiments, in the configuration-based function selection mode, the configuration information includes a selection indication for at least one of the multiple functions, and wherein calling the at least one function to process the at least one task respectively includes: determining a first prompt word based on the configuration information and the first user input; obtaining a first output of the target model by providing the first prompt word to the target model; and calling the at least one function indicated by the configuration information based on the first output of the target model to process the at least one task.
[0098] In some embodiments, in the model-based function selection mode, selecting at least one function for the first user input from the multiple functions of the target application includes: determining at least one second prompt word based on the first user input; providing the at least one second prompt word to the at least one target model respectively to obtain corresponding second outputs of the at least one target model; and determining the selected at least one function based on the corresponding second outputs.
[0099] In some embodiments, the first user input indicates a first task and a second task, and the second output indicates a first function for the first task and a second function for the second task.
[0100] In some embodiments, the first user input indicates a first task and a second task, and the second output indicates a first function for the first task, and determining the selected at least one function based on the second output includes: determining a third prompt word based on the execution result after calling the first function to execute the first task and the first user input; providing the third prompt word to the at least one target model to obtain a third output of the at least one target model; and determining a second function for the second task based on the third output.
[0101] Figure 6 FIG. shows a schematic structural block diagram of a task processing apparatus 600 according to some embodiments of the present disclosure. The apparatus 600 may be implemented in or included in, for example, an application management platform 110. Each module / component in the apparatus 600 may be implemented by hardware, software, firmware, or any combination thereof.
[0102] As shown in the figure, the device 600 includes an added first user input receiving module 610, configured to receive a first user input associated with at least one task for a target application.
[0103] The device 600 further includes a function selection module 620, configured to select at least one function for the first user input from multiple functions of the target application by using at least one function selection mode among the multiple function selection modes according to the corresponding priorities of the multiple function selection modes.
[0104] The device 630 further includes a task processing module 630, configured to call the at least one function to process the at least one task respectively.
[0105] In some embodiments, the function selection module 620 is further configured to: determine whether there is an available function for the first user input among the multiple functions based on a first function selection mode among the multiple function selection modes; and in response to being unable to determine an available function for the first user input based on the first function selection mode among the multiple function selection modes, determine whether there is an available function for the first user input among the multiple functions based on a second function selection mode among the multiple function selection modes, where the priority of the first function selection mode is higher than the priority of the second function selection mode.
[0106] In some embodiments, the multiple function selection modes include two or more of the following function selection modes: an interrupted function restart mode, configured to select a function that is currently in an interrupted state; a user-specified mode, configured to select at least one function specified by a user in an interaction context associated with the first user input; a configuration-based function selection mode, configured to select an available function from the multiple functions based on configuration information of the target application; a model-based function selection mode, configured to select an available function from the multiple functions based on the first user input by using at least one target model.
[0107] In some embodiments, the priority of the interrupted function restart mode is higher than that of other function selection modes.
[0108] In some embodiments, the priority of the model-based function selection mode is lower than that of other function selection modes.
[0109] In some embodiments, the apparatus 600 further includes a first user input receiving module configured to receive a second user input for the target application indicating the at least one task; a function calling module configured to call a first function among the multiple functions to execute the at least one task; and a status identification module configured to, in response to a requirement for further user input for the execution of the at least one task, identify the first function as being in an interrupted state, and wherein in the interrupted function restart mode, the first function is selected for the first user input.
[0110] In some embodiments, the apparatus 600 further includes a cancellation identification module configured to cancel the identification of the first function as being in an interrupted state in response to at least one of: completion of the execution of the at least one task, or receipt of a user indication to cancel the at least one task.
[0111] In some embodiments, the apparatus 600 further includes a first user designation receiving module configured to receive a user designation of one or more functions among the multiple functions, and wherein in the user designation mode, the one or more functions are selected for the first user input.
[0112] In some embodiments, the apparatus 600 further includes a second user designation receiving module configured to receive a user designation of the call order of the one or more functions, and in the user designation mode, the one or more functions are selected for the first user input according to the call order.
[0113] In some embodiments, in the configuration-based function selection mode, the configuration information includes a selection indication for at least one function among the multiple functions, and the task processing module 630 is further configured to: determine a first prompt word based on the configuration information and the first user input; obtain a first output of the target model by providing the first prompt word to the target model; and call the at least one function indicated by the configuration information based on the first output of the target model to process the at least one task.
[0114] In some embodiments, in the model-based function selection mode, the function selection module 620 is further configured to determine at least one second prompt word based on the first user input; provide the at least one second prompt word to the at least one target model respectively to obtain corresponding second outputs of the at least one target model; and determine the selected at least one function based on the corresponding second outputs.
[0115] In some embodiments, the first user input indicates a first task and a second task, and the second output indicates a first function for the first task and a second function for the second task.
[0116] In some embodiments, the first user input indicates a first task and a second task, and the second output indicates a first function for the first task, and the function selection module 620 is further configured to: determine a third prompt word based on the execution result after executing the first task by invoking the first function and the first user input; provide the third prompt word to the at least one target model to obtain a third output of the at least one target model; and determine a second function for the second task based on the third output.
[0117] Figure 7 FIG. shows a block diagram of an electronic device 700 in which one or more embodiments of the present disclosure may be implemented. It should be understood that Figure 7 The illustrated electronic device 700 is merely exemplary and should not impose any limitation on the functions and scope of the embodiments described herein. Figure 7 The illustrated electronic device 700 may include or be implemented as Figure 1 an application management platform 110, or Figure 6 a device 600.
[0118] As Figure 7 shown, the electronic device 700 is in the form of a general-purpose electronic device. The components of the electronic device 700 may include, but are not limited to, one or more processors or processing units 710, a memory 720, a storage device 730, one or more communication units 740, one or more input devices 750, and one or more output devices 760. The processing unit 710 may be an actual or virtual processor and be capable of performing various processes according to programs stored in the memory 720. In a multi-processor system, multiple processing units execute computer-executable instructions in parallel to improve the parallel processing ability of the electronic device 700.
[0119] The electronic device 700 generally includes multiple computer storage media. Such media can be any accessible media that the electronic device 700 can obtain, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 720 can be volatile memory (such as registers, caches, random access memory (RAM)), non-volatile memory (such as read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 730 can be removable or non-removable media and can include machine-readable media, such as flash drives, magnetic disks, or any other media that can be capable of storing information and / or data and can be accessed within the electronic device 700.
[0120] The electronic device 700 can further include additional removable / non-removable, volatile / non-volatile storage media. Although not shown in Figure 7 it, a disk drive for reading from or writing to a removable, non-volatile magnetic disk (such as a "floppy disk") and an optical disk drive for reading from or writing to a removable, non-volatile optical disk can be provided. In these cases, each drive can be connected to a bus (not shown) by one or more data media interfaces. The memory 720 can include a computer program product 725 having one or more program modules that are configured to perform the various methods or actions of the various embodiments of the present disclosure.
[0121] The communication unit 740 enables communication with other electronic devices via a communication medium. Additionally, the functions of the components of the electronic device 700 can be implemented by a single computing cluster or multiple computer machines that are capable of communicating via a communication connection. Thus, the electronic device 700 can operate in a networked environment using a logical connection with one or more other servers, network personal computers (PCs), or another network node.
[0122] The input device 750 can be one or more input devices, such as a mouse, keyboard, trackball, etc. The output device 760 can be one or more output devices, such as a display, speaker, printer, etc. The electronic device 700 can also communicate with one or more external devices (not shown) as needed via the communication unit 740, such as storage devices, display devices, etc., communicate with one or more devices that enable a user to interact with the electronic device 700, or communicate with any device that enables the electronic device 700 to communicate with one or more other electronic devices (such as a network card, modem, etc.). Such communication can be performed via an input / output (I / O) interface (not shown).
[0123] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, and the computer-executable instructions are executed by a processor to implement the method described above. According to an exemplary implementation of the present disclosure, a computer program product is further provided. The computer program product is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, and the computer-executable instructions are executed by a processor to implement the method described above.
[0124] Aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of methods, apparatuses, devices, and computer program products according to the present disclosure. It should be understood that each block of the flowcharts and / or block diagrams, and the combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer-readable program instructions.
[0125] 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 device, thereby producing a machine such that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device is produced that implements 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, and these instructions cause a computer, a programmable data processing device, and / or other devices to work in a specific manner. Thus, the computer-readable medium storing the instructions includes a manufactured article that includes instructions for implementing various aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0126] The computer-readable program instructions can be loaded onto a computer, other programmable data processing device, or other device, such that a series of operation steps are executed on the computer, other programmable data processing device, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable data processing device, or other device implement the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0127] 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 implementations of the present disclosure. In this regard, each block in the flowchart or block diagram may represent a module, a segment of a program, or a portion of an instruction, which contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions noted in the blocks may occur in a different order than noted in the accompanying drawings. For example, two consecutive blocks may in fact be executed substantially in parallel, or they may sometimes be executed in the reverse order, depending upon the functionality 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, can be implemented by a special purpose hardware-based system that performs the specified functions or acts, or by a combination of special purpose hardware and computer instructions.
[0128] The implementations of the present disclosure have been described above. The above description is exemplary, not exhaustive, and is not limited to the disclosed implementations. Many modifications and variations will be apparent to those of ordinary skill in the art in the field without departing from the scope and spirit of the described implementations. The choice of terms used herein is intended to best explain the principles of the implementations, the practical application, or improvements made to the technology in the market, or to enable other ordinary skilled persons in the art in the field to understand the various implementation manners disclosed herein.
Claims
1. A task processing method, comprising: Receiving a first user input associated with at least one task for a target application; Selecting at least one function for the first user input from multiple functions of the target application by using at least one function selection mode among the multiple function selection modes according to the corresponding priorities of the multiple function selection modes; And Invoking the at least one function to process the at least one task respectively.
2. The method according to claim 1, wherein selecting at least one function from the multiple functions of the target application comprises: Determining whether there is an available function for the first user input among the multiple functions based on a first function selection mode among the multiple function selection modes; And In response to being unable to determine an available function for the first user input based on the first function selection mode among the multiple function selection modes, determining whether there is an available function for the first user input among the multiple functions based on a second function selection mode among the multiple function selection modes, wherein the priority of the first function selection mode is higher than the priority of the second function selection mode.
3. The method according to claim 1, wherein the multiple function selection modes include two or more of the following function selection modes: An interrupted function restart mode, configured to select a function that is currently in an interrupted state; A user-specified mode, configured to select at least one function specified by a user in an interaction context associated with the first user input; A configuration-based function selection mode, configured to select available functions from the multiple functions based on configuration information of the target application; A model-based function selection mode, configured to select available functions from the multiple functions based on the first user input by using at least one target model.
4. The method according to claim 3, wherein the priority of the interrupted function restart mode is higher than that of other function selection modes.
5. The method according to claim 3, wherein the priority of the model-based function selection mode is lower than that of other function selection modes.
6. The method according to claim 3, further comprising: Receiving a second user input for the target application indicating the at least one task; Invoking a first function among the multiple functions to execute the at least one task; In response to a requirement for further user input for the execution of the at least one task, marking the first function as being in an interrupted state, and wherein in the interrupted function restart mode, the first function is selected for the first user input.
7. The method according to claim 6, further comprising canceling marking the first function as being in an interrupted state in response to at least one of the following: Completing the execution of the at least one task, or Receiving a user instruction to cancel the at least one task.
8. The method according to claim 3, further comprising: Receiving a user specification of one or more functions among the multiple functions, and wherein in the user-specified mode, the one or more functions are selected for the first user input.
9. The method according to claim 8 further includes: receiving a user specification of the call order of the one or more functions, and wherein in the user-specified mode, the one or more functions are selected for the first user input according to the call order.
10. The method according to claim 3, wherein in the configuration-based function selection mode, the configuration information includes a selection indication for at least one function among the multiple functions, and wherein calling the at least one function to process the at least one task respectively includes: determining a first prompt word based on the configuration information and the first user input; obtaining a first output of the target model by providing the first prompt word to the target model; and calling the at least one function indicated by the configuration information based on the first output of the target model to process the at least one task.
11. The method according to claim 3, wherein in the model-based function selection mode, selecting at least one function for the first user input from the multiple functions of the target application includes: determining at least one second prompt word based on the first user input; providing the at least one second prompt word to the at least one target model respectively to obtain corresponding second outputs of the at least one target model; and determining the selected at least one function based on the corresponding second outputs.
12. The method according to claim 11, wherein the first user input indicates a first task and a second task, and the second output indicates a first function for the first task and a second function for the second task.
13. The method according to claim 11, wherein the first user input indicates a first task and a second task, and the second output indicates a first function for the first task, and determining the selected at least one function based on the second output includes: determining a third prompt word based on the execution result after calling the first function to execute the first task and the first user input; providing the third prompt word to the at least one target model to obtain a third output of the at least one target model; and determining a second function for the second task based on the third output.
14. A task processing device includes: a first user input receiving module configured to receive a first user input associated with at least one task for a target application; a function selection module configured to select at least one function for the first user input from the multiple functions of the target application by using at least one function selection mode among the multiple function selection modes according to the corresponding priorities of the multiple function selection modes; and a task processing module configured to call the at least one function to process the at least one task respectively.
15. An electronic device includes: at least one processing unit; and At least one memory, the at least one memory being coupled to at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the electronic device to perform the method according to any one of claims 1 to 13.
16. A computer-readable storage medium having stored thereon a computer program, the computer program being executable by a processor to implement the method according to any one of claims 1 to 13.