Method, apparatus, device and medium for managing workflow

By introducing workflow management methods into the digital assistant creation platform, allowing users to define workflows with multiple sequential operations and call machine learning models, it solves the problem that digital assistants are difficult to deal with complex logical tasks, and achieves higher accuracy and Development efficiency.

CN118409681BActive Publication Date: 2025-02-07BEIJING ZITIAO NETWORK TECH CO LTD

Patent Information

Application Number
CN202311415869.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-10-27
Publication Date
2025-02-07
Estimated Expiration
2043-10-27

AI Technical Summary

Technical Problem

Digital assistants have difficulty handling tasks with complex logic, resulting in poor accuracy when handling complex tasks.

Method used

By introducing workflow management methods into the creation platform of digital assistants, users allow users to define workflows that operate in multiple sequential orders and call the powerful processing power of machine learning models in the workflow.

Benefits of technology

Reduces the complexity of digital assistants, simplifies the development process, and improves the accuracy and efficiency of handling complex tasks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118409681B_ABST
    Figure CN118409681B_ABST
Patent Text Reader

Abstract

Methods, devices, equipment and media for managing workflows are provided. In one method, in response to receiving a creation request, a page for creating a workflow is presented, the workflow is used to define multiple sequential operations in a predetermined task, and the page includes: a first area for providing multiple nodes, and a second area for providing content of the workflow, the multiple nodes including a model node for calling a machine learning model. In response to receiving an interaction request for the page, the workflow is managed based on the interaction request. The powerful processing power of the machine learning model is allowed to be called in the workflow to complete the predetermined task.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Exemplary embodiments of the present disclosure generally relate to the field of computers, and more particularly, to a method, an apparatus, a device, and a computer-readable storage medium for managing a workflow. Background Art

[0002] Digital assistants are provided to assist users with various task processing needs in different applications and scenarios. Digital assistants usually have intelligent dialogue and task processing capabilities. During the interaction with the digital assistant, the user inputs an interactive message, and the digital assistant provides a reply message in response to the user input. Generally, digital assistants are able to support users to input questions in natural language, and perform tasks and provide replies based on the understanding of natural language input and logical reasoning ability. However, digital assistants are usually unable to handle tasks involving complex logic, which results in the digital assistant's accuracy in handling complex tasks being unsatisfactory. Summary of the invention

[0003] In a first aspect of the present disclosure, in an application environment for creating a digital assistant, a method for managing a workflow is provided. In the method, in response to receiving a creation request, a page for creating a workflow is presented, the workflow is used to define multiple sequential operations in a predetermined task, and the page includes: a first area for providing multiple nodes, and a second area for providing content of the workflow, the multiple nodes including a model node for calling a machine learning model. In response to receiving an interaction request for the page, the workflow is managed based on the interaction request.

[0004] In a second aspect of the present disclosure, in an application environment for creating a digital assistant, a device for managing a workflow is provided. The device includes: a presentation module configured to present a page for creating a workflow in response to receiving a creation request, the workflow is used to define multiple sequential operations in a predetermined task, the page includes: a first area for providing multiple nodes, and a second area for providing content of the workflow, the multiple nodes include a model node for calling a machine learning model; and a management module configured to manage the workflow based on the interaction request in response to receiving an interaction request for the page.

[0005] In a third aspect of the present disclosure, an electronic device is provided. The electronic device includes: at least one processing unit; and at least one memory, the at least one memory is coupled to the at least one processing unit and stores instructions for execution by the at least one processing unit, and when the instructions are executed by the at least one processing unit, the electronic device executes the method according to the first aspect of the present disclosure.

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

[0007] In a fifth aspect of the present disclosure, a method for creating a digital assistant is provided. In the method, a page for creating a digital assistant is presented. In response to receiving an add request in the page, a management page for adding a workflow to the digital assistant is presented, the workflow is used to define multiple sequential operations in a predetermined task, and the management page includes: a first area for providing multiple nodes, and a second area for providing content of the workflow, the multiple nodes including a model node for calling a machine learning model. In response to receiving an interaction request for the management page, the workflow is managed based on the interaction request.

[0008] It should be understood that the contents described in this content section are not intended to limit the key features or important features of the embodiments of the present disclosure, nor are they 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

[0009] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent in 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:

[0010] Figure 1 A block diagram showing an application environment in which an exemplary embodiment according to the present disclosure may be implemented;

[0011] Figure 2 A block diagram for managing workflow according to some embodiments of the present disclosure is shown;

[0012] Figure 3 A block diagram showing an example of a start node in a workflow according to some embodiments of the present disclosure;

[0013] Figure 4 A block diagram showing an example of an end node in a workflow according to some embodiments of the present disclosure;

[0014] Figure 5 A block diagram for adding a node instance to a workflow according to some embodiments of the present disclosure is shown;

[0015] Figure 6 A block diagram showing a model node instance in a workflow according to some embodiments of the present disclosure;

[0016] Figure 7A block diagram for establishing a connection relationship between different node instances according to some embodiments of the present disclosure is shown;

[0017] Figure 8 A block diagram showing a workflow including multiple node instances according to some embodiments of the present disclosure;

[0018] Fig. 9 A block diagram showing input data for setting a workflow according to some embodiments of the present disclosure is shown;

[0019] Fig.10 A block diagram for testing a workflow according to some embodiments of the present disclosure is shown;

[0020] Fig.11 A flowchart of a method for managing a workflow according to some embodiments of the present disclosure is shown;

[0021] Fig.12 A block diagram showing an apparatus for managing a workflow according to some embodiments of the present disclosure; and

[0022] Fig.13 A block diagram of a device capable of implementing various embodiments of the present disclosure is shown. DETAILED DESCRIPTION

[0023] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as being limited to the embodiments set forth herein. On the contrary, 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 only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.

[0024] In the description of the embodiments of the present disclosure, the term "including" and similar terms should be understood as open inclusion, that is, "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 also be included below.

[0025] Herein, unless explicitly stated, executing a step “in response to A” does not mean executing the step immediately after “A” but may include one or more intermediate steps.

[0026] 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.

[0027] It is understandable that before using the technical solutions disclosed in the various embodiments of the present disclosure, the types, scopes of use, usage scenarios, etc. of the information involved in the present disclosure should be informed to relevant users and their authorization should be obtained 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.

