A declarative no-code workflow using LLMs

By using a large language model to receive natural language or pseudocode prompts, cross-platform no-code workflow automation is achieved, solving the problems of programming intensity and maintenance complexity in existing technologies, and improving workflow development efficiency and compatibility.

CN122180941APending Publication Date: 2026-06-09MICROSOFT TECHNOLOGY LICENSING LLC

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
MICROSOFT TECHNOLOGY LICENSING LLC
Filing Date
2024-11-10
Publication Date
2026-06-09

AI Technical Summary

Technical Problem

Existing technologies for workflow automation suffer from problems such as programming intensity, poor cross-platform compatibility, complex maintenance, and difficulty in integrating with external resources, especially when switching between platforms with different programming and data models.

Method used

It adopts a large language model (LLM) to receive natural language or pseudocode prompts, realizes workflow transformation, orchestration and business logic definition, and integrates with existing code through APIs, executable code and existing code to achieve cross-platform compatible no-code workflow automation.

Benefits of technology

It enables rapid development and maintenance of workflows, provides cross-platform compatibility, simplifies the modification and maintenance process of workflows, and reduces programming complexity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122180941A_ABST
    Figure CN122180941A_ABST
Patent Text Reader

Abstract

Example implementations include methods, apparatuses, and computer-readable media configured for implementing workflows using large language models (LLMs). A workflow automation application sends, to a large language model (LLM), a first prompt to convert a first input data source in a first format to a second format. The workflow automation application sends, to the LLM, a second prompt to define a plurality of steps of a workflow that begins with the data source in the second format. The workflow automation application sends, to the LLM, a third prompt to define execution of business logic for each step of the workflow. The workflow automation application receives, from the LLM, output data indicating that each step of the workflow has been executed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to workflow automation, including declarative no-code workflows using Large Language Models (LLM). Background Technology

[0002] Computer software improves organizational efficiency by automating workflows that are typically performed by humans. Automated workflows can usually be implemented as standalone on-premises applications or web services. Standalone on-premises applications can provide specific solutions for workflows, but require intensive programming and maintenance. Web services, which can be implemented on remote servers or cloud networks, offer advantages such as remote access, portability, and scalability, but may still require intensive programming and maintenance.

[0003] Furthermore, while cloud platforms can provide similar services to support workflows, programming and maintenance are often program-specific. For example, cloud platforms may have programming language or data model requirements. This means that when workflows need to run on different platforms based on different programming models, developers again have to repeatedly write code for each platform / programming model.

[0004] Furthermore, when workflows change or new business logic is introduced, new code must be written and deployed. This maintenance issue becomes even more complex when workflows are implemented on multiple platforms and updates are required for each platform. Similar problems can arise when platforms use different data models, potentially requiring different parsing for each platform. Another issue is integration with external resources and downstream destinations. For example, it may be necessary to modify or customize application programming interfaces (APIs) or libraries for each platform. Given these circumstances, improvements to the workflow automation system are needed. Summary of the Invention

[0005] The following is a simplified overview of one or more aspects to provide a basic understanding of them. This overview is not a comprehensive review of all considerations, nor is it intended to identify key or important elements of all aspects, nor to define the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form as an introduction to the more detailed descriptions that follow.

[0006] In some respects, the technology described herein relates to a method for implementing a workflow using a Large Language Model (LLM), comprising: receiving at the LLM a first prompt for converting a first input data source of a first format to a second format; receiving at the LLM a second prompt for defining multiple steps of a workflow that begin with a data source of the second format; receiving at the LLM a third prompt for defining the execution of business logic for each step of the workflow; and executing each step of the workflow by the LLM.

[0007] In some aspects, the technology described herein relates to an apparatus comprising: one or more memories; and one or more processors coupled to the memories, the one or more processors being configured individually or in combination to: send a first prompt to a Large Language Model (LLM) to convert a first input data source of a first format into a second format; send a second prompt to the LLM to define multiple steps of a workflow originating from a data source of the second format; send a third prompt to the LLM to define the execution of business logic for each step of the workflow; and receive output data from the LLM indicating that each step of the workflow has been executed.

[0008] In some respects, the techniques described herein relate to a non-transitory computer-readable medium having computer-executable instructions stored thereon, which, when executed by a computer processor, cause the computer processor to: send a first prompt to a Large Language Model (LLM) to convert a first input data source of a first format into a second format; send a second prompt to the LLM to define multiple steps of a workflow originating from a data source of the second format; send a third prompt to the LLM to define the execution of business logic for each step of the workflow; and receive output data from the LLM indicating that each step of the workflow has been executed.

[0009] To achieve the foregoing and related objectives, one or more aspects include features fully described below and specifically pointed out in the claims. The following description and drawings illustrate certain illustrative features of one or more aspects in detail. However, these features indicate only a few of the various ways in which the principles of each aspect can be employed, and this description is intended to include all such aspects and their equivalents. Attached Figure Description

[0010] Figure 1 This is a diagram illustrating an example architecture of a system for automating workflows using the Large Language Model (LLM), based on the aspects described in this paper.

