"At this year's Imagine event in Austin, we witnessed the fusion of art and science in prompt writing for generative AI. The astonishing execution times and incredible engagement in the Bot Games showcased the true power of AI challenges. It was an exhilarating journey that reaffirmed the limitless potential of technology and innovation."
- Max Cassidy, Senior Manager of Pathfinder at Automation Anywhere
As a long-time PixieBrix user (and Head of Developer Relations), I get a lot of practice with automation. I've heard many of our users talk about Automation Anywhere, but I've yet to explore it. When our team decided to attend Automation Anywhere's Imagine 2023 event, it was time for that to change.
I had a blast for two days in Austin and learned more than I thought I could about the future of automation and this fantastic platform for building bots to do all sorts of things. I saw a lot of companies talking about how they're saving millions of dollars, hours of employee time, and decreasing errors across various departments.
A lot happened in two days, but don't worry—I'll bring you up to speed and give you the inside scoop on what it's like being a newbie to Automation Anywhere.
Before we get started, have you seen our Automation Anywhere Mod? With PixieBrix you can Embed Automation Anywhere into any webpage.
🔑 Key Takeaways
It would be impossible for me to summarize everything, but I'll leave you with three key ideas that really stood out to me across multiple sessions.
Human to the Power of AI. Sure, we're all talking about AI these days, and it feels like most people are shouting it like a toddler who learned a new word. But this time, it felt more tangible and less like a buzzword. Throughout many talks, I saw practical examples of generative AI use cases and the reality of AI not being able to take away our jobs... but instead, help us work smarter in those jobs. Human-in-the-loop automation is the real future because we'll always need humans to jump in. But automation can help us move more quickly.
More tools != more productivity. We're using 976 applications and spending $4.5 trillion on those apps, and if we're lucky, some of them talk to each other, but it's often not where we're actually working. This is why having automation where we collaborate and do our work to sync with our system of record is critical for saving time and working as efficiently as possible. There's not one magic tool that will let us do everything and suddenly fix all our workflow problems. The secret will be using AI and automation to make them all work together for us.
Lots of cool people use PixieBrix... and Automation Anywhere! Of course, I already knew this but I met up with some really cool folks who are improving their workflows with both suites of automation tools, like my friends from Novatio.
"Meeting and interacting with the pioneers of Automation Industry in one platform and gaining a lot of insights about futuristic strategies & automation solutions. Participating in the Bot Games was fun as well!!"
Anyone can be an engineer. I thought intelligent automation would involve something more advanced or require more senior development skills. But the truth is, anyone can do it! Keep reading, and you'll see how even I completed my first bot challenge, going from 0 to automation in about 20 minutes. With the launch of the new Pathfinder Academy, there are paths to help everyone upskill their automation abilities no matter where they are on their automation journey.
📝 My Favorite Session: Prompt Engineering
I already knew a decent bit about prompt engineering because I use prompts regularly in building mods with PixieBrix, and I shared a lot of what I know in our PixieBrix + AI Certification. But turns out I still learned a few things!
In today's fast-paced world, where information is abundant and time is of the essence, Artificial Intelligence (AI) has emerged as a game-changer in various fields. By leveraging the capabilities of AI, we can streamline document structuring, optimize query analysis, and generate specific responses with remarkable precision.
Automation gives you the opportunity to feed input into an LLM, receive tailored responses, and display them wherever you want. This intelligent automation saves time and effort while ensuring consistent and accurate information delivery.
Max started the session started by talking about the anatomy of a prompt. A well-designed prompt should:
- Provide essential context and clear instructions.
- Include format modifiers such as simple commands ("make a list," "summarize," or "add bullet points")
- Show Examples: Including 2-3 examples in the prompt can guide the AI model further.
Remember, simplicity is key. Break complex prompts into multiple steps or even multiple prompts, treating them like building blocks that form a coherent narrative.
Tokenization is crucial, and optimizing it can significantly impact efficiency. I never paid attention to tokens before, but Max mentioned that ChatGPT had a tokenizer tool to show how many tokens are used in a given prompt. Stripping out unnecessary filler words and data can help minimize token count, ensuring optimal integration with automation systems.
Temperature is another essential factor to consider. Setting the temperature to 0.2 results in more focused and deterministic responses from the AI model. However, a higher temperature, like 0.8, encourages randomness and creativity but sacrifices predictability. Striking a balance between temperature settings will help the LLM be flexible and avoid spouting nonsense.
When crafting prompts, pay attention to the structure. Make your context concise and precise. Use action verbs and straightforward language. Mention any constraints and limits to guide the AI's output. Following these guidelines empowers you to create prompts that return exactly what you want.
And one last—and critical—piece of advice: Testing prompts is a crucial step before deploying them in production. The ChatGPT playground serves as a valuable testing ground, allowing you to input prompts and explore the generated responses. By thoroughly checking your prompts, you can fine-tune them for optimal performance.
These tips will help me build better AI prompts in PixieBrix and (eventually) in Automation Anywhere. But before I could get to prompts, I had to learn how to build with Automation Anywhere first.
🤖 Building My First Automation Anywhere Bot
Although I've heard a lot about Automation Anywhere, this was my first time actually putting my fingers on the keyboard and trying it out.
The challenge was to download a spreadsheet with information about contacts, and for each row in the spreadsheet, fill out the form on the page, then submit the page when it was all completed.
I thought, "I know how to do this with PixieBrix, but how do I do this with Automation Anywhere?"
The control room
Everyone kept saying, "Go to the control room", and I wasn't sure if that was a hidden closet at the conference or something else. 😂
Turns out it's the dashboard for connecting devices and building automation, much like the PixieBrix Page Editor and Extension Console.
Once I figured out how to use Parallels for virtualization (since I'm on a Mac), I used a generated login to access my control room for the challenge.
While I'm used to automation running in my browser with PixieBrix, I've never had them run on my machine. So I had to install the bot on my machine, but it was as easy as clicking Manage --> Devices and then downloading a file.
Once I started building a bot, I realized I had a lot of power at my fingertips. Just like I'm used to bricks that are actions in PixieBrix, I saw that Automation Anywhere has many functions, too!
I searched for Excel and found actions for opening a spreadsheet.
All I had to do was specify the file!
Looping through each row
Next, I realized I needed to iterate through all the lines in a spreadsheet. I knew I'd need some sort of loop function to do that. In PixieBrix, we call these "For Each Element" or "For Each Loop" bricks. In Automation Anywhere, it's called "Loop"!
And wouldn't you know... I could actually set my iterator to the rows in the spreadsheet! It would be perfect if that spreadsheet ever changed and had a variable number of rows every time it was opened.
Now, I just needed to update the form on the page with the data from each row in the spreadsheet.
Setting values in form fields
I'm used to the Simulate DOM Event brick or Set Input Value brick in PixieBrix, so I got stuck searching for something like that in Automation Anywhere. Mark helped me decode the lingo and pointed me to the Recorder action.
Using the Recorder, I can specify a page in the browser to take an action on, then use the Capture button to select an area, such as a field, and specify how to engage with it.
If it's setting text, I just specify what value to set it to...which is the text from the first column in a spreadsheet row!
I just needed to make more recorder actions for updating the other fields on the form, like Last Name, Email, City, State, Clothing Size, and Date of Birth.
Once I did that, I was done with all the actions in my loop and just needed one final action.
Submit the form with another recorder action
Outside of the loop, I added one more Recorder. Once my bot iterated through every spreadsheet row, it needed to click Submit. So I used another Recorder to capture the Submit button and choose the "click" action.
I did it! 🎉
Then, I ran my bot to test it out. Everything worked... except I was a little stalled at the GDPR/Cookie Consent banner that came up. 😭
It wasn't the fastest time, and I didn't win the challenge. However, I was pretty excited to learn how to create automation in Automation Anywhere and realized how nicely this would complement my PixieBrix automation skills.
I feel limitless now—like I can build anything I want.
So now what?
As an Automation Anywhere newbie, I had a blast learning and exploring, and I'm excited to dive deeper. Here's my to-do list:
- Take the Pathfinder Assessment
- Go through the Citizen Developer Pathfinder Career Path
- Watch more videos on Automation Anywhere's YouTube channel
Anything else I should add to my list? Let me know!