[0028] 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 software or hardware such as an electronic device, application, server or storage medium that executes the operation of the technical solution of the present disclosure based on the prompt message.

[0029] As an optional but non-limiting embodiment, in response to receiving an active request from a relevant user, the method of sending the prompt information to the relevant user may be, for example, a pop-up window, in which the prompt information may be presented in text form. In addition, the pop-up window may also carry a selection control for the user to select "agree" or "disagree" to provide information to the electronic device.

[0030] It is understandable that the above notification and the process of obtaining user authorization are merely illustrative and do not constitute a limitation on the embodiments of the present disclosure. Other methods that meet relevant laws and regulations may also be applied to the embodiments of the present disclosure.

[0031] As used herein, the term "model" can learn the association between the corresponding input and output from the training data, so that after the training is completed, the corresponding output can be generated for a given input. The generation of the model can be based on machine learning technology. Deep learning is a machine learning algorithm that processes inputs and provides corresponding outputs by using multi-layer processing units. A neural network model is an example of a model based on deep learning. In this article, "model" may also be referred to as "machine learning model", "learning model", "machine learning network" or "learning network", and these terms are used interchangeably in this article.

[0032] Digital assistants can be used as tools for people to work, study and live effectively. Generally, the development of digital assistants is similar to the development of general applications. Developers with programming skills are required to define the various capabilities of digital assistants by writing complex codes and deploying digital assistants on appropriate operating platforms so that users can download, install and use digital assistants.

[0033] As application scenarios become more diverse and machine learning technology becomes more available, we expect to develop more digital assistants with different capabilities to support task processing in various segments or to meet the personalized needs of different users. However, due to limited programming capabilities and limited understanding of the underlying implementation logic of digital assistants, users cannot freely and conveniently create different digital assistants. We expect to provide a more convenient and flexible way to create digital assistants so that more users can configure the digital assistants they want.

[0034] Example Environment

[0035] Therefore, by providing a modular, simple and free-input digital assistant creation solution, users can easily and quickly define digital assistants with different capabilities without requiring code writing skills.

[0036] Figure 1 A block diagram 100 of an application environment in which an exemplary embodiment according to the present disclosure can be implemented is shown. The environment 100 involves an assistant creation platform 110 and an assistant application platform 130.

[0037] like Figure 1 As shown, the assistant creation platform 110 can provide a digital assistant creation and publishing environment for the user 105. In some embodiments, the assistant creation platform 110 can be a low-code platform that provides a collection of tools for digital assistant creation. The assistant creation platform 110 can support the visual development of digital assistants, so that developers can skip the manual coding process and speed up the development cycle and cost of applications. The assistant creation platform 110 can support any appropriate platform for users to develop digital assistants and other types of applications, for example, it may include a platform based on application platform as a service (aPaaS). Such a platform can support users to efficiently develop applications and realize operations such as application creation and application function adjustment.

[0038] The assistant creation platform 110 can be deployed locally on the terminal device of the user 105, and / or can be supported by a remote server. For example, the terminal device of the user 105 can run a client of the assistant creation platform 110, which can support the interaction between the user and the assistant creation platform 110. In the case where the assistant creation platform 110 runs locally on the user's terminal device, the user 105 can directly use the client to interact with the local assistant creation platform 110. In the case where the assistant creation platform 110 runs on a server-side device, the server-side device can, based on the communication connection with the terminal device, realize the supply of services to the client running in the terminal device. The assistant creation platform 110 can present a corresponding page 122 to the user 105 based on the operation of the user 105, so as to output and / or receive information to the user 105.

[0039] In some embodiments, the assistant creation platform 110 can be associated with a corresponding database, which stores the data or information required for the digital assistant creation process supported by the assistant creation platform 110. For example, the database can store the code and description information corresponding to each functional module that constitutes the digital assistant. The assistant creation platform 110 can also perform operations such as calling, adding, deleting, and updating the functional modules in the database. The database can also store operations that can be performed on different functional modules. Exemplarily, in a scenario where an application 150 is to be created, the assistant creation platform 110 can call the corresponding functional blocks from the database to build the application 150.

[0040] In an embodiment of the present disclosure, a user 105 can create a digital assistant 120 as needed on an assistant creation platform 110 and publish the digital assistant 120. The digital assistant 120 can be published to any appropriate assistant application platform 130, as long as the assistant application platform 130 can support the operation of the digital assistant 120. After publishing, the digital assistant 120 can be used for dialogue interaction with the user 135. The client of the assistant creation platform 110 can present an interactive window 132 of the digital assistant 120, such as a conversation window, in the client interface. As an intelligent assistant, the digital assistant 120 has intelligent dialogue and information processing capabilities. The user 140 can enter a conversation message in the conversation window, and the digital assistant 120 can determine the reply message based on the created configuration information and present it to the user in the interactive window 132. In some embodiments, depending on the configuration of the digital assistant 120, the interactive message with the digital assistant 120 may include a message in a multimodal form, such as a text message (e.g., natural language text), a voice message, an image message, a video message, and the like.

[0041] The assistant creation platform 110 and / or the assistant application platform 130 can be run on appropriate electronic devices. The electronic device here can be any type of device with computing power, including terminal devices or server devices. The terminal device can be any type of mobile terminal, fixed terminal or portable terminal, including mobile phones, desktop computers, laptop computers, notebook computers, netbook computers, tablet computers, media computers, multimedia tablets, personal communication systems (PCS) devices, personal navigation devices, personal digital assistants (PDAs), audio / video players, digital cameras / camcorders, positioning devices, television receivers, radio broadcast receivers, e-book devices, gaming devices, or any combination of the foregoing, including accessories and peripherals of these devices or any combination thereof. The server device can include, for example, a computing system / server, such as a mainframe, an edge computing node, a computing device in a cloud environment, and the like. In some embodiments, the assistant creation platform 110 and / or the assistant application platform 130 can be implemented based on cloud services.

[0042] It should be understood that the structure and functionality of environment 100 are described for exemplary purposes only and does not imply any limitation on the scope of the present disclosure.

