Method and device for outputting workflow, electronic equipment and product

By configuring streaming variables and implementing streaming data push in the workflow system, the problem of output delay in large language model nodes was solved, improving user experience and workflow efficiency.

CN120803588APending Publication Date: 2025-10-17BEIJING ZITIAO NETWORK TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510896983.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-30
Publication Date
2025-10-17

AI Technical Summary

Technical Problem

Existing workflow systems struggle to achieve timely output of streaming data after introducing large language model nodes, leading to increased user waiting time and anxiety. Furthermore, ordinary users cannot configure streaming output through the interface, limiting the user experience.

Method used

Configure workflow nodes as output streaming variables through the user interface, and realize the generation and push of streaming variables in the workflow. This allows streaming data to be displayed to users in a timely manner at intermediate nodes, and speeds up data transmission by using streaming variable buffers.

Benefits of technology

It enables streaming output of workflows, reduces user waiting time, improves user experience, and promptly displays progress and results to users, thus reducing user anxiety.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120803588A_ABST
    Figure CN120803588A_ABST
Patent Text Reader

Abstract

The invention relates to a workflow output method and device, electronic equipment and a product. The method comprises the steps of receiving an operation request of a user for a workflow; the method further includes, in response to receiving the run request, generating, by a first node in the workflow, a streaming variable, where the first node is configured by a user through a user interface to output the streaming variable, and the streaming variable supports streaming output of data. The method further includes streaming the streaming variable from the first node to a second node in the workflow for streaming output of the workflow. Through the mode, the user configures the output variable type of the workflow node on the user interface, so that the workflow can realize the streaming output of the node, the operation progress and condition of the workflow are positively displayed to the user, and the user experience is improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present disclosure relates to the field of computers, and more specifically to a method, an apparatus, an electronic device, and a product for output of a workflow. BACKGROUND

[0002] With the improvement of workflow platform development technology, users can use the platform to build more and more complex workflow files, and can wait for the running result of the workflow by one-click workflow running. For example, with the improvement of large language model (LLM) capability, adding a large language model node in the workflow can greatly improve the overall capability of the workflow, such as one-click content generation for users, which greatly saves the time of users to collect resources and make videos. SUMMARY

[0003] In a first aspect of embodiments of the present disclosure, a method for output of a workflow is provided. The method includes receiving a running request of a user for a workflow. The method also includes generating, by a first node in the workflow, a streaming variable in response to receiving the running request, wherein the first node is configured by the user through a user interface to output the streaming variable, and the streaming variable supports streaming output of data. The method further includes streaming pushing, by the first node, the streaming variable to a second node in the workflow for streaming output of the workflow.

[0004] In a second aspect of embodiments of the present disclosure, an apparatus for output of a workflow is provided. The apparatus includes a running request receiving module configured to receive a running request of a user for a workflow. The apparatus also includes a streaming variable generating module configured to generate, by a first node in the workflow, a streaming variable in response to receiving the running request, wherein the first node is configured by the user through a user interface to output the streaming variable, and the streaming variable supports streaming output of data. In addition, the apparatus further includes a streaming variable pushing module configured to streaming push, by the first node, the streaming variable to a second node in the workflow for streaming output of the workflow.

[0005] In a third aspect of embodiments of the present disclosure, an electronic device is provided. The electronic device includes one or more processors; and a storage apparatus for storing one or more programs, when the one or more programs are executed by the one or more processors, cause the one or more processors to implement the method according to the first aspect.

[0006] In a fourth aspect of embodiments of the present disclosure, a computer program product is provided. The computer program product is tangibly stored on a non-transitory computer readable medium and includes machine executable instructions that, when executed, cause a machine to implement the method according to the first aspect.

[0007] The following presents a summary of the disclosure in order to provide a basic understanding of some aspects of the application. This summary is not an extensive overview of the application. It is not intended to identify key / critical elements of the application or to delineate the scope of the application. Its sole purpose is to present some concepts of the application in a simplified form as a prelude to the more detailed description that is presented later. BRIEF DESCRIPTION OF DRAWINGS

[0008] The above and other features, aspects, and advantages of various embodiments of the present disclosure will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings. In the drawings:

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

[0010] Figure 2 A flowchart illustrating a method for output of a workflow according to some embodiments of the present disclosure is shown;

[0011] Figure 3 A schematic diagram illustrating an example of an output node consuming a streaming variable generated by an LLM node according to some embodiments of the present disclosure is shown;

[0012] Figure 4 A schematic diagram illustrating an example of logic for how an output node reads different types of input data according to some embodiments of the present disclosure is shown;

[0013] Figure 5 A schematic diagram illustrating an example of an upstream node pushing data to a downstream node and the downstream node reading the data according to some embodiments of the present disclosure is shown;

[0014] Figure 6 A schematic diagram illustrating an example of an upstream node pushing data to a downstream node and the downstream node reading the data according to some other embodiments of the present disclosure is shown;

