watsonx Orchestrate

 View Only

How to integrate AI Assistant Builders, Skill Flow Watsonx Orchestrate and IBM RPA?

By Marco Crepaldi posted 15 days ago

  

How to integrate AI Assistant Builders, Skill Flow, Watson Orchestrate, and IBM RPA?

Repository: 

All the necessary files to replicate this content are available in the repository.

How-to-integrate-AI-Assistant-Builders-Skill-Flow-Watson-Orchestrate-and-IBM-RPA

1. Introduction

Digital transformation is revolutionizing the way companies operate by integrating advanced technologies to automate processes and improve efficiency. One such innovation is the integration of virtual assistants, workflow orchestration, and robotic process automation (RPA). This article explores the integration between the AI Assistant Builder, Watsonx Orchestrate, and IBM RPA, demonstrating how these technologies can be used to optimize the registration process in the JK Automation system through a chat interaction.

2. Overview of Technologies

AI Assistant Builder

The AI Assistant Builder is a chatbot creation platform that allows companies to develop customized virtual assistants. With the ability to understand and respond to user queries, these virtual assistants enhance customer experience and operational efficiency.

Watsonx Orchestrate

Watsonx Orchestrate is a powerful IBM tool that enables the automation and orchestration of complex workflows. It integrates various applications and services, allowing seamless and automated communication between different systems.

IBM RPA

IBM Robotic Process Automation (RPA) is a solution that uses software robots to automate repetitive and rule-based tasks. It enables companies to increase efficiency and reduce human errors, freeing employees for more strategic tasks.

Benefits of Integration

The integration of these technologies allows for complete automation, from the initial user interaction to the execution of complex backend processes. This results in greater efficiency, reduced processing time, and a smoother user experience.

3. Project Scope

The scope of this project is to create a chat conversation in the AI Assistant Builder that collects registration data for the JK Automation system. During the user interaction, the necessary parameters will be collected and used to trigger a workflow in Watsonx Orchestrate. This, in turn, will trigger an IBM RPA bot to perform the required actions in the JK Automation system.

4. Implementation

AI Assistant Builder Configuration

Firstly, the AI Assistant Builder is configured to collect the necessary data from the user. This includes creating intents, entities, and dialogues to guide the user through the registration process.

Creating a Skill Flow in Watsonx Orchestrate

Next, a Skill Flow is created in Watsonx Orchestrate to manage the data collected by the chatbot and trigger the IBM RPA bot.

Integration of Watsonx Orchestrate with IBM RPA

The integration is achieved by configuring Watsonx Orchestrate to call the IBM RPA APIs, passing the data collected by the chatbot and executing the necessary actions in the JK Automation system.

Data Flow and Communication

Data flows from the AI Assistant Builder to Watsonx Orchestrate and then to IBM RPA, ensuring that each technology performs its role in an integrated and efficient manner.

5- Step by Step

5.1  - IBM RPA

First, let's develop a bot in IBM RPA that manipulates the JK Automation system and registers the records collected in the AI Assistant Builder. The following example illustrates a simple system where we register records with the following fields: First Name, Last Name, E-mail, Job Title, Company, Phone, Address, City, State, Zip Code, and Area of Interest.

5.2 - Variables output 

In your bot, ensure that the parameters are defined as input variables. When you download the OpenAPI, these parameters will be configured in the XML structure.

5.3 - Download OpenAPI

Once the bot development is complete, it's necessary to publish the project so that we can download the OpenAPI, which contains all the input and output parameters of the bot.

5.4 - Acess Skills and apps Watsonx Orchestrate

You should access Watson Orchestrate, log in, and then navigate to "Skills and Apps".

5.5 - Create a new skill app and publish.

