Generating workflows by using AI
You can use an AI assistant to generate and edit workflows based on your instructions. Sample prompts and context-specific help, including dynamic documentation searches, are also provided by the assistant.
In Concert Workflows, you can use an AI assistant, powered by IBM® watsonx.ai or vLLM models, to generate and edit workflows based on natural language prompts that you provide.
To generate a workflow, you prompt the assistant with the details of the task that you want to automate. For example, you might prompt the assistant to create a workflow that retrieves and displays all users in your Concert Workflows instance. The workflow is then automatically generated and you can customize it in the workflow editor.
You can also prompt the assistant to automatically edit an existing workflow, regardless of how the workflow was created.
When asked, the assistant can also provide extensive help, including procedural, conceptual, and troubleshooting information.
Enabling the assistant
The assistant is not enabled by default. To enable it, you must first set AI-related parameters in the configuration parameters file (params.ini) that is used to configure your Concert Workflows instance when you install or upgrade. You then install a new instance or upgrade your existing one. After you install or upgrade, the AI assistant is ready for use in the workflow editor.
- On your Concert Workflows installation host, go to the <installation folder>/ibm-concert folder, where <installation folder> is the folder that you downloaded the Concert software package to.
- Edit the configuration parameters file (/etc/params.ini) and set the AI-related parameters. See the following table for more information:
Table 1. AI-related configuration parameters in params.ini Parameter Description ENABLE_AISet this value to
trueto enable the AI assistant or tofalseto disable it. By default, the assistant is disabled.LLM_PROVIDERThe large language model (LLM) provider that you want to use. You can specify one of the following values:watsonxvllm
By default, this parameter’s value is set to
watsonx.Note:- If your chosen provider is
watsonx, you must specify values for theWATSONX_API_URL,WATSONX_API_PROJECT_ID, andWATSONX_API_USERparameters. - If your chosen provider is
vllm, you must specify values for theLLM_MODEL,EMBED_MODEL, andLLM_BASE_URLparameters.
WATSONX_API_URLIfENABLE_AIistrueand your chosen provider iswatsonx, set this value to the URL of the on-premises or SaaS watsonx.ai instance, for example:https://your-cp4d-cluster.example.com(for an on-premises watsonx.ai instance).https://us-south.ml.cloud.ibm.com(for a SaaS watsonx.ai instance).
WATSONX_API_PROJECT_IDIf
ENABLE_AIistrueand your chosen provider iswatsonx, set this value to the ID of the watsonx.ai project that you want to use.WATSONX_API_USERYour Concert license entitles you to use an instance of watsonx.ai via IBM Cloud Pak for Data. If
ENABLE_AIistrue, your chosen provider iswatsonx, and you want to connect to this instance, set this value to the username that IBM Cloud Pak for Data uses to authenticate to the watsonx.ai instance.WATSONX_API_MODEL_IDOptional: If
ENABLE_AIistrueand your chosen provider iswatsonx, you can set this value to the watsonx.ai model that is used. The default value for this attribute is"ibm/granite-4-h-small", which represents IBM's Granite-4.0-H-Small model.WATSONX_API_VERSIONOptional: If
ENABLE_AIistrueand your chosen provider iswatsonx, you can set this value to the IBM watsonx.ai version that is used. The default value, and only valid value, is "2024-03-14".WATSONX_API_INSTANCE_IDOptional: If
ENABLE_AIistrue, your chosen provider iswatsonx, and the watsonx.ai instance is a dedicated one, you can set this value to the instance ID.LLM_MODELIfENABLE_AIistrueand your chosen provider isvLLM, set this value to the name of the vLLM-provided model that you want to use for generating workflows. Only IBM Granite and Mistral AI models are supported, and the following models are recommended:- IBM’s Granite-4.1-30B model. To use this model, set this value to
“ibm-granite/granite-4.1-30b“. - Mistral AI’s Mistral Small 4 model. To use this model, set this value to
“mistralai/Mistral-Small-4“.
EMBED_MODELIf
ENABLE_AIistrueand your chosen provider isvLLM, set this value to the name of the vLLM-provided text embedding model that you want to use. Embedding models use vector-based comparisons between embedded prompts, block descriptions, and documentation to retrieve the most relevant blocks and documentation extracts in response to prompts.Only IBM Granite Embedding models are supported, and the Granite-Embedding-125m-English model is recommended. To use this model, set this value to
“ibm-granite/granite-embedding-125m-english“.LLM_BASE_URLIf
ENABLE_AIistrueand your chosen provider isvLLM, set this value to the URL of the vLLM-provided model instance that will be used to generate workflows, for example:https://ml-serving.example.com:8443 - Provide the sensitive credentials that will be used to authenticate to the LLM instance during the installation or upgrade.
- If you want to use the on-premises instance of watsonx.ai that your Concert license entitles you to, and you set the
WATSONX_API_USERparameter in params.ini, you must provide the corresponding password by running this command:
Replace <my-secret-password> with the password.export WATSONX_API_PASSWORD=<my-secret-password> - If you want to use a SaaS instance of watsonx.ai, you must provide the API key that is used to authenticate to the SaaS watsonx.ai instance by running this command:
Replace <my-watsonx-api-key> with the API key. If required, you can generate a key here.export WATSONX_API_KEY=<my-watsonx-api-key> - If you want to use a vLLM-provided model instance which requires authentication, you must provide the API key that is used to authenticate to the vLLM instance by running this command:
Replace <my-vllm-api-key> with the API key.export LLM_API_KEY=<my-vllm-api-key>
- If you want to use the on-premises instance of watsonx.ai that your Concert license entitles you to, and you set the
- If you are upgrading an existing Concert Workflows instance in which the AI assistant is enabled, remove the legacy AI configuration.
- Edit params.ini and check whether the
WORKFLOWS_OVERRIDE_VALUESparameter is set to the name of a custom file. - If a custom file name is set, edit the custom file and check whether it contains an
rna.instance.aisection. If it does, complete only one of these actions:- If the
rna.instance.aisection is the only one in the custom file, do not change the custom file. Instead, remove theWORKFLOWS_OVERRIDE_VALUESparameter setting from params.ini. - If other configuration (unrelated to AI) is included in the custom file, remove the
rna.instance.aisection and save the custom file.
- If the
- Edit params.ini and check whether the
- Complete the installation or upgrade of Concert Workflows.
- For example, if you are upgrading an existing instance, go to the <installation folder>/ibm-concert folder and run this command:
./bin/setup --license_acceptance=y --username=admin --password=<admin_password> --registry_password=<ibm_entitlement_key>- Replace <admin_password> with the Concert Workflows administrator’s password.
- Replace <ibm_entitlement_key> with the IBM entitlement key that you used when you installed Concert Workflows.
- To find the full installation or upgrade procedure that applies to your deployment scenario, see Installation and deployment.
- For example, if you are upgrading an existing instance, go to the <installation folder>/ibm-concert folder and run this command:
Accessing the assistant
- Open the Workflows page.
- If you are connected to another application, click Workflows.
- In the IBM Concert Workflows® sidebar, click Workflows.
- Create or open a workflow and access the AI assistant.
- To create a workflow where the assistant is open by default, click .
Note:
- To ensure uniqueness, the new workflow will be named Untitled workflow[-n], where
nis a number one greater than the largest number in an untitled workflow name in the current folder.For example, if your current folder contains Untitled workflow, Untitled workflow-1, and Untitled workflow-2, the new workflow will be named Untitled workflow-3.
- The new workflow is created by using your default workflow template, for example, the
‘Hello, World’template. For more information about workflow templates, see Creating workflows.
- To ensure uniqueness, the new workflow will be named Untitled workflow[-n], where
- To create a workflow manually and access the assistant, complete these steps:
- Click .
- Specify a layout type and template and click Create.
- In the editor, click Assistant.
- To open an existing workflow and access the assistant, complete these steps:
- In the workflow list, click the workflow to open it.
- In the editor, click Assistant.
- To create a workflow where the assistant is open by default, click .
The assistant is shown alongside the workflow. To hide or show the assistant, click Assistant. You can also hide it by clicking the close icon.
You can prompt the assistant with instructions or ask questions. Sample prompts and questions are shown. When you click a prompt or question, it is pasted into the prompt input field.
- Click Show all prompts.
- In the prompt input field, click the menu and select Suggested prompts.
Your chat history in the assistant is preserved until you either reload your current workflow in the editor or you leave the editor to access another UI page.
Managing workflows by using the assistant
To generate a workflow, in the prompt field, describe a task that you want to automate. For example, enter this prompt to generate a workflow that queries available S3 storage in an Amazon Web Services (AWS) account: List all S3 buckets that are public in my AWS account.
The workflow generation process begins. In the preview area, status messages are displayed at each stage of the generation process. While the assistant generates the workflow, the system shows the elapsed time next to the loading animation. The timer starts when the workflow generation begins and is updated in real time.
To cancel the generation of the workflow, in the prompt input field, click Stop generation. After the generation process is stopped, you can restart it by clicking Regenerate in the chat.
When the process is complete, the generated workflow is shown. If you want to return the workflow to its previous state, click Undo changes.
- Its extension must be .pdf, .doc, .docx, or .txt .
- Its size must not exceed 40MB.
After you upload the file and provide an appropriate prompt, click Send. The uploaded document is analyzed by the assistant and is used as relevant information when it responds to your prompt. For example, you can upload a text file that contains a procedure that you want to automate and prompt the assistant to generate a workflow based on the contents of the file.
To automatically edit a workflow, enter a prompt that describes the logical changes that you want to make. If possible, mention the current workflow, or some element of it, in your prompt. For example, you might enter this prompt to automatically edit the example AWS S3 workflow: Update my workflow to write results to a new S3 bucket named logs-archive.
When the automatic update of the workflow begins, the process status is again shown in the preview area. During workflow updates, the system displays the elapsed time next to the animated loading screen in real time. If required, you can cancel the update.
After the process is completed, the updated workflow is shown, including the logical changes that you requested. If needed, you can undo the changes.
- You enter a prompt that is not relevant to the current workflow, such as a prompt that relates to a completely different task.
- You enter a prompt that requests a logical change that is too extensive to contain in the logic of the current workflow.
- Vague or ambiguous prompts, such as the following prompt: Generate a workflow that does everything for our cloud migration
- Inappropriate prompts, such as requests for explicit content.
- Malicious prompts, such as requests to disregard instructions or reveal system prompts.
Asking for help
- Procedural information, such as how-to steps that help you complete a workflow-related task. You might receive procedural information if you ask this type of question: How do I create an authentication?
- Conceptual information about workflow elements, such as blocks, variables, and integrations. You might receive conceptual information if you ask this type of question: What are integrations in IBM Concert Workflows?
- Troubleshooting information, such as information about unexpected workflow results or errors. You might receive troubleshooting information if you ask this type of question: I get a 403 Forbidden error from the S3 ListBuckets block. What could cause this?
Sample prompts and questions
- Generate a workflow to find and list all S3 buckets that are public.
- Write a workflow that iterates through all VPCs in the AWS account to list security groups that permit port 80.
- Create a workflow that will create a network topology in IBM Cloud. create a VPC, a subnet, and an instance within the subnet.
- List all of the storage accounts that are available in Azure.
- Write a workflow to loop through all pages of SevOne devices.
- Create a workflow that creates an incident in ServiceNow.
- Create a workflow which will list any public S3 buckets on AWS and if the bucket is public, change it to private.
- How do I use the HTTP Request block to call a REST API?
- What are blocks and variables in IBM Concert Workflows?
- Analyze this workflow and explain the task that it performs.
- How do I discover my workflow after it is exposed from Concert Workflows?
- How many workflow statuses are available in the product and what is their meaning?
- What programming language is used in workflow blocks?
Providing feedback
Help us to improve this feature's performance by giving us feedback on your experience of using it. To provide your feedback, create an idea in the IBM Ideas Portal. In the Product drop-down, select Concert, then provide your feedback in the idea description. Make sure to mention that the affected IBM Concert component is Concert Workflows.