[0015] Figures 7A-7B A schematic diagram illustrating an example of a user selecting a node in a workflow for editing via an interactive control in a workflow building interface according to some embodiments of the present disclosure is shown;

[0016] Figure 8 A schematic diagram illustrating an example of editing a node parameter in a node configuration interface via an interactive control in a node configuration interface according to some embodiments of the present disclosure is shown;

[0017] Figure 9 A block diagram of an apparatus for output of a workflow according to some embodiments of the present disclosure is shown; and

[0018] Figure 10 A block diagram of an apparatus capable of implementing various embodiments of the present disclosure is shown. DETAILED DESCRIPTION

[0019] It is understood that all user-related data involved in this technical solution must be obtained and used only after authorization by the user. This means that if a user's personal information is to be used in this technical solution, the user's explicit consent and authorization must be obtained before such data is obtained; otherwise, the relevant data will not be collected or used. It is also understood that when implementing this technical solution, relevant laws and regulations must be strictly observed during the data collection, use, and storage process, and necessary technologies and measures must be implemented to protect the user's data security and ensure the safe use of data.

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

[0021] 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 terms "first", "second", etc. can refer to different or the same objects, unless explicitly stated. Other explicit and implicit definitions may also be included below.

[0022] As mentioned above, when building a workflow, you can add a large language model node and leverage the powerful prediction and generation capabilities of the large language model to help users generate content that meets different needs and purposes. This includes generating story text based on simple user descriptions, and then drawing illustrations or producing videos based on the generated text.

[0023] However, the relevant workflow runtime strictly executes according to the node arrangement order, and the next node is executed only after the complete output of a node, and the workflow running result is output only after all nodes are executed. While achieving one-key running and outputting the result by using the workflow, with the increase of the nodes introduced by the workflow and the improvement of the complexity of the arrangement between the nodes, the time spent by the workflow for complete running also increases, greatly increasing the waiting time of the user. If there is no result output for a long time, it is also impossible to determine whether the workflow is still running normally in sequence, causing the user to be anxious. In addition, when a large language model node is introduced in the workflow, since the large language model itself can realize the generation of streaming data, but when used in the workflow, since the relevant workflow does not support streaming output, it is difficult for the downstream node to consume the streaming data generated by the large language model node in time, and it is even more difficult to present the generated data to the user in time.

[0024] In some related technologies, the developer will make the large language model node follow the end output node in the development stage through code design, so as to realize streaming output, but this is limited to this workflow node arrangement mode, and it is difficult to realize timely output to the user for the data or content generated by the intermediate node or the non-large language model node. Moreover, this output method needs to be realized by the developer through code, and cannot be opened to ordinary users, and needs to be bound with the large language model node and the output node, which has many limitations for user use.

[0025] Therefore, an embodiment of the present disclosure provides a scheme for output of a workflow. In the scheme, if a running request of the workflow is received from a user, the workflow starts to execute in response to the running request of the user, and a streaming variable is generated by a first node in the workflow. Then, the first node pushes the generated streaming variable to a second node in the workflow in a streaming manner, for streaming output of the workflow. The first node is configured by the user to output the streaming variable through a user interface, and the streaming variable supports streaming output of data.

[0026] In this way, the user can configure the node output variable type of the workflow through the user interface, so that the workflow realizes streaming output of the node. For example, when the intermediate node of the workflow outputs information to the user or the upstream node continuously generates streaming data, the last output node of the workflow continuously outputs the content in a streaming manner, positively shows the running progress and situation of the workflow to the user, and pushes the current running result of the workflow to the user in time, thereby relieving the anxiety of the user and improving the user experience. In addition, the transmission of the streaming data generated by the workflow node can be accelerated, the data transmission between the nodes during the running of the workflow can be accelerated, the time required for the running of the workflow can be greatly shortened, and the waiting time of the user can be shortened.

[0027] Figure 1 A schematic diagram of an example environment 100 in which a plurality of embodiments of the present disclosure can be implemented is shown. As shown in FIG. 1, the environment 100 includes a client device 110 and a server 120.Figure 1 As shown, the environment 100 includes a user device 102, which can be any device capable of accessing the platform 104. For example, the user device 102 can be a mobile phone, a tablet computer, a smart wearable device, a laptop computer, a desktop computer, etc. The platform 104 can be used for workflow building and deployed on a distributed server cluster architecture.

[0028] In the environment 100, a user can freely build a workflow 106 through the platform 104, which includes multiple nodes arranged in sequence, such as nodes 112, 114, and 116, etc. The workflow 106 can show an output 108 to the user after running. For example, after the platform 104 provides a workflow building canvas, the user can freely add a workflow node 112 through an interactive control (such as a mouse), and move the position of the node 112 through a drag-and-drop manner. In addition, the user can also add a connection between nodes through an interactive control to determine the arrangement order between nodes. And the user can edit target node parameters through an interactive control, such as configuring an output stream variable of the node 112, or configuring an input stream variable of the node 114 at the same time. In the description of examples of the present disclosure, “stream variable” refers to a variable that supports stream operation, which can be dynamically updated and passed in the data stream processing process. After the workflow 106 is built, the user can run the workflow 106, and the workflow 106 can show the output 108 through the user device 102. In some examples, the workflow 106 can also output at an intermediate node, for example, show the output 110 to the user after executing the node 114 to prompt the running progress of the current workflow 106. In some examples, the node 112 of the workflow 106 generates a stream variable 118 and pushes it to the downstream node 114. In some examples, the user can also input content or operation instructions through the user device 102 to interact with the running workflow when the workflow 106 starts running or runs to an intermediate node.

