Method and apparatus for managing workflow data output, and device and medium

WO2025200595A1PCT designated stage Publication Date: 2025-10-02BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/138941
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-03-29
Filing Date
2024-12-12
Publication Date
2025-10-02

AI Technical Summary

Technical Problem

When digital assistants handle complex tasks, they do not provide responses for a long time and the response messages lack a hierarchical structure, making it difficult for users to quickly understand and obtain specific content.

Method used

By introducing message node instances into the workflow, responses can be presented gradually during the processing. The input and output ends of the message node instances are used to present messages in a predetermined format, thus realizing a "one question, multiple answers" approach.

Benefits of technology

It improves the efficiency and user comprehensibility of response messages, allowing users to obtain partial responses in a timely manner, avoiding long waits, and ultimately presenting a structured and complete response.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024138941_02102025_PF_FP_ABST
    Figure CN2024138941_02102025_PF_FP_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure provide a method and apparatus for managing workflow data output, and a device and a medium. The method comprises: in a page for creating a workflow, in response to receiving a selection request for a message node, adding to the workflow a message node instance corresponding to the message node, the message node specifying that a message is output by the workflow; and presenting the message node instance in the page, the message node instance comprising an input end and an output end, the input end being used for receiving a message to be output, and the output end being used for specifying that the message is presented by the workflow according to a predetermined format. In this way, multiple messages can be provided according to a more easily understandable format, thereby providing more abundant output content.
Need to check novelty before this filing date? Find Prior Art

Description

Method, apparatus, device and medium for managing data output of workflow

[0001] This application claims priority to the Chinese invention patent application entitled “Methods, devices, equipment and media for managing data output of workflows” and application number 202410382454.3, filed on March 29, 2024. The entire contents of that application are incorporated herein by reference. Technical Field

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

[0003] 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 response message in response to the user input. Generally, a digital assistant can support users to input questions in natural language, and perform tasks and provide responses based on the understanding of natural language input and logical reasoning ability. However, digital assistants usually output all response messages at once, and longer response messages lack a hierarchical structure. This makes it difficult for users to quickly understand the summary of the response message, and they need to read it word by word to grasp the structure and specific content of the response message. Summary of the Invention

[0004] In a first aspect of the present disclosure, a method for managing data output of a workflow is provided. The method comprises: in a page for creating a workflow, in response to receiving a selection request for a message node, adding a message node instance corresponding to the message node to the workflow, wherein the message node specifies that the workflow outputs a message; and presenting the message node instance in the page, wherein the message node instance includes an input terminal and an output terminal, wherein the input terminal is used to receive the message to be output, and the output terminal is used to specify that the workflow present the message in a predetermined format.

[0005] In a second aspect of the present disclosure, a device for managing data output of a workflow is provided. The device includes: an instance adding module configured to, in response to receiving a selection request for a message node on a page for creating a workflow, add a message node instance corresponding to a message node to the workflow, wherein the message node specifies that the workflow outputs a message; and an instance presenting module configured to present the message node instance on the page, wherein the message node instance includes an input terminal for receiving a message to be output and an output terminal for specifying that the workflow present the message in a predetermined format.

[0006] 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 being coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions, when executed by the at least one processing unit, causing the electronic device to perform the method according to the first aspect of the present disclosure.

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

[0008] According to a fifth aspect of the present disclosure, a computer program product is provided, comprising a computer program, wherein when the computer program is executed by a processor, the method according to the first aspect of the present disclosure is implemented.

[0009] It should be understood that the content described in this summary section is not intended to limit the key features or important features of the implementation of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easy to understand through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0010] 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:

[0011] FIG1 shows a schematic diagram of an example environment in which embodiments of the present disclosure can be implemented;

[0012] FIG2 shows a schematic diagram of an example of a workflow management page according to some embodiments of the present disclosure;

[0013] FIG3 shows a block diagram of a message node instance in a workflow according to some embodiments of the present disclosure;

[0014] FIG4 illustrates a block diagram of a workflow including multiple node instances according to some embodiments of the present disclosure;

[0015] FIG5 is a schematic diagram showing an example of a setting control for presentation properties according to some embodiments of the present disclosure;

[0016] FIG6 shows a schematic diagram of an example page according to some embodiments of the present disclosure;

[0017] FIG7 shows a schematic diagram of an example page according to some other embodiments of the present disclosure;

[0018] FIG8 shows a schematic diagram of an example page according to still other embodiments of the present disclosure;

[0019] FIG9 illustrates a flow chart of a process for managing data output of a workflow according to some embodiments of the present disclosure;

[0020] FIG10 shows a schematic structural block diagram of an apparatus for managing data output of a workflow according to some embodiments of the present disclosure; and

[0021] FIG11 illustrates a block diagram of an electronic device in which one or more embodiments of the present disclosure may be implemented. DETAILED DESCRIPTION

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

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

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

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

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

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

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

[0029] It is understandable that the above notification and user authorization process are merely illustrative and do not limit 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.

[0030] As used herein, the term "model" can learn the association between corresponding inputs and outputs from training data, so that after training is completed, corresponding outputs can be generated for given inputs. 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 multiple layers of 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.

[0031] Digital assistants can serve as tools for people to effectively work, learn, and live their lives. Generally, developing a digital assistant is similar to developing a general application. Developers with programming skills must write complex code to define the assistant's capabilities and deploy it on an appropriate platform so that users can download, install, and use it.

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

[0033] Sample Environment

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

[0035] 1 shows a schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented. The environment 100 includes an assistant creation platform 110 and an assistant application platform 130 .

