It has been over a year since OpenAI launched ChatGPT, marking a significant period of evolution. The success of ChatGPT has sparked interest and conversations around the impact of AI within the broader landscape.
Whilst there is no doubt that AI is a game-changing technology, the long-term impact and changes remain to be seen. The conversation around this subject brings up topics beyond the technicalities, such as safeguards, data privacy, copyright, and intellectual property as well as legal implications.
In enterprise usage, for instance, the challenges associated with employing shared cloud services are evident. There might be a need for a private instance (e.g. on the Azure Cloud) to ensure that the client-identifying data (CID) is not shared with other companies and entities. Enterprises must, therefore, carefully evaluate when and where to accelerate AI adoption and when to exercise caution.
When it comes to Flowable, we have long been interested in how AI can support the end-user as well as the modeling process. As AI gains prominence as a pivotal technology and enterprises increasingly seek to leverage its capabilities, we are actively exploring diverse avenues for integrating AI into process automation, recognizing the need for strategic discernment in its implementation.
In the past, we’ve talked about many things around AI and focused heavily on the runtime side of things. In the following, we will explore another angle: the use of ChatGPT in creating models and forms in Flowable.
Irrespective of the underlying technology, users of Flowable experience significant added value using AI as part of the model. The largest value add is for the end-user, who executes cases and processes countless times throughout the day.
Different types of AI technologies can be used and combined to improve the user experience for your model. This includes of course calling out to ChatGPT and other REST-based AI providers. Based on the approach “The whole is greater than the sum of its parts” Flowable can be used to orchestrate multiple AI technologies and provide value to the user with that. However, in practice, this is just a collection of multiple service registry tasks in a row.
AI can also bring benefits during model creation and optimization. In general, there are two approaches to do this:
1. Describe the model in the form of a text or audio:
This could be done in either a specific or abstract way. This approach is text intensive but allows us also to use a generic phrase like “Create an insurance claim process with typical fields”. This might give us a starting point, without analyzing our own process itself.
2. Take a picture of an already existing draft and convert this to the actual model:
While this approach sounds like OCR, it still opens the possibility of learning and enhancing the model with AI afterward. It also allows us to detect different scenarios of the business process and model them in the diagram, as well as field type prediction and potential values. The most value can be achieved when combining both approaches. We scan a form with the fields that we have, create a digital version out of this, and generate a typical process for this, maybe even enhancing the form for different steps.
In the past, we experimented with generating BPMN models based on a textual description using ChatGPT 3.5.
Using ChatGPT 3.5 yielded mixed results, for instance, mismatching XML tags for the display of the diagram and limited knowledge about boundary events. However, with ChatGPT 4.0 the output of a BPMN model improved quite a lot.
However, we found that the best and most predictable results are achieved when we used an intermediate, JSON-based language, describing the model which we would like to have. By clearly defining the constraints of where ChatGPT is allowed to operate in, the resulting model syntax is correct and close(r) to what the user expects. It also improves the performance since the generation is quicker due to a less verbose output.
There are various ways to use ChatGPT or other generative AIs in the context of Flowable. Creating models is a powerful way to speed up the initial creation of a process or app but can be also used to create forms or other elements later in the process. Using a customized intermediate definition language of the process rather than BPMN helps to achieve predictable importable results.
If you are interested in how to combine Flowable and AI, we invite you to watch our keynote during FlowFest’23 on “Real-life applications with Flowable”:
Tools like ChatGPT can handle a variety of business tasks, automating nearly everything. And it’s true, GenAI really can do a wide range of tasks that humans do currently. Why not let business users work directly with AI then? And what about Agentic AI?
In the past few months, this has culminated into a clear understanding of the strengths and weaknesses of the Generative AI (GenAI) technology; and where it makes sense to integrate with it and – perhaps more important – where it doesn’t make sense.
The key to managing complexity is to combine different and multiple tools leads to better, faster, and more maintainable solutions. For example, combining BPMN with CMMN.