[0029] In this way, the user can freely build the workflow 106 on the platform 104 through the user device 102, and configure the node parameters of the target nodes 112, 114, and 116, etc. in the workflow 106 in advance, configure the node parameters as output stream variables or input stream variables, speed up data transmission in the running of the workflow 106, shorten the user waiting time, or show the output 118 to the user at the intermediate node 114 of the workflow 106, to alleviate user anxiety and improve user experience.

[0030] Figure 2 A flowchart of a method 200 for output of a workflow according to some embodiments of the present disclosure is shown. The method 200 can be performed, for example, by the platform 104 shown in Figure 1 FIG. 1. As shown in Figure 2As shown, at block 202, a run request for a workflow is received from a user. For example, in Figure 1 In the illustrated environment 100, when a user accesses the platform 104 through the user device 102 and triggers a run request for running the workflow 106, the background server of the platform 104 receives the run request for the workflow 106 from the user. It can be understood that in some examples, the workflow 106 can be self-built by the user, or can be a workflow template provided by the platform 104 or a workflow file uploaded from the local through uploading, etc.

[0031] At block 204, in response to receiving the run request, the method 200 includes generating a streaming variable by a first node in the workflow, wherein the first node is configured by the user through a user interface to output the streaming variable, and the streaming variable supports streaming output of data. For example, in Figure 1 In the illustrated environment 100, in response to the received run request, the background server of the platform 104 starts running according to the arrangement order of the nodes in the workflow, and generates the streaming variable 118 by the node 112 and pushes it to the node 114, while the node 112 has been configured by the user through the corresponding user interface to output the streaming variable before the user triggers the run request, and through such configuration, the streaming variable 118 generated by the node 112 supports streaming transmission of data.

[0032] At block 206, the method 200 streams pushes the streaming variable from the first node to a second node in the workflow for streaming output of the workflow. For example, in Figure 1 In the illustrated environment 100, the streaming variable 118 is streamed pushed from the node 112 to the node 114 in the workflow 106 for streaming output of the workflow 106. In some examples, the node 112 can be a generative model node, and after generating the streaming variable 118, the node 112 pushes it to the node 114 through streaming push. Alternatively, in some examples, the node 112 can be a plug-in node, that is, when running the workflow 106, an external plug-in is called when running to the node 112, such as a link reading plug-in, a picture understanding plug-in, an academic search plug-in, a code execution plug-in, an OCR plug-in, etc., and because the node 112 is configured by the user to output the streaming variable, after calling the external plug-in, the streaming variable 118 generated by the node 112 is pushed to the node 114 through streaming push.

[0033] In this way, the user configures the workflow node output variable type in advance through the user interface, and after the user triggers the workflow to start running, the first node generates the streaming variable to the second node for streaming output of the workflow, or outputs information to the user (such as workflow running status prompts, intermediate result outputs, etc.) in the intermediate nodes of the workflow, so that the user can grasp the running status of the workflow in time, or continuously output the content in the last output node of the workflow when the upstream node continuously generates streaming data, and timely push the current running result of the workflow to the user, alleviate the user's anxiety, and improve the user experience.

[0034] It should be understood that in Figure 1 In the environment 100 shown, the node 112 of the workflow 106 can be a start node or an intermediate node, and similarly, the node 116 can also be an end node or an intermediate node of the workflow. In some examples, the data output by one upstream node of the workflow can be referenced by at least one downstream node as input data, or one downstream node of the workflow can reference the output data of at least one upstream node as input data.

[0035] In some examples, the input data of the node in the workflow can be data input by the user through the interactive interface. For example, when the first node includes a generative model node or a plugin node receives input data, the generative model node or the plugin node generates a streaming variable based on the received input data, and pushes the streaming variable to the downstream node in a streaming push manner.

[0036] In some examples, the first node of the workflow node can set a buffer, so that when the first node generates a streaming variable, the streaming variable is pushed to the buffer in a streaming push manner, for the second node to read the streaming variable from the buffer. In some examples, the first node is a generative model node, which receives input data in a streaming receiving manner, and pushes the generated streaming variable to the buffer in a streaming push manner, so as to realize the "read while write" of the generative model node and speed up the data transmission during the running of the workflow.

