Generative Recorder and Resilient Automation | April 2024

  • 13 May 2024
  • 0 replies
  • 188 views
Generative Recorder and Resilient Automation | April 2024
Userlevel 7
Badge +10

 

In case you haven't heard about Product Club — the Pathfinder Community Product Club is a monthly virtual meetup led by Automation Anywhere product leaders that focuses on our latest proprietary product innovations. It offers a place for community members to stay informed, connect with product leaders, and gain insights into real-world applications of the latest innovations in intelligent automation.

P.S. If you can’t attend a meeting, no worries — we'll be dropping a recap of each month's session right here in our Product Club hub.

 

HOSTS

Allison Able, Pathfinder Community Director
Rajendra Vijay, Director of Product Management
Murali Pallikonda, Principal Product Manager
 

TOPIC

For April’s Product Club, we brought you all the highly anticipated topic you’ve been requesting: Generative Recorder & Resilient Automation!

Here’s a rundown of the session:

  1. Rajendra reviews Generative Recorder and demos a use case.
  2. An MVP gives feedback from his use of Generative Recorder during beta testing.
  3. Murali reviews Resilient Automation and demos how this feature works.
  4. Rajendra and Murali answer some audience questions live.


If you’d like to watch the entire session recording with visuals from the demos, you can view it here

.
Want to read through additional resources on Generative Recorder and Resilient Automation? You can find more information here 



PATHFINDER ANNOUNCEMENTS!

  • We have NEW Delta training offerings for the .31 release available in AAU - They are action-packed, hands-on mini courses! Be sure to check them out.
  • Developer Meetup this month is 4/28 on the topic of API Tasks

 

AUTOMATOR AI REFRESHER + INTRODUCING GENERATIVE RECORDER

Automator AI is a new offering for cloud customers, designed to accelerate developers across the automation lifecycle.


With Automator AI for Cloud, we’ve created an entire automation lifecycle powered by generative AI so CoEs and business teams can:

  • Accelerate discovery to automation with Autopilot (A.33 GA)
  • Reduce automation building time with Co-Pilot for Automators and Suggest Next Actions
  • Decrease time spent on test and documentation (Roadmap)
  • Minimize business disruption by cutting down on automation failures with Generative Recorder

In this Product Club, we’re zooming in on the much anticipated Generative Recorder - which will be available for cloud customers this month (April 2024) with the A.32 cloud release!

Generative Recorder was designed to minimize business disruptions, improve developer productivity, and auto-update automations to improve resiliency. In customer previews, we’ve observed nearly 50% success rate for automation failures that are addressed by Generative Recorder.

Generative Recorder addresses two major use cases that are critical pain points for customers across the board:

  • Web Application Upgrades that break UI-based automations
  • Automated Applications with dynamic elements that typically break on other developer’s machines or in higher environments, causing outages for all developers and the automation program as a whole.

 

DEMO: ORDER CANCELLATION WITH GENERATIVE RECORDER

A reception clerk, Bria, receives goods from suppliers and must cancel orders in her CRM system for any undelivered goods.

  1. Bria has Automation Co-Pilot embedded in her SAP workflow. To trigger an Order Cancellation process, Bria selects the name of the supplier from a drop down list in her Co-Pilot window and clicks “Submit.”
  2. An API task is triggered to fetch the outstanding orders from the selected supplier. The orders are returned for Bria to review in her Automation Co-Pilot window, and she selects the one that needs to be cancelled, then clicks “Submit.”
  3. An RPA task is triggered that runs on a remote machine. The RPA task automatically logs into Salesforce and cancels the order that Bria selected. However, since Salesforce was recently upgraded, the task runs into a failure.