[0043] The assistant creation platform 110 can obtain the interaction information between the user 140 and the digital assistant 120 in the conversation window (including conversation messages from the user and reply messages from the digital assistant 120). In some embodiments, the assistant creation platform 110 can use the model to understand the user's conversation messages and determine the next operation to be performed. The assistant creation platform 110 can interact with the model to provide model input to the model and obtain corresponding model output from the model. The model can run locally on the assistant creation platform 110 or on a remote server. 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), especially a large language model (LLM). The language model can have question-and-answer capabilities by learning from a large amount of corpus. The model can also be based on other appropriate models.

[0044] Digital assistants are usually unable to handle tasks involving complex logic, which results in unsatisfactory accuracy of digital assistants in handling complex tasks. Currently, there is a modular approach to define operation sequences. However, currently only pre-developed function modules can be called, or new function modules can be developed by themselves, which still requires writing code, which is not friendly to users who lack basic programming knowledge. At this point, it is expected that a more flexible and effective way can be provided to develop new functions in the assistant creation platform 110.

[0045] Summary of Management Workflow

[0046] In order to at least partially address the deficiencies in the prior art, according to an exemplary embodiment of the present disclosure, in an application environment for creating a digital assistant, a method for managing workflows is proposed. Specifically, workflows can be used in the assistant creation platform 110 to provide new functions. In general, a workflow can define multiple sequential operations in a predetermined task, and each sequential operation can be implemented in a modular manner to complete the predetermined task. According to an exemplary embodiment of the present disclosure, the powerful processing capabilities of a machine learning model can be called in a workflow to complete a predetermined task. In this way, the complexity of the digital assistant 120 can be reduced, thereby reducing the difficulty of development.

[0047] See also Figure 2 Describing an overview of an exemplary embodiment according to the present disclosure, Figure 2 A block diagram 200 for managing workflow according to some embodiments of the present disclosure is shown. Figure 2As shown, in the assistant creation platform 110, a workflow management page 220 may be provided. Specifically, a user request may be detected in the assistant creation platform 110, and when a creation request is received, a page 220 for creating a workflow may be presented. For example, a control (e.g., a menu, a button, etc.) for launching the workflow management page 220 may be provided, and a creation request may be detected based on a user's interaction with the control.

[0048] exist Figure 2 In the example, the workflow management page 220 may include multiple areas. For example, in the upper area 260 of the workflow management page 220, the name of the workflow may be presented, and the user may enter the name of the workflow in the control 212. The control 214 may provide a trial run function, and the user may press the control 214 to run the created workflow and test whether the running results meet expectations. The control 216 may provide a publishing function, for example, the user may press the control 216 to publish the created workflow in the assistant creation platform 110, or integrate the created workflow into the digital assistant 120 currently being created, and so on.

[0049] According to an example implementation of the present disclosure, the upper area 260 may present descriptive information about the workflow. For example, the functions of the workflow may be presented at the control 262, the input data of the workflow may be presented at the control 264, the output data of the workflow may be presented at the control 266, and so on. Further, the user may press the control 268 to collapse the descriptive information shown in the dotted box in the upper area 260. In this way, the two lower areas may be displayed in a larger range, thereby facilitating user interaction.