[0037] In some examples, the second node is configured to input a streaming variable through the user interface, and the streaming variable supports streaming input of data. During the running of the workflow, the first node pushes the streaming variable to the second node in a queue push manner, and the second node reads the streaming variable pushed by the first node in a streaming reading manner. In some examples, the second node is also configured to output a streaming variable through the user interface, so that when the second node reads the streaming variable pushed by the first node from the buffer in a streaming manner, the second node generates a streaming variable output by processing, for streaming output of the second node.

[0038] In some examples, the second node comprises an output node, and the output node is provided with an output template. The output node can read at least one of a constant or a non-streaming variable pushed by an upstream node, or a non-streaming variable or a constant input by a user. When the output node reads the aforementioned data, the output node can fill the output template, and output the filled output template to a user.

[0039] Figure 3 A schematic diagram showing an example of an output node consuming a streaming variable generated by an LLM node is shown in accordance with some embodiments of the present disclosure. In Figure 3 In the example shown, the first node is an LLM node, and the data generated by the LLM node is a streaming variable. The second node is an output node 306, and the output node 306 is configured to input the streaming variable and output the streaming variable. The output node 306 is further provided with an output template 310. When the workflow runs to the LLM node, the data 302 generated by the LLM node is pushed to a buffer 304 in a streaming manner. The output node 306 reads the streaming variable in the buffer 304 in a streaming manner. Meanwhile, the output node 306 can also read a constant 312 and a non-streaming variable 314. As described above, the input data read by the output node can be pushed by an upstream node or input by a user. In Figure 3 In the example shown, the constant 314 is built-in in the output template 310, and the non-streaming variable 314 is input by a user. When the streaming variable 308 read by the output node 306 obtains a final result, the output template 310 is filled with at least one of the constant 312 and the non-streaming variable 314, and a streaming output 318 is generated and output to a downstream node or a user.

[0040] It can be understood that, in Figure 3 In the example shown, since the output node 306 can read data in the buffer 304 in a streaming manner, the LLM node can continuously push the generated data to the buffer 304. In addition, if the data received by the LLM node is a streaming input, the LLM node can implement “read while write”, accelerate the data transmission in the workflow running process, and shorten the workflow running time.

[0041] Figure 4 A schematic diagram showing an example of the logic of the processing manner of an output node reading different types of input data is shown in accordance with some embodiments of the present disclosure. As Figure 4As shown, in the example 400, at block 402, the output node reads the node input data 402. For example, the output node can read the data pushed by the upstream node, or read the data input by the user, or read the data built-in in the output template. At block 404, it is determined whether the output data is constant. For example, the output template is set to output the text structure of "Name: XX, Result: YY", wherein "Name:" and "Result:" can be constants built-in in the output template; the content "XX" after "Name:" is a non-streaming variable, which can be directly obtained through user interaction or read after relevant authorization by the user; the content "YY" after "Result:" is a streaming variable, which can be obtained by reading the input streaming variable in a loop. If the result of the determination at block 404 is "yes", block 406 is executed, and the data is pushed to the output template. For example, the "Name:" and "Result:" built-in in the output template are read, and are directly pushed to the output template and filled. Conversely, if the result of the determination at block 404 is "no", block 408 is executed, and it is determined whether the input data is a streaming variable. If the result of the determination at block 408 is "yes", block 410 is executed, and the input data is read in a loop until the result is obtained. For example, when the output data pushed by the upstream node is a streaming variable, it is determined whether the read streaming variable meets the output requirement. If not, the streaming variable pushed by the upstream node is read in a loop until the streaming variable meeting the output requirement is read, and then block 406 is executed to push the obtained result to the output template and fill. Conversely, if the result of the determination at block 408 is "no", block 412 is executed to convert the input data into a string, and then block 406 is executed to push the data to the output template and fill. Finally, the filled output template is output as text. It should be understood that in block 412, the read input data can also be converted into other non-streaming variables, such as data.

[0042] It should be understood that, in the process of reading the input data and processing the data based on the determination, the output node can fill the output template with all types of data after reading the data, or can fill the output template while reading the data, and the present disclosure does not limit the manner in which the output node fills the output template.

[0043] For better understanding Figure 4In the illustrated example, the following is now taken as an example: for example, the currently running workflow is used to determine whether the user Xiaoming has passed the test of the current stage, and the output node can directly read "Name:" and "Result is:" when the workflow is running, and read the content corresponding to "XX" as "Xiaoming" after interacting with the user or being authorized by the user. By repeatedly reading the data pushed by the upstream node, for example, Xiaoming's selection of the answer to the current test question is repeatedly read, if Xiaoming does not make the correct selection, the test question will continue to be displayed to Xiaoming until Xiaoming selects the correct answer, and it is determined that Xiaoming has passed the test of the current stage, and the content corresponding to "YY" is "pass". Finally, "Name: Xiaoming, Result is: pass" is output.

[0044] In some examples, the workflow further includes a third node, the third node does not support the streaming input of data, when the third node is arranged as a downstream node of the first node, after running the workflow, the streaming variable generated by the first node is pushed to the buffer in a streaming manner, when the third node reads the streaming variable pushed by the first node from the buffer, only after obtaining the complete streaming variable, the obtained complete streaming variable is processed to generate the output of the third node. For example, the third node can be a code node, an API (Application Programming Interface) node, or a condition node, etc.

