Q&A from the live session | Multi Agent Automation with Amazon Quick Automate

Q&A generated from Webex transcript and chat logs

Q: How do we handle this scenario where external websites generally are against bots accessing their content and need human verification like Captcha?

A: If your website has any bot verification mechanism in it, it’s on you to figure out the integration needed. The UI agent does not have any extraordinary capabilities to go and figure out a captcha - it will try if it can, but if it cannot, then it’s on you. The way we have done this for some customers is every website has a robots.txt file. So you could do a precheck with the robots.txt to see whether it has any policies against an agent accessing it. But the fact of the matter is if it has policies against bots, then it’s not gonna get anything from that website. However, if you have websites which do not have any policies against it, the agent will get all the required information.


Q: Is there a plan to pull in a custom agent created in Quick Suite to be utilized in Quick Automate?

A: I can’t comment on roadmap items - I’m not aware of this item at least.


Q: Can the knowledge section in the custom agent be linked to internal wiki or external websites? What about internal ticket requests?

A: The knowledge section isn’t there yet. As I showed, the actions section is something which you see now. When the knowledge section comes in, we would definitely cater to internal Amazon customers as well, but I do not have any view of how it’s gonna look like because it’s not available yet.


Q: For sending the email for a data analysis, this person always needs to review that action and approve it. What can be done to send the email automatically to the team at a specific time? Does it need some special permissions to do so?

A: In Automate, the default authentication mechanism that you use is service-to-service. So you don’t need a user to enter any confirmations - the automation can directly send emails without approvals. You can include those approvals by design, but if you do not include that, it will not need any special permissions. From an authoring point of view, you can decide whether you need an approval or not. If you want an approval, you could create a human-in-the-loop task and define how you want to do it. If you do not create a human-in-the-loop task, it’s gonna do whatever it needs to do and send the email out. For specific time triggers, if you deploy an automation, you can assign a specific time to trigger that automation to execute.


Q: What’s the best way to create custom agents to be able to access and manipulate existing dashboards or analyses? Is it better to create custom agents to query the underlying databases for the same actions?

A: The latter approach - to query underlying databases - would be the approach that you can use with Automate today. Unlike flows or the custom chats in Quick Suite, there’s no direct integration with dashboards today. So querying the underlying databases would be the way to go.


Q: Can you chat in natural language with automation to enter the user inputs like you can in flows?

A: You absolutely can. That is actually the third agent out of the box which comes with Automate - we call it “Build with Assistant.” Whatever we showed in the demo, you could either do a drag and drop with the actions or agents available on the left-hand side panel, or you can start chatting with the automation. You have the capability to do two things: One, if you have a standard operating procedure for your process, you could upload that document to this Build with Assistant (which is an agent under the hood), and it will read that document and create an automation flow. Or you could start chatting with whatever automation you have built or if you’re building from scratch, and build your automation one at a time using this agent completely through natural language. You don’t need to actually drag and drop or write any code at all.


Q: What do you input for the key in the file upload step? Does it have to be a key of an existing object that it would essentially overwrite?

A: The key is basically an attribute for that action in the file upload. For the S3 upload, that is the path where you would want to put your object or your file. Whenever you bring that action into the automation, these are the attributes you need to fill for that action to run successfully. Key is just that attribute where you specify where you want to upload it and what the name of the file will be - very similar to how you would do file upload anywhere. Give it a folder path and the name along with it, and that consists of the key. For example, it was “kyc_summary.pdf” with a path, and that’s where it uploaded the file.


Q: For human-in-the-loop steps, is the human allowed to only approve or deny the automation step, or can they chat with the automation to make those updates?

A: There are two ways you could do human-in-the-loop. One, you could create a task for the human that shows in the task center. The human will fill up that task or complete the task from that experience, and it comes back to the automation where you could use all the data from those tasks. In this case, what we did was we used an agent, so it would create a chat experience. If there was any discrepancy, it would have asked for the human to provide their inputs or whatever the agent needs. Once the input was given, it will go ahead and use that input and continue with the automation. The automation will wait for the user input to move to the next step. If you want to change the automation itself, that’s what you do with Build with Assistant - you go there and give it natural language instructions for that specific step to be updated or whatever kind of modification you want to do.


Q: Do we have instructions on how we can implement this scenario in our own accounts?

A: For the exact automation that was shown in the demo, we have a workshop that walks you step by step on how you can create the same demo in your account. We’ll share the link in the community.


Q: Is it possible to fully automate the flow approval process using Quick Automate?

A: You could do the whole automation, but the human-in-the-loop comes in where you need human intervention, and you decide whether you really want to do that or not. If you don’t want human intervention and want to do an end-to-end automation, you could very well do it.


Q: Do I need to have Author Pro access for Quick Automations?

A: Yes, you need Author Pro access to author these automations. There are two kinds of access: one to give you authoring access, and the other is if you’re a human and just want to review and approve/deny tasks. At the Quick Suite level, you need Author Pro. Once you are working with Automate, there’s further role-based access control where you can assign users as being owners, contributors, or viewers.


Q: What are the steps to create a human-in-the-loop task to approve or reject sending out reports?

A: Refer to the previous session in our series where we covered how to go through that process. There are two ways to create this human-in-the-loop task. One was covered in that session via the agent with a tool. You could also create a more deterministic flow in the automation. If there’s interest, we could cover that approach as well in future sessions.


Q: The question is whether the process can be automated or which parts of it could be automated. Right now it’s mostly manual - someone creates the flow, shares it, it goes through a review process and it’s approved manually. Which parts of this process could be realistically automated with Quick Automate and how?

A: Quick Automate is different from flows. In Quick Automate, you have the whole software development lifecycle which you can automate end-to-end. You can author or design the automation manually. Once you are happy with it, you can test it out, commit in between, and then deploy these automations. Once you have deployed the automation, you can run these automations on certain cadences like on a schedule. That’s how this works. Once you have created and built the automation, you could basically run this on an automated cadence and you don’t need to start the automation or get it approved by someone. Flows is mostly for your personal use - you have to create it, get it approved, and then run it every day. While Automate has the whole SDLC in place: you create, you test, you commit, then you deploy, let it run. Anyone who has viewer access to that automation can see the results, you can monitor, and do whatever you want.


Q: How does an agent respect permissions and security?

A: In general, for the custom agent, each integration that would be shared with that agent will have a service-to-service connection set up which would have defined permissions. For example, if you have an Outlook connector established which does not have permissions to send emails, then an agent will not be able to use that connection to send emails. From a security perspective, because under the hood the custom agent uses Bedrock, there are built-in guardrails that are already in place that are applied on the inputs and outputs of the agent. You don’t have to worry about the built-in guardrails, but if you wanted to apply any additional guardrails, you could always add those to the prompt itself. From a monitoring perspective, all the logs that you saw when the automation was run can be observed after the run is completed as well at any point in time for all previous runs. You can see what steps the agent took, what the reasoning steps were. In the case of the UI agent, you’ll see the screenshots as well.

1 Like