[0036] As shown in Figure 1, the assistant creation platform 110 can provide a creation and publishing environment for a digital assistant for a user 105 (for example, a user who creates a digital assistant). In some embodiments, the assistant creation platform 110 can be a low-code platform that provides a collection of tools for creating digital assistants. The assistant creation platform 110 can support visual development of digital assistants, allowing developers to 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 can include a platform based on Application Platform as a Service (aPaaS). Such a platform can support users to efficiently develop applications and implement operations such as application creation and application function adjustment.

[0037] 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 realize the supply of services to the client running in the terminal device based on the communication connection between the server and 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 to output and / or receive information to the user 105 and / or receive information from the user 105.

[0038] 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 the various functional modules that make up the digital assistant. The assistant creation platform 110 can also perform operations such as calling, adding, deleting, and updating on 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.

[0039] 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 application platform 130 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 response message based on the created configuration information and present it to the user in the interaction window 132. In some embodiments, depending on the configuration of the digital assistant 120, the interactive message with the digital assistant 120 may include messages in multimodal form, such as text messages (e.g., natural language text), voice messages, image messages, video messages, and the like.

[0040] The assistant creation platform 110 and / or the assistant application platform 130 can run on appropriate electronic devices. The electronic devices here can be any type of device with computing capabilities, 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, for example, include 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.

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

[0042] The assistant creation platform 110 can obtain the interaction information between the user 105 and the digital assistant 120 in the conversation window (including conversation messages from the user and response 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, or other models known in the past and / or to be developed in the future. 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.

[0043] In the context of this disclosure, workflows can be used to handle relatively complex tasks. In general, a workflow can define multiple sequential operations within a predetermined task and implement each sequential operation in a modular manner to complete the predetermined task. A workflow can invoke the functions of various predetermined nodes (e.g., model nodes, plug-in nodes, etc.) to complete the predetermined task.

[0044] However, workflows usually take a long time to execute, which means that during the operation of a digital assistant including a workflow, the digital assistant may not be able to provide a response for a long time, which causes the user to be in a state of waiting for feedback from the digital assistant for a long time. In addition, digital assistants usually output all response messages at once, and large response messages lack a hierarchical structure. This makes it difficult for users to quickly understand the summary of the response message, and they need to read it word by word to grasp the structure and specific content of the response message. At this point, when creating a digital assistant, it is expected that structured response messages can be provided in a more reasonable way, and that users can obtain the desired response in a more convenient and effective way.

[0045] Overview of managing data output from workflows

[0046] To at least partially address the shortcomings of the prior art, according to an exemplary embodiment of the present disclosure, a method for managing workflow data output is proposed in an application environment for creating a digital assistant. In summary, message nodes can be used to specify the messages to be output by the workflow in a desired format. Specifically, workflows can be used within the assistant creation platform 110 to provide new functionality. A workflow can define multiple sequential operations within a predetermined task, and each sequential operation can be implemented in a modular manner to complete the predetermined task. The multiple nodes of a workflow include message nodes, which specify the messages to be output by the workflow. According to an exemplary embodiment of the present disclosure, a workflow can use message nodes to present messages to the user before the workflow ends. In this way, multiple responses to user questions can be provided in a more understandable format. Furthermore, users do not have to wait for a long time for the workflow's final response, but can instead use message nodes to gradually obtain partial responses. Thus, this "one question, multiple answers" presentation method can help improve the efficiency of providing messages.

[0047] In some embodiments, in a page for creating a workflow, in response to receiving a selection request for a message node, a message node instance corresponding to the message node is added to the workflow, where the message node specifies that the workflow outputs a message. Furthermore, the message node instance can be presented on the page, where the message node instance includes an input terminal for receiving a message to be output and an output terminal for specifying that the workflow present the message in a predetermined format.

[0048] Referring to FIG2 , an overview of an exemplary embodiment according to the present disclosure is described, and FIG2 shows a schematic diagram of an example 200 of a workflow management page according to some embodiments of the present disclosure. As shown in FIG2 , in the assistant creation platform 110, a workflow management page as shown in example 200 may be provided. Specifically, a user request may be detected in the assistant creation platform 110, and when a creation request is received, an example 200 for creating a workflow may be presented. For example, a control (e.g., a menu, a button, etc.) may be provided for launching the example 200, and the creation request may be detected based on the user's interaction with the control.

[0049] In Figure 2, example 200 may include multiple areas. For example, in the upper area 260 of example 200, the name of the workflow may be presented, and the user may enter the name of the workflow in control 212. Control 214 may provide a test run function, and the user may press control 214 to run the created workflow and test whether the running results meet expectations. In some embodiments, in response to receiving a test request for testing the workflow (e.g., a trigger operation for control 214), at least one input data for providing to the workflow may be received.

[0050] During testing, the user can be provided with relevant status data for each node instance in the workflow. For example, the user can double-click a desired node instance to obtain relevant status data. Alternatively and / or additionally, relevant status data can be provided when the user hovers their mouse over a node instance, and so on. It should be understood that the status data herein may include, for example, data at the input end of a message node instance and / or data at the output end of a message node instance.

[0051] Control 216 may provide a publishing function. For example, a user may press 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, etc. The workflow may be directly published in multiple environments (e.g., multiple applications). The workflow may also be integrated into the digital assistant 120 and then published in multiple environments along with the digital assistant 120.

[0052] According to an exemplary implementation of the present disclosure, upper region 260 can present descriptive information about the workflow. For example, control 262 can present the workflow's functionality, control 264 can present the workflow's input data, control 266 can present the workflow's output data, and so on. Furthermore, the user can press control 268 to collapse the descriptive information shown in the dashed box in upper region 260. In this way, the two lower regions can be displayed in a larger area, facilitating user interaction.

[0053] Furthermore, the lower portion of example 200 may include: a first area 250 located on the left and a second area 252 located on the right. Specifically, first area 250 may provide multiple different types of nodes that can be added to the workflow. The multiple nodes herein may include a message node (e.g., message node 230 in FIG. 2 ) that specifies a message to be output by the workflow. A user request in first area 250 may be detected. For example, in response to receiving a selection request for message node 230, a message node instance corresponding to the message node may be added to the workflow.

[0054] To the right of first area 250, a second area 252 for providing workflow content may be presented. In the initial stage of workflow creation, second area 252 may be empty. User interaction requests in example 200 may be continuously detected, and the workflow may be managed based on these interaction requests 260. For example, as the user adds nodes, second area 252 may gradually present instances of each node added to the workflow (e.g., simply referred to as node instances).

[0055] In some embodiments, in response to receiving a selection request for the message node 230 (for example, in response to receiving a trigger operation on the message node 130, it can be determined that a selection request for the message node 230 is received), a message node instance corresponding to the message node 230 (for example, the message node instance 244) can be added to the workflow. Alternatively and / or additionally, the user can directly add the message node instance in the second area 252. For example, the user can press the right button in the second message area 252 to present the various nodes that can be added. At this time, in response to receiving an add request to add a node to the workflow in the second area of ​​the page, the various nodes (for example, a message node, a model node, a plug-in node, etc.) can be presented.

[0056] The message node instance 244 includes an input end and an output end, wherein the input end is used to receive messages from upstream, and the output end is used to specify that the workflow present the message in a predetermined format. This predetermined format can be a pre-set format. In some embodiments, the workflow can also include a data acquisition node instance corresponding to the data acquisition node (e.g., a model node instance corresponding to the model node 231, a plug-in node instance corresponding to the plug-in node).

[0057] Exemplarily, a workflow may include a start node instance 240, an end node instance 246, 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 the model node 231, a message node instance 244 corresponding to the message node 230). The input end of the message node instance 244 may be used to receive a message output by the model node instance 242 (e.g., a text message generated by calling a model), and the output end of the message node instance 244 may be used to specify that the workflow present the message in a predetermined format. In this case, the message node instance 244 may serve as a supplement to the information output by the end node instance 246, and present responses to input questions from multiple perspectives.