[0045] Figure 5 A schematic diagram of an example of an upstream node pushing data to a downstream node and the downstream node reading the data according to some embodiments of the present disclosure is shown. In example 500, the upstream node 502 is configured to output streaming variables, and the downstream node 504 is configured to input streaming variables. The upstream node 502 generates streaming variable data A, data B, and data C in a streaming manner. As shown from (1)-(3), when the upstream node 502 generates data A, it is pushed into the buffer 506, while data B is continuously generated; the downstream node 504 continuously reads data from the buffer 506, when data A is stored in the buffer 506, the downstream node 504 reads data A from the buffer 506; at the same time, the upstream node 502 stores data B generated in the buffer 506, and continues to push data C generated in the buffer 506. In this way, until the upstream node 502 ends data generation, the downstream node 504 reads all the streaming variables generated by the upstream node 502 in the buffer. Figure 5

[0046] Figure 6 ​Figures 6A and 6B show schematic diagrams illustrating examples of an upstream node pushing data to a downstream node and the downstream node reading the data according to some embodiments of the present disclosure. In example 600, an upstream node 602 is configured to output a stream variable, and a downstream node 604 does not support stream input of data. The upstream node 602 generates stream variable data A, data B, and data C. As shown in Figure 6A, when the upstream node 602 generates data A, the upstream node 602 pushes data A into a buffer 606. The upstream node 602 continues to generate data B and pushes data B into the buffer 606 while data A is being stored in the buffer 606. In this way, the downstream node 604 reads all of the stream variable data A, data B, and data C from the buffer 606 after the upstream node 602 finishes generating the data. The downstream node 604 then processes all of the stream variable data A, data B, and data C from the buffer 606. Figure 6

[0047] In some examples, the output variable type of the first node of the workflow is configured to be editable. In the method provided by the present disclosure, a user's request to edit the output variable of the first node is received before a user's request to run the workflow is received. In response to receiving the request to edit, an editing interface of the first node is provided to display a user interface for configuring the output variable type to the user, and the output variable type displayed by the user interface includes a stream variable. The first node is configured to output the stream variable in response to receiving the user's selection of the stream variable.

[0048] In some examples, the input variable type of the second node of the workflow is configured to be editable. In the method provided by the present disclosure, a user's request to edit the input variable of the second node is received before a user's request to run the workflow is received. In response to receiving the request to edit, an editing interface of the second node is provided to display a user interface for configuring the input variable type to the user, and the input variable type displayed by the user interface includes a stream variable. The second node is configured to input the stream variable in response to receiving the user's selection of the stream variable.

[0049] In some examples, the stream variable is defined using code programming and is built into the platform code. The stream variable type can be defined as Stream <t>, that is, define the substructure type of the Stream variable type as any generic type, for example, it can be <string>Type. Specifically, a new built-in structure bot.StreamString is added, and a buffer is configured in the structure to implement data caching. When any node is configured as an input variable or an output variable with a variable type of StreamString, it means that the node supports streaming input or streaming output of data accordingly. For example, when the output variable type of the first node is configured as StreamString by the user through the user interface, after the first node generates data, the generated data will be streamed into the buffer. If the input variable type of the second node is also configured as StreamString by the user, the second node can stream read the data pushed to the buffer by the first node from the buffer, thereby speeding up the transmission of data.

[0050] Figures 7A-7B A schematic diagram showing an example of a user selecting a node in a workflow for editing through an interactive control in a workflow building interface according to some embodiments of the present disclosure. Figure 7A As shown in example 700, the user arranges workflow nodes 704, 706, and 708 on the workflow building interface 702, and the user can select the target workflow node through the interactive control 710. For example, before running the workflow, the user triggers a node parameter editing request for the workflow node 710 through the interactive control 710. Figure 7B As shown, in example 700, in response to receiving a user's edit request for a node parameter of a workflow node 706, a node configuration interface 712 for the workflow node 706 is displayed within the workflow building interface 702. The node configuration interface 712 displays multiple parameters 714, 716, 718, etc. of the workflow node 706, and the user can select the target parameter through interactive controls. For example, the node configuration interface 712 can display parameters of the workflow node 706, including model parameters, input parameters, output parameters, etc. It will be appreciated that in some examples, the node configuration interface can display only the node parameters configured as editable, or can display all node parameters.