[0050] Further, the lower part of the workflow management page 220 may include: a first area 250 located on the left and a second area 252 located on the right. Specifically, the first area 250 may provide multiple different types of nodes that can be added to the workflow. It should be understood that the multiple nodes here may include nodes for calling machine learning models (e.g., Figure 2 In this way, the workflow is allowed to call upon the powerful processing capabilities of the machine learning model to complete the desired functions, thereby reducing the development complexity and workload of the workflow locally.

[0051] On the right side of the first area 250, a second area 252 for providing the content of the workflow may be presented. In the initial stage of creating the workflow, the second area 252 may be empty. The user's interaction request in the workflow management page 220 may be continuously detected, and the workflow may be managed based on the interaction request 260. For example, as the user adds operations, the second area 252 may gradually present instances of each node added to the workflow (e.g., referred to as node instances). In one example, the workflow may include a start node instance 240, an end node instance 244, and one or more node instances between the start node instance 240 and the end node instance 244 (e.g., a model node instance 242 corresponding to a model node 230).

[0052] According to an exemplary embodiment of the present disclosure, a default initial workflow can be provided when a user creates a workflow, and the second area 252 can present various node instances in the default initial workflow. For example, the default initial workflow may include necessary node instances (e.g., a start node instance and an end node instance), and may also include workflow instances that are usually called (e.g., a model node instance). At this point, the user does not have to manually add these node instances, but can adjust them based on the default initial workflow. In this way, the complexity of user operations can be further simplified, thereby improving creation efficiency.

[0053] By using the example embodiments of the present disclosure, the powerful processing capability of the machine learning model can be fully utilized to implement the special nodes of the machine learning model, and then the predetermined tasks can be implemented by combining the various nodes. In this way, it is particularly suitable to use workflows when complex functional logic needs to be built, so as to develop functions with complex functional logic and high requirements for stability in a simpler and more effective way.

[0054] Detailed process of managing workflow

[0055] Having described an overview of an exemplary embodiment according to the present disclosure, in the following, referring to Figure 2 The workflow management page 220 is described in more detail. In the context of the present disclosure, "managing a workflow" may include multiple forms. For example, the workflow management page 220 may be used to create a new workflow, or to open and modify an existing workflow. Figure 2 As shown, the first area 250 may include two tabs 220 and 222. When the user presses the tab 220, a plurality of different types of basic nodes may be presented in the first area 250, for example, a model node 230, a code node 232, a knowledge base node 234, and a condition node 236, etc.

[0056] According to an example embodiment of the present disclosure, model node 230 can call a machine learning model, for example, a user can construct a suitable prompt word and input it into the machine learning model, and then obtain a response from the machine learning model. Code node 232 can use programming code to provide the function of a code node, for example, a user can use a supported programming language to write code. Knowledge base node 234 can provide the function of a code node based on a search for a knowledge base, for example, a user can define search details in such a node to find the desired answer. Condition node 236 can provide the function of a condition node based on conditional judgment, for example, a user can judge whether a predetermined condition is met, and output a corresponding judgment result.

[0057] Further, when the user presses the paging tab 222, a plug-in node may be presented in the first area 250, that is, one or more plug-ins that have been loaded into the digital assistant. The plug-in node may call the plug-in loaded into the digital assistant to provide the function of the plug-in node. The plug-in herein may be various plug-ins currently available and / or custom plug-ins that implement the desired function in a plug-in format, and the like. For example, the plug-in may include: a plug-in for calling a search engine to perform a search, a plug-in for image processing, a plug-in for searching academic articles, and the like.

[0058] It should be understood that a node can be considered as a "function block" for implementing one or more basic functions, thereby allowing users to use multiple "function blocks" to implement desired functions. Using the example embodiments of the present disclosure, multiple types of nodes can be inserted into the workflow, thereby facilitating users to use a richer development method to implement desired functions.

[0059] According to an exemplary embodiment of the present disclosure, the workflow may include a start node instance 240 corresponding to the start position of the workflow and an end node instance 244 corresponding to the end position of the workflow by default. Alternatively and / or additionally, the user may add the start node instance 240 and the end node instance 244 to the workflow by himself.

[0060] According to an exemplary embodiment of the present disclosure, a user's selection request for a target node among multiple nodes can be detected, and a target node instance corresponding to the target node can be added to the workflow when the selection request is detected. For example, a user can add a target node instance by means of a right-click menu. Specifically, when the user's input focus is located in the second area 252, the right button of an input device (e.g., a mouse, etc.) can be clicked, and then the node type desired to be added can be selected in a pop-up menu. For example, a user can select "start node" and "end node" from a menu to add a start node instance 240 and an end node instance 244 to the workflow. Alternatively and / or additionally, nodes can be inserted into the workflow in other ways, for example, a node in the first area 250 can be dragged to the second area 252, or the "+" in the first area 250 can be clicked to complete the adding process.

[0061] It should be understood that the second area 252 is used to present the specific content in the workflow, so the second area 252 will be updated synchronously with the changes of the node instances in the workflow. Using the example embodiments of the present disclosure, each node instance in the workflow can be presented in real time, thereby facilitating the user to fully grasp various information of the workflow.

[0062] According to an example embodiment of the present disclosure, the start node instance 240 and the end node instance 244 are respectively used to define the input / output interface of the workflow and the outside world. At this time, the user can be allowed to add an interface for performing data exchange with the outside world to each node instance. For example, the user can add one or more input terminals (for example, each input terminal can correspond to an input parameter) to the start node instance 240. For example, upon receiving an add request (for example, it can be called a first add request for ease of distinction), at least one input terminal is added to the target node instance, and the at least one input terminal is used to specify at least one input data to be input to the target node instance.

[0063] See also Figure 3 Describing more details about the start node instance 240, Figure 3 A block diagram 300 of a start node instance in a workflow according to some embodiments of the present disclosure is shown. Figure 3As shown, a setting page 340 can be provided to set the specific content of the start node instance 240, and the summary 310 can represent the summary information of the start node instance 240, for example, the name "Start" and the main functions of the node instance. Further, a control 320 can be provided to add new input parameters to the start node instance 240. The user can use the control 320 to add input parameters. Assuming that the workflow is used to query the ticket purchase information of a given movie released in a given cinema on a given date, at this time, the input parameters can include, for example: "moive_name", "cinema_name", and "moive_date". The user can press the control 330 to delete one or more input parameters from the start node instance.

[0064] Furthermore, a corresponding editing dialog box can be provided for each input parameter to set the corresponding variable name, variable type, variable description, etc. Figure 3 In the example, the variable name of the input parameter "moive_date" can be "moive_date", the variable type can be "String", and the variable description can indicate "which day's movie tickets you want to check". Similarly, the variable name of the input parameter "moive_name" can be "moive_name", the variable type can be "String", and the variable description can indicate "which movie's movie tickets you want to check"; the variable name of the input parameter "cinema_name" can be "cinema_name", the variable type can be "String", and the variable description can indicate "which cinema's movie tickets you want to check".

[0065] By using the exemplary embodiments of the present disclosure, the user can be allowed to add one or more input parameters to the node instance in a more convenient and effective manner. In this way, the relevant information of each target that is expected to be met can be defined in the start node instance 240.

[0066] According to an example embodiment of the present disclosure, an output terminal can be added to the end node instance 244 in a similar manner. Specifically, an add request from a user for adding an output terminal (e.g., for ease of distinction, it can be referred to as a second add request) can be detected. When the second add request is received, at least one output terminal is added to the target node instance, and the at least one output terminal is used to specify at least one output data of the target node instance.

[0067] See also Figure 4 Describing more details about the end node instance 244, Figure 4 A block diagram 400 of an end node instance in a workflow according to some embodiments of the present disclosure is shown. Figure 4 As shown, a setting page 340 can be provided to set the specific content of the start node instance 240, the desired answer format can be specified at the control 410, and various parameters of the result variable can be specified at the control 420, such as variable name, variable value, variable type, etc. Alternatively and / or additionally, more output parameters can be added via the control 430.

[0068] It should be understood that although Figure 4 and Figure 5 Taking the start node instance and the end node instance as specific examples, the case of adding input terminals and output terminals to each node instance is described. Alternatively and / or additionally, for other intermediate node instances between the start node instance and the end node instance, one or more input terminals and one or more output terminals can be added in a similar manner.

[0069] According to an exemplary embodiment of the present disclosure, the selection request may be presented in different forms. Figure 5 Describe in more detail the Figure 5 A block diagram 500 for adding a node instance to a workflow according to some embodiments of the present disclosure is shown. Figure 5 As shown, the user can select the target node desired to be added from the first area 250, and drag the selected target node to the second area 252, so as to add the target node instance corresponding to the target node to the workflow. For example, the user can click on the model node 230 and drag it to the second area 252, at which time the workflow will include the model node instance 242. Alternatively and / or additionally, the user can click on the "+" on the right side of the model node 230 to add the model node instance 242 corresponding to the model node 230 to the workflow. Other nodes can be added to the workflow in a similar manner.

[0070] After a model node instance 242 has been added to a workflow, inputs and / or outputs may be added to the model node instance 242. Figure 6 Describe in more detail the Figure 6 A block diagram 600 of a model node instance in a workflow according to some embodiments of the present disclosure is shown. Figure 6 As shown, the name of the model node instance "ParseCinemaDetail" can be set. At this time, LLM can be called to implement the node instance.

[0071] like Figure 6As shown, a setting page 640 may be provided to interact with the user. In area 610, multiple input parameters may be set in a manner similar to the above description, for example, parameter "cinemaWeb" may represent the homepage of a cinema, parameter "cinemaName" may represent the name of a cinema, parameter "movieDate" may represent the date of the desired query, parameter "movieName" may represent the name of a movie, "cinemaLink" may represent the link of a cinema, parameter "todayDate" may represent today's date, parameter "todayWeek" may represent today's day of the week, etc. "Reference" in the parameter value indicates that the input references the parameter defined in the upstream node.

[0072] According to an example embodiment of the present disclosure, relevant parameters of the machine learning model can be set based on the interaction with the setting page 640. Specifically, in the case of receiving a setting request for setting the parameters of the machine learning model, the parameters can be set based on the setting request, and the parameters include at least any one of the following: an identifier of the machine learning model, and temperature information of the machine learning model, and a prompt word input for providing to the machine learning model.

[0073] See also Figure 6 Describing more details, the user can set the identifier of the model via control 620, that is, select which model to call in the workflow; the user can set the temperature parameter of the machine learning model via control 622; further, the user can set the prompt word to be provided to the machine learning model at area 630. In the prompt word, the specific information in each parameter is determined by the parameters in other node instances upstream of the model node instance. Specifically, assuming that the date of the day determined by the upstream node instance is Thursday, the "todayDate" in the prompt word will be replaced with "Thursday".

[0074] although Figure 6 The specific details of setting each parameter in the node instance are described with the model node instance as a specific example. Alternatively and / or additionally, each parameter in other intermediate node instances can be determined in a similar manner. For example, other intermediate node instances can include one or more input terminals to receive the input from the start node instance and / or the output of other node instances upstream. For another example, other intermediate node instances can include one or more output terminals to provide input data to other node instances downstream. In this way, the parameters in each instance node can be defined in a more flexible and effective manner, thereby completing the creation of a workflow.

[0075] According to an exemplary embodiment of the present disclosure, the connection relationship between each node instance can be set based on the connection request. Specifically, for the first node instance and the second node instance in the workflow, the connection request between the two node instances can be detected. Figure 7 Describe in more detail, Figure 7 A block diagram 700 for establishing a connection relationship between different node instances according to some embodiments of the present disclosure is shown. Figure 7 As shown, in the second area 252, a user's connection request 710 between two node instances can be detected. According to an exemplary embodiment of the present disclosure, the connection request 710 can be defined based on multiple ways, for example, a user's mouse connection operation between two node instances can be detected, and so on.

[0076] If a connection request is detected between at least one output terminal of the start node instance 240 (which may be referred to as the first node instance for the sake of distinction) and at least one input terminal of the model node instance 242 (which may be referred to as the second node instance for the sake of distinction), a connection relationship may be presented between the output terminal and the input terminal. In other words, data at the output terminal of the first node instance may be provided to the input terminal of the second node instance. Using the example embodiments of the present disclosure, the data transfer relationship between the various node instances may be defined in a simple and effective manner. In this way, a development model based on functional blocks may be easily implemented, thereby reducing the complexity of user operations.

[0077] According to an exemplary embodiment of the present disclosure, multiple node instances can be added to the workflow in the manner described above, and the data transfer relationship between the node instances can be defined. Specifically, for the workflow of querying movie tickets, the following can be created based on the interaction request between the user and the assistant creation platform 110: Figure 8 Workflow 830 is shown.

[0078] Figure 8 A block diagram 800 of a workflow including multiple node instances according to some embodiments of the present disclosure is shown. Figure 8As shown, the workflow 830 may include a start node instance 810 (named Start), an end node instance 820 (named End), and multiple intermediate node instances. Specifically, a node instance 811 (named GetSearchKeyword) can obtain a search keyword and corresponds to a code node; a node instance 817 (named GetData) can obtain data and corresponds to a code node; a node instance 812 (named SearchCinemaLink) can search for a link to a cinema and corresponds to a plug-in node; a node instance 813 (named GetCinemaLink) can obtain a link to a cinema and corresponds to a code node; a node instance 814 (named Convert) can obtain the actual link address of a cinema and corresponds to a code node; a node instance 815 (named Visit) can visit the link address of a cinema and corresponds to a plug-in node; a node instance 816 (named ParseCinemaDetail) can parse the detailed information of a cinema and corresponds to a model node.

[0079] By using the exemplary embodiment of the present disclosure, the user can create a workflow 830 by simple input, drag and connect operations, and use the workflow 830 to query information about a given movie released in a given cinema on a given date. In this way, the efficiency of creating workflows by users can be improved, and machine learning models with powerful processing capabilities can be fully utilized to complete tasks with complex logical relationships.

[0080] According to an exemplary embodiment of the present disclosure, after the workflow 830 has been successfully created, the created workflow 830 may be run and tested. In the case of receiving a test request for testing the workflow, at least one input data of the workflow may be received. Specifically, the user may click on Figure 2 The control 214 shown in the figure can be displayed to start the test process. Fig. 9 The page shown Fig. 9 A block diagram 900 for setting input data for a workflow according to some embodiments of the present disclosure is shown.

[0081] In the trial run page, the user can specify the three input data defined in the workflow 830. For example, the name of the movie to be queried can be input in box 920, the name of the theater to be queried can be input in box 930, the date to be queried can be input in box 940, and the input data can be submitted through control 950. At this point, the workflow 830 will be executed and used to find the ticket purchase information of the movie "ABC***" shown in the theater "XYZ***" this weekend.

[0082] During the test process, the user may be provided with relevant status data of each node instance in the workflow. For example, the user may double-click the node instance that he wishes to view in order to obtain relevant status data; alternatively and / or additionally, relevant status data may be provided when the user's mouse hovers over a certain node instance, and so on. It should be understood that the status data herein may include at least any one of the following: data at at least one input terminal of the target node instance, data at at least one output terminal of the target node instance, and the execution status of whether the target node instance is successfully executed.

[0083] Fig.10 A block diagram 1000 for testing and / or debugging a workflow according to some embodiments of the present disclosure is shown. Fig.10 As shown, in the test page 1010, if the interaction 1030 between the user and the node instance 814 is detected, the state data 1020 can be provided. The state data 1020 can, for example, include the specific numerical values ​​of the input data and output data defined in the node instance. Alternatively and / or additionally, the state data 1020 can further include the running state "success" of the node instance 814. Alternatively and / or additionally, each node instance can be presented in a visual format (e.g., different colors). For example, the node instance whose running state is "success" can be presented in green, and the node instance whose running state is "failure" can be presented in red. In this way, rich test information can be provided to the user in a visual manner, so as to facilitate the user to modify the potential errors in the workflow.

[0084] According to an exemplary embodiment of the present disclosure, for a model node instance, at least one of the following items may be further presented: a prompt word input provided to the machine learning model, and a response from the machine learning model to the prompt word input. For example, the prompt word input for the node instance 816 for calling the machine learning model may be similar to Figure 6 , and the various parameters have been replaced with data obtained from the upstream module. For another example, the machine learning model's response to the prompt word input may include: "This weekend, the movie 'ABC***' will be shown at the cinema 'XYZ***', and the ticket purchase information is as follows: ..." In this way, rich test information can be provided to the user, thereby facilitating the user to modify potential errors in the workflow.

[0085] According to an example embodiment of the present disclosure, a user can publish a generated workflow. At this time, the user's publishing request can be detected, and when the publishing request is detected, the workflow is published in the assistant creation platform 110. At this time, a specific user in the assistant creation platform 110 (for example, a user with access rights to the published workflow) can access the workflow and integrate the workflow into his own digital assistant. Alternatively and / or additionally, the user can directly integrate the workflow into the digital assistant currently being created. In this way, it is convenient to use workflows to complete tasks with complex logic, thereby improving the efficiency of creating digital assistants.

[0086] According to an exemplary embodiment of the present disclosure, a method for creating a digital assistant is provided to allow a user to integrate a created workflow into the digital assistant during the process of creating the digital assistant. Specifically, a page for creating a digital assistant may be presented in the assistant creation platform 110, and a control for adding a workflow to the digital assistant may be provided in the page. When it is detected that a user calls the control, it may be determined that an add request has been received, and at this time a management page for adding a workflow to the digital assistant may be presented in the assistant creation platform 110.

[0087] The workflow herein may define multiple sequential operations in a predetermined task, and the management page may include: a first area for providing multiple nodes, and a second area for providing the content of the workflow, the multiple nodes including a model node for calling a machine learning model. In response to receiving an interaction request for a page, the workflow is managed based on the interaction request. In this way, in the process of creating a digital assistant, the process described above can be used to create a new workflow, and / or modify an existing workflow, and integrate the corresponding workflow into the digital assistant. In this way, the workflow can be integrated into the digital assistant in a simple and effective way, thereby enriching the functionality of the digital assistant.

[0088] According to an example embodiment of the present disclosure, if a workflow is integrated into a digital assistant, descriptive data of the workflow (e.g., the function of the workflow, input data, output data, etc.) can be sent to the machine learning model as part of the prompt word to inform the machine learning model that the digital assistant has the ability to process user input using the workflow.

[0089] At this point, the digital assistant can call the integrated workflow to process the task. For example, the digital assistant can receive user input expressed in natural language, and input the prompt words generated based on the user input to the model. At this point, the model can determine whether the workflow needs to be called. If necessary, the workflow will be called to process the user input. For example, in the example of presenting ticket purchase information above, assuming that the user input is "I want to watch the movie 'ABC***' shown at the cinema 'XYZ***' this weekend", the workflow will be called and the relevant ticket purchase information will be presented to the user.

[0090] Example Process

[0091] Fig.11 A flowchart of a method 1100 for managing a workflow according to some embodiments of the present disclosure is shown. At box 1110, determine whether a creation request is received. If a creation request is received, method 1100 proceeds to box 1120. At box 1120, a page for creating a workflow is presented, the workflow is used to define multiple sequential operations in a predetermined task, and the page includes: a first area for providing a plurality of nodes, and a second area for providing content of the workflow, the plurality of nodes including a model node for calling a machine learning model. At box 1130, determine whether an interaction request for the page is received. In the event that an interaction request is received, method 1100 proceeds to box 1140. At box 1140, the workflow is managed based on the interaction request.

[0092] According to an example embodiment of the present disclosure, managing a workflow based on an interaction request includes: in response to receiving a selection request for a target node among multiple nodes, adding a target node instance corresponding to the target node to the workflow; and presenting the target node instance in a second area.

[0093] According to an exemplary embodiment of the present disclosure, the method 1100 further includes at least any one of the following: in response to receiving a first add request, adding at least one input terminal to the target node instance, the at least one input terminal being used to specify at least one input data to be input to the target node instance; and in response to receiving a second add request, adding at least one output terminal to the target node instance, the at least one output terminal being used to specify at least one output data of the target node instance.

[0094] According to an exemplary embodiment of the present disclosure, the method 1100 further includes: for a first node instance and a second node instance in the workflow, in response to receiving a connection request for connecting an output end of at least one output end of the first node instance and an input end of at least one input end of the second node instance, presenting a connection relationship between the output end and the input end.

[0095] According to an example embodiment of the present disclosure, a workflow includes a model node instance corresponding to a model node, and the method further includes: in response to receiving a setting request for setting relevant parameters of a machine learning model, setting the parameters based on the setting request, the parameters including at least any one of the following: an identifier of the machine learning model, and temperature information of the machine learning model, and a prompt word input for providing to the machine learning model.

[0096] According to an example embodiment of the present disclosure, the plurality of nodes further include at least any one of the following: a code node for providing the functionality of the code node using programming code; a knowledge base node for providing the functionality of the code node based on a search for the knowledge base; a condition node for providing the functionality of the condition node based on conditional judgment; and a plug-in node for calling a plug-in loaded into the digital assistant to provide the functionality of the plug-in node, and the workflow is integrated into the digital assistant.

[0097] According to an exemplary embodiment of the present disclosure, the method 1100 further includes: in response to receiving a test request for testing the workflow, receiving at least one input data provided to the workflow.

[0098] According to an exemplary embodiment of the present disclosure, the method 1100 further includes: providing status data of a target node instance in the workflow, the status data including at least any one of the following: data at at least one input end of the target node instance, data at at least one output end of the target node instance, and an execution status of whether the target node instance is successfully executed.

[0099] According to an example embodiment of the present disclosure, providing status data of a target node instance further includes: in response to determining that the target node instance is a model node instance, providing at least any one of the following: a prompt word input provided to a machine learning model, a response to the prompt word input from the machine learning model.

[0100] According to an example embodiment of the present disclosure, the method 1100 further includes: in response to receiving a publishing request, publishing the workflow so that the workflow is integrated in the digital assistant.

[0101] According to an example embodiment of the present disclosure, a method for creating a digital assistant is provided. In the method, a page for creating a digital assistant is presented. In response to receiving an add request in the page, a management page for adding a workflow to the digital assistant is presented, the workflow is used to define multiple sequential operations in a predetermined task, and the management page includes: a first area for providing multiple nodes, and a second area for providing content of the workflow, the multiple nodes including a model node for calling a machine learning model. In response to receiving an interaction request for the management page, the workflow is managed based on the interaction request.

[0102] Example devices and equipment

[0103] Fig.12 A block diagram of an apparatus 1200 for managing a workflow according to some embodiments of the present disclosure is shown. The apparatus 1200 includes: a presentation module 1210 configured to present a page for creating a workflow in response to receiving a creation request, wherein the workflow is used to define multiple sequential operations in a predetermined task, and the page includes: a first area for providing multiple nodes, and a second area for providing content of the workflow, wherein the multiple nodes include a model node for calling a machine learning model; and a management module 1220 configured to manage the workflow based on the interaction request in response to receiving an interaction request for the page.

[0104] According to an example embodiment of the present disclosure, a management module includes: an instance adding module, configured to add a target node instance corresponding to a target node to a workflow in response to receiving a selection request for a target node among multiple nodes; and an instance presenting module, configured to present the target node instance in a second area.

[0105] According to an exemplary embodiment of the present disclosure, the device 1200 further includes a first adding module, configured to add at least one input terminal to the target node instance in response to receiving a first adding request, the at least one input terminal being used to specify at least one input data to be input to the target node instance; and a second adding module, configured to add at least one output terminal to the target node instance in response to receiving a second adding request, the at least one output terminal being used to specify at least one output data of the target node instance.

[0106] According to an exemplary embodiment of the present disclosure, the device 1200 further includes: a connection module, which is configured to present a connection relationship between an output terminal and an input terminal for a first node instance and a second node instance in a workflow in response to receiving a connection request for connecting an output terminal of at least one output terminal of the first node instance and an input terminal of at least one input terminal of the second node instance.

[0107] According to an example embodiment of the present disclosure, the workflow includes a model node instance corresponding to a model node, and the device 1200 further includes: a setting module, configured to set the parameters based on the setting request in response to receiving a setting request for setting relevant parameters of the machine learning model, the parameters including at least any one of the following: an identifier of the machine learning model, and temperature information of the machine learning model, and a prompt word input for providing to the machine learning model.

[0108] According to an example embodiment of the present disclosure, the plurality of nodes further include at least any one of the following: a code node for providing the functionality of the code node using programming code; a knowledge base node for providing the functionality of the code node based on a search for the knowledge base; a condition node for providing the functionality of the condition node based on conditional judgment; and a plug-in node for calling a plug-in loaded into the digital assistant to provide the functionality of the plug-in node, and the workflow is integrated into the digital assistant.

[0109] According to an exemplary embodiment of the present disclosure, the apparatus 1200 further includes: a receiving module configured to receive at least one input data provided to the workflow in response to receiving a test request for testing the workflow.

[0110] According to an example embodiment of the present disclosure, the device 1200 further includes: a providing module configured to provide status data of a target node instance in a workflow, the status data including at least any one of the following: data at at least one input end of the target node instance, data at at least one output end of the target node instance, and an execution status of whether the target node instance is successfully executed.

[0111] According to an example embodiment of the present disclosure, the providing module further includes: a model-based providing module, configured to provide at least any one of the following in response to determining that the target node instance is a model node instance: a prompt word input provided to the machine learning model, a response to the prompt word input from the machine learning model.

[0112] According to an example embodiment of the present disclosure, the apparatus 1200 further includes: a publishing module configured to publish the workflow in response to receiving a publishing request so that the workflow is integrated in the digital assistant.

[0113] Fig.13 1 shows a block diagram of a device 1300 capable of implementing multiple embodiments of the present disclosure. It should be understood that Fig.13 The computing device 1300 shown is merely exemplary and should not constitute any limitation on the functionality and scope of the embodiments described herein. Fig.13 The computing device 1300 shown may be used to implement the methods described above.

[0114] like Fig.13As shown, computing device 1300 is in the form of a general-purpose computing device. Components of computing device 1300 may include, but are not limited to, one or more processors or processing units 1310, memory 1320, storage device 1330, one or more communication units 1340, one or more input devices 1350, and one or more output devices 1360. Processing unit 1310 may be an actual or virtual processor and is capable of performing various processes according to a program stored in memory 1320. In a multi-processor system, multiple processing units execute computer executable instructions in parallel to increase the parallel processing capabilities of computing device 1300.

[0115] The computing device 1300 typically includes a plurality of computer storage media. Such media may be any available media accessible to the computing device 1300, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 1320 may be a volatile memory (e.g., registers, caches, random access memory (RAM)), a non-volatile memory (e.g., a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 1330 may be a removable or non-removable medium, and may include a machine-readable medium, such as a flash drive, a disk, or any other medium, which may be capable of being used to store information and / or data (e.g., training data for training) and may be accessed within the computing device 1300.

[0116] The computing device 1300 may further include additional removable / non-removable, volatile / non-volatile storage media. Fig.13 As shown in , 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 the bus (not shown) by one or more data media interfaces. Memory 1320 may include a computer program product 1325 having one or more program modules that are configured to perform various methods or actions of various embodiments of the present disclosure.

[0117] The communication unit 1340 enables communication with other computing devices via a communication medium. Additionally, the functions of the components of the computing device 1300 can be implemented in a single computing cluster or multiple computing machines that can communicate via a communication connection. Therefore, the computing device 1300 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.

[0118] Input device 1350 may be one or more input devices, such as a mouse, keyboard, trackball, etc. Output device 1360 may be one or more output devices, such as a display, speaker, printer, etc. Computing device 1300 may also communicate with one or more external devices (not shown) through communication unit 1340 as needed, such as storage devices, display devices, etc., communicate with one or more devices that allow a user to interact with computing device 1300, or communicate with any device that allows computing device 1300 to communicate with one or more other computing devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).

[0119] According to an exemplary embodiment 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 embodiment of the present disclosure, a computer program product is also provided, the computer program product is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, and the computer-executable instructions are executed by a processor to implement the method described above. According to an exemplary embodiment of the present disclosure, a computer program product is provided, on which a computer program is stored, and when the program is executed by a processor, the method described above is implemented.

[0120] Various aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of the methods, devices, equipment, and computer program products implemented according to the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer-readable program instructions.

[0121] 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, so that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0122] 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, so that the instructions executed on the computer, other programmable data processing apparatus, or other device implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.