[0011] Figure 2 This is a conceptual diagram of an example technology used for workflow execution on an execution platform.

[0012] Figure 3 This is a conceptual diagram of an example technology used for workflow execution using LLM.

[0013] Figure 4A and Figure 4B This is a diagram of a sample user interface 400 used in a workflow automation application to generate prompts.

[0014] Figure 5 This is a schematic diagram of an example device for implementing workflows using LLM.

[0015] Figure 6 This is a flowchart of an example of a method for executing workflows using LLM.

[0016] Figure 7 It shows including, for example Figure 5 An example of a device showing additional optional component details. Detailed Implementation

[0017] The specific embodiments described below with reference to the accompanying drawings are intended as a description of various configurations, and not merely as illustrating configurations in which the concepts described herein can be practiced. The detailed description includes specific details to provide a thorough understanding of the various concepts. However, those skilled in the art will appreciate that these concepts can be practiced without these specific details. In some cases, well-known components are shown in block diagram form to avoid obscuring these concepts.

[0018] This disclosure describes various examples related to workflow automation using declarative no-code workflows implemented on one or more Large Language Models (LLMs). Instead of programming a specific platform for executing the software using a specific data model or programming model, a workflow can be implemented as a series of prompts to the LLM. The prompts can define the workflow's inputs, orchestration, and business logic using natural language, symbolic language, and / or pseudocode. The LLM can directly manipulate the prompts to execute the defined steps of the workflow. In some cases, the workflow can be integrated with existing code by requesting the LLM to execute code via an API, native executable code, or external executable code.

[0019] Large Language Models (LLMs) are a term for artificial intelligence or machine learning models that can generate natural language text from massive amounts of data. LLMs use deep neural networks such as the Transformer to learn billions or trillions of words and produce text on any topic or domain. LLMs can also perform a wide variety of natural language tasks, such as classification, summarization, translation, generation, and dialogue.

[0020] In one aspect, this disclosure provides a technique for implementing workflows using multiple queries as an interface between a user and a large language model. The LLM receives a first prompt to convert a first input data source of a first format into a second format. The LLM receives a second prompt to define multiple steps of a workflow originating from a data source of the second format. The LLM receives a third prompt to define the execution of business logic for each step of the workflow. The LLM executes each step of the workflow.

[0021] The implementation of this disclosure can achieve one or more of the following technical effects. The use of LLM allows for faster development of automated workflows. Furthermore, because hints can be written in natural language and / or pseudocode, the use of LLM provides cross-platform compatibility for workflows executed in environments supporting different programming models and / or languages. Additionally, using LLM for no-code workflow execution facilitates easier modification and maintenance of workflows.

[0022] Turn now Figure 1-7 The examples are illustrated with reference to one or more components and one or more methods that can perform the actions or operations described herein, wherein the components and / or actions / operations shown in the dashed lines may be optional. While the following... Figure 6 The operations described herein are presented in a specific order and / or performed by example components, but in some examples, the order of actions and the components performing the actions may vary depending on the implementation. Furthermore, in some examples, one or more of the actions, functions, and / or described components may be performed by a specially programmed processor, a processor executing specially programmed software or a computer-readable medium, or any other combination of hardware and / or software components capable of performing the described actions or functions.

[0023] Figure 1 This is a conceptual diagram 100 illustrating an example architecture of a system 120 that automates workflows using a Large Language Model (LLM) 140. System 120 may, for example, be a cloud network comprising computing resources controlled by a network operator and accessible by public clients such as user devices 110 operated by user 105. For example, system 120 may include multiple data centers 122, which include computing resources such as computer memory and processors. In some implementations, data center 122 may provide computing services for providing computing nodes on computing resources located within the data center. Computing nodes may be containerized execution environments with allocated computing resources. For example, a computing node may be a virtual machine (VM), a process-isolated container, or a kernel-isolated container. Nodes may be instantiated at data center 122 and mirrored with software such as an operating system and applications for the services. System 120 may include edge routers that connect data center 122 to external networks, such as Internet service providers (ISPs) or other autonomous systems (AS) forming the Internet.

[0024] System 120 can provide a Large Language Model (LLM) 140, configured to receive natural language cues and output responses. LLM 140 can be a specific instance or version of LLM AI, which has been trained and fine-tuned on a large corpus of text. The LLM can be a general-purpose pre-trained Transformer (GPT) model. For example, a GPT model can include millions or billions of parameters trained on massive amounts of data, such as gigabytes or trillions of bytes of text. A GPT model is a neural network that learns from large amounts of text data using a Transformer architecture. The model has two main components: an encoder and a decoder. The encoder processes the input text and transforms it into a sequence of vectors called embeddings, which represent the meaning and context of each word. The decoder generates output text by predicting the next word in the sequence based on the embeddings and previous words. The model uses a technique called attention to focus on the most relevant parts of the input and output text and captures long-distance dependencies and relationships between words. The model is trained by using a large corpus of text as input and output, and by minimizing the difference between predicted and actual words. Then, by using smaller and more specialized datasets, the model can be fine-tuned or adapted to a specific task or domain.