[0058] In some embodiments, the message node instance 244 is located upstream of the end node instance 246. If the workflow is used to process a query request and generate a response to the processing request, the message node instance 244 can be used to specify the first response to the query request output by the workflow, and the end node instance 246 can be used to specify the second response to the query request output by the workflow. This second response is generated based on the first response (for example, the second response can be a summary of the first response). That is, before the workflow completes processing the query request, the message node instance 244 can output an intermediate response (that is, the first response), and after completing processing the query request, the end node instance 246 presents the second response. For example, if the query request indicates a query for food in area A, the first response can be which food is included in area A, and the second response can include a detailed introduction to each food included in area A.

[0059] In some embodiments, 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 can include necessary node instances (e.g., a start node instance and an end node instance), and can 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.

[0060] Therefore, when processing a query request with a workflow, message nodes can be used to present multiple messages before the query is completed. The final response generated by the workflow can be a summary of these multiple messages. This can achieve "one question, multiple answers", enrich the content obtained by users, and improve the efficiency of users obtaining responses.

[0061] Detailed process for managing data output of workflows

[0062] Having described an overview of an example embodiment according to the present disclosure, the following describes more details of the workflow management page 220 with reference to FIG2 . In the context of the present disclosure, "managing a workflow" may include various forms. For example, the example 220 may be used to create a new workflow, or the page may be used to open and modify an existing workflow.

[0063] It should be understood that a node can be considered a "function block" for implementing one or more basic functions, thereby allowing users to utilize multiple "function blocks" to implement desired functions. The exemplary embodiments of the present disclosure allow for the insertion of multiple types of nodes into a workflow, facilitating users to implement desired functions using a richer development approach.

[0064] In some embodiments, the workflow may include, by default, a start node instance 240 corresponding to the start position of the workflow and an end node instance 246 corresponding to the end position of the workflow. Alternatively and / or additionally, the user may add the start node instance 240 and the end node instance 246 to the workflow.

[0065] In some embodiments, 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 the input device (e.g., a mouse, etc.) can be clicked, and then the node type desired to be added can be selected in the pop-up menu. In an embodiment of the present disclosure, a message node instance corresponding to a message node can be added to the workflow in response to receiving a selection request for a message node. For example, a user can select a message node 230 from a menu to add a message 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.

[0066] It should be understood that the second area 252 is used to present specific content in the workflow, and thus the second area 252 will be updated synchronously with changes in the node instances in the workflow. For example, after adding a message node instance 244 corresponding to a message node to the workflow, the message node instance 244 can be presented in the second area of ​​the page.

[0067] In some embodiments, a message node specifies a message to be output by a workflow. A message node instance includes an input terminal and an output terminal. The input terminal is used to receive the message to be output, and the output terminal is used to specify that the workflow present the message according to a predetermined format. For more details regarding a message node instance 244, see FIG3 , which shows a block diagram 300 of a message node instance in a workflow according to some embodiments of the present disclosure. As shown in FIG3 , a settings page 340 may be provided for configuring the specific contents of a message node instance 244. An overview 310 may provide summary information about the message node instance 244, such as the name "Message" and the primary function of the node instance. Furthermore, an area 320 for configuring input terminals and an area 330 for configuring output terminals may be provided. Within area 320 , a control 321 may be presented. By triggering control 321 , the user can add new input parameters to the message node instance 244. Each input parameter may correspond to an input terminal. For example, input parameters may include "Parameter A," "Parameter B," and "Parameter C." Parameter A may correspond to input terminal A, parameter B may correspond to input terminal B, and parameter C may correspond to input terminal C. The user can press control 322 to delete one or more input parameters from the message node instance 244 (ie, delete one or more input terminals).