[0123] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple implementations of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of a module, program segment or instruction includes one or more executable instructions for realizing the logical function of the specification. In some implementations as replacements, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square 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.

[0124] The above descriptions of various implementations of the present disclosure are exemplary, non-exhaustive, and not limited to the disclosed implementations. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described implementations. The selection of terms used herein is intended to best explain the principles of the implementations, practical applications, or improvements to the technology in the marketplace, or to enable other persons of ordinary skill in the art to understand the various embodiments disclosed herein.

Claims

1. A method for managing a workflow, comprising: In response to receiving the creation request, presenting a page for creating the workflow, the workflow being used to define a plurality of sequential operations in a predetermined task, the page comprising: a first area for providing a plurality of nodes, and a second area for providing content of the workflow, the plurality of nodes comprising a model node for invoking a machine learning model; and In response to receiving an interaction request for the page, the workflow is managed based on the interaction request, wherein the workflow is integrated in a digital assistant that supports receiving user input in natural language form, and the description data of the workflow is input into a machine learning model as part of a prompt word, so that in response to the prompt word generated based on the user input being input into the machine learning model, the machine learning model determines whether to call the workflow to process the user input based on the prompt word.

2. The method of claim 1, wherein managing the workflow based on the interaction request comprises: In response to receiving a selection request for a target node among the plurality of nodes, Adding a target node instance corresponding to the target node to the workflow; as well as The target node instance is presented in the second area.