[0025] The LLM 140 provides an Application Programming Interface (API) that allows other applications to interact with it. For example, the API can allow users or applications to provide prompts to the LLM 140. A prompt is input or a query given to the LLM AI by a user or program to elicit a specific response from the model. Prompts can be natural language statements or questions, code snippets or commands, or any combination of text or code, depending on the domain and task. Prompts can also be nested or linked, meaning the output of one prompt can be used as input for another, creating more complex and dynamic interactions with the model.

[0026] Workflow automation application 130 may be an application that communicates between LLM 140 and user 105 via an interface. For example, workflow automation application 130 may provide a graphical user interface 132 for user 105 on user device 110. Workflow automation application 130 may receive natural language prompts 112 and / or workflow documents 114 from user 105. Workflow automation application 130 may generate and construct a series of ordered prompts 144 based on the natural language prompts 112 and / or workflow documents 114. For example, ordered prompts 144 may include links and / or nesting. Workflow automation application 130 may provide ordered prompts 144 to LLM 140. LLM may execute each step of the workflow based on the prompts and generate an output data file 146, which workflow automation application 130 may provide to user 105 and / or user device 110.

[0027] In some implementations, workflow automation application 130 includes a document analyzer 134 configured to generate prompts based on workflow document 114. Document analyzer 134 can utilize LLM 140 to extract information from the workflow document for use in the prompts. For example, document analyzer 134 can prompt LLM 140 with workflow document 114 and a request to extract workflow content 142, which includes a first format of the input data source, a second format of the data used in the workflow, and multiple steps identified in workflow document 114. In some implementations, document analyzer 134 can automatically generate prompts based on workflow document 114. In some implementations, workflow analyzer 134 can pre-populate user interface 132 with information extracted from workflow document 114. User 105 can then view or edit the prompts before submitting them to LLM 140.

[0028] In some implementations, workflow automation application 130 includes a prompt validator 136 configured to validate whether the text in each field of the input fields to user interface 132 includes the content required for each prompt. As explained in further detail below, prompts may include a first prompt for transforming an input data source, a second prompt for orchestrating workflow steps, and one or more third prompts for defining business logic for each step. Prompt validator 136 can determine whether the prompt draft includes the information required for each prompt type. For example, prompt validator 136 can determine whether the first prompt includes an input data format and an output data format. Prompt validator 136 can determine whether the second prompt defines multiple steps and whether each step defines an input. Prompt validator 136 can determine whether the third prompt includes an operation or reference to executable code.

[0029] In some implementations, the workflow automation application 130 includes a saved context 138. The saved context 138 may include output from the LLM 140, which is saved for further prompts. In some implementations, the saved context 138 may be stored within the LLM 140. In some implementations, the saved context 138 may include state parameters of the LLM 140, such as embeddings of previously prompted information.

[0030] In some implementations, workflow automation application 130 includes a local executable file 139. The local executable file 139 can be executable code that can be referenced within the prompt. For example, some workflow tasks may have been previously defined by executable code, which can be saved as the local executable file 139. As another example, some workflow steps may be too complex to be defined in the prompt, so the step can be coded as needed.

[0031] Figure 2 This is a conceptual diagram 200 of an example technology for executing workflows on an execution platform 220, such as a personal computer or a cloud network. Typically, the input data source 210 has a platform-independent format. For example, known formats such as XML, JSON, and text can be used to store data external to the execution platform 220.

[0032] Execution platform 220 may include a data parser or converter 230 configured to parse or convert the input data source format into an internal format. The data parser or converter 230 is typically written in code and is platform-specific and data model-specific. If the workflow is moved to a different execution platform with a different programming model (e.g., programming language) or data model, the data parser or converter 230 may need to be modified, which could require multiple development and testing cycles.

[0033] Execution platform 220 may include a workflow orchestration component 240 configured to execute workflow steps sequentially. Similar to a data parser or converter 230, workflow orchestration component 240 may be platform-specific. While workflow orchestration component 240 may provide flexibility in terms of the programming step order, workflow orchestration component 240 itself may conform to platform requirements such as programming models.

[0034] The workflow step business logic implementation 250 may include code configured to execute specific business logic for each step of the workflow. The workflow step business logic implementation 250 is typically platform-specific. In some implementations, the business logic implementation 250 may call API 252, native code 254, or external executable code 256. While such interfaces are designed to be interoperable, integration with downstream and external components may still require a custom business logic implementation 250. For example, API calls may be subject to platform-specific resolution of the internal data model.

[0035] Figure 3 This is a conceptual diagram 300 illustrating an example technique for executing workflows using LLM 140. The input data source 210 is external to the execution platform 320. The workflow automation application 130 can execute on the execution platform, but workflow components can generate platform-independent prompts for LLM 140.

[0036] The data parser or converter 330 is configured to output a first prompt 332 at the LLM to convert the first input data source in the first format into the second format.

[0037] Workflow orchestration component 340 is configured to output a second prompt 342 for defining multiple steps of a workflow that originates from a data source in a second format.