[0068] Furthermore, area 330 may present an edit dialog box for input parameters in order to set a predetermined format for presenting the message. The predetermined format may, for example, be used to specify the font, font size, color, separator, and / or presentation area of ​​the message. The predetermined format may also, for example, include an output mode. The output mode may, for example, include a text flow mode and a text block mode. The text flow mode is to present the text message word by word until the complete text message is presented, and the text block mode is to directly present the complete text message. In some embodiments, area 330 may include a control 331. In response to receiving an opening operation on control 331, it may be determined to present the message in a text flow mode (also referred to as streaming output). In response to receiving a closing operation on control 331, it may be determined to present the message in a text block mode (also referred to as non-streaming output). In this way, the user may be allowed to present the output information according to his or her own preferences.

[0069] In some embodiments, when the input end of the message node instance 244 includes multiple input ends (for example, it may include at least a first input end and a second input end), the predetermined format may include a format for specifying a first message from the first input end and a second message from the second input end. In other words, the user can configure the predetermined format for presenting the first message and the predetermined format for presenting the second message separately via area 330. For example, the user can configure the format for presenting the message from input end A, the format for presenting the message from input end B, and the format for presenting the message from input end C separately via the editing dialog box in area 330.

[0070] Alternatively and / or additionally, a predefined style template may be provided, and the desired positions in the style template may be filled with the messages from input terminals A, B, and C. In this way, the response message may present a richer visual effect, thereby presenting various aspects of the response in a structured manner.

[0071] By using the exemplary embodiment of the present disclosure, the user can be allowed to configure the message node instance 244 in a more convenient and effective manner. In this way, it is possible to define in the message node instance 244 which messages are received and in what format the received messages are presented.

[0072] In some embodiments, the plurality of nodes may further include a plurality of data acquisition nodes. The data acquisition node may, for example, include a model node (e.g., model node 231 in FIG. 2 ) for calling a machine learning model (also referred to as a model) or a plug-in node (e.g., plug-in node 235 in FIG. 2 ) for calling a plug-in function. In some embodiments, the plurality of nodes may further include a code node (e.g., code node 232 in FIG. 2 ) for providing the function of a code node using programming code, a knowledge base node (e.g., knowledge base node 233 in FIG. 2 ) for providing the function of a code node based on a search for a knowledge base, and / or a conditional node (e.g., conditional node 234 in FIG. 2 ) for providing the function of a conditional node based on a conditional judgment.

[0073] In some embodiments, for the data acquisition node instance and the message node instance in the workflow, a connection relationship can be established between the output terminal of the data acquisition node instance and the input terminal of the message node instance in response to receiving a connection request between the output terminal of the data acquisition node instance and the input terminal of the message node instance. See Figure 4 for more details, which shows a block diagram 400 of a workflow including multiple node instances according to some embodiments of the present disclosure. As shown in Figure 4, the workflow can include multiple message node instances (such as message node instance 401 and message node instance 403, the input terminal and output terminal of the two are different). In the second area 252, the user's connection request between the data acquisition node instance and the message node instance can be detected. According to an example embodiment of the present disclosure, the connection request can be defined based on a variety of ways, for example, the user's mouse line operation between two node instances can be detected, etc.

[0074] If a connection request is detected between the output of plugin node instance 402 (for example, implementing a search function) and the input of message node instance 403, a connection relationship can be established between the output of plugin node instance 402 and the input of message node instance 403 (that is, the output content of search node instance 403 will be provided as a message to message node instance 403, and message node instance 403 can instruct the workflow to present the message in a predetermined format). Using the example embodiments of the present disclosure, the data transfer relationship between data acquisition node instances and message node instances can be defined in a simple and effective manner.

[0075] In some embodiments, a user can select a node instance and set the corresponding presentation attributes. Specifically, in response to determining that a target node instance (such as a data acquisition node instance, a message node instance, a code node instance, a knowledge base node instance, a conditional node instance, a plug-in node instance, etc.) is selected among multiple node instances, a setting control for setting the presentation attributes of the target node instance is provided. The presentation attributes can, for example, indicate whether the working status of the target node instance is allowed to be presented during the processing of the query request, and the predetermined conditions for presenting the working status. In this way, the user can be allowed to understand which node instance is currently running in the workflow, and understand the working status of the node instance, thereby knowing the progress of the digital assistant in answering questions.

[0076] Here, the working state may, for example, include a predefined working state, and / or a working state determined via data at the input end of the target node instance. The predetermined condition may, for example, include immediate execution, the execution time length of the target node instance satisfies the predetermined time length, and / or the time interval for the workflow to present the previous message exceeds the predetermined time length. The predetermined time length here may be any appropriate time length determined in advance, such as 5 seconds, 10 seconds, 15 seconds, etc. The presentation attributes of the workflow may be set in response to receiving a setting request for setting a control. The setting request may, for example, include a triggering operation for setting a control. In some embodiments, the setting control may further include an edit dialog box, and the setting request may further include a text input operation for the edit dialog box.