3. The method according to claim 2, further comprising at least one of the following: In response to receiving the first add request, adding at least one input terminal to the target node instance, the at least one input terminal being used to specify at least one input data to be input to the target node instance; and In response to receiving the second adding request, at least one output terminal is added to the target node instance, where the at least one output terminal is used to specify at least one output data of the target node instance.

4. The method according to claim 3, further comprising: For the first node instance and the second node instance in the workflow, in response to receiving a connection request for connecting an output end of at least one output end of the first node instance and an input end of at least one input end of the second node instance, a connection relationship is presented between the output end and the input end.

5. The method of claim 1, wherein the workflow comprises a model node instance corresponding to the model node, and the method further comprises: In response to receiving a setting request for setting relevant parameters of the machine learning model, the parameters are set based on the setting request, and the parameters include at least any one of the following: an identifier of the machine learning model, temperature information of the machine learning model, and prompt word input provided to the machine learning model.

6. The method according to claim 1, wherein the plurality of nodes further comprises at least any one of the following: A code node for providing the functionality of the code node using programming code; A knowledge base node, used to provide the functionality of the code node based on a search of the knowledge base; A conditional node, used to provide the function of the conditional node based on conditional judgment; as well as A plug-in node is used to call a plug-in loaded into the digital assistant to provide the function of the plug-in node.