[0038] The workflow step business logic component 350 is configured to output a third hint 352 that defines the execution of the business logic for each step of the workflow. In some implementations, the third hint 352 may define the business logic using natural language or pseudocode, which can be understood by the LLM 140 that generates the response. In some implementations, the third hint 352 may reference code that can be executed by the LLM 140. For example, the third hint 352 may refer to an API 252, native code 254, or external executable code 256. In some implementations, the third hint 352 may indicate information used to adapt the execution platform for executing the code. For example, the hint may identify the execution platform or API contract so that the LLM 140 can correctly invoke the API.

[0039] LLM 140 receives each of the first prompt 332, the second prompt 342, and the third prompt 352 as input and generates output data 360. Specifically, the first prompt 332 causes LLM 140 to process the input data source 210 in a first format to convert it to a second format 334. The second prompt 342 causes LLM 140 to orchestrate multiple steps of the workflow. In some implementations, one or more of the third prompts 352 are nested within the second prompt 342 to execute the business logic for each workflow step. Thus, one or more third prompts 352 cause LLM 140 to execute business logic, and the results are used in the second prompt 342 as input data for, for example, the next step. Output data 360 can be defined by the result of the second prompt 342 or the last of the third prompts 352. For example, output data 360 can be a file created by the workflow, a reference to a file modified by the workflow, or an indication that the workflow is complete.

[0040] Figure 4A and Figure 4B This is an illustration of a sample user interface 400 for a workflow automation application used to generate prompts. The user interface 400 includes multiple fields 410 for inputting a first prompt 332, a second prompt 342, and a third prompt 352. Figure 4A This includes field 410, which corresponds to the first prompt 332 and the second prompt 342. Figure 4B This includes field 410, which corresponds to the third prompt 352.

[0041] In some implementations, the user interface 400 includes a field 420 for identifying the input source, for example, by name, type, and location. Field 420 can be another input mechanism, such as one or more selection lists or a file browser.

[0042] In some implementations, the user interface 400 may present empty fields for the user to input prompts. In other implementations, the user interface 400 may be structured with fields to guide the user in including the required information in the prompts. For example, the fields may include initial text that defines the structure of the prompt, as well as subfields where the user can enter information to complete the prompt. In the case of extracting information from a workflow document, the subfields may include initial text that can be edited by the user.

[0043] The first hint 332's field 430 includes an introduction to the input data format, followed by a subfield 432 for defining the input data format. Field 430 also includes an introduction to the second format, followed by a subfield 434 for defining the second format. Field 430 also includes an introduction to the conversion rules, followed by a subfield 436 for defining the conversion rules.

[0044] The second prompt 342's field 440 may include initial text with a selection list 442 for selecting several steps. Field 440 may then include an introduction to each step, followed by one or more subfields for defining the corresponding step. In some implementations, the subfields may include the purpose of step 444, input pattern definition 446, operation 448, and rule 450. For example, as shown in the first step, the purpose of step 444 is "to call the account API to obtain the user context." Input pattern definition 446 defines a JSON pattern. Operation 448 defines the mapping from the input pattern to the API data contract. Rule 450 defines the relationship between the properties of the JSON pattern and the API data contract. As another example, for the second step, the purpose of step 444 is "to execute native code to generate a file with XML format." Input pattern definition 446 defines the same input pattern as in the first step. Operation 448 defines data processing. Rule 450 defines the business logic used to process the input data.

[0045] In some implementations, the user interface 400 provides templates for defining steps. For example, a third step includes an introduction to the input pattern, but subfields include descriptions of the subfields instead of initial text. Therefore, the user interface 400 provides a structure for generating prompts to guide the execution of workflow steps.

[0046] Figure 4BThe user interface 400 includes a field 410 for generating prompts for business logic used to execute the various steps. For example, field 460 could define a prompt to implement the first step by publishing JSON data to a REST API endpoint using Java. In some implementations, LLM 140 can generate Java code based on more general prompts that define platform-specific requirements such as data model, API type, and location. As another example, field 470 could include a prompt to execute a native executable on an input mode.

[0047] Figure 5 This is a schematic diagram of an example of a device 500 (e.g., a computing device) used to implement a workflow using LLM 140. Device 500 may be implemented as one or more computing devices in system 120.

[0048] In one example, device 500 includes at least one processor 502 and memory 504 configured to execute or store instructions or other parameters relating to an operating system 506, which may execute one or more applications or processes, such as, but not limited to, workflow automation application 130. For example, processor 502 and memory 504 may be separate components communicatively coupled via a bus (e.g., on a motherboard or other part of a computing device, on an integrated circuit such as a system-on-a-chip (SoC),) or integrated components (e.g., processor 502 may include memory 504 as an on-board component). Memory 504 may store instructions, parameters, data structures, etc., for use / execution by processor 502 to perform the functions described herein. In some implementations, memory 504 includes a database 552 for use by workflow automation application 130. In some implementations, device 500 includes an LLM 140, for example, as another application executed on processor 502. Alternatively, LLM 140 may execute on a different device accessible via API 550.