[0077] Referring to Figure 5, Figure 5 shows a schematic diagram of an example 500 of a setting control for presentation properties according to some embodiments of the present disclosure. As shown in Figure 5, example 500 includes a control 510. In response to receiving an open operation for control 510, it can be determined whether the presentation property indicates whether the working state of the target node instance is allowed to be presented during the operation of the target node instance. The presentation property indicates whether the working state of the target node instance is allowed to be presented during the processing of a query request. In response to receiving an open operation for control 510, it can be determined that the presentation property indicates that the working state of the target node instance is allowed to be presented during the processing of a query request. In response to receiving a close operation for control 510, it can be determined that the presentation property indicates that the working state of the target node instance is not allowed to be presented during the processing of a query request.

[0078] Example 500 may include, for example, an editing dialog box 520. A user may configure a predefined working state and / or a template for a working state determined by data at the input end of a target node instance via the editing dialog box 520. For example, for a model node instance, if the model node instance is used for querying, the predefined working state may be "Querying for you", and the template for the working state determined by data at the input end of the target node instance may be "Querying for you XXXX" (where XXXX is the data at the input end). In this way, more information about each node instance may be provided during the execution of the workflow, thereby facilitating the user to grasp the overall query progress.

[0079] In some embodiments, a setting control for setting the interruption property of the workflow may also be provided. The interruption property of the workflow may be set in response to receiving a setting request for the interruption control (e.g., a triggering operation for the interruption control). This interruption property may, for example, indicate whether the workflow is allowed to be interrupted during the processing of a query request. After setting the interruption property, the workflow may be executed based on the interruption property in response to receiving another query request while the digital assistant is processing the query request. Whether the workflow is allowed to be interrupted may be set based on one's own needs. Thus, during the execution of the workflow, if no response is output for a long time, the user can interrupt the execution of the workflow, thereby avoiding long waits due to various exceptions.

[0080] Specifically, if it is determined that the interruption attribute indicates that the workflow is allowed to be interrupted, the workflow can be restarted so that another query request can be processed using the workflow. For example, if query request B is received during the processing of query request A, and the interruption attribute indicates that the workflow is allowed to be interrupted, the workflow can be restarted (that is, query request A is no longer processed) and query request B is processed using the workflow. If it is determined that the interruption attribute indicates that the workflow is not allowed to be interrupted, the workflow is used to continue processing the query request. For example, if query request B is received during the processing of query request A, and the interruption attribute indicates that the workflow is not allowed to be interrupted, the workflow can be used to continue processing query request A. In this case, in response to the completion of query request A processing, the workflow can be restarted and query request B can be processed using the workflow. Alternatively or additionally, query request B can also be ignored (that is, query request B is not processed).

[0081] The above describes the configuration of workflows. In some embodiments, after a workflow is integrated into a digital assistant (e.g., the workflow is published for integration into the digital assistant), if the digital assistant receives a query request, it can utilize the data acquisition node in the workflow to obtain a response to the query request, and utilize the message node in the workflow to present the response in a predetermined format. The predetermined format can also be, for example, the default format of the application in which the digital assistant is located, or the default format corresponding to the integrated digital assistant.

[0082] Figures 6 to 8 show schematic diagrams of example pages (i.e., examples 600 to 800) according to some embodiments of the present disclosure. Examples 600 to 800 show examples of conversation query pages of a digital assistant. In example 600, in response to receiving a conversation message 601 from a user, the conversation message 601 can be determined as a query request. In response to receiving the query request, the digital assistant can use the data acquisition node in the workflow to obtain a response to the query request. The workflow may include multiple data acquisition nodes, which can, for example, obtain messages of different types (e.g., text, images, videos, etc.). Each data acquisition node can then be connected to its own message node (i.e., the workflow can include multiple message nodes), and each message node is used to present the message obtained by its upstream data acquisition node in a predetermined format. For example, the first message node can be used to present text 602, the second message node can be used to present multiple videos 610, the third message node can be used to present text 603, and so on.

[0083] In some embodiments, the workflow may further include a node for determining an associated query request implemented using a model node and / or a code node. This node may be used to determine at least one associated requirement associated with the query request. The workflow may, for example, process each associated requirement to generate a response for each associated requirement. For example, in example 700, if query request 701 "What is "XXXX"" is received, it may be determined that "XXXX" is a book. The corresponding multiple associated requirements may include determining introductory information about the book, determining introductory information about the author of the book, and determining videos associated with the book.

[0084] Multiple data acquisition nodes in the workflow can then acquire data for each associated requirement. A message node downstream of each data acquisition node can present the received data as a response to each associated requirement. For example, a first message node can present a response 702 to an associated requirement of "determine introductory information for the book," a second message node can present a response 703 to an associated requirement of "determine introductory information for the book's author," a third message node can present a response 704 to an associated requirement of "determine videos associated with the book," and so on.

[0085] In some embodiments, the workflow may also include a node for determining the user's sub-requirements implemented using a model node and / or a code node, which node may be used to determine at least one sub-requirement included in the query request. The workflow may, for example, process each sub-requirement to generate a response to each sub-requirement. For example, in example 800, if a query request 801 "XXX YYY" (e.g., weather and food in city A) is received, it may be determined that the query request 801 includes sub-requirements "XXX (weather in city A)" and sub-requirements "YYY (food in city B)". Multiple data acquisition nodes in the workflow may then acquire data for each sub-requirement. The message node downstream of each data acquisition node may present the received data as a response to each sub-requirement. For example, the first message node may present a response 802 to the sub-requirement "XXX", the second message node may present a response 803 to the sub-requirement "YYY", and so on.

