UiPath Autopilot and DataService

UiPath Autopilot and DataService
Photo by Ed Pirnak / Unsplash

UiPath, a company that provides software and services for automation and RPA (Robotic Process Automation), or their modern versions called "Agentic Automation", thats a mix of AI and traditional RPA workflows working in tandem.


An example of this could be for example a IT helpdesk or another customer facing role where there will be two parts:

AI Component - Handles the communication with the employee or customer and hopefully understands the issue, and determine the required solution (e.g password reset, software installation)

RPA Component - Executes the technical fix on the relevant systems, or escalate to higher support levels if necessary.

The result of this is drastically reduced response times for repetitive and clear tasks. freeing up staff for more complex work.


As part of their products they provide a chatbot that is called Autopilot. If it's properly integrated into your existing IT systems it becomes more than a simple chatbot and can do actual work by invoking pre-built automations and also provides many out-of-the-box integrations to other vendors and services.

Evaluating and integrating Autopilot and Data Service

To test it's capabilities, I integrated Autopilot with another one of their services that is called Data Service, it's basically a database.

I uploaded 100 entries of mock customer data to Data Service, and created a RPA that works as an external tool for Autopilot, this is done under the Data Fabric section in the UiPath Cloud.

Enable the tool (RPA) for Autopilot under: Admin -> AI Trust Layer -> Autopilot for Everyone. Then select Tools and finally Configure Tools. Select your RPA that you want to be available for Autopilot.

Each entry consists of four columns of data:

  • firstname
  • lastname
  • streetaddress
  • country

In the videos below, you'll see the results, with some parts shown in more detail.

0:00
/5:09

General questions regarding the customer database

0:00
/1:41

Asking for data that does not exist in the database, the LLM figures out which continent each country is in.

This is the RPA Main sequence in UiPath Studio.

Main.xaml in UiPath Studio

Conclusion

Pros:

  • Flexible
  • Enhances data
  • Easy to use

Cons:

  • Unreliable output
  • Costs
  • Slow

After evaluation, my conclusion would be that this is not a good use-case for an LLM to be involved in at all, use direct SQL queries instead.

The reliability in this case is the main issue, as the LLM will not always give correct answers. Take a closer look at, for example, how many customers the LLM thinks there are in North America. The first time it was asked, the answer was 1 customer,but when it was supposed to create a summary of all customers by region/continent, the answer was 4.

You probably could make this more reliable by providing better system prompts to the LLM (My agent prompt is a basic "Get Customers - Provide information regarding customers"), but no matter how well you define your system prompt, it will not be able to decrease the cost or speed up the execution time.

As your data grows, it might easily outgrow the context window size of the LLM. The amount of input tokens consumed will also increase, which will increase the cost for each question asked while also making each request slower in terms of execution time.

That's all for now! Until next time...