[0051] Figure 8 A schematic diagram illustrating an example of editing node parameters in a node configuration interface through interactive controls according to some embodiments of the present disclosure is shown. Figure 8 As shown, in the example 800, in response to receiving a user's edit request for a parameter of a workflow node, a node configuration interface 802 is presented to the user, within which a variable name 804 and a variable type 808 corresponding to the parameter are presented, and the user can select to edit the variable name 804 or the variable type 806 through an interactive control 808, in response to the user's selection of the variable type 806, a parameter configuration interface 810 is presented within the node configuration interface 802, within which selectable types under the variable type 806 are presented, including a stream variable Stream <string>, string String, Boolean Boolean, etc. The user can select the variable type through the interactive control 808. For example, the user selects to edit the output parameter of the target workflow node, clicks the workflow node, the page pops up the node configuration interface to the user, and displays the parameters under the workflow node item. The user selects to edit the output variable type of the target workflow node. The parameter configuration interface displays the selectable variable types in the form of a pop-up window, for example, including stream variable Stream <string>, String, Object, Boolean, etc. in response to a user's manipulation of a stream variable Stream <string>The output variable of the target workflow node is configured as an output stream variable.

[0052] In some examples, the output format of a node can also be configured through the node configuration interface, for example, the output format can be selected as one of text, Markdown or JSON. For example, when the first node is an LLM node, the output format of the LLM node can be selected as text or Markdown, and at this time, the corresponding input variable type is a stream variable Stream <string>; if in the historical data, the variable type corresponding to the JSON format is selected as String, and there is only one output, the default output variable type is Stream <string>, the user can edit the output variable type again; if the output in JSON format is more than one, the default output variable type is String, and the user can still edit the output variable type, but at this time the Stream <string>Not selectable. In some examples, the types under the variable type item can also be sorted, as configured by default to stream variables Stream <string>Pinned.

[0053] In some examples, the workflow node includes a loop node. When configuring the output variable type of the loop node, for the output within the loop node, you can choose to set the output type of the LLM node to the stream variable Stream. <string>At this time, an output node is added behind the LLM node, and the data generated by the LLM node is pushed to the output node after each loop; for the output outside the loop body node, if the input type of the loop body is a stream variable Stream <string>Stream <string>Convert to String, and then output the array type variable Array <string>

[0054] Figures 7A-8 The node configuration interface 712 and the parameter configuration interface 810 can be a pop-up window floating above the current interface, or a collapsible window, or a window opened in a new page, or other forms of user interaction interface for workflow node parameters, which are not limited in the present disclosure.

[0055] According to some examples of the present disclosure, after the user configures the output variable type of the workflow node as an output streaming variable through the user interface, the user development threshold is reduced, and various complex workflows can be built by using the platform. For example, the user can wrap an SSE (Server-Sent Events) into a streaming plug-in in a customized manner, and the workflow can be directly called to accept the active push of the server; or the user can build a workflow to process real-time audio and expand the application scenarios of the workflow and the LLM.

[0056] Figure 9 A block diagram of an apparatus for output of a workflow according to some embodiments of the present disclosure is shown. As shown in Figure 9 The apparatus 900 includes a running request receiving module 902 configured to receive a running request of a user for a workflow. The apparatus 900 further includes a streaming variable generating module 904 configured to generate a streaming variable by a first node in the workflow in response to receiving the running request, the first node being configured by the user through a user interface to output a streaming variable, and the streaming variable supporting streaming output of data. The apparatus 900 further includes a streaming variable pushing module 906 configured to stream the streaming variable by the first node to a second node in the workflow for streaming output of the workflow.

[0057] In some examples, the first node includes a generative model node or a plug-in node, and the streaming variable generating module 904 is configured to receive input data by the generative model node or the plug-in node, and generate the streaming variable by the generative model node or the plug-in node in a streaming output manner based on the input data.

[0058] In some examples, a buffer is provided in the first node, and the streaming variable pushing module 906 is configured to stream the streaming variable by the first node to the buffer. The apparatus 900 further includes a streaming variable reading module configured to read the streaming variable from the buffer by the second node.

[0059] In some examples, the second node is configured by a user through a user interface as an input stream variable, the stream variable supports stream input of data, the stream variable pushing module 906 is configured to push the stream variable by the first node to the second node in the workflow in a queue pushing manner. And the stream variable reading module is configured to read the stream variable by the second node from the first node in a stream manner.

[0060] In some examples, the second node is configured by a user through a user interface as an output stream variable, the stream variable pushing module 906 is further configured to read the stream variable pushed by the queue in a circular manner from the buffer by the second node. And the apparatus 900 further comprises a stream output generating module, the stream output generating module is configured to generate a stream output by the second node based on the read stream variable.

[0061] In some examples, the second node comprises an output node, the output node is provided with an output template, the stream variable reading module is configured to read the stream variable and at least one of a non-stream variable and a constant by the output node. The apparatus 900 further comprises an output template filling module, the output template filling module is configured to fill the output template by the output node based on the read stream variable and at least one of a non-stream variable and a constant. And the stream output generating module is configured to fill the output template as a stream output.

[0062] In some examples, the workflow comprises a third node, the apparatus 900 further comprises a complete stream variable reading module, the complete stream variable reading module is configured to read a complete stream variable pushed by the first node from the buffer by the third node. The apparatus 900 further comprises a complete stream variable converting module, the complete stream variable converting module is configured to convert the complete stream variable to a non-stream variable by the third node based on the complete stream variable. The apparatus 900 further comprises a node output generating module, the node output generating module is configured to generate an output of the third node by the third node based on the non-stream variable.