[0049] In one example, workflow automation application 130 includes a user interface 132, a document analyzer 134, a prompt validator 136, a saved context 138, and the above-mentioned... Figure 1 The local executable file under discussion is 139.

[0050] Workflow automation application 130 may further include a data parser or converter 330 configured to send a first prompt to a Large Language Model (LLM) to convert a first input data source in a first format into a second format. Workflow automation application 130 may also include a workflow orchestration component 340 configured to send a second prompt to the LLM to define multiple steps of a workflow originating from a data source in the second format. Workflow automation application 130 may further include a business logic component 350 configured to send a third prompt to the LLM to define the execution of business logic for each step of the workflow. Workflow automation application 130 may be configured to receive output data from the LLM indicating that each step of the workflow has been executed.

[0051] In some implementations, device 500 is implemented as a distributed processing system, for example, having multiple processors 502 and memories 504 distributed across physical systems such as servers, virtual machines, or data centers 122. For example, one or more components of workflow automation application 130 may be implemented as services executing at different data centers 122. These services may communicate via APIs.

[0052] Figure 6 This is a flowchart illustrating an example of method 600 for executing a workflow using a large language model. For example, method 600 can be executed by workflow automation application 130, device 500, and / or one or more of its components to automate the workflow using LLM 140.

[0053] In box 610, method 600 may optionally include receiving a workflow document and prompts for extracting a first format, a second format, and multiple steps. For example, in one aspect, device 500, processor 502, memory 504, and / or workflow automation application 130 may be configured to, or may include, means for receiving the workflow document and extracting the first format, the second format, and prompts for multiple steps. For example, workflow automation application 130 may receive workflow document 114 from user device 110. Workflow automation application 130 may add prompts to LLM 140 for extracting the first format (e.g., the first format of input data source 210), the second format (e.g., converted format 334), and multiple steps.

[0054] Referring to alternative or additional aspects, at box 620, method 600 may further include providing a user interface with fields for inputting a first prompt, a second prompt, and a third prompt. For example, in one aspect, device 500, processor 502, memory 504, workflow automation application 130, and / or user interface 132 may be configured to, or may include, means of providing a user interface 400 with fields 410 for inputting a first prompt 332, a second prompt 342, and a third prompt 352. In some implementations, user interface 400 may pre-populate fields 410 based on information extracted from workflow document 114. For example, the user interface may insert a first format into subfield 432 and a second format into subfield 434.

[0055] Referring to alternative or additional aspects, at box 630, method 600 may further include validating whether the text entered into each field includes the required content for each of the fields. For example, in one aspect, device 500, processor 502, memory 504, workflow automation application 130, and / or prompt validator 136 may be configured to, or may include, means for validating whether the text entered into each field 410 includes the required content for each of the fields. For example, prompt validator 136 may ensure that each subfield includes content that matches the rules for that subfield.

[0056] In box 640, method 600 includes receiving a first prompt at the LLM for converting a first input data source in a first format to a second format. For example, in one aspect, device 500, processor 502, memory 504, and / or LLM 140 may be configured to, or may include, means for receiving a first prompt 332 at the LLM 140 for converting the first input data source 210 from the first format to the second format. For example, LLM 140 may receive the first prompt 332 from workflow automation application 130 and / or data parser or converter 330. For example, data parser or converter 330 may output the first prompt 332 based on field 430. Workflow automation application 130 may invoke API 550 of LLM 140 using the first prompt 332. In some implementations, the first prompt 332 defines the input data format (e.g., in subfield 432), the output data format (e.g., in subfield 434), and the conversion rules (e.g., in subfield 436).

[0057] At block 650, method 600 may optionally include outputting a converted dataset in an output data format to local memory. For example, in one aspect, device 500, processor 502, memory 504, and / or LLM 140 may be configured to, or may include, means for outputting a converted dataset in an output data format to local memory (e.g., memory 504 and / or saved context 138). For example, LLM 140 may output a converted dataset in an output data format to workflow automation application 130 for storage and local operation. For example, when a second prompt 342 and / or a third prompt 352 are generated, workflow automation application 130 may select data from the converted dataset.

[0058] In box 660, method 600 includes receiving a second prompt at the LLM for defining multiple steps of a workflow that begins with a data source of a second format. For example, in one aspect, device 500, processor 502, memory 504, and / or LLM 140 may be configured to, or may include means for receiving a second prompt 342 at the LLM for defining multiple steps of a workflow that begins with a data source of a second format. For example, LLM 140 may receive the second prompt 342 from workflow automation application 130 and / or workflow orchestration component 340. For example, workflow orchestration component 340 may output the second prompt 342 based on field 440. Workflow automation application 130 may invoke API 550 of LLM 140 using the second prompt 342. In some implementations, for a first step, the second prompt 342 identifies an attribute of the input data source of the second format (e.g., input pattern definition 446) and an operation on that attribute (e.g., operation 448). In some implementations, the second prompt 342 identifies a rule for performing the operation (e.g., rule 450).