7. The method according to claim 1, further comprising: In response to receiving a test request for testing the workflow, at least one input data provided to the workflow is received.

8. The method according to claim 7, further comprising: Provide status data of the target node instance in the workflow, the status data including at least any one of the following: data at at least one input end of the target node instance, data at at least one output end of the target node instance, and an execution status of whether the target node instance is successfully executed.

9. The method of claim 8, wherein providing the state data of the target node instance further comprises: In response to determining that the target node instance is a model node instance, at least one of the following is provided: a prompt word input provided to the machine learning model, and a response to the prompt word input from the machine learning model.

10. The method according to claim 1, further comprising: In response to receiving the publish request, the workflow is published so that the workflow is integrated in the digital assistant.

11. An apparatus for managing a workflow, comprising: a presentation module configured to present, in response to receiving a creation request, a page for creating the workflow, the workflow being used to define a plurality of sequential operations in a predetermined task, the page comprising: a first area for providing a plurality of nodes, and a second area for providing content of the workflow, the plurality of nodes comprising a model node for invoking a machine learning model; and A management module is configured to manage the workflow based on the interaction request received for the page in response to the interaction request, wherein the workflow is integrated in a digital assistant that supports receiving user input in natural language form, and the description data of the workflow is input into the machine learning model as part of a prompt word, so that in response to the prompt word generated based on the user input being input into the machine learning model, the machine learning model determines whether to call the workflow to process the user input based on the prompt word.

12. 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 10 when executed by the at least one processing unit.

13. A computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the processor is caused to implement the method according to any one of claims 1 to 10.

14. A method for creating a digital assistant, comprising: Presenting a page for creating a digital assistant; In response to receiving an add request in the page, presenting a management page for adding a workflow to the digital assistant, the workflow being used to define a plurality of sequential operations in a predetermined task, the management page comprising: a first area for providing a plurality of nodes, and a second area for providing content of the workflow, the plurality of nodes including a model node for invoking a machine learning model; In response to receiving an interaction request for the management page, managing the workflow based on the interaction request, wherein the workflow is integrated into the digital assistant that supports receiving user input in natural language form, and the description data of the workflow is input into the machine learning model as part of the prompt word, so that in response to the prompt word generated based on the user input being input into the machine learning model, the machine learning model determines whether to call the workflow to process the user input based on the prompt word.

Citation Information

Patent Citations

  • Service component arrangement method and device, service scheduling method and device, electronic equipment and storage medium

    CN115629743A

Cited By

  • Method and apparatus for managing workflow, and device and medium

    EP4575760A1

  • Method and apparatus for managing workflow, and device and medium

    WO2025086565A1