[0086] In summary, when processing query requests with a workflow, message nodes can be used to present multiple messages before the query is completed. The workflow's final response can be a summary of these multiple messages. This allows for "multiple answers to a single question," enriching the content users receive and improving the efficiency of obtaining responses.

[0087] Example Process

[0088] FIG9 shows a flowchart of a process 900 for managing data output of a workflow according to some embodiments of the present disclosure. The process 900 may be implemented at the assistant creation platform 110. The process 900 is described below with reference to FIG1.

[0089] In block 910 , in response to receiving a selection request for a message node in a page for creating a workflow, the assistant creation platform 110 adds a message node instance corresponding to the message node to the workflow, where the message node specifies a message to be output by the workflow.

[0090] In box 920, the assistant creation platform 110 presents a message node instance in the second area in the page, and the message node instance includes an input end and an output end, the input end is used to receive the message to be output, and the output end is used to specify that the workflow presents the message in a predetermined format.

[0091] In some embodiments, process 900 further includes: presenting multiple nodes in a page for creating a workflow, the multiple nodes further including a data acquisition node, the data acquisition node including a model node for calling a machine learning model or a plug-in node for calling a plug-in function, and the workflow including a data acquisition node instance corresponding to the data acquisition node.

[0092] In some embodiments, process 900 further includes: for a data acquisition node instance and a message node instance in a workflow, in response to receiving a connection request for connecting the output end of the data acquisition node instance and the input end of the message node instance, establishing a connection relationship between the output end of the data acquisition node instance and the input end of the message node instance.

[0093] In some embodiments, the predetermined format is used to specify at least any one of the following items of the message: font, font size, color, separator, presentation area, and output mode, where the output mode includes text flow mode and text block mode.

[0094] In some embodiments, in response to determining that the inputs of the message node instance include a first input and a second input, the predetermined format includes a format for specifying a first message from the first input and a second message from the second input.

[0095] In some embodiments, process 900 further includes: in response to receiving a test request for testing the workflow, receiving at least one input data for providing to the workflow; and providing state data of a message node instance in the workflow, the state data including at least any of the following: data at the input end of the message node instance, and data at the output end of the message node instance.

[0096] In some embodiments, process 900 further includes, in response to receiving the publish request, publishing the workflow so that the workflow is integrated in the digital assistant.

[0097] In some embodiments, the workflow is integrated into the digital assistant, and process 900 further includes: in response to determining that the digital assistant has received a query request, using a data acquisition node in the workflow to obtain a response to the query request; and using a message node in the workflow to present the response in a predetermined format.

[0098] In some embodiments, process 900 further includes: providing a setting control for setting an interruption property of the workflow, the interruption property indicating whether the workflow is allowed to be interrupted during processing of the query request; and setting the interruption property of the workflow in response to receiving a setting request for the interruption control.

[0099] In some embodiments, process 900 further includes: in response to receiving another query request during the digital assistant processing the query request, executing the workflow based on the interruption attribute, including at least any of the following: in response to determining that the interruption attribute indicates that the workflow can be interrupted, restarting the workflow so as to use the workflow to process another query request; and in response to determining that the interruption attribute indicates that the workflow can not be interrupted, using the workflow to continue processing the query request.

[0100] In some embodiments, the workflow includes multiple node instances of multiple nodes, and process 900 further includes: in response to determining that a target node instance among the multiple node instances is selected, providing a setting control for setting the presentation property of the target node instance, the presentation property indicating whether the working status of the target node instance is allowed to be presented during processing the query request, and predetermined conditions for presenting the working status; and in response to receiving a setting request for the setting control, setting the presentation property of the workflow.

[0101] In some embodiments, process 900 further includes: in response to determining that a predetermined condition is met, presenting a working status of the target node instance, wherein the working status includes at least any one of the following: a predefined working status, and a working status determined via data at the input end of the target node instance.

[0102] In some embodiments, the workflow includes an end node instance, and a message node instance is located upstream of the end node instance, the message node instance is used to specify a first response to the query request output by the workflow, and the end node instance is used to specify a second response to the query request output by the workflow, and the second response is generated based on the first response.

[0103] In some embodiments, the workflow further includes a start node instance, and the message node is located between the start node instance and the end node instance.

[0104] In some embodiments, the message node is presented in a first area of ​​the page, or the message node is presented in response to receiving an add request to add a node to the workflow in a second area of ​​the page.

[0105] Example devices and equipment

[0106] Embodiments of the present disclosure also provide corresponding devices for implementing the above-mentioned methods or processes. FIG10 shows a schematic structural block diagram of an apparatus 1000 for managing data output of a workflow according to some embodiments of the present disclosure. The apparatus 1000 may be included in the assistant creation platform 110 in FIG1 , for example. The various modules / components in the apparatus 1000 may be implemented by hardware, software, firmware, or any combination thereof.

[0107] As shown in the figure, the apparatus 1000 further includes an instance adding module 1010, which is configured to, in response to receiving a selection request for a message node in a page for creating a workflow, add a message node instance corresponding to the message node to the workflow, wherein the message node specifies that the workflow outputs a message. The apparatus 1000 further includes an instance presenting module 1020, which is configured to present the message node instance in a second area in the page, wherein the message node instance includes an input terminal and an output terminal, wherein the input terminal is used to receive a message to be output, and the output terminal is used to specify that the workflow present the message in a predetermined format.

[0108] In some embodiments, the multiple nodes further include a data acquisition node, the data acquisition node includes a model node for calling a machine learning model or a plug-in node for calling a plug-in function, and the workflow includes a data acquisition node instance corresponding to the data acquisition node.