Now, let’s go back and review how this failure is avoided once Generative Recorder is turned on.

  1. To turn on Generative Recorder: Go into the automation performing the RPA Task. Click ”Advanced Settings” and under the Package Settings drop down you’ll see Recorder. When you expand the Recorder section, you’ll see two options for the Generative Recorder to select, both of which can be toggled on and off on an as-needed basis by developers:
    • Native Fallback - uses the design time data to provide the fallback in the event of a failure.
    • Generative AI-based fallback - uses live application data to offer the fallback. Note: we ensure that no business data from the business application leaves your data center.
  2. For the demo, we’re selecting Generative AI-based fallback. Click “Save.”
  3. Now, we run Bria’s Order Cancellation process again in exactly the same way. Once we see Salesforce open in the production environment again, with Generative Recorder turned on, the RPA task logs into Salesforce and successfully searches the order number and then goes on cancel the order, as requested by Bria.
  4. When we pivot to the developer view and run the same Order Cancellation process, we see the developer has additional visibility once the Generative Recorder kicks in to prevent failure. A pop-up box appears with a notice of failure prevented on line 11 and an option for the developer to automatically update the new DOMXPath inside the automation. The developer can select “Stop Automation,” “Skip update,” or “Update value.”
  5. We select “Update value” and when we go to check line 11, we can see the path has been updated inside the automation. Even if the fallback is needed on 5 lines or 10 actions, for example, developers will receive an option to update the new path that was used for successful fallback for all of those lines/actions. There is also always an undo/redo option so the developer has full control should they change their mind.

 

RESILIENT AUTOMATION: RECORD AUTOMATION EXECUTION

When automations run into issues, sometimes it’s easy to replicate the issue and sometimes, unfortunately, it’s not. Resilient Automation minimizes automation downtime with faster troubleshooting by recording automation executions, securely storing those recordings, and providing playback. To ensure we are safeguarding your data privacy, all recordings are encrypted before being stored in the cloud and only authorized users can download the recording from Control Room and play it back.

Let’s walk through configuring the different Resilient Automation controls:

  1. First, in Control Room settings, if you expand the Bots section, you’ll find Resiliency Settings. If you want to enable this feature only on one specific environment like UAT or Dev, but not in production, you can toggle the option under “Store execution recording” on or off in that given Control Room.
  2. When it is enabled, you can set up your default options. First, you can determine what recordings you want to keep. If you want to keep recordings only when there’s a failure, select “Only failed executions,” or if you want to keep recordings no matter what, select “All bot executions.” Next, you can configure the duration of the recording. 5 minutes is the default and the maximum amount of time we currently support, but you can shorten it to less than 5 minutes (e.g. 1 minute) if you think you don’t need that long and want to prioritize free space for more videos. Finally, you can determine how long you want to keep recordings in the cloud. By default, we keep videos up to 7 days, but you can change that from anywhere between 1 and 30 days.
  3. When it comes to the deployment of automations, there is another level of control available to you. Once you select your run as users, you’ll see a tab called Resiliency Settings. As the Automation Admin or the Developer, you can decide whether you want to keep recording on for this particular deployment. Even if it is enabled at the Control Room level, you still have control for which automations you want this feature toggled on or off. This is available for both run on demand and schedule options.
  4. Under General Settings, we also have an option to hide the bot run window, so you will not see the runtime window when the bot is executing. This is another enhancement that we added based on customer feedback. Customers told us that sometimes the resolution is so small at their environments, and this runtime window blocks a majority of the screen, covering very important information that is critical for troubleshooting that issue. So now you have the option to hide the window away while the bot is executing. This is enabled by default.


Murali ran a sample automation to create leads in Salesforce. Here’s how Resilient Automation works when running an automation:

  1. As the automation is running, Resilient Automation records the entire screen.
  2. In Control Room, when you open the Historical window, you can click on the bot execution activity entry and see the bot run clip uploaded in the window. Underneath it very clearly displays how many days you have until the clip expires, based on the number of days you already pre-determined to store clips.
  3. Using our existing permission model, if you have access to view the historical activity entry, then you have access to download it. If you have permission to manage activity, then you are able to delete the recording if you’d like to free up space.

