Method and apparatus for task processing, and device and storage medium
By detecting the execution conditions of work nodes in the workflow, obtaining relevant information and determining the tasks to be executed, the problem of insufficient flexibility in interaction between users and digital assistants is solved, the intelligence and autonomy of digital assistants are realized, and the information processing efficiency is improved.
Patent Information
- Application Number
- PCT/CN2024/131401
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-11-22
- Filing Date
- 2024-11-11
- Publication Date
- 2025-05-30
AI Technical Summary
The prior art is difficult to improve the flexibility of interaction between users and digital assistants, resulting in low information processing efficiency in scenarios where complex or multi-service components are collaborative.
By detecting whether the execution conditions of the work nodes in the workflow are met, relevant information is obtained, tasks to be executed are determined, and tasks are assigned to the target execution subject, so as to improve the intelligence and autonomy of the digital assistant.
It realizes that task-related information is automatically obtained and tasks are executed without user real-time instructions, improving the intelligence, autonomy and flexibility of digital assistants, and improving work efficiency in various business scenarios.
Smart Images

Figure CN2024131401_30052025_PF_FP_ABST
Abstract
Description
Method, apparatus, device and storage medium for task processing
[0001] This application claims priority to the Chinese invention patent application entitled “Methods, devices, equipment and storage media for task processing” and application number 202311569258.9, filed on November 22, 2023. The entire contents of that application are incorporated herein by reference. Technical Field
[0002] Example embodiments of the present disclosure generally relate to the field of computers, and more particularly, to methods, apparatuses, devices, and computer-readable storage media for task processing. Background Art
[0003] With the rapid development of Internet technology, the Internet has become an important platform for people to access and share content. Users can access the Internet through terminal devices and enjoy various Internet services. Terminal devices present corresponding content and interact with users and provide services to users through the user interface of the application. Therefore, a rich and colorful application interactive interface is an important means to enhance the user experience. With the development of information technology, various terminal devices can provide people with various services in work and life. For example, terminal devices can be deployed with applications that provide services. Terminal devices or applications can provide users with digital assistant-like functions to assist users in using terminal devices or applications. How to improve the flexibility of user interaction with digital assistants is a technical problem that needs to be explored.
[0004] Summary of the Invention
[0005] In a first aspect of the present disclosure, a method for task processing is provided. The method includes: detecting whether execution conditions of each work node in a first workflow are satisfied, wherein the first workflow includes multiple work nodes; in response to detecting that the execution conditions of a first work node in the first workflow are satisfied, obtaining relevant information of the first work node; determining at least one task to be executed based on the relevant information of the first work node; and executing at least a portion of the at least one task, and / or assigning at least a portion of the at least one task to a target execution entity.
[0006] In a second aspect of the present disclosure, a device for task processing is provided. The device includes: an execution condition detection module configured to detect whether the execution condition of each work node in a first workflow is satisfied, wherein the first workflow includes multiple work nodes; a relevant information acquisition module configured to, in response to detecting that the execution condition of a first work node in the first workflow is satisfied, acquire relevant information of the first work node; a task determination module configured to determine at least one task to be executed based on the relevant information of the first work node; and a task processing module configured to execute at least a portion of the at least one task and / or assign at least a portion of the at least one task to a target execution entity.
[0007] 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 executed by the at least one processing unit, the instructions cause the device to perform the method of the first aspect.
[0008] In a fourth aspect of the present disclosure, a computer-readable storage medium is provided, wherein a computer program is stored on the computer-readable storage medium, and the computer program can be executed by a processor to implement the method of the first aspect.
[0009] In a fifth aspect of the present disclosure, a computer program product is provided, which is tangibly stored in a computer storage medium and includes computer-executable instructions, which, when executed by a device, cause the device to perform the method of the first aspect.
[0010] It should be understood that the content described in this section is not intended to limit the key features or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements, wherein:
[0012] FIG1 shows a schematic diagram of an example environment in which embodiments of the present disclosure can be implemented;
[0013] FIG2 shows a flowchart of a process for task processing according to some embodiments of the present disclosure;
[0014] FIG3 shows a flowchart of a process for task processing according to other embodiments of the present disclosure;
[0015] FIG4 shows a block diagram of an apparatus for task processing according to some embodiments of the present disclosure;
[0016] FIG5 shows a block diagram of an apparatus for task processing according to some embodiments of the present disclosure; and
[0017] FIG6 illustrates a block diagram of an electronic device in which one or more embodiments of the present disclosure may be implemented. DETAILED DESCRIPTION
[0018] The following describes embodiments of the present disclosure in more detail with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying 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 described herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are for illustrative purposes only and are not intended to limit the scope of protection of the present disclosure.
[0019] In the description of the embodiments of the present disclosure, the term "including" and similar terms should be understood as open inclusion, i.e., "including but not limited to". The term "based on" should be understood as "based at least in part 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 be included below.
[0020] Herein, unless explicitly stated otherwise, executing a step “in response to A” does not mean executing the step immediately after “A” but may include one or more intermediate steps.
[0021] It is understandable 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 relevant provisions.
[0022] It is understandable that before using the technical solutions disclosed in the various 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 relevant users and authorization should be obtained from relevant users in an appropriate manner in accordance with relevant laws and regulations. The relevant users may include any type of right holders, such as individuals, enterprises, and groups.
[0023] For example, in response to 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 to be performed will require obtaining and using the information of the relevant user, so that the relevant user can independently choose whether to provide information to the software or hardware such as the electronic device, application, server or storage medium that executes the operation of the technical solution of the present disclosure based on the prompt message.
[0024] As an optional but non-limiting implementation, in response to receiving an active request from a relevant user, a prompt message may be sent to the relevant user in the form of a pop-up window, in which the prompt message may be presented in text form. Furthermore, the pop-up window may also include a selection control for the user to select "agree" or "disagree" to provide information to the electronic device.
[0025] It is understood that the above notification and user authorization process is merely illustrative and does not limit the implementation of the present disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of the present disclosure. In the embodiments of the present disclosure, the activation of digital assistant-related functions, the acquisition of data, the processing and storage of data, etc., shall all be subject to the prior authorization of the user and other rights holders associated with the user, and shall comply with relevant laws and regulations and the provisions of the agreement rules between rights holders.
[0026] 1 shows a schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented. In this example environment 100, a digital assistant 120 and a service component 125 are installed in a terminal device 110. A user 140 can interact with the digital assistant 120 and the service component 125 via the terminal device 110 and / or a device attached to the terminal device 110.
[0027] In some embodiments, the digital assistant 120 and the service component 125 can be downloaded and installed on the terminal device 110. In some embodiments, the digital assistant 120 and the service component 125 can also be accessed through other means, such as through a web page. In the environment 100 of FIG. 1 , in response to the service component 125 being activated, the terminal device 110 can present an interface 150 of the digital assistant 120 and the service component 125.
[0028] Business components 125 include, but are not limited to, one or more of the following: a chat component (also known as an instant messaging component), a document component, an audio and video conferencing component, an email component, a task component, a calendar component, an Objectives and Key Results (OKR) component, and the like. It should be understood that although a single business component is shown in FIG1 , multiple business components may be installed on the terminal device 110. In some embodiments, business components 125 may include a multi-functional collaboration platform, such as an office collaboration platform (also known as an office suite), which integrates various types of business components to facilitate office work, communication, and other activities. Within the multi-functional collaboration platform, people can activate different business components as needed to complete corresponding information processing, sharing, and communication. Business components 125 may provide content entities 126. Content entities 126 may be content instances created by user 140 or other users on business components 125. For example, depending on the type of business component 125, content entities 126 may include documents (e.g., Word documents, PDF documents, presentations, spreadsheets, etc.), emails, messages (e.g., conversation messages on instant messaging components or messages on other components), calendars, schedules, tasks, audio, video, images, and the like.
[0029] In some embodiments, the digital assistant 120 may be provided by a separate business component or may be integrated into a business component 120 that is capable of providing a content entity. The business component for providing a client interface for the digital assistant may correspond to a single-function business component or a multi-function collaboration platform, such as an office suite or other collaboration platform capable of integrating multiple components. It will be understood that, similar to the business component, although a single digital assistant is shown in FIG1 , there may actually be multiple digital assistants.
[0030] In some embodiments, digital assistant 120 supports the use of plug-ins. Each plug-in can provide one or more functions of an application. Such plug-ins include, but are not limited to, one or more of the following: a search plug-in, a contact plug-in, a message plug-in, a document plug-in, a table plug-in, an email plug-in, a calendar plug-in, a schedule plug-in, a task plug-in, and the like.
[0031] The digital assistant 120 is an intelligent assistant for the user, capable of intelligent dialogue and information processing. In an embodiment of the present disclosure, the digital assistant 120 is used to interact with the user 140 to assist the user 140 in using a terminal device or application. An interaction window with the digital assistant 120 may be presented in the client interface. In the interaction window, the user 140 can communicate with the digital assistant 120 by inputting natural language, pictures, audio files, video files, web page files, etc., to instruct the digital assistant to assist in completing various tasks, including operations on the content entity 126.
[0032] In some embodiments, the digital assistant 120 can be included as a contact of the user 140 in the current user 140's contact list in the office suite, or included in the information flow of the chat component. In some embodiments, the user 140 has a corresponding relationship with the digital assistant 120. For example, the first digital assistant corresponds to the first user, the second digital assistant corresponds to the second user, and so on. In some embodiments, the first digital assistant can uniquely correspond to the first user, the second digital assistant can uniquely correspond to the second user, and so on. In other words, the first digital assistant of the first user can be specific to or exclusive to the first user. For example, in the process of the first digital assistant providing assistance or services to the first user, the first digital assistant can utilize its historical interaction information with the first user, the data authorized by the first user to which it has access, the current interaction context with the first user, etc. If the first user is an individual or person, the first digital assistant can be considered a personal digital assistant. It is understood that in the disclosed embodiments, the first digital assistant accesses the data to which it is granted permission based on the authorization of the first user. It should be understood that "uniquely corresponding" or similar expressions in this disclosure are not intended to limit the first digital assistant to being updated accordingly based on the interaction process between the first user and the first digital assistant. Of course, depending on actual application needs, the digital assistant 120 does not have to be specific to the current user 140, but can be a general digital assistant.
[0033] In some embodiments, during the operation of the digital assistant 120 and / or the business component 125, one or more models 155 may be called to perform task processing. For example, the digital assistant 120 may utilize the model 155 to help understand user input and provide a reply to the user based on the output of the model 155. In some embodiments, the model 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). The language model is able to have question-and-answer capabilities by learning from a large amount of corpus. The model may also be based on other appropriate models. Although shown as being independent of the server and / or terminal device, one or more models 155 may run on a server and / or terminal device, or other remote servers.
[0034] In some embodiments, multiple interaction modes can be provided between user 140 and digital assistant 120, and flexible switching between the multiple interaction modes can be achieved. When a certain interaction mode is triggered, a corresponding interaction area is presented to facilitate interaction between user 140 and digital assistant 120. In different interaction modes, the interaction methods between user 140 and digital assistant 120 are different, which can flexibly adapt to the interaction needs in different application scenarios.
[0035] In some embodiments, information processing services specific to user 140 can be provided based on historical interaction information between user 140 and digital assistant 120 and / or data ranges specific to user 140. In some embodiments, historical interaction information of user 140 interacting with digital assistant 120 in multiple interaction modes can be stored in association with user 140. In this way, in one of the multiple interaction modes (any or a designated one), digital assistant 120 can provide services to user 140 based on the historical interaction information stored in association with user 140.
[0036] The digital assistant 120 can be called or awakened by an appropriate means (e.g., a shortcut key, a button, or voice) to present an interaction window with the user 140. By selecting the digital assistant 120, the interaction window with the digital assistant 120 can be opened. The interaction window may include interface elements for information interaction, such as an input box, a message list, a message bubble, and so on. In other embodiments, the digital assistant 120 can be awakened through an entry control or menu provided in a page, or by inputting a preset instruction.
[0037] The interaction window between the digital assistant 120 and the user 140 may include a conversation window, such as a conversation window in an instant messaging application or an instant messaging module of a specific application. In the conversation window, the interaction between the digital assistant 120 and the user 140 may be presented in the form of conversation messages. Alternatively or additionally, the interaction window between the digital assistant 120 and the user 140 may also include other types of windows, such as a window in a floating window mode, in which the user 140 can trigger the digital assistant 120 to perform corresponding operations by inputting instructions, selecting shortcut instructions, etc.
[0038] In some embodiments, digital assistant 120 may support a conversation window interaction mode, also referred to as conversation mode. In this interaction mode, a conversation window is presented between user 140 and digital assistant 120, in which user 140 and digital assistant 120 interact through conversation messages. In conversation mode, digital assistant 120 can perform tasks based on the conversation messages in the conversation window. In the interaction window, user 140 enters interaction messages, and digital assistant 120 provides reply messages in response to the user input.
[0039] In some embodiments, the conversation mode between user 140 and digital assistant 120 can be invoked or awakened by an appropriate means (e.g., a shortcut key, button, or voice) to present a conversation window. By selecting digital assistant 120, a conversation window with digital assistant 120 can be opened. The conversation window may include interface elements for information interaction, such as an input box, a message list, a message bubble, and the like.
[0040] In some embodiments, the digital assistant 120 may support an interactive mode of a floating window (or floating window), also referred to as a floating window mode. When the floating window mode is triggered, the operation panel (also referred to as a floating window) corresponding to the digital assistant 120 is presented, and the user 140 can issue instructions to the digital assistant 120 based on the operation panel. In some embodiments, the operation panel may include at least one candidate shortcut instruction. Alternatively or additionally, the operation panel may include an input control for receiving instructions. In floating window mode, the digital assistant 120 can perform tasks according to instructions issued by the user 140 through the operation panel.
[0041] In some embodiments, the floating window mode of the user 140 and the digital assistant 120 can also be called or awakened by an appropriate means (e.g., a shortcut key, a button, or voice) to present the corresponding operation panel. In some embodiments, the awakening of the digital assistant 120 can be supported in a specific application, such as a document application, to provide interaction in the floating window mode. In some embodiments, in order to trigger the floating window mode to present the operation panel corresponding to the digital assistant 120, an entry control for the digital assistant 120 can be presented in the application interface. In response to detecting a triggering operation for the entry control, it can be determined that the floating window mode is triggered, and the operation panel corresponding to the digital assistant 120 is presented in the target interface area.
[0042] In some embodiments described below, for ease of discussion, the interaction window between the user and the digital assistant is mainly taken as an example, which is a conversation window.
[0043] In some embodiments, the terminal device 110 communicates with the server 130 to enable the provision of services to the digital assistant 120 and the business component 125. The terminal device 110 can be any type of mobile terminal, fixed terminal or portable terminal, including a mobile phone, a desktop computer, a laptop computer, a notebook computer, a netbook computer, a tablet computer, a media computer, a multimedia tablet, a personal communication system (PCS) device, a personal navigation device, a personal digital assistant (PDA), an audio / video player, a digital camera / camcorder, a television receiver, a radio broadcast receiver, an e-book device, a gaming device or any combination of the foregoing, including accessories and peripherals of these devices or any combination thereof. In some embodiments, the terminal device 110 can also support any type of interface for the user (such as a "wearable" circuit, etc.). The server 130 can be various types of computing systems / servers that can provide computing power, including but not limited to mainframes, edge computing nodes, computing devices in cloud environments, and the like.
[0044] It should be understood that the structure and function of the various elements in the environment 100 are described for illustrative purposes only and do not imply any limitation on the scope of the present disclosure.
[0045] As briefly mentioned above, digital assistants can assist users in using terminal devices or applications. Some applications can provide integrated functions of different plug-ins. In addition to being able to have free conversations with digital assistants, users can also use natural language and other instructions to enable digital assistants to use different plug-ins to complete some more complex business-related operations related to the application, such as creating documents, inviting schedules, creating tasks, etc. Traditionally, users are often required to actively trigger interactions with digital assistants, and digital assistants rely on user instructions to perform tasks. However, this way of executing tasks always requires immediate instructions from the user. For tasks that the user has not discovered or noticed in time, it may not be possible to immediately trigger the digital assistant to help execute them. In some cases, for a digital assistant bound to a specific business component, business scenario, or user, the digital assistant can usually only process information based on the business component, business scenario, or the user's immediate instructions. For some special scenarios, the digital assistant cannot be effectively used to improve the efficiency of information processing. For example, when multiple business components need to collaborate, or the business scenario is relatively complex, or it is difficult for the user to give immediate instructions in real time, the information processing efficiency is low; wherein, the business component can be a different business component integrated in a collaborative platform, or it can be the first business component connected to the collaborative platform, or the second business component associated with the user. The first business component is usually allowed to interact with the business components in the collaborative platform or the users of the platform for a certain type or range of information. The second business component is the business component registered or used by the user. In other cases, a unified and standardized interactive experience is usually provided, which often cannot meet the personalized needs of all users. The above-mentioned problems will affect the interaction efficiency and interactive experience between the user and the digital assistant, and make the interactive function of the digital assistant less flexible.
[0046] According to some embodiments of the present disclosure, an improved scheme for task processing is proposed, which aims to solve at least one of the above-mentioned technical problems. In an embodiment of the present disclosure, it is detected whether the execution conditions of each work node in the first workflow are met, wherein the first workflow includes multiple work nodes. In response to detecting that the execution conditions of the first work node in the first workflow are met, relevant information of the first work node is obtained. Based on the relevant information of the first work node, at least one task to be executed is determined. At least a part of at least one task is executed, and / or at least a part of at least one task is assigned to a target execution entity. In this way, the intelligence, autonomy and flexibility of the digital assistant can be improved, and the work efficiency in various business scenarios can be improved.
[0047] Some example embodiments of the present disclosure will be described in detail below with reference to examples in the accompanying drawings.
[0048] FIG2 shows a flowchart of a process 200 for task processing according to some embodiments of the present disclosure. For ease of discussion, the process 200 will be described with reference to the environment 100 of FIG1 . The process 200 may be implemented at the terminal device 110 and / or the server 130. For ease of description, the following description will be given using the example of the process 200 being implemented at the terminal device 110. It should be understood that some operations described with reference to the terminal device 110 may require the assistance of the server 130. It should be noted that the operations performed by the terminal device 110 may specifically be performed by relevant applications and / or digital assistants installed on the terminal device 110.
[0049] In box 210, the terminal device 110 or the first digital assistant on the terminal device 110 detects whether a task triggering condition related to the first digital assistant is met.
[0050] The terminal device 110 can obtain a task triggering condition related to the first digital assistant, where the first digital assistant can be, for example, the digital assistant 120. It can be understood that the first digital assistant corresponds to the first user, and the first user can include one or more users, that is, the first digital assistant can be a personal assistant, a team assistant / organization assistant, etc. In some embodiments, the task triggering condition can be configured by the first user corresponding to the first digital assistant (that is, the user 140 corresponding to the terminal device 110, which can also be referred to as the current user).
[0051] Specifically, the terminal device 110 can receive at least one user input from the first user to the first digital assistant. For example, the terminal device 110 can receive at least one user input from the first user to the first digital assistant in the conversation window between the first user and the first digital assistant. The user input can be any type of input, such as text, audio, image, etc. The terminal device 110 can determine the task trigger condition based on the at least one user input. For example, the terminal device 110 can analyze the user input to determine the task trigger condition indicated by the user input. Exemplarily, the first user can send a conversation message in advance in the interaction window between the first user and the first digital assistant, "Whenever I receive a customer complaint email, remind me and prepare a reply email." The terminal device 110 can determine the task trigger condition as "receiving a customer complaint email" in response to receiving the conversation message. Alternatively or additionally, the task trigger condition can also be determined by the terminal device 110 itself. For example, the terminal device 110 can determine the task trigger condition based on historical data associated with the first user.
[0052] In some embodiments, the terminal device 110 can determine the task triggering condition with the help of a target model (e.g., model 155 in FIG1 ). The terminal device 110 can, for example, construct a prompt input based on at least one user input / historical data. The terminal device 110 can provide the prompt input to the model 155 and obtain the task triggering condition determined by the model 155. In some embodiments, the model can be a machine learning model, a deep learning model, a learning model, a neural network, etc. In some embodiments, the model can be based on a language model (LM). The language model can have question-answering capabilities by learning from a large amount of corpus. The model can also be based on other appropriate models.
[0053] In box 220, the terminal device 110 or the first digital assistant on the terminal device 110 starts the execution of the task related to the first digital assistant in response to the task triggering condition being met. Task execution includes: obtaining information related to the first task; based on the obtained information related to the first task, by interacting with the target model, performing at least one of the following: obtaining attribute information of the first task; executing the first task based on the attribute information of the first task. In some embodiments, the interaction with the target model can occur in the attribute information acquisition stage of the first task. In some embodiments, the interaction with the target model can occur in the execution stage of the first task. In some embodiments, both the attribute information acquisition stage and the execution stage of the first task involve interaction with the target model. The specific use of the target model in each stage will be discussed in the following embodiments.
[0054] Thus, task-related information can be automatically obtained under specific trigger conditions and the user can be helped to perform the corresponding task without the need for active triggering by the user. The first digital assistant can automatically start the execution of the task when the task triggering conditions are met without the need for real-time instructions from the user. During task execution, the task can also be assisted in completing by interacting with the target model (e.g., model 155).
[0055] In some embodiments, the active execution of the first task can be based on interactive instructions or non-interactive instructions with the user. In some embodiments, the first digital assistant can also determine whether the execution of the first task requires additional input from the first user. If the execution of the first task does not require additional input from the first user, the first digital assistant can actively execute the first task directly based on the obtained task-related information without the need for interactive instructions from the user. In some embodiments, if the execution of the first task requires additional input from the first user, the first digital assistant can send a message to the first user instructing the first user to provide additional information about the first task. The first digital assistant can then receive the additional input from the first user and determine the additional information corresponding to the additional input. The first digital assistant can then execute the first task based on the obtained task-related information and additional information. In this process, the first digital assistant can complete the first task through active dialogue with user 140 and further interactive information obtained. For example, the first digital assistant can first draft a project evaluation report and send it to user 110 for user confirmation and modification before ultimately completing the project evaluation report.
[0056] It should be noted that the message instructing the first user to provide additional information about the first task and the additional message here can be sent and received in the interaction window between the first user and the first digital assistant. For example, the terminal device 110 can send a message instructing the first user to provide additional information about the first task in the interaction window between the first user and the first digital assistant. The terminal device 110 can then obtain additional information based on multiple rounds of conversations between the first user and the first digital assistant. For another example, the terminal device 110 can also present operation controls, shortcut instructions, etc. associated with obtaining additional input in the interaction window between the first user and the first digital assistant. The terminal device 110 can determine that the additional input is obtained in response to detecting a trigger operation on the corresponding operation control / shortcut instruction, and then determine the additional information indicated by the additional input.
[0057] In some embodiments, the terminal device 110 uses the first digital assistant to notify the first user of the execution result of the first task. The terminal device 110 can notify the first user of the execution result of the first task by, for example, sending a notification message indicating the execution result of the first task in the interaction window between the first user and the first digital assistant.
[0058] In some embodiments, the task triggering condition for triggering the first digital assistant to actively perform a task may include the execution condition of one or more work nodes in the first workflow being met. The first workflow here may include multiple work nodes. Multiple work nodes respectively have corresponding tasks, and there is a dependency relationship between the tasks corresponding to two or more work nodes in the multiple work nodes. For example, if the first node and the second node are adjacent nodes, and the first node is in front of the second node, the second node can only perform the task corresponding to the second node if the first node completes the task corresponding to the first node. In this case, the terminal device 110 can, for example, determine that the task triggering condition related to the first digital assistant is met in response to detecting that the execution condition of a certain work node is met.
[0059] Below, we first describe in detail an example of the process of actively executing the first workflow by the digital assistant 120 in conjunction with Figure 3. Figure 3 shows a flowchart of a process 300 for task processing according to some embodiments of the present disclosure. For ease of discussion, the process 300 will be described with reference to the environment 100 of Figure 1. The process 300 can be implemented at the terminal device 110 and / or the server 130. For the convenience of description, the following description will be taken as an example where the process 300 is implemented at the terminal device 110. It should be understood that some operations described with reference to the terminal device 110 may require the assistance of the server 130 to complete. It should be noted that the operations performed by the terminal device 110 may specifically be performed by relevant applications and / or digital assistants installed on the terminal device 110.
[0060] In box 310, the terminal device 110 or the first digital assistant on the terminal device 110 detects whether the execution conditions of each work node in the first workflow are met, where the first workflow includes multiple work nodes.
[0061] The first workflow here can be, for example, any appropriate workflow, which can be input into the terminal device 110 in advance by the first user. The multiple work nodes included in the first workflow each have a corresponding task. In some embodiments, there may also be a dependency relationship between the tasks corresponding to two or more of the multiple work nodes. That is, the task of one work node depends on the task of at least one other work node. In some embodiments, in order to ensure the standardization and accuracy of the first workflow and the multiple work nodes, the first workflow can be a standard operating procedure (SOP) for the first business. SOP refers to describing the standard operating steps and requirements of an event in a unified format for guiding and standardizing specific business operations. SOP usually quantifies the details of a specific business. In layman's terms, SOP is to refine and quantify the key control points in a certain procedure.
[0062] In some embodiments, the terminal device 110 or the first digital assistant on the terminal device 110 can determine whether the execution conditions of each work node among multiple work nodes are met based on information related to the first workflow. In some embodiments, the information related to the first workflow can include the first workflow itself, because the first workflow itself defines the work logic, that is, the task dependencies between the various work nodes, the triggering logic of the task branches of each work node, etc. Based at least in part on the first workflow, the tasks to be performed by each work node and the execution conditions of these tasks can be determined. In some embodiments, alternatively or additionally, the information related to the first workflow can include business knowledge information corresponding to the first workflow. In some embodiments, alternatively or additionally, the information related to the first workflow can include known execution information of one or more work nodes among the multiple work nodes. Typically, in a workflow, whether a task at one or more work nodes should be executed and / or how to execute it may need to be determined based on the execution status of previous work nodes. In particular, if a work node has multiple task branches, it is necessary to determine which task branch to execute next based on the execution status of previous work nodes. In some embodiments, alternatively or additionally, the information related to the first workflow may include user feedback related to one or more of the multiple work nodes. Different work nodes may have corresponding users for monitoring and feedback. If feedback is received for a particular work node, it may be necessary to determine whether the task corresponding to the work node should be triggered for execution.
[0063] In some embodiments, the terminal device 110 may obtain the execution conditions of each work node of the first workflow. For example, if the first workflow is a standard operating procedure, the terminal device 110 may directly determine the execution conditions of each work node based on the standard operating procedure. The terminal device 110 may then detect whether the execution conditions of each work node in the first workflow are met based on the execution conditions of each work node.
[0064] For example, if the first workflow is the standard operating procedure for a hotel's guest room inspection, the terminal device 110 can determine, based on the first workflow, the multiple work nodes required to perform the guest room inspection and the tasks corresponding to each of these work nodes. The terminal device 110 can then sequentially check whether the execution conditions for each work node are met. For example, if the execution condition for the work node "Repair the Guest Room Shower System" is that the guest room shower system is damaged, the terminal device 110 can determine whether the execution condition for the work node "Repair the Guest Room Shower System" is met based on the defect result indicating whether the guest room shower system is damaged.
[0065] In some embodiments, terminal device 110 may continuously detect whether one or more execution conditions of each node are satisfied. In some embodiments, terminal device 110 may detect whether the execution conditions are satisfied using a target model (e.g., model 155). In some embodiments, considering the resource and time overhead of model invocation, terminal device 110 may utilize different detection modes to detect whether the execution conditions are satisfied.
[0066] In some embodiments, the terminal device 110 can detect whether the execution conditions of each work node are met based on a first detection mode. The first detection mode includes other detection modes besides interaction with the target model. In some examples, the first detection mode can include performing a key information search on first information, where the first information includes information used to detect whether the execution conditions of each work node are met. For example, at least one keyword associated with the execution condition can be obtained. This at least one keyword can be determined by the first user or by the terminal device 110 based on the execution condition. The terminal device 110 can then search the first information for one or more keywords associated with the execution condition based on keyword detection to detect whether the execution conditions associated with each work node are met. In some embodiments, alternatively or additionally, the first detection mode also includes detecting whether the first information satisfies preset rules. If the first information satisfies the preset rules, it can be determined that the execution conditions associated with each work node are met. In other words, in the first detection mode, whether the execution conditions are met can be determined through a simple and low-cost method of key information search and / or rule matching.
[0067] In some embodiments, the terminal device 110 can detect whether the execution conditions related to each working node are met by interacting with the target model (e.g., model 155) based on the second detection mode. In some embodiments, due to the simplicity and low cost of the first detection mode, the terminal device 110 can first detect whether the execution conditions are met based on the first detection mode. If it is impossible to determine whether the execution conditions are met based on the first detection mode, it can be based on the second detection mode to detect whether the execution conditions related to each working node are met with the help of model 155. This can help reduce the amount of computation of the terminal device 110 and improve detection efficiency.
[0068] In some embodiments where the second detection mode is used to detect whether the execution condition is satisfied, the terminal device 110 may obtain a second prompt word based on the first information. The first information here includes information used to detect whether the execution condition is satisfied. The terminal device 110 may interact with the model 155 based on the second prompt word, and detect whether the execution condition is satisfied based on the interaction results with the target model. In such embodiments, the information processing capabilities of the model may be used to help determine whether the execution condition is satisfied.
[0069] When detecting whether the execution conditions of each work node are met based on the first detection mode or the second detection mode, whether the execution conditions are met can be judged based on one or more of the first workflow itself, business knowledge information, known execution information, and user feedback.
[0070] In box 320, the terminal device 110 or the first digital assistant on the terminal device 110 obtains relevant information of the first working node in response to detecting that the execution condition of the first working node in the first workflow is met.
[0071] In some embodiments, the relevant information of the first work node may include business knowledge information corresponding to the first workflow and / or known execution information corresponding to the first work node. In some embodiments, the terminal device 110 may also pre-acquire business knowledge information corresponding to the first workflow. Such business knowledge information may, for example, be knowledge information that matches the business type of the first workflow. For example, if the first workflow is a business flow for hotel room inspection, its corresponding business knowledge information may include knowledge information on hotel management, room cleaning, equipment maintenance, and room management. The known execution information corresponding to the first work node may, for example, include the execution result of a task corresponding to at least one second work node on which the first work node depends. For example, if the first work node and the second work node are adjacent nodes and the first work node is located behind the second work node (i.e., the first work node depends on the second work node), the first work node may execute the task corresponding to the first work node only if the second work node completes the task corresponding to the second work node. In this case, the terminal device 110 may obtain the execution result of the second work node and determine it as the known execution information corresponding to the first work node.
[0072] In some embodiments, the detection of execution conditions, the acquisition of relevant information, and the subsequent determination and execution of tasks can all be performed by the first digital assistant in the terminal device 110. In this case, the terminal device 110 can receive the configuration operation of the first digital assistant by the first user. The configuration operation may, for example, include associating the first workflow with the first digital assistant. It is understood that only when the first workflow is associated with the first digital assistant can the first digital assistant detect whether the execution conditions of each work node in the first workflow are met. The configuration operation may, for example, also include associating the business knowledge information corresponding to the first workflow with the first digital assistant. Similarly, it is understood that only when the business knowledge information corresponding to the first workflow is associated with the first digital assistant can the first digital assistant directly obtain the business knowledge information and perform operations such as task determination based on the business knowledge information.
[0073] In the case where the detection of execution conditions, the acquisition of relevant information, and the subsequent determination and execution of tasks are all performed by the first digital assistant in the terminal device 110, the first digital assistant may also send information about the execution of the first workflow to the first user (i.e., the user corresponding to the terminal device 110, for example, the user using the terminal device 110). As a result, the first user can be aware of the execution of the first workflow at any time, which can improve the interaction experience between the first user and the digital assistant. In this case, the first digital assistant may also send a message to the first user instructing the first user to provide additional information about the first work node. For example, the first digital assistant may send a message instructing the first user to provide additional information about the first work node in the interaction window between the first user and the first digital assistant. The terminal device 110 may then obtain additional information based on multiple rounds of conversations between the first user and the first digital assistant. For another example, the terminal device 110 may also present operation controls, shortcut instructions, etc. associated with obtaining additional input in the interaction window between the first user and the first digital assistant. The terminal device 110 may determine that additional input has been obtained in response to detecting a trigger operation on the corresponding operation control / shortcut instruction, and then determine the additional information indicated by the additional input. The first digital assistant may include the additional information provided by the first user as part of the relevant information of the first working node.
[0074] In box 330, the terminal device 110 or the first digital assistant on the terminal device 110 determines at least one task to be performed based on the relevant information of the first working node.
[0075] In some embodiments, the terminal device 110 may determine at least one task to be performed corresponding to the first working node based on predetermined rules and relevant information of the first working node. As described above, the determination of the task may also be performed by the first digital assistant, which will not be repeated here. In some embodiments, the terminal device 110 may also use a target model to determine at least one task to be performed. Specifically, the terminal device 110 may determine a prompt word based on information related to the first working node, and send the prompt word to the target model. The terminal device 110 may receive a result returned by the target model containing information about at least one task to be performed. The terminal device 110 may determine the information of at least one task to be performed based on the result received from the target model, and then determine at least one task to be performed at the first working node. In some embodiments, the target model may be a machine learning model, a deep learning model, a learning model, a neural network, etc. In some embodiments, the target model may be based on a language model (LM). The language model can have question-and-answer capabilities by learning from a large amount of corpus. The target model may also be based on other appropriate models.
[0076] In some embodiments, the terminal device 110 may also determine at least one task to be executed and whether the at least one task is currently being executed based on the relevant information of the first working node. Exemplarily, if the known execution information corresponding to the first working node indicates that the task execution result corresponding to at least one second working node on which the first working node depends indicates that there is a second working node that has not yet completed the task and / or there is a second working node that has failed to execute the task, then the terminal device 110 may determine that the tasks corresponding to all the second working nodes must be completed first, and then the at least one task corresponding to the first working node must be executed. The terminal device 110 may determine to execute at least one task corresponding to the first working node in response to the known execution information corresponding to the first working node indicating that the task execution result corresponding to at least one second working node indicates that all the tasks corresponding to the at least one second working node have been completed.
[0077] In box 340, the terminal device 110 or the first digital assistant on the terminal device 110 performs at least a portion of at least one task, and / or assigns at least a portion of at least one task to a target execution entity.
[0078] In some embodiments, at least a portion of at least one task can be performed using the first digital assistant. In some embodiments, at least a portion of at least one task can be assigned to a target execution entity via the first digital assistant.
[0079] In some embodiments, at least one step of process 300 is performed by a first digital assistant. The at least one step of the method performed by the first digital assistant includes: determining a prompt word based on information related to the first workflow; interacting with the target model through the first digital assistant based on the prompt word; and executing at least one step based on the result of the interaction.
[0080] In some embodiments, the terminal device 110 may determine the target execution entity of each of the at least one task corresponding to the first working node. If the terminal device 110 determines that the execution entity of the at least one task is itself (that is, it is still the terminal device 110), the terminal device 110 may directly execute the at least one task. If the terminal device 110 determines that there is at least a portion of the at least one task that needs to be executed by the user / terminal device 110 / digital assistant, the terminal device 110 may assign the at least a portion of the task to its respective corresponding target execution entity. The target execution entity may be another user, another digital assistant, or another application.
[0081] Specifically, if the terminal device 110 determines that there is at least a part of the task that needs to be performed by the user, the terminal device 110 can determine the user associated with this at least part of the task (which may include the first user and other users other than the first user), and send a notification message to the user associated with this at least part of the task. The notification can indicate the at least part of the task that needs to be performed by the user. If the terminal device 110 determines that there is at least a part of the task that needs to be performed by other terminal devices 110, the terminal device 110 can also determine other terminal devices 110 associated with this at least part of the task (which may also be referred to as second terminal devices 110), and send a notification message to the second terminal device 110 indicating at least a part of the task that needs to be performed by the second terminal device 110. If the terminal device 110 determines that there is at least a part of the task that needs to be performed by other digital assistants, the terminal device 110 can also determine other digital assistants associated with this at least part of the task (which may also be referred to as second digital assistants).
[0082] It should be noted that the second digital assistant can be a digital assistant installed in the same terminal device 110 as the first digital assistant. For example, a first business component and a second business component can be installed in the terminal device 110, wherein the first business component is integrated with the first digital assistant, and the second business component is integrated with the second digital assistant. The second digital assistant can also be a digital assistant installed in a different terminal device 110 from the first digital assistant. For example, the first digital assistant is installed in the first terminal device 110, and the second digital assistant is installed in the second terminal device 110. The terminal device 110 can send a notification message to the determined second digital assistant indicating at least a portion of the task that needs to be performed by the second digital assistant.
[0083] For example, let's take the first workflow as the standard operating procedure for a hotel's guest room inspection business. If the terminal device 110 determines whether the execution conditions for the work node "maintaining the guest room shower system" are met, the terminal device 110 may determine that the guest room shower maintenance task corresponding to this work node needs to be executed. In response to determining that the task requires execution by the maintenance team, the terminal device 110 may send a notification message to the corresponding maintenance team, instructing them to execute the guest room shower maintenance task.
[0084] In some embodiments, the terminal device 110 may also track and record the execution result of at least one task corresponding to the first work node. For example, the terminal device 110 may also send the execution result of the at least one task to the first user so that the first user can know the execution status of the first workflow in real time.
[0085] In some embodiments, if it is determined that the execution conditions of other work nodes in the workflow are met, the terminal device 110 or the first digital assistant thereon may also execute the tasks corresponding to these work nodes according to a similar process, so that the tasks corresponding to each work node on the workflow are all checked and / or executed.
[0086] In summary, according to the embodiments of the present disclosure, the terminal device 110 can determine at least one task corresponding to the first work node in the workflow in response to the execution condition of the first work node being met. The terminal device 110 can also proactively execute the at least one task or assign the at least one task to a corresponding execution entity. This can enhance the intelligence, autonomy, and flexibility of the digital assistant and improve work efficiency in various business scenarios.
[0087] In addition to actively executing tasks according to the workflow, in some embodiments, the task triggering condition for the first digital assistant may include, for example, the first user receiving a notification message from the first business component. The first business component here may be, for example, a business component integrated with the first digital assistant. In this case, the terminal device 110 may determine that the task triggering condition related to the first digital assistant is met in response to detecting the notification information from the first business component. The notification message here may be a notification message of the business component itself, or a notification message sent by a contact in the business component. In some embodiments, when setting a task, the first user may instruct the first digital assistant to detect the notification message of the first business component. In some embodiments, when setting a task, the user may also define the type of notification message. In this case, the terminal device 110 may determine that the task triggering condition related to the first digital assistant is met in response to detecting a predetermined type of notification information from the first business component.
[0088] In some embodiments, the task triggering condition may include, for example, an event related to the first user occurring in the second business component. The second business component here may be the same business component as the first business component, or a different business component. The event related to the first user here may also be any appropriate event, such as a calendar event, time change event, message notification event, document change event, email sending and receiving event, task update event, etc. associated with the first user. When setting a task, the first user may indicate to the first digital assistant the second business component that needs to be detected, and the event to be detected in the second business component. In some embodiments, if the second business component is a business component different from the first business component, in order to obtain events related to the first user occurring in the second business component, the terminal device 110 may provide a business component program interface (API) and a development interface so that the second business component can be registered at the first digital assistant. For example, the first digital assistant can only obtain data from the registered second business component.
[0089] In some embodiments, the task triggering condition may include, for example, the arrival of a preset time. A task associated with the arrival of a preset event may be referred to as a timed task. In this case, the terminal device 110 may determine that the task triggering condition associated with the first digital assistant is satisfied in response to the current time arriving at the preset time.
[0090] It will be understood that some example task triggering conditions have been discussed above. In some embodiments, the task triggering conditions for certain tasks may also include a combination of one or more of the following: the first user receiving a notification message from the first business component, an event related to the first user occurring in the second business component, the arrival of a preset time, the satisfaction of the execution conditions of one or more work nodes in the preset workflow, etc. For example, the task triggering condition may include the arrival of a preset time, and the first user receiving a notification message from the first business component. It will be understood that the task triggering condition may also include any appropriate condition, which is not limited in this disclosure. The number of task triggering conditions related to the first digital assistant may depend on the settings of the first user for the first digital assistant, and different task triggering conditions may trigger the execution of one or more tasks.
[0091] In some embodiments, before detecting whether the task triggering condition is met, the terminal device 110 may also determine whether the active execution of the task function of the first digital assistant is enabled. If it is determined that the active execution of the task function is enabled, the terminal device 110 may determine that the first digital assistant can perform the detection of the task triggering condition and detect whether the task triggering condition related to the first digital assistant is met. If it is determined that the active execution of the task function is not enabled, the terminal device 110 may determine that the detection of the task triggering condition cannot be performed, that is, the terminal device 110 will not detect whether the task triggering condition related to the first digital assistant is met. In some embodiments, if it is determined that the active execution of the task function is not enabled, the terminal device 110 may also provide a prompt message to the first user to prompt that the active execution of the task function of the first digital assistant is not currently enabled. Exemplarily, the terminal device 110 may present a prompt message in the client interface of the digital assistant (e.g., the client interface presented by the terminal device 110). Regarding the activation method of the active execution of the task function of the first digital assistant, in some embodiments, the terminal device 110 may present a configuration page for configuring the first digital assistant. The configuration page may, for example, include an operation control for enabling the active execution of the task function. The terminal device 110 may determine to enable the active task execution function of the first digital assistant in response to detecting the trigger operation for the operation control. The server 130 may determine that the active task execution function of the first digital assistant is enabled through communication with the terminal device 110.
[0092] In some embodiments, the terminal device 110 may continuously detect whether one or more task triggering conditions associated with the first digital assistant are satisfied. In some embodiments, the terminal device 110 may detect whether the task triggering conditions are satisfied using a target model (e.g., model 155). In some embodiments, considering the resource and time overhead of model calls, the terminal device 110 may use different detection modes to detect whether the task triggering conditions are satisfied.
[0093] In some embodiments, the terminal device 110 can detect whether the task trigger condition is met based on a first detection mode, where the first detection mode includes other detection modes in addition to interaction with the target model. In some examples, the first detection mode may include performing a key information search on the first information, and the first information includes information for detecting whether the task trigger condition is met. For example, at least one keyword associated with the task trigger condition can be obtained. This at least one keyword can be determined by the first user, or it can be determined by the terminal device 110 based on the task trigger condition. The terminal device 110 can then search the first information based on keyword detection to see whether it contains one or more keywords associated with the task trigger condition, thereby detecting whether the task trigger condition related to the first digital assistant is met. In some embodiments, alternatively or additionally, the first detection mode also includes detecting whether the first information meets a preset rule. If the first information meets the preset rule, it can be determined that the task trigger condition related to the first digital assistant is met. That is, in the first detection mode, it is possible to determine whether the task trigger condition is met in a simple, low-cost manner using key information search and / or rule matching.
[0094] In some embodiments, the terminal device 110 can detect whether the task trigger condition related to the first digital assistant is met by interacting with the target model (e.g., model 155) based on the second detection mode. In some embodiments, due to the simplicity and low cost of the first detection mode, the terminal device 110 can first detect whether the task trigger condition is met based on the first detection mode. If it is impossible to determine whether the task trigger condition is met based on the first detection mode, it can be detected based on the second detection mode with the help of model 155 whether the task trigger condition related to the first digital assistant is met. This can help reduce the amount of computation of the terminal device 110 and improve detection efficiency.
[0095] In some embodiments where the task triggering condition is detected based on the second detection mode, the terminal device 110 may obtain a second prompt word based on the first information. The first information here includes information used to detect whether the task triggering condition is satisfied. The terminal device 110 may interact with the model 155 based on the second prompt word, and detect whether the task triggering condition is satisfied based on the interaction results with the target model. In such embodiments, the information processing capabilities of the model may be used to help determine whether the task triggering condition is satisfied.
[0096] When actively executing a task, such as actively executing the first task, the first task-related information obtained refers to information that can be used to determine which task to execute and how to execute the task. In some embodiments, the first task-related information can be obtained based on the task triggering condition itself. For example, if the task triggering condition is that the first user receives a notification message from the first business component, the first task-related information can be obtained based on the notification message from the first business component. The first task-related information may include the notification message itself, information mentioned or referenced in the notification message, and so on. The first task-related information may also include obtaining information required to execute the first task from a business object related to the first user in the first business component. If the task triggering condition is that an event related to the first user occurs in a second business component, the first task-related information may also include obtaining information required to execute the first task from a business object related to the first user in the second business component. In some embodiments, if the task triggering condition includes the occurrence of an event related to the first user in the second business component, the terminal device 110 may determine the first task based on the event and obtain task-related information for the first task.
[0097] Alternatively or additionally, the information related to the first task may also include information determined from at least one third business component other than the first business component or the second business component related to the task triggering condition. For example, the information required to perform the first task may be obtained based on the business object related to the first user in the at least one third business component. The business objects related to the first user may include, for example, documents, meetings, schedules, meeting minutes, etc. associated with the first user, depending on the type of business component. It should be noted that the business objects related to the first user in each of the business components relied upon are business objects that the first user has the authority to obtain. For example, if the business object is a document, the document is a document that the first user has the authority to obtain. This helps to protect the user's data security.
[0098] In some embodiments, the terminal device 110 may also obtain task-related information of the first task from the historical interaction information of the first user. That is, the terminal device 110 may determine the task-related information of the first task based on the historical interaction information between the first user and the first digital assistant.
[0099] In some embodiments, alternatively or additionally, the first task-related information may be obtained based on input information that causes the task triggering condition to be satisfied. The input information here may include user input, the first information mentioned above, and the like.
[0100] In some embodiments, alternatively or additionally, the first task-related information may be obtained based on a knowledge base associated with the task triggering condition. For example, different task triggering conditions may be associated with different businesses, and these businesses may have corresponding knowledge bases. Some or all of the information in the knowledge base may be determined as the first task-related information to be used in determining which task to perform and how to perform the task.
[0101] In some embodiments, as mentioned above, the first digital assistant can also be associated with a preset workflow, and whether the execution conditions of one or more work nodes are met is determined based on the preset workflow. When the first digital assistant is associated with a preset workflow, it can also obtain information related to the first task based on the known execution information of one or more work nodes in the preset workflow. Usually, in a workflow, whether a task at one or some work nodes is to be executed and / or how it is to be executed may need to be judged based on the execution status of the previous work node. In particular, if a work node has multiple task branches, it is necessary to determine which task branch to execute subsequently based on the execution status of the previous work node.
[0102] Note that in each embodiment, the task-related information obtained is information that the first user corresponding to the first digital assistant has permission to obtain, and the first user authorizes the terminal device 110 or the first digital assistant to obtain. Such information acquisition must comply with the requirements of relevant laws, regulations and relevant provisions, and obtain valid authorization from the corresponding right holder.
[0103] After obtaining the relevant information of the first task, the attribute information of the first task is determined based on the obtained relevant information of the first task. The attribute information of the first task may include the type of the first task, that is, what kind of task is to be performed. The attribute information of the first task may also include parameter information related to the execution of the first task, plug-in information or application development interface (API) information for executing the first task. For example, the type of the first task may indicate the creation of a schedule, and the parameter information may indicate the time, participants, location, etc. of the schedule to be created. In some embodiments, the plug-in information or API information in the attribute information may indicate the plug-in that needs to be called or the interface to be called when executing the first task. Based on the attribute information of the first task, it can be determined what kind of task is to be performed and how the task is to be performed. The attribute information of the first task may also include other types of information, as long as these types of information can be used to specify the specific execution method of the first task to be performed.
[0104] In some embodiments, to determine the attribute information of the first task, the terminal device 110 or the first digital assistant on the terminal device 110 can obtain a first prompt word based on the information related to the first task and send the first prompt word to the model 155. After obtaining feedback from the model 155, the attribute information of the first task is determined based on the feedback. In other words, the model can be used to analyze the prompt word obtained based on the information related to the first task, thereby determining the type, parameter information, plug-in information, API information, etc. of the task that the first digital assistant needs to actively perform.
[0105] In some embodiments, the terminal device 110 may pre-acquire a task corresponding to a task triggering condition. The terminal device 110 may store the task triggering condition and the corresponding task in association. The terminal device 110 may then obtain task-related information based on the corresponding task in response to the task triggering condition being satisfied. For example, the terminal device 110 may respond to receiving a conversation message from the first user in the conversation window between the first user and the first digital assistant, "Whenever I receive a customer complaint email, remind me and prepare a reply email." The terminal device 110 may determine that the task triggering condition is "received a customer complaint email," and the task corresponding to the task triggering condition is "remind the first user and prepare a reply email." The terminal device 110 may then obtain information related to preparing a reply email. That is, in this case, the terminal device 110 may directly determine the task to be performed that matches the task triggering condition based on the task triggering condition. The task to be performed may also be referred to as the first task.
[0106] In some embodiments, the terminal device 110 may also only obtain the task triggering condition. The terminal device 110 may determine the task to be performed based on the task triggering condition in response to the task triggering condition being met. For example, if the task triggering condition includes the first user receiving a notification message from the first business component, the terminal device 110 may determine the first task based on the notification message and obtain attribute information of the first task (e.g., information required to perform the first task). In other words, the satisfaction of a specific task triggering condition is used to trigger the terminal device 110 to obtain attribute information to determine whether the task needs to be performed and what specific task to perform. For example, if the first business component is a chat business component, the terminal device 110 may determine that the task triggering condition related to the first digital assistant is met in response to receiving a notification message (e.g., a message "Send me a project evaluation") sent by another user to the first user in the first business component. The terminal device 110 may determine, based on the notification message, that the first task is to prepare a project evaluation report. The terminal device 110 may then obtain information related to the preparation of a project evaluation report (e.g., project data for different users).
[0107] Regarding the specific method for determining the first task based on the notification message, in some embodiments, similar to determining the task triggering condition, the terminal device 110 can determine a prompt word based on information related to the notification message, send the prompt word to the target model, and receive a result returned by the target model. The returned result includes information about the first task to be executed. Alternatively or additionally, in some embodiments, the terminal device 110 can also determine the first task that matches the notification message based on predetermined rules.
[0108] As described above, after the task is completed, the first digital assistant may notify the first user of the execution result of the first task. For example, the terminal device 110 may notify the first user of the execution result of the first task by sending a notification message indicating the execution result of the first task in the interaction window between the first user and the first digital assistant.
[0109] Taking the task trigger condition that the first user receives a notification message from the first business component, and the terminal device 110 determines that the execution process of the first task requires additional input from the first user as an example, if the notification message indicates that the first user needs to complete a project evaluation of a certain object, the terminal device 110 can determine that the task trigger condition is met in response to receiving the notification message. The terminal device 110 can determine based on the notification information that the first task is to prepare a project report for a certain object. The terminal device 110 can then proactively prepare a draft project report based on the work output of a certain object in the past six months. The project report of a certain object in the past six months here can be determined by the terminal device 110 based on multiple rounds of dialogue between the first digital assistant and the first user. The terminal device 110 can send a notification message prompting the first user to complete the task and attach a project report in the interaction window between the first user and the first digital assistant.
[0110] Taking the task trigger condition that the first user receives a notification message from the first business component, and the terminal device 110 determines that the execution process of the first task does not require additional input from the first user as an example, if the notification message indicates that a new customer intention has been discovered, the first user is requested to follow up. The terminal device 110 can determine that the task trigger condition is met in response to receiving the notification message. Based on the notification information, the terminal device 110 can determine that the first task is to formulate an email to be sent to the new customer. The terminal device 110 can organize the new customer's information and draft an email according to a predetermined process. The new customer's information here can be obtained by the terminal device 110 from a business object related to the first user in at least one third business component. The terminal device 110 can send a notification message prompting the first user to complete the task in the interaction window between the first user and the first digital assistant, and attach the new customer's information and the email draft.
[0111] In summary, according to the embodiments of the present disclosure, the terminal device 110 can, in response to the satisfaction of a task trigger condition related to the digital assistant, proactively execute the task indicated by the task trigger condition and notify the user of the execution result. This can enhance the intelligence and autonomy of the digital assistant, increase the flexibility of the digital assistant's use, and help improve the working efficiency of the digital assistant.
[0112] It should be understood that some embodiments of the above-described processes 200 and 300 may be implemented together or separately on a terminal device 110 of a certain user.
[0113] 4 shows a block diagram of an apparatus 400 for task processing according to some embodiments of the present disclosure. The apparatus 400 may be implemented in or included in the terminal device 110. Each module / component in the apparatus 400 may be implemented by hardware, software, firmware, or any combination thereof.
[0114] As shown in the figure, the device 400 includes a trigger detection module 410, which is configured to detect whether a task trigger condition related to the first digital assistant is satisfied. The device 400 also includes a task execution module 420, which is configured to start the execution of the task related to the first digital assistant in response to the task trigger condition being satisfied. Task execution includes: obtaining information related to the first task; based on the obtained information related to the first task, performing at least one of the following by interacting with the target model: obtaining attribute information of the first task; executing the first task based on the attribute information of the first task.
[0115] In some embodiments, the task execution module 420 includes: a first prompt word sending module, configured to send a first prompt word obtained based on the first task-related information to the target model; obtain feedback from the target model; and an attribute determination module, configured to determine the attribute information of the first task based on the feedback.
[0116] In some embodiments, the task execution module 420 is configured to: obtain the first task-related information based on at least one of the following information associated with the task trigger condition: the task trigger condition itself; the input information that causes the task trigger condition to be satisfied; the knowledge base associated with the task trigger condition; when the first digital assistant is associated with a preset workflow, the known execution information of one or more work nodes in the preset workflow.
[0117] In some embodiments, the trigger detection module 410 includes: a function enablement determination module, configured to determine whether the active task execution function of the first digital assistant is enabled; and a post-enablement detection module, configured to detect whether the task trigger condition related to the first digital assistant is met in response to determining that the active task execution function is enabled.
[0118] In some embodiments, the trigger detection module 410 includes at least one of the following: a first detection module, configured to detect whether the task trigger condition is met based on a first detection mode, wherein the first detection mode includes other detection modes in addition to interaction with the target model; and a second detection module, configured to detect whether the task trigger condition is met through interaction with the target model based on the second detection mode.
[0119] In some embodiments, the first detection mode includes at least one of the following: performing a key information search on first information, the first information including information for detecting whether the task triggering condition is met; detecting whether the first information meets a preset rule.
[0120] In some embodiments, the first detection module is configured to: in response to being unable to determine whether the task triggering condition is satisfied based on the first detection mode, detect whether the task triggering condition is satisfied based on the second detection mode.
[0121] In some embodiments, the second detection module is configured to: obtain a second prompt word based on first information, wherein the first information includes information for detecting whether the task trigger condition is met; interact with the target model based on the second prompt word; and detect whether the task trigger condition is met based on the interaction result with the target model.
[0122] In some embodiments, the attribute information of the first task includes at least one of the following: the type of the first task; parameter information related to the execution of the first task; plug-in information or application open interface information for executing the first task.
[0123] In some embodiments, the task triggering condition includes one or more of the following: a first user associated with the first digital assistant receives a notification message from a first business component; an event related to the first user occurs in a second business component; a preset time arrives; or the execution conditions of one or more work nodes in a preset workflow are met.
[0124] In some embodiments, the task execution module 420 includes at least one of the following: a first information acquisition module, configured to obtain information related to the first task based on the notification message from the first business component; a second information acquisition module, configured to obtain information required to execute the first task from business objects related to the first user in at least one of the following business components: the first business component, the second business component, and at least one third business component; a third information acquisition module, configured to obtain information related to the first task from historical interaction information of the first user.
[0125] In some embodiments, the task execution module 420 includes: an indication occurrence module, configured to send a message to a first user associated with the first digital assistant, instructing the first user to provide additional information about the first task; an additional information receiving module, configured to receive the additional information provided by the first user; and an additional execution module, configured to execute the first task based on the attribute information of the first task and the additional information.
[0126] In some embodiments, the message is sent and the additional information is received in an interaction window between the first user and the first digital assistant.
[0127] In some embodiments, the execution of the first task does not require additional input from the first user.
[0128] In some embodiments, the device 400 also includes: a user input receiving module, configured to receive at least one user input of the first user to the first digital assistant; and a trigger condition determination module, configured to determine the task trigger condition from the at least one user input.
[0129] In some embodiments, the first digital assistant is associated with a preset workflow, and the preset workflow includes multiple work nodes. The trigger detection module 410 includes: a work node detection module, configured to detect whether the execution condition of each work node in the multiple work nodes is met based on at least one of the following information related to the preset workflow: the preset workflow itself, business knowledge information corresponding to the preset workflow, known execution information of one or more work nodes in the multiple work nodes, and user feedback related to one or more work nodes in the multiple work nodes.
[0130] In some embodiments, the work node detection module includes at least one of the following: a first detection module, configured to detect whether the execution conditions of each work node among the multiple work nodes are met based on a first detection mode, using at least one of the following: the preset workflow itself, the known execution information, and the user feedback; a second detection module, configured to interact with the target model based on a second detection mode, based on at least one of the following to detect whether the execution conditions of each work node among the multiple work nodes are met: the business knowledge information, the known execution information, and the user feedback.
[0131] In some embodiments, the task execution module 420 includes: a node task execution module, configured to execute at least one task corresponding to the first working node in the preset workflow in response to detecting that the execution condition of the first working node is met.
[0132] In some embodiments, the node task execution module includes: an assistant execution module, configured to use the first digital assistant to execute at least part of the at least one task, and / or, a task assignment module, configured to assign at least part of the at least one task to a target execution entity through the first digital assistant.
[0133] In some embodiments, the device 400 also includes: an information storage module, configured to store corresponding registration information of at least one business component registered with the first digital assistant, the corresponding registration information of the at least one business component respectively including trigger conditions; and a notification sending module, configured to send notification information by the first digital assistant to the first business component corresponding to the first registration information in response to detecting that the first trigger condition in the first registration information is met, wherein the notification information indicates that the first trigger condition is met.
[0134] In some embodiments, the apparatus 400 further includes: an execution result notification module configured to utilize the first digital assistant to notify the first user of the execution result of the first task.
[0135] 5 shows a block diagram of an apparatus 500 for task processing according to some embodiments of the present disclosure. The apparatus 500 may be implemented in or included in the terminal device 110. Each module / component in the apparatus 500 may be implemented by hardware, software, firmware, or any combination thereof.
[0136] As shown in the figure, the device 500 includes an execution condition detection module 510, which is configured to detect whether the execution conditions of each work node in the first workflow are met, wherein the first workflow includes multiple work nodes. The device 500 also includes a relevant information acquisition module 520, which is configured to obtain relevant information of the first work node in response to detecting that the execution conditions of the first work node in the first workflow are met. The device 500 also includes a task determination module 530, which is configured to determine at least one task to be executed based on the relevant information of the first work node. The device 500 also includes a task processing module 540, which is configured to execute at least a portion of at least one task and / or assign at least a portion of at least one task to a target execution entity.
[0137] In some embodiments, the information related to the first work node includes one or more of the following: business knowledge information corresponding to the first workflow; known execution information corresponding to the first work node.
[0138] In some embodiments, the known execution information corresponding to the first working node includes at least: a task execution result corresponding to at least one second working node on which the first working node depends.
[0139] In some embodiments, the execution condition detection module 510 is configured to detect whether the execution condition of each work node among the multiple work nodes is met based on at least one of the following information related to the first workflow: the first workflow itself, the business knowledge information corresponding to the first workflow, the known execution information of one or more work nodes among the multiple work nodes, and user feedback related to one or more work nodes among the multiple work nodes.
[0140] In some embodiments, the execution condition detection module 510 is configured to perform at least one of the following: based on the first detection mode, use at least one of the following to detect whether the execution conditions of each work node in a plurality of work nodes are met: the first workflow itself, known execution information, and user feedback; based on the second detection mode, interact with the target model based on at least one of the following to detect whether the execution conditions of each work node in a plurality of work nodes are met: business knowledge information, known execution information, and user feedback.
[0141] In some embodiments, the task determination module 530 is further configured to determine a prompt word based on information related to the first working node; send the prompt word to the target model; and receive a result returned by the target model, wherein the returned result includes information about at least one task to be performed.
[0142] In some embodiments, the apparatus 500 may include a first digital assistant. At least one step performed by the apparatus 500 is performed by the first digital assistant.
[0143] In some embodiments, at least one step performed by the first digital assistant includes: determining a prompt word based on information related to the first workflow; interacting with the target model through the first digital assistant based on the prompt word; and performing at least one step based on the interaction result.
[0144] In some embodiments, the device 500 also includes one or more of the following: an information sending module, configured to allow the first digital assistant to send execution status information about the first workflow to the first user; an information providing module, configured to allow the first digital assistant to send a message to the first user instructing the first user to provide additional information about the first work node, and to use the additional information provided by the first user as part of the relevant information of the first work node.
[0145] In some embodiments, the device 500 also includes: an operation receiving module, configured to receive the configuration operation of the first user on the first digital assistant, the configuration operation including one or more of the following: associating the first workflow with the first digital assistant; and associating the business knowledge information corresponding to the first workflow with the first digital assistant.
[0146] In some embodiments, the task processing module 540 is further configured to: send a notification message to a user associated with at least one task, the notification message indicating at least a portion of the at least one task; and send at least a portion of the at least one task to a target business component or a second digital assistant.
[0147] In some embodiments, the first workflow comprises a standard operating procedure (SOP) of the first business.
[0148] It should be understood that the above apparatus 400 and / or apparatus 500 can be implemented in the same apparatus or device. One or more steps in the process discussed above can be performed by an appropriate electronic device or combination of electronic devices. Such an electronic device or combination of electronic devices can, for example, include the server 130, the terminal device 110, and / or the combination of the server 130 and the terminal device 110 in FIG. 1 .
[0149] Figure 6 shows a block diagram of an electronic device 600 in which one or more embodiments of the present disclosure may be implemented. It should be understood that the electronic device 600 shown in Figure 6 is merely exemplary and should not be construed as limiting the functionality and scope of the embodiments described herein. The electronic device 600 shown in Figure 6 can be used to implement the terminal device 110 of Figure 1, the apparatus 400 shown in Figure 4, and / or the apparatus 500 shown in Figure 5.
[0150] As shown in FIG6 , electronic device 600 is a general-purpose electronic device. Components of electronic device 600 may include, but are not limited to, one or more processors or processing units 610, memory 620, storage device 630, one or more communication units 640, one or more input devices 650, and one or more output devices 660. Processing unit 610 may be a real or virtual processor and is capable of performing various processes according to programs stored in memory 620. In a multi-processor system, multiple processing units execute computer-executable instructions in parallel to enhance the parallel processing capabilities of electronic device 600.
[0151] The electronic device 600 typically includes a plurality of computer storage media. Such media can be any available media accessible to the electronic device 600, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 620 can be a volatile memory (e.g., registers, cache, random access memory (RAM)), a non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 630 can be a removable or non-removable medium and can include a machine-readable medium, such as a flash drive, a disk, or any other medium that can be used to store information and / or data and can be accessed within the electronic device 600.
[0152] The electronic device 600 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not shown in FIG6 , a disk drive for reading or writing from a removable, non-volatile disk (e.g., a “floppy disk”) and an optical drive for reading or writing from a removable, non-volatile optical disk may be provided. In these cases, each drive may be connected to a bus (not shown) by one or more data media interfaces. The memory 620 may include a computer program product 625 having one or more program modules configured to perform various methods or actions of various embodiments of the present disclosure.
[0153] The communication unit 640 enables communication with other electronic devices via a communication medium. Additionally, the functions of the components of the electronic device 600 can be implemented in a single computing cluster or multiple computing machines that can communicate via a communication connection. Thus, the electronic device 600 can operate in a networked environment using a logical connection with one or more other servers, a network personal computer (PC), or another network node.
[0154] The input device 650 may be one or more input devices, such as a mouse, keyboard, or trackball. The output device 660 may be one or more output devices, such as a display, a speaker, or a printer. The electronic device 600 may also communicate with one or more external devices (not shown) through the communication unit 640 as needed, such as a storage device, a display device, or the like, with one or more devices that allow a user to interact with the electronic device 600, or with any device that allows the electronic device 600 to communicate with one or more other electronic devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).
[0155] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, wherein 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 also provided, which 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.
[0156] Various aspects of the present disclosure are described herein with reference to flowcharts and / or block diagrams of methods, apparatuses, devices, and computer program products implemented according to the present disclosure. It should be understood that each block of the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by computer-readable program instructions.
[0157] 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 generated that implements the functions / actions specified in one or more blocks in the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium, where these instructions cause the computer, programmable data processing device, and / or other device to operate in a specific manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing various aspects of the functions / actions specified in one or more blocks in the flowchart and / or block diagram.
[0158] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0159] The flow charts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the systems, methods and computer program products according to multiple implementations of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a part for a module, program segment or instruction, and a part for a module, program segment or instruction comprises one or more executable instructions for realizing the logical function of the specification. In some alternative implementations, the functions marked in the box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be realized by a special hardware-based system that performs the function or action of the specification, or can be realized by a combination of special hardware and computer instructions.
[0160] While various implementations of the present disclosure have been described above, the foregoing description is intended to be illustrative, not exhaustive, and not 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 selected to best explain the principles of the implementations, their practical applications, or improvements to existing technologies, or to enable others skilled in the art to understand the various implementations disclosed herein.
Claims
1. A task processing method, comprising: Detecting whether an execution condition of each work node in a first workflow is satisfied, wherein the first workflow includes a plurality of work nodes; In response to detecting that an execution condition of a first working node in a first workflow is satisfied, obtaining relevant information of the first working node; Determining at least one task to be performed based on the relevant information of the first working node; and Execute at least a portion of the at least one task, and / or assign at least a portion of the at least one task to a target execution entity.
2. The method according to claim 1, wherein: The information related to the first working node includes one or more of the following: business knowledge information corresponding to the first workflow; The known execution information corresponding to the first working node.
3. The method according to claim 2, wherein the known execution information corresponding to the first working node at least includes: The task execution result corresponding to at least one second working node that the first working node depends on.
4. The method according to claim 1, wherein detecting whether the execution conditions of each working node in the first workflow are satisfied comprises Based on at least one of the following information related to the first workflow, detecting whether an execution condition of each of the multiple working nodes is satisfied: The first workflow itself, The business knowledge information corresponding to the first workflow, known execution information of one or more working nodes among the plurality of working nodes, User feedback related to one or more of the plurality of worker nodes.
5. The method according to claim 4, wherein detecting whether the execution condition of each of the plurality of working nodes is satisfied comprises at least one of the following: Based on the first detection mode, at least one of the following is used to detect whether the execution condition of each work node among the multiple work nodes is satisfied: the first workflow itself, the known execution information, and the user feedback; Based on the second detection mode, the target model is interacted with to detect whether the execution condition of each working node among the multiple working nodes is satisfied based on at least one of the following: the business knowledge information, the known execution information, and the user feedback.
6. The method according to claim 1, wherein: Determining at least one task to be performed based on the relevant information of the first working node includes: Determine a prompt word based on the information related to the first working node; Sending the prompt word to the target model; and A result returned by the target model is received, wherein the returned result includes information of at least one task to be executed.
7. The method according to any one of claims 1 to 6, wherein: At least one step in the method is performed by a first digital assistant.
8. The method of claim 7, wherein the at least one step of the method performed by the first digital assistant comprises: Determining a prompt word based on the information related to the first workflow; Based on the prompt word, interact with the target model through the first digital assistant; as well as The at least one step is performed based on the interaction result.
9. The method according to claim 7, wherein: The method may further include one or more of the following: The first digital assistant sends execution status information about the first workflow to the first user; The first digital assistant sends a message to the first user instructing the first user to provide additional information about the first working node, and uses the additional information provided by the first user as part of the relevant information of the first working node.
10. The method according to claim 7, wherein: The method further comprises: Receive a configuration operation of the first user on the first digital assistant, where the configuration operation includes one or more of the following: Associating the first workflow with the first digital assistant; and Associate the business knowledge information corresponding to the first workflow with the first digital assistant.
11. The method according to claim 1, wherein allocating at least a portion of the at least one task to a target execution subject comprises at least one of the following: sending a notification message to a user associated with the at least one task, the notification message indicating at least a portion of the at least one task; Send at least a portion of the at least one task to a target business component or a second digital assistant.
12. The method of claim 1, wherein the first workflow comprises a standard operating procedure (SOP) of a first business.
13. A device for task processing, comprising: An execution condition detection module is configured to detect whether an execution condition of each work node in a first workflow is satisfied, wherein the first workflow includes a plurality of work nodes; A related information acquisition module, configured to acquire related information of a first working node in a first workflow in response to detecting that an execution condition of the first working node is satisfied; a task determination module, configured to determine at least one task to be performed based on relevant information of the first working node; and The task processing module is configured to execute at least a part of the at least one task and / or allocate at least a part of the at least one task to a target execution entity.
14. An electronic device comprising: at least one processing unit; as well as At least one memory, the at least one memory being coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions causing the electronic device to perform the method according to any one of claims 1 to 12 when executed by the at least one processing unit.
15. A computer-readable storage medium having a computer program stored thereon, wherein the computer program can be executed by a processor to implement the method according to any one of claims 1 to 12.
16. A computer program product, comprising a computer program, wherein the computer program implements the method according to any one of claims 1 to 12 when executed by a processor.
Citation Information
Patent Citations
Distributed workflow scheduling method and device, storage medium and electronic equipment
CN111950988A
Workflow scheduling method, device and equipment and readable storage medium
CN114035925A
Operation method and device of workflow instance, electronic equipment and storage medium
CN114862368A
Business process execution method, device and equipment and computer readable storage medium
CN116257310A
Digital assistant using robotic process automation
US20230101223A1