[0109] In some embodiments, the device 1000 further includes: a connection relationship establishment module, which is configured to establish a connection relationship between the output end of the data acquisition node instance and the input end of the message node instance in response to receiving a connection request for connecting the output end of the data acquisition node instance and the input end of the message node instance in the workflow.

[0110] In some embodiments, the predetermined format is used to specify at least any one of the following items of the message: font, font size, color, separator, presentation area, and output mode, where the output mode includes text flow mode and text block mode.

[0111] In some embodiments, in response to determining that the inputs of the message node instance include a first input and a second input, the predetermined format includes a format for specifying a first message from the first input and a second message from the second input.

[0112] In some embodiments, the device 1000 further includes: an input data receiving module, configured to receive at least one input data for providing to the workflow in response to receiving a test request for testing the workflow; and a status data providing module, configured to provide status data of the message node instance in the workflow, the status data including at least any one of the following: data at the input end of the message node instance, and data at the output end of the message node instance.

[0113] In some embodiments, the apparatus 1000 further includes an integration module configured to, in response to receiving a publishing request, publish the workflow so that the workflow is integrated in the digital assistant.

[0114] In some embodiments, the device 1000 further includes: a response acquisition module, configured to, in response to determining that the digital assistant has received a query request, use a data acquisition node in the workflow to obtain a response to the query request; and a response presentation module, configured to use a message node in the workflow to present the response in a predetermined format.

[0115] In some embodiments, the device 1000 further includes: a first setting control providing module, configured to provide a setting control for setting the interruption attribute of the workflow, the interruption attribute indicating whether the workflow is allowed to be interrupted during processing of a query request; and an interruption attribute setting module, configured to set the interruption attribute of the workflow in response to receiving a setting request for the interruption control.

[0116] In some embodiments, the device 1000 further includes: an execution module, configured to execute the workflow based on the interruption attribute in response to receiving another query request during the digital assistant processing the query request, including at least any one of the following: in response to determining that the interruption attribute indicates that the workflow can be interrupted, restarting the workflow so as to use the workflow to process another query request; and in response to determining that the interruption attribute indicates that the workflow can not be interrupted, using the workflow to continue processing the query request.

[0117] In some embodiments, the workflow includes multiple node instances, and the device 1000 further includes: a second setting control providing module, configured to provide a setting control for setting the presentation properties of the target node instance in response to determining that a target node instance among the multiple node instances is selected, the presentation properties indicating whether the working status of the target node instance is allowed to be presented during processing the query request, and predetermined conditions for presenting the working status; and a presentation property setting module, configured to set the presentation properties of the workflow in response to receiving a setting request for the setting control.

[0118] In some embodiments, the device 1000 further includes: a working status presentation module, configured to present the working status of the target node instance in response to determining that a predetermined condition is met, wherein the working status includes at least any one of the following: a predefined working status, and a working status determined via data at the input end of the target node instance.

[0119] In some embodiments, the workflow includes a start node instance and an end node instance, and the message node instance is located upstream of the end node instance, the message node instance is used to specify a first response to the query request output by the workflow, and the end node instance is used to specify a second response to the query request output by the workflow, and the second response is generated based on the first response.

[0120] The units and / or modules included in the device 1000 can be implemented in various ways, including software, hardware, firmware, or any combination thereof. In some embodiments, one or more units and / or modules can be implemented using software and / or firmware, such as machine executable instructions stored on a storage medium. In addition to or as an alternative to machine executable instructions, some or all of the units and / or modules in the device 1000 can be implemented at least in part by one or more hardware logic components. By way of example and not limitation, exemplary types of hardware logic components that can be used include field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chip (SOCs), complex programmable logic devices (CPLDs), and the like.

[0121] It should be understood that one or more steps in the above method can be performed by an appropriate electronic device or combination of electronic devices. Such an electronic device or combination of electronic devices may include, for example, the assistant creation platform 110 and / or the assistant application platform 130 in FIG. 1 .

[0122] FIG11 shows a block diagram of an electronic device 1100 in which one or more embodiments of the present disclosure may be implemented. It should be understood that the electronic device 1100 shown in FIG11 is merely exemplary and should not be construed as limiting the functionality and scope of the embodiments described herein. The electronic device 1100 shown in FIG11 can be used to implement the assistant creation platform 110 of FIG1 , the assistant application platform 130, and / or the apparatus 1000 of FIG10 .

[0123] As shown in FIG11 , electronic device 1100 is a general-purpose electronic device. Components of electronic device 1100 may include, but are not limited to, one or more processors or processing units 1110, memory 1120, storage device 1130, one or more communication units 1140, one or more input devices 1150, and one or more output devices 1160. Processing unit 1110 may be a real or virtual processor and is capable of performing various processes according to programs stored in memory 1120. In a multi-processor system, multiple processing units execute computer-executable instructions in parallel to enhance the parallel processing capabilities of electronic device 1100.

[0124] The electronic device 1100 typically includes a plurality of computer storage media. Such media can be any accessible media that can be obtained by the electronic device 1100, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 1120 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 1130 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 1100.

[0125] The electronic device 1100 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not shown in FIG. 11 , a disk drive for reading from or writing to a removable, non-volatile disk (e.g., a "floppy disk") and an optical drive for reading from or writing to 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 1120 may include a computer program product 1125 having one or more program modules configured to perform various methods or actions of various embodiments of the present disclosure.

[0126] The communication unit 1140 enables communication with other electronic devices via a communication medium. Additionally, the functions of the components of the electronic device 1100 can be implemented as a single computing cluster or multiple computing machines that can communicate via a communication connection. Thus, the electronic device 1100 can operate in a networked environment using logical connections to one or more other servers, network personal computers (PCs), or other network nodes.