Note: Storage depends on the number of licenses that you have on the Control Room. We reserved 100MB per runner license, depending upon the number of runner licenses you have times 100 MB will be the maximum storage available for your recordings. So that is how you can determine the maximum amount of storage reserved for these recordings in our cloud. Once you reach your limit, then we go first-in-first-out basis to automatically delete the old recordings and make room for new recordings. We enforce this at the tenant level, not the user level.
 

AUDIENCE FEEDBACK

We poll our live audience during these sessions to gain insights and share feedback. Here’s what we learned from our attendees during this month’s session:

  • The audience came into this Product Club meeting knowing very little about the Generative Recorder and Resilient Automation products—rating an average of 2 on a scale from 0 to 5, with 5 indicating expert-level awareness. But everyone attending was extremely eager to learn more!
  • We found that the vast majority of the audience uses web-based applications in their automation programs (over 55% indicated 60% or above) and frequently find themselves in a challenging situation when it comes to troubleshooting those automations. 51% said they spend anywhere from 1 to 3 hours and 24% said they spend 4 to 5 hours troubleshooting automations every week.
  • After listening to the presentations from Rajendra and Murali, the audience indicated they see the value of Generative Recorder and Resilient Automation (with 60% of attendees ready to get started) specifically in terms of saving time, eliminating troubleshooting headaches, and being able to leverage auto-updating technology for UI elements in web-based applications.
  • Finally, audience members shared the business applications they use that they believe would benefit most from Generative Recorder: Workday, Salesforce, Oracle Fusion, and RevCycle. They hope to see those on the roadmap soon.

SESSION Q&A

Thank you to our audience for submitting their questions! Unfortunately, we couldn't answer them all during the live session. We also want to express our gratitude to our product leader co-hosts, Rajendra Vijay and Murali Pallikonda, for providing their responses.

**Please note that all answers were shared during the week of April 8, 2024, and are subject to change. We strongly encourage you to contact your account management team for any licensing and pricing inquiries.

Q: We have seen issues with A360 upgrading causing Object Recorded to fail. We have to recapture these objects. Will GenAI Recorder also work in this scenario?
A: Ideally upgrade should not cause existing automations to break. Still, if it happens, Generative Recorder will offer another fallback option to automate such cases for web automations.

 

Q: Is this feature live for enterprise version (on prem), and is an additional license required?
A: We have support for Generative Recorder for on-prem customers on the roadmap and that will be happening in one of the upcoming releases. Right now, it will be available to all customers on cloud with the A.32 release and Automator AI is the SKU that you need to use Generative Recorder.

 

Q: Is this feature live for enterprise version (on prem), and is an additional license required?
A: We have support for Generative Recorder for on-prem customers on the roadmap and that will be happening in one of the upcoming releases. Right now, it will be available to all customers on cloud with the A.32 release and Automator AI is the SKU that you need to use Generative Recorder.

 

Q: To use Generative Recorder, a developer need not re-capture or do anything within the bot - is that correct? Do we just need to enable the Gen AI fallback and we are done?
A: We are capturing some of the additional information from design time, for example, anchor information, DOMX path, so you need to use the latest recorder package so it will be available for all the existing and net new automations that you are going to build from A.32 onward. But wherever you think that it can use Generative Recorder, you might need to recapture, so that we get that additional data to provide the fallback.

 

Q: Could you repeat how/where you enabled these features?
A: It was enabled from that specific automation in private repo > Advanced settings > Generative Recorder settings.

 

Q: Can you explain the naming - why is it "generative," what skill is it using? Why call it fallback? Must it failover to this?
A: “Generative” is because we are using generative AI and live application data. For example, in the event of application changes, we are extracting live application source code. We ensure that we take only a limited part of source code, which is about, say that particular UI element, and it's child and parent. Then, we further anonymize any business data and we craft a prompt to give to generative AI. From there, we get the fallback information which we can use to ensure the fallback works successfully.

 

Q: Can it look for changed buttons, screens, etc?
A: Yes, it can. One note of caution: we provide fallback, but some of our customers were very clear that if the volume of change is pretty big, then do not attempt fallback. So, for example, something that was previously a text box is now changed to a button or a link, then do not attempt fallback. Customers said they would far rather experience a failure than automate an incorrect UI element. So we are supporting this use case by including an additional validation layer built in, which means that even if the fallback is working, we want to ensure that it is the right target UI element that the user wanted to automate and we are not clicking elsewhere by mistake.

 

