Systems and methods for converting diagrams to workflows
A method includes receiving data representative of a diagram, converting the data to a large language model (LLM) prompt, providing the LLM prompt to an LLM, receiving, from the LLM, based on the LLM prompt, a skeleton workflow, wherein the skeleton workflow includes a placeholder activity, and wherein the placeholder activity includes a placeholder value for a property of the placeholder activity, and generating a workflow based on the skeleton workflow and the data, wherein generating the workflow includes defining the placeholder value for the property of the placeholder activity based on the data.
1 . A method comprising:
receiving a structured payload representative of a diagram;
converting the structured payload to a large language model (LLM) prompt by compressing the structured payload to a compressed structured payload, wherein the compressed structured payload is smaller in size than the structured payload, but maintains a set of characteristics of the structured payload;
providing the LLM prompt to an LLM;
receiving, from the LLM, based on the LLM prompt, a skeleton workflow, wherein the skeleton workflow includes a placeholder activity, and wherein the placeholder activity includes a placeholder value for a property of the placeholder activity;
generating a workflow based on the skeleton workflow and the structured payload, wherein generating the workflow includes defining the placeholder value for the property of the placeholder activity based on the structured payload by confirming the placeholder value with the structured payload or replacing the placeholder value with a new value; and
executing the workflow.
2 . The method of claim 1 , wherein the method is performed by a client instance and wherein the structured payload is received from a source external to the client instance.
3 . The method of claim 2 , wherein the source external to the client instance comprises a flow diagram design software application.
4 . The method of claim 2 , further comprising transmitting the workflow to the source external to the client instance.
5 . The method of claim 4 , further comprising:
receiving, from the source external to the client instance, a modification to the workflow; and
updating the workflow based on the modification.
6 . The method of claim 4 , further comprising:
receiving an input comprising a modification to the workflow;
updating the workflow based on the modification; and
transmitting the modification to the source external to the client instance.
7 . The method of claim 1 , wherein the structured payload representative of the diagram comprises an image, and wherein converting the structured payload to the LLM prompt comprises:
providing the structured payload to an additional LLM; and
receiving the LLM prompt from the additional LLM.
8 . The method of claim 1 , wherein the property of the placeholder activity comprises an input to the placeholder activity, an output of the placeholder activity, one or more actions that take place to generate the output of the placeholder activity based on the input to the placeholder activity, a label of the placeholder activity, a description of the placeholder activity, a rule to apply during performance of the placeholder activity, a trigger that initiates the placeholder activity, or an advanced property of the placeholder activity.
9 . The method of claim 1 , wherein the LLM is trained on one or more other workflows, one or more business process model and notation (BPMN) conventions, one or more industry standard operating procedures, one or more industry best practices, one or more publications, or any combination thereof.
10 . A system, comprising:
processing circuitry; and
a memory, accessible by the processing circuitry, and storing instructions that, when executed by the processing circuitry, cause the processing circuitry to execute a client instance, wherein the client instance is configured to perform operations comprising:
receiving, from a source external to the client instance, a structured payload representative of a diagram;
converting the structured payload to a large language model (LLM) prompt by compressing the structured payload to a compressed structured payload, wherein the compressed structured payload is smaller in size than the structured payload, but maintains a set of characteristics of the structured payload;
providing the LLM prompt to an LLM;
receiving, from the LLM, based on the LLM prompt, a skeleton workflow, wherein the skeleton workflow includes a placeholder activity, and wherein the placeholder activity includes a placeholder value for a property of the placeholder activity;
generating a workflow based on the skeleton workflow and the structured payload, wherein generating the workflow includes defining the placeholder value for the property of the placeholder activity based on the structured payload by confirming the placeholder value with the structured payload or replacing the placeholder value with a new value; and
transmitting a representation of the workflow to the source external to the client instance.
11 . The system of claim 10 , wherein the structured payload representative of the diagram comprises a payload generated by a plugin of the source external to the client instance based on the diagram, wherein the payload comprises a text description of the diagram.
12 . The system of claim 11 , wherein the payload comprises a JavaScript Object Notation (JSON) file.
13 . The system of claim 12 , wherein converting the structured payload to the LLM prompt comprises converting the payload to a minimal JSON file, wherein the minimal JSON file is smaller in size than the payload.
14 . A non-transitory, computer readable medium comprising instructions that, when executed by processing circuitry, cause the processing circuitry to perform operations comprising:
receiving a structured payload representative of a diagram;
converting the structured payload to a large language model (LLM) prompt by compressing the structured payload to a compressed structured payload, wherein the compressed structured payload is smaller in size than the structured payload, but maintains a set of characteristics of the structured payload;
providing the LLM prompt to an LLM;
receiving, from the LLM, based on the LLM prompt, a skeleton workflow, wherein the skeleton workflow includes a placeholder activity, and wherein the placeholder activity includes a placeholder value for a property of the placeholder activity;
generating a workflow based on the skeleton workflow and the structured payload, wherein generating the workflow includes defining the placeholder value for the property of the placeholder activity based on the structured payload by confirming the placeholder value with the structured payload or replacing the placeholder value with a new value; and
executing the workflow.
15 . The non-transitory, computer readable medium of claim 14 , wherein the structured payload representative of the diagram comprises an image of the diagram.
16 . The non-transitory, computer readable medium of claim 14 , wherein processor is configured to execute a client instance, and wherein the structured payload representative of the diagram is received from a source external to the client instance.
17 . The non-transitory, computer readable medium of claim 16 , wherein the structured payload representative of the diagram comprises a payload generated by a plugin of the source external to the client instance based on the diagram, wherein the payload comprises a text description of the diagram.
18 . The non-transitory, computer readable medium of claim 17 , wherein the payload comprises a JavaScript Object Notation (JSON) file.
19 . The non-transitory, computer readable medium of claim 16 , wherein the source external to the client instance comprises a flow diagram design software application.
20 . The non-transitory, computer readable medium of claim 16 , wherein the operations further comprise transmitting a representation of the workflow to the source external to the client instance.