[0059] In box 670, method 600 includes receiving a third prompt at the LLM to define the execution of business logic for each step of the workflow. For example, in one aspect, device 500, processor 502, memory 504, and / or LLM 140 may be configured to, or may include means for receiving a third prompt 352 at the LLM 140 to define the execution of business logic for each step of the workflow. For example, LLM 140 may receive the third prompt 352 from workflow automation application 130 and / or business logic component 350. For example, business logic component 350 may output the third prompt 352 based on fields 460 or 470 corresponding to the respective step of the workflow. Workflow automation application 130 may invoke API 550 of LLM 140 using the third prompt 352. In some implementations, the third prompt 352 invokes code execution via one or more of API 252, native code 254, or external executable code 256. LLM 140 may determine how to execute the code on the appropriate execution platform 320.

[0060] Referring to alternative or additional aspects, at block 680, method 600 may further include nesting a third prompt within a corresponding step of the second prompt. For example, in one aspect, device 500, processor 502, memory 504, workflow automation application 130, and / or LLM 140 may be configured to, or may include, means for nesting a third prompt 352 within a corresponding step of the second prompt 342. In some implementations, workflow automation application 130 may nest the third prompt 352 before sending the second prompt 342 to LLM 140. In other implementations, when orchestrating a workflow according to the second prompt 342, LLM 140 may locate the third prompt 352 and nest it within a corresponding step of the workflow.

[0061] In box 690, method 600 includes executing each step of the workflow by the LLM. For example, in one aspect, device 500, processor 502, memory 504, and / or LLM 140 may be configured to, or may include, means for executing each step of the workflow by the LLM 140. For example, the LLM 140 may evaluate each of a first prompt 332, a second prompt 342, and a third prompt 352. When executing the second prompt 342, the LLM 140 may store the output of the previous step as a saved context 138 and / or return the output to the workflow automation application 130 for inclusion in a subsequent prompt (e.g., the third prompt 352). In some implementations, executing a step of the workflow may include executing code defined by the third prompt 352. The LLM 140 may output output data 360 to the workflow automation application 130 after executing each step of the workflow.

[0062] Figure 7 It shows including, for example Figure 5 An example of device 700 with additional optional component details is shown. In one aspect, device 700 includes processor 702, which may be similar to processor 702 for performing processing functions associated with one or more components and functions described herein. Processor 702 may include a single or multiple processor groups or a multi-core processor. Furthermore, processor 702 may be implemented as an integrated processing system and / or a distributed processing system.

[0063] Device 700 also includes memory 704, which may be similar to memory 504, such as for storing a native version of an operating system (or components thereof) and / or applications executed by processor 702, such as workflow automation application 130, user interface 132, document analyzer 134, prompt verifier 136, etc. Memory 704 may include computer-available memory types such as random access memory (RAM), read-only memory (ROM), magnetic tape, disk, optical disk, volatile memory, non-volatile memory, and any combination thereof. Processor 702 may execute instructions stored on memory 704 to cause device 700 to perform the methods discussed above with respect to Figures 4-7.

[0064] Furthermore, device 700 includes a communication component 706, which utilizes the hardware, software, and services described herein to provide for establishing and maintaining communication with one or more other devices, parties, entities, etc. Communication component 706 carries communication between components on device 700 and between device 700 and external devices (e.g., devices located on a communication network and / or devices serially or locally connected to device 700). For example, communication component 706 may include one or more buses and may also include transmit chain components and receive chain components, respectively associated with a wireless or wired transmitter and receiver, operable for connection to external devices.

[0065] Additionally, device 700 may include data repository 708, which may be any suitable combination of hardware and / or software, providing large-capacity storage for information, databases, and programs used in conjunction with the aspects described herein. For example, data repository 708 may be, or may include, a data store for operating systems (or components thereof) not currently executed by processor 702, applications, related parameters, etc. Furthermore, data repository 708 may be a data store for workflow automation application 130.

[0066] Device 700 may optionally include a user interface component 710 operable to receive input from a user of device 700 and also operable to generate output for presentation to the user. User interface component 710 may include one or more input devices, including but not limited to a keyboard, numeric keypad, mouse, touch-sensitive display, navigation keys, function keys, microphone, voice recognition component, gesture recognition component, depth sensor, gaze tracking sensor, switch / button, any other mechanism capable of receiving input from the user, or any combination thereof. Furthermore, user interface component 710 may include one or more output devices, including but not limited to a display, speaker, haptic feedback mechanism, printer, any other mechanism capable of presenting output to the user, or any combination thereof.

[0067] The device 700 also includes a workflow automation application 130 for automating workflows using the LLM 140.

[0068] As an example, an element, or any part thereof, or any combination thereof, may be implemented using a “processing system” comprising one or more processors. Examples of processors include microprocessors, microcontrollers, digital signal processors (DSPs), field-programmable gate arrays (FPGAs), programmable logic devices (PLDs), state machines, gated logic, discrete hardware circuits, and other suitable hardware configured to perform the various functionalities described throughout this disclosure. One or more processors in the processing system may execute software. Software should be interpreted broadly as average instructions, instruction sets, code, code segments, program code, programs, subroutines, software modules, applications, software applications, software packages, routines, subroutines, objects, executable files, threads of execution, procedures, functions, etc., whether referred to as software, firmware, middleware, microcode, hardware description languages, or otherwise.