Q: Can you please provide more details: What differs between the two options? This fallback sounds very promising.
A: For native fallback, it’s all design time. That means that right at the time of building the automation, we are capturing additional information and that is used for fallback (e.g. multiple paths of the UI element). For Generative AI-based fallback, we are using live application data so that anything that changes on the application, we are working with the latest and greatest data, then deliver the fallback. That’s the key difference.

 

Q: Will the gen AI feature help with which additional properties to select in case DOMX path alone is not suitable for automating the application?
A: In the A.32 release, we are only updating DOMXPath because this is the one property that is the most critical and which we have found to be the most reliable. In one of the upcoming releases on which we are currently working, we will provide additional options where the user will be able to see what other properties we captured at the time of design. Then the user can add, remove, or update those property values so that fallback accuracy can be further refined.

 

Q: Can this path you updated be used with wildcard character?
A: Not automatically. Generative AI will be using one specific path because we want to ensure it works 100% of the time. Something that may or may not work, there would be no point in us recommending that to users, so wildcard will not be automatically updated. But users can always update inside the automation, there is support for wildcard in there.

 

Q: In your example, Generative AI changed an existing property (domx). Can it also add or remove properties as needed? We have had cases where we have had to remove properties when webpages have dynamic-type properties.
A: Only DOMXpath, that is the most important path that we are automatically updating. In an upcoming release, the users will be able to see all the additional information that we captured at the design and update that information as needed.

 

Q: What If the Gen AI feature keeps recommending updated DOMX paths everytime as we could notice for the Salesforce it recommended updated DOMX even though it corrected it in the previous run?
A: Apologies, that seems to be a glitch in my environment, may be due to older Recorder package. That will not happen in the GA product.

 

Q: Does it help to identify to troubleshoot what has changed on our webpage app or it also adopt to the changes?
A: Generative Recorder automatically adapts to the changes. Developers can use old DOMXPath saved in the automation and latest DOMXPath to understand the nature and scale of change.
 

 

Q: Will this feature also work on the legacy systems?
A: Sure, in the first phase, it will work for all web based applications where technology type is HTML. We will also support desktop applications in subsequent phases.

 

Q: When will this be released (resiliency settings)?
A: This will be released in A.32 (this month)

 

Q: Where are recording saved? it is in CR or we can have it on our database?
A: It is currently stored on our cloud for our cloud customers.

 

Q: Has the "Record Automation executions" been benchmarked on CPU/Memory/Disk etc consumption? If not, could you speak to the VM load it introduces in general?
A: Yes and we documented the impact on execution time and additional storage. At a high level, we observed around 10 to 15% additional CPU utilization during the execution.

 

Q: Is this recording also available for on premise control rooms?
A: This requires Enterprise license and is available with cloud license option.

 

Q: Can the bot trigger the recording on & off as needed?
A: It is at the deployment level right now. Triggering from within the bot is on the roadmap.

 

Q: Is there a way to update all our schedule with this option or will we have to re-do all of them?
A: No need to re-do. You can simply update existing schedules to take advantage of this feature.

 

Q: Is there a confidence factor associated with accuracy? Can we decide day if the accuracy is 90% do the update? Also what happens if the Generative AI takes times to give a response back for the query causing automation to wait for long time? how is this handled?
A: To answer the 2nd half of the question about gen AI taking too long, there is a timeout field where you can configure how long you will wait for the fallback—say 30 or maximum 60 seconds—then if it is not able to automate it, it will move on, give an error, and run that exception handling flow. Regarding the first part of the question, right now we go only with 100% confidence that if gen AI-based fallback is not able to locate the UI element, give an error. Only at 100% confidence will it give the recommendation to auto-update the DOMXPath inside the automation.



 


0 replies

Be the first to reply!

Reply