[0063] In some examples, the output variable type of the first node in the workflow is configured as editable, the apparatus 900 further comprises an edit request receiving module, the edit request receiving module is configured to receive an edit request of the output variable type of the first node by a user. The apparatus 900 further comprises an edit interface providing module, the edit interface providing module is configured to provide an edit interface of the first node in response to receiving the edit request, to show a user interface of the output variable type configuration to the user, and the output variable type shown by the user interface comprises a stream variable. The apparatus 900 further comprises a user selection receiving module, the user selection receiving module is configured to receive a selection of the stream variable by the user. The apparatus 900 further comprises a stream variable configuration module, the stream variable configuration module is configured to configure the first node as an output stream variable in response to receiving the selection.

[0064] It is understood that the device 900 of the present disclosure can achieve at least one of the many advantages achievable by the methods or processes described above. For example, the device 900 can display the output results of intermediate nodes or provide prompts indicating the workflow's status to the user before the workflow completes, thereby alleviating the user's anxiety. Furthermore, the device 900 can utilize the output and input of streaming variables during the workflow to accelerate data transmission and reduce user waiting time.

[0065] Figure 10 1 is a block diagram of a device 1000 capable of implementing various embodiments of the present disclosure. Figure 1 The user device 104 is shown. Figure 10 As shown, the device 1000 includes a central processing unit (CPU) and / or a graphics processing unit (GPU) 1001, which can perform various appropriate actions and processes according to computer program instructions stored in a read-only memory (ROM) 1002 or computer program instructions loaded from a storage unit 1008 into a random access memory (RAM) 1003. Various programs and data required for the operation of the device 1000 can also be stored in the RAM 1003. The CPU / GPU 1001, the ROM 1002, and the RAM 1003 are connected to each other via a bus 1004. An input / output (I / O) interface 1005 is also connected to the bus 1004. Although not shown in FIG. Figure 10 As shown in FIG, device 1000 may further include a co-processor.

[0066] Various components in device 1000 are connected to I / O interface 1005, including: an input unit 1006, such as a keyboard, mouse, etc.; an output unit 1007, such as various types of displays, speakers, etc.; a storage unit 1008, such as a magnetic disk, optical disk, etc.; and a communication unit 1009, such as a network card, modem, wireless communication transceiver, etc. The communication unit 1009 allows device 1000 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0067] The various methods or processes described above may be performed by the CPU / GPU 1001. For example, in some embodiments, the methods may be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 1008. In some embodiments, part or all of the computer program may be loaded and / or installed onto the device 1000 via the ROM 1002 and / or the communication unit 1009. When the computer program is loaded into the RAM 1003 and executed by the CPU / GPU 1001, one or more steps or actions in the methods or processes described above may be performed.

[0068] In some embodiments, the methods and processes described above can be tied to a computer program product. The computer program product can include a computer readable storage medium having computer readable program instructions thereon for performing various aspects of the present disclosure.

[0069] The computer readable storage medium can be a tangible device that can retain and store instructions for use by an instruction execution device. The computer readable storage medium can be, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium include the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), a static random access memory (SRAM), a portable compact disc read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as punch-cards or punched tape, a

[0070] Computer readable program instructions described herein can be downloaded to respective computing / processing devices from a computer readable storage medium or to an external computer or external storage device via a network, for example, the Internet, a local area network, a wide area network and / or a wireless network. The network can comprise copper transmission cables, optical transmission fibers, wireless transmission, routers, firewalls, switches, gateway computers and / or edge servers. A network adapter card or network interface in each computing / processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium within the respective computing / processing device.

[0071] Computer readable program instructions for carrying out operations of the present disclosure can be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine dependent instructions, microcode, firmware instructions, state-setting data, or either source code or object code written in any combination of one or more programming languages, including object oriented programming languages and conventional procedural programming languages. The computer readable program instructions can execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computer (for example, through the Internet using an Internet Service Provider). In some embodiments, electronic circuitry including, for example, programmable logic circuitry, field-programmable gate array (FPGA), or programmable logic array (PLA) can execute the computer readable program instructions by utilizing state information of the computer readable program instructions to personalize the electronic circuitry, in order to perform aspects of the present disclosure.

[0072] These computer readable program instructions can be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks. These computer readable program instructions can also be stored in a computer readable storage medium that can include non- transitory computer readable storage media that can direct a computer, a programmable data processing apparatus, and / or other devices to function in a particular manner, such that the computer readable storage medium having instructions for causing an apparatus to implement one or more functions / acts specified in the flowchart and / or block diagram block or blocks can be utilized.

[0073] The computer readable program instructions can also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable apparatus or other device to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions / acts specified in the flowchart and / or block diagram block or blocks.