You should add a new skill from a file. Drag the OpenAPI file that you downloaded earlier to import the skill file, Enhance this Skill and Publish.

     

    5.6 - Connect your application and add it to the catalog.

    Access the "Skill Catalog" and locate your new skill. Click on the skill and then establish the connection by clicking on "Connect App". Enter your IBM RPA Control Center credentials. If the information is correct, the app will be connected. Next, click on "Add Skill +" to add the skill.

    Now let's create our chat in Assistant Builders 

    5.7 - Create a new Actions AI assistant builder

    Now let's create our chat in Assistant Builders, access Ai Assistant Builder/ Action.

    5.8 - Click on New Action

    5.9 -  Click on Custom-built-action

    5.10 -  New Action - What does your customer say to this interaction? 

    You can add multiple triggers later to start your interaction. At this stage, we will insert just one initial trigger, and in the future, you can create various other triggers to start your interaction.

    5.11 - First interaction

    In the first step 1, we will input the initial question directed to the user. Our goal is to collect all the necessary information for registration in the JK Automation system, so at each step, I will gather mandatory records.

    5.12 -  Click on customer response

    5.13 -  Select Free text  

    5.14 -  And Then

       And then, select continue to next step

    5.15 - Remember to click the "New Step" button to continue with new interactions.

    ** You must repeat steps 5.11, 12, 13, and 14 to request information for all fields that need to be entered into the system (first name, last name, email, Job title, Company, Phone, address, City, State, Zipcode, Area of Interest) a total of 11 steps.

    image01

    image02

    5.16 -  Created by you

    In the Action menu/ variables, select "Created by you" and then click on the "New Action" button.

    5.17 - New variable 

    You should define all the variables and types before clicking on the save button.

    *** You must create a total of 11 variables (first name, last name, email, Job title, Company, Phone, address, City, State, Zipcode, Area of Interest)

    5.18 -  Set Variable Values 

    Return to Action/ Created by you / JK Automation Skill Flow 

    let's create a new step 12, where we will enter the values ​​entered by the user and present them in a summary

    In this step, we will assign the values entered by the user to the variables we have created during the Assistant interaction.. These values ​​will be sent to the Skill flow through an API.

    Click on the Set Variable Values 

    5.19 - Click on the Set New Value

    5.20 - Click on Session variables

    5.21 -  Select firstName variable

    5.22 -Variable Values TO

    We set the variable firstName with the value entered in step 1. Repeat steps 5.19-5.22 for all variables created in step 5.17.

    the result will be this

    5.23 -  Tell the assistant what he will say

    5.24 - Insert Variable 

    Click on 'Insert Variable.' In this interaction, we will display the phrase provided in the previous step and the values of all the variables collected during the interaction with the user. 

    5.25 -  Click on Session variables

    5.26 - Select the first variable

    5.27 - Variables displayed in the dialog

    Repeat steps 5.24 - 5.26 for all variables you want to display in the interaction.

    5.28 -  Define customer response

      Click on Define customer response

    5.29 - Select Confirmation 

    5.30 - Let's create a New Step(

    Let's create a new step (13) and set the condition to "NO". If the user clicks the "NO" button, we will end the interaction.

    5.31 -  Select no condition 

    5.32- end of interaction

    You can display a message to the user and select to End the action.

    When you choose the "NO" option in the previous step, you are terminating the interaction with the user.

    5.33 - let's create a new step (14) with the YES condition

    5.34 -  You can display a message to the user who is going to register

    5.35 Click on save

    Now, let's create a custom extension.

    Get started
    Create a custom extension to tailor the experience for your customers.

    Steps to setting up custom extensions:

    1. Provide an extension name and description that clearly explains what the extension accomplishes.
    2. Import your OpenAPI document as a JSON file to start building your custom extension.
    3. Select the environment (Production, Development, or Stage) to use your extension and the authentication type to complete the setup process.

    5.36 -  Click on the integration on the left side

    5.37 - Click on Buld custom extension

    5.38 - Click Next 

    5.39 - Enter the name and description and click next

    5.40 - import OpenAPI

    ******To export the file, navigate to Skills and apps, select the three dots next to your skill, and choose Export this skill.

    5.41 - when loading the file click next

    5.42-  Check the information and click Finish.

    5.43 - Find your extension and click add

    5.44 - Click on Add

    5.45 - Custo Extension

    Click on Next

    5.46 - Select Outh 2.0

    5.47 - Click with your IBM RPA control center information, the Client ID and Client Secret fields can be filled with fictitious values, the fields that will be validated are the username and Password, then click Next.

    5.48 - Click on Finish

    5.49 - Return to step 14 and select 'Use an Extension' in the 'and then' option.

    5.50 - Select the "JK Automation Skill and IBM RPA" extension, choose the "Jk AutomationSkillFlow" operation, map the parameters with the interactions step, and then click Apply.

    5.51 - Don't forget to save

    Congratulations, you have completed this lab. 

    If you are an IBM employee and have any questions, please contact me on Slack Marco Crepaldi ,If you are a business partner or from any other area, it will be a pleasure to help you, contact us via Linkedin 

     LinkedIn profile https://www.linkedin.com/in/marco-crepaldi/



    #Watson-Orchestrate
    2 comments
    48 views

    Permalink

    Comments

    14 days ago

    Hey Bjorn, thanks for your comment. You're right, I did consider creating a less technical post, but I think your suggestion would be perfect for a future post. Thanks for that. I've added the script I used for the demonstration to the GIT repository

    14 days ago

    Hi Marco,

    nice walk-through!

    The github repository you refer to at the beginning seems empty?

    There is now also a direct integration from Orchestrate to RPA, so you can create a skill directly in Orchestrate by picking the desired RPA bot. That way, you don't need to export/import the OpenApi file or create a separate assistant extension.

    /Bjorn