[0127] Input device 1150 may be one or more input devices, such as a mouse, keyboard, or trackball. Output device 1160 may be one or more output devices, such as a display, a speaker, or a printer. Electronic device 1100 may also communicate with one or more external devices (not shown) via communication unit 1140 as needed, such as storage devices, display devices, or the like, with one or more devices that allow a user to interact with electronic device 1100, or with any device that allows electronic device 1100 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).

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

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

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

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

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

[0133] 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 method for managing data output of a workflow, comprising: In a page for creating the workflow, in response to receiving a selection request for a message node, adding a message node instance corresponding to the message node to the workflow, the message node specifying a message to be output by the workflow; as well as The message node instance is presented in the page, and the message node instance includes an input end and an output end, the input end is used to receive a message to be output, and the output end is used to specify that the workflow presents the message in a predetermined format.

2. The method according to claim 1, further comprising: Multiple nodes are presented in the page used to create the workflow, wherein the multiple nodes further include a data acquisition node, the data acquisition node includes a model node for calling a machine learning model or a plug-in node for calling a plug-in function, and the workflow includes a data acquisition node instance corresponding to the data acquisition node.

3. The method according to claim 2, further comprising: For the data acquisition node instance and the message node instance in the workflow, in response to receiving a connection request for connecting the output end of the data acquisition node instance and the input end of the message node instance, a connection relationship is established between the output end of the data acquisition node instance and the input end of the message node instance.

4. The method according to claim 1, wherein the predetermined format is used to specify at least any one of the following items of the message: font, font size, color, separator, rendering area, and output mode, the output mode including text flow mode and text block mode.

5. The method according to claim 1, further comprising: In response to determining that the input terminal of the message node instance includes a first input terminal and a second input terminal, the predetermined format includes a format for specifying a first message from the first input terminal and a second message from the second input terminal.

6. The method according to claim 1, further comprising: In response to receiving a test request for testing the workflow, receiving at least one input data for providing to the workflow; as well as State data of a message node instance in the workflow is provided, wherein the state data includes at least any one of the following: data at an input end of the message node instance, and data at an output end of the message node instance.

7. 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.

8. The method of claim 1 , wherein the workflow is integrated into a digital assistant, and the method further comprises: In response to determining that the digital assistant receives a query request, utilizing the data acquisition node in the workflow to acquire a response to the query request; as well as The response is presented in the predetermined format using the message node in the workflow.

9. The method according to claim 8, further comprising: providing a setting control for setting an interruption property of the workflow, wherein the interruption property indicates whether the workflow is allowed to be interrupted during processing of the query request; as well as In response to receiving a setting request for the interruption control, the interruption attribute of the workflow is set.

10. The method according to claim 9, further comprising: In response to receiving another query request during the processing of the query request by the digital assistant, executing the workflow based on the interruption attribute includes at least any one of the following: In response to determining that the interruption attribute indicates that interruption of the workflow is permitted, restarting the workflow so as to process the other query request using the workflow; and In response to determining that the interruption attribute indicates that interruption of the workflow is not permitted, the query request continues to be processed using the workflow.

11. The method of claim 2, wherein the workflow comprises a plurality of node instances of the plurality of nodes, and the method further comprises: In response to determining that a target node instance among the plurality of node instances is selected, providing a setting control for setting a presentation attribute of the target node instance, the presentation attribute indicating whether presentation of a working status of the target node instance is allowed during processing of the query request, and a predetermined condition for presenting the working status; as well as In response to receiving a setting request for the setting control, the presentation property of the workflow is set.

12. The method according to claim 11, further comprising: In response to determining that the predetermined condition is met, presenting the working state of the target node instance, wherein the working state includes at least any one of the following: a predefined working state, and a working state determined via data at an input end of the target node instance.

13. A method according to claim 8, wherein the workflow includes an end node instance, and the message node instance is located upstream of the end node instance, the message node instance is used to specify a first response to a query request output by the workflow, and the end node instance is used to specify a second response to the query request output by the workflow, the second response being generated based on the first response. 14 . The method according to claim 13 , wherein the workflow further comprises a start node instance, and the message node is located between the start node instance and the end node instance.

15. The method of claim 1, wherein: The message node is presented in a first area in the page, or the message node is presented in response to receiving an add request to add a node to the workflow in a second area in the page.

16. An apparatus for managing data output of a workflow, comprising: an instance adding module configured to, in response to receiving a selection request for a message node in a page for creating the workflow, add a message node instance corresponding to the message node to the workflow, the message node specifying a message to be output by the workflow; as well as The instance presentation module is configured to present the message node instance in the page, wherein the message node instance includes an input end and an output end, wherein the input end is used to receive the message to be output, and the output end is used to specify that the workflow present the message in a predetermined format.

17. An electronic device comprising: at least one processing unit; as well as At least one memory 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 15 when executed by the at least one processing unit.

18. A computer-readable storage medium having a computer program stored thereon, wherein the computer program is executable by a processor to implement the method according to any one of claims 1 to 15.

19. A computer program product comprising a computer program, wherein the computer program implements the method according to any one of claims 1 to 15 when executed by a processor.

Citation Information

Patent Citations

  • Method, device, equipment and medium for managing data output of workflow

    CN120725591A

  • Visual debugging method and device for workflow designer

    CN112015656A

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

    CN115629743A

  • Workflow construction method, device and equipment and readable storage medium

    CN116303589A

  • Bot creation with workflow development system

    US20180107461A1