[0074] The computer program product of the second aspect can include a computer readable storage medium. The computer readable storage medium can include instructions. The instructions can include one or both of: instructions for causing a computer to enable a user equipment device to receive a configuration message from a base station, the configuration message comprising an indication of a set of one or more parameters for a first type of hybrid automatic repeat request process, the first type of hybrid automatic repeat request process being associated with a first type of data; and instructions for causing a computer to enable a user equipment device to receive a configuration message from a base station, the configuration message comprising an indication of a set of one or more parameters for a first type of hybrid automatic repeat request process, the first type of hybrid automatic repeat request process being associated with a first type of data.

[0075] Embodiments of the present disclosure have been described above, with the understanding that these embodiments are exemplary only, and are not restrictive, and are not limited to the disclosed embodiments. Many modifications and changes to the described embodiments are possible, without departing from the scope and spirit of the described embodiments. The selection of terms to be used herein is intended to best explain the principles of the embodiments, practical application, or technical improvement over the technology in the market, or to enable other ordinary skilled persons in the art to understand the embodiments disclosed herein.< / string> < / string> < / string> < / string> < / string> < / string> < / string> < / string> < / string> < / string> < / string> < / string> < / t> ​

Claims

1. A method for outputting a workflow, comprising: Receive user's request to run the workflow; In response to receiving the execution request, a first node in the workflow generates a streaming variable, wherein the first node is configured by a user through a user interface to output the streaming variable, and the streaming variable supports streaming output of data; as well as The first node pushes the streaming variable to a second node in the workflow in a streaming manner for use in the streaming output of the workflow.

2. The method according to claim 1, wherein the first node comprises a generative model node or a plug-in node, and generating a streaming variable by the first node in the workflow comprises: Receiving input data by the generative model node or the plug-in node; as well as Based on the input data, the generative model node or the plug-in node generates the streaming variable in a streaming output manner.

3. The method according to claim 1, wherein a buffer is provided in the first node, and the first node streamingly pushes the streaming variable to the second node in the workflow comprises: Pushing the streaming variable to the buffer in a streaming manner by the first node; as well as The second node reads the streaming variable from the buffer.

4. The method according to claim 3, wherein the second node is configured by a user through a user interface to input a streaming variable, the streaming variable supports streaming input of data, and the first node streamingly pushing the streaming variable to the second node in the workflow comprises: The first node pushes the streaming variable to the second node in the workflow in a queue push manner; as well as The streaming variable is streamed from the first node by the second node.

5. The method according to claim 4, wherein the second node is configured by a user through a user interface to output a streaming variable, and the second node streamingly reading the streaming variable from the first node comprises: The second node cyclically reads the streaming variable pushed by the queue from the buffer; as well as Based on the read streaming variable, the second node processes and generates the streaming output.

6. The method according to claim 5, wherein the second node comprises an output node, the output node is provided with an output template, and the second node processes and generates the stream output, comprising: The output node reads the streaming variable and at least one of the non-streaming variables and constants; Filling an output template by the output node based on the read streaming variable and at least one of the non-streaming variables and constants; as well as The filled output template is used as the streaming output.

7. The method according to claim 3, wherein the workflow includes a third node, and after the first node stream-pushes the streaming variable to the buffer, the method further includes: The third node reads the complete streaming variable pushed by the first node from the buffer; Based on the complete streaming variable, the third node converts the complete streaming variable into a non-streaming variable; and Based on the non-streaming variable, the third node processes and generates an output of the third node.

8. The method according to claim 1, wherein the output variable type of the first node in the workflow is configured to be editable, and before receiving a user's request to run the workflow, the method further comprises: receiving a user's request to edit the output variable type of the first node; In response to receiving the editing request, providing an editing interface of the first node for displaying a user interface for configuring the output variable type to a user, wherein the output variable type displayed by the user interface includes a streaming variable; receiving a user selection of the streaming variable; as well as In response to receiving the selection, the first node is configured to output a streaming variable.

9. The method according to claim 8, wherein the second node input variable type in the workflow is configured to be editable, further comprising: receiving a user's request to edit the input variable type of the second node; In response to receiving the editing request, providing an editing interface of the second node for displaying a user interface for configuring the input variable type to a user, wherein the input variable type displayed in the user interface includes a streaming variable; receiving a user selection of the streaming variable; as well as In response to receiving the selection, the second node is configured to input a streaming variable.

10. A device for outputting a workflow, comprising: A running request receiving module is configured to receive a user's running request for a workflow; a streaming variable generation module configured to generate a streaming variable by a first node in the workflow in response to receiving the run request, wherein the first node is configured by a user through a user interface to output a streaming variable, and the streaming variable supports streaming output of data; as well as The streaming variable pushing module is configured to stream-push the streaming variable from the first node to the second node in the workflow for streaming output of the workflow.

11. An electronic device comprising: processor; as well as A memory coupled to the processor, the memory having instructions stored therein, wherein when the instructions are executed by the processor, the electronic device executes the method according to any one of claims 1 to 9.

12. A computer program product tangibly stored on a non-transitory computer-readable medium and comprising machine-executable instructions that, when executed, cause a machine to implement the method according to any one of claims 1 to 9.