[0069] Therefore, in one or more aspects, one or more of the described functions can be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the function can be stored on or encoded as one or more instructions or code on a computer-readable medium. Computer-readable media includes computer storage media. Storage media can be any available medium accessible to a computer. By way of example and not limitation, such computer-readable media can include RAM, ROM, EEPROM, CD-ROM or other optical disc storage, disk storage or other magnetic storage devices, or any other medium that can be used to carry or store program code in the form of instructions or data structures and is accessible to a computer. Disks and optical discs as used herein include compact optical discs (CDs), laser discs, optical discs, digital versatile optical discs (DVDs), and floppy disks, wherein disks typically reproduce data magnetically, while optical discs reproduce data optically using lasers. Combinations of the above should also be included within the scope of computer-readable media. Non-transitory computer-readable media do not include transient signals.

[0070] The following numbered clauses provide an overview of various aspects of this disclosure:

[0071] Clause 1. A method for implementing a workflow using a Large Language Model (LLM), comprising: receiving at the LLM a first prompt for converting a first input data source of a first format to a second format; receiving at the LLM a second prompt for defining a plurality of steps of a workflow originating from the data source of the second format; receiving at the LLM a third prompt for defining the execution of business logic for each step of the workflow; and executing each step of the workflow by the LLM.

[0072] Clause 2. The method as described in Clause 1, wherein the first prompt defines the input data format, the output data format, and the conversion rules.

[0073] Clause 3. The method as described in Clause 2 further includes outputting the converted dataset of the output data format to local storage.

[0074] Clause 4. The method as described in any one of Clauses 1-3, wherein, for the first step, the second prompt identifies the attributes of the input data source in the second format and the operation on the attributes.

[0075] Clause 5. The method of any one of Clauses 1-4, wherein the third prompt invokes the execution of the code via one or more of an application programming interface, a local executable, or an external executable.

[0076] Clause 6. The method as described in any one of Clauses 1-5 further includes the step of nesting the third prompt within the corresponding step of the second prompt.

[0077] Clause 7. The method of any one of Clauses 1-6 further includes receiving a workflow document and prompts for extracting the first format, the second format, and the plurality of steps.

[0078] Clause 8. The method of any one of Clauses 1-7 further comprises: providing a user interface with fields for inputting the first prompt, the second prompt, and the third prompt; and verifying that the text input into each of the fields includes the content required for each prompt.

[0079] Clause 9. An apparatus comprising: one or more memories; and one or more processors coupled to the memories, the one or more processors being individually or in combination configured to: send a first prompt to a Large Language Model (LLM) for converting a first input data source of a first format to a second format; send a second prompt to the LLM for defining a plurality of steps of a workflow originating from the data source of the second format; send a third prompt to the LLM for defining the execution of business logic for each step of the workflow; and receive output data from the LLM indicating that each step of the workflow has been executed.

[0080] Clause 10. The apparatus as described in Clause 9, wherein the first prompt defines the input data format, the output data format, and the conversion rules.

[0081] Clause 11. The apparatus as described in Clause 10, wherein the one or more processors are individually or in combination configured to receive, in response to the first prompt, a converted dataset of the output data format from the LLM.

[0082] Clause 12. The apparatus as described in any one of Clauses 9-11, wherein, for the first step, the second prompt identifies the attributes of the input data source in the second format and the operation on the attributes.

[0083] Clause 13. The apparatus of any one of Clauses 9-12, wherein the third prompt invokes the execution of code via one or more of an application programming interface, a local executable, or an external executable.

[0084] Clause 14. The apparatus of any one of Clauses 9-13, wherein the one or more processors are configured individually or in combination to nest the third prompt within a corresponding step of the second prompt.

[0085] Clause 15. The apparatus of any one of Clauses 9-14, wherein the one or more processors are individually or in combination configured to send a workflow document to the LLM and prompts for extracting the first format, the second format, and the plurality of steps.

[0086] Clause 16. The apparatus of any one of Clauses 9-15, wherein the one or more processors are individually or in combination configured to: provide a user interface having fields for inputting the first prompt, the second prompt, and the third prompt; and verify whether the text input into each of the fields includes the content required for each prompt.

[0087] Clause 17. A non-transitory computer-readable medium storing computer-executable instructions, which, when executed by a computer processor, cause the computer processor to: send a first prompt to a Large Language Model (LLM) to convert a first input data source of a first format to a second format; send a second prompt to the LLM to define a plurality of steps in a workflow originating from the data source of the second format; send a third prompt to the LLM to define the execution of business logic for each step of the workflow; and receive output data from the LLM indicating that each step of the workflow has been executed.

[0088] The foregoing description is provided to enable those skilled in the art to practice the various aspects described herein. Those skilled in the art will readily understand various modifications to these aspects, and the general principles defined herein can be applied to other aspects. Therefore, the claims are not intended to be limited to the aspects shown herein, but are to conform to the full scope consistent with the language of the claims, wherein reference to an element in the singular, unless expressly stated, is not intended to mean "one and only one," but rather "one or more." Unless otherwise specifically stated, the term "some" means one or more. All structural and functional equivalents of elements of the various aspects described herein that are known or will be known hereafter by those skilled in the art are intended to be covered by the claims. Furthermore, nothing disclosed herein is intended to be made public, whether or not such disclosure is expressly stated in the claims. Unless an element is expressly stated using the phrase "means for…", an element in a claim should not be construed as a means plus a function.

Claims

1. A method (600) for implementing workflow using a large language model (LLM (140)), comprising: At the LLM (140), a first prompt (332) is received to convert a first input data source (210) of a first format into a second format (334). A second prompt (342) is received at the LLM (140) to define multiple steps of the workflow of the data source that begins in the second format (334). At the LLM (140), a third hint (352) is received to define the execution of the business logic for each step (444) of the workflow; and Each step (444) of the workflow is executed by the LLM (140).

2. The method (600) according to claim 1, wherein the first prompt (332) defines the input data format, the output data (360) format, and the conversion rule (450).

3. The method (600) according to claim 2, further comprising: The converted dataset in the output data (360) format is output to local storage (504).

4. The method (600) according to claim 1, wherein, for the first step (444), the second prompt (342) identifies the attributes of the input data source (210) of the second format (334) and the operation (448) on the attributes.

5. The method (600) according to claim 1, wherein the third prompt (352) requests execution of the code via one or more of an application programming interface, a local executable, or an external executable (256).

6. The method (600) according to claim 1, further comprising: The third prompt (352) is nested within the corresponding step (444) of the second prompt (342).

7. The method (600) according to claim 1, further comprising: Receive workflow document (114) and prompts for extracting the first format, the second format (334) and the plurality of steps.

8. The method (600) according to claim 1, further comprising: Provides a user (105) interface (400) (132) with fields (410) for inputting the first prompt (332), the second prompt (342), and the third prompt (352); and Verify that the text entered into each field of the field (410) includes the required content for each prompt.

9. An apparatus (500) comprising: One or more memory units; as well as One or more processors, coupled to the memory (704) (504), and configured individually or in combination to: Send a first prompt (332) to the large language model (LLM (140)) to convert the first input data source (210) of the first format into the second format (334); Send a second prompt (342) to the LLM (140) to define multiple steps of the workflow of the data source starting from the second format (334). Send a third hint (352) to the LLM (140) to define the execution of the business logic for each step (444) of the workflow; and Receive output data (360) from the LLM (140) indicating that each step (444) of the workflow has been executed.

10. The apparatus (500) according to claim 9, wherein the first prompt (332) defines the input data format, the output data (360) format, and the conversion rule (450).

11. The apparatus (500) of claim 10, wherein the one or more processors are individually or in combination configured to: receive a converted dataset in the output data (360) format from the LLM (140) in response to the first prompt (332).

12. The apparatus (500) according to claim 9, wherein, for the first step (444), the second prompt (342) identifies the attributes of the input data source (210) of the second format (334) and the operation (448) on the attributes.

13. The apparatus (500) of claim 9, wherein the third prompt (352) requests execution of code via one or more of an application programming interface, a local executable, or an external executable (256).

14. The apparatus (500) of claim 9, wherein the one or more processors are configured individually or in combination to nest the third prompt (352) within the corresponding step (444) of the second prompt (342).

15. The apparatus (500) of claim 9, wherein the one or more processors are individually or in combination configured to send a workflow document (114) to the LLM (140) and prompts for extracting the first format, the second format (334) and the plurality of steps.

16. The apparatus (500) of claim 9, wherein the one or more processors are configured individually or in combination to: Provides a user (105) interface (400) (132) with fields (410) for inputting the first prompt (332), the second prompt (342), and the third prompt (352); and Verify that the text entered into each field of the field (410) includes the required content for each prompt.

17. A non-transitory computer-readable medium storing computer-executable instructions, which, when executed by a computer processor (702) (502), cause the computer processor (702) (502) to: Send a first prompt (332) to the large language model (LLM (140)) to convert the first input data source (210) of the first format into the second format (334); Send a second prompt (342) to the LLM (140) to define multiple steps of the workflow of the data source starting from the second format (334). Send a third hint (352) to the LLM (140) to define the execution of the business logic for each step (444) of the workflow; and Receive output data (360) from the LLM (140) indicating that each step (444) of the workflow has been executed.

18. The non-transitory computer-readable medium of claim 17, wherein the first prompt (332) defines an input data format, an output data (360) format, and a conversion rule (450).

19. The non-transitory computer-readable medium of claim 17, wherein, for the first step (444), the second prompt (342) identifies the attributes of the input data source (210) of the second format (334) and the operation (448) on the attributes.

20. The non-transitory computer-readable medium of claim 17, wherein the third prompt (352) requests execution of the code via one or more of an application programming interface, a local executable, or an external executable (256).