Copilot Studio: Autonomous Agents

Copilot Studio: Autonomous Agents

Copilot Studio has been the low code tool of choice for building conversational AI experiences that work with you, acting as your personal assistant to get answers and perform tasks.

As announced at Ignite this week, Copilot Studio has added a new set of preview capabilities that enable you to build autonomous agents that work for you.? These autonomous agents act as microservices that take desired actions on your behalf and respond to events without the need for human interaction.

You might be thinking: this sounds a lot like automation…

Well, you're correct!? Autonomous agents leverage automation to perform tasks.? However, these agents are foundationally different than typical automation.

The backbone of autonomous agents is the orchestrator, which uses generative AI to choose the best actions, knowledge, and topics to answer user queries or respond to event triggers.

Let’s say I want to create an agent that handles hardware procurement for new employees.

First, I need to add a trigger to my agent.? Unlike topic triggers, which require input from a user, event triggers allow your agent to act autonomously in response to the defined event occurring.

Whenever a new employee is created in our system, I receive an email requesting a device to be procured for the new employee.? I will add the Outlook “When an email arrives” trigger to my agent, so that it is triggered every time a new request comes in.

An Outlook trigger looking for new hardware requests

My next step is to add all the actions/workflows, knowledge sources, and topics that my agent needs to call.?

I will add my inventory spreadsheet as a knowledge source, so that the agent can pull the device options as well as their respective inventory counts.? I’ll also add the Microsoft Devices public website so the agent can get the device specs.


The knowledge sources available for the agent to reference

I will also add an action that runs my Power Automate workflow to submit the selected device into our procurement tool and a connector action for Outlook that sends a confirmation email to the new employee.

The actions available for the agent to use

Now that I’ve given my agent all the pieces it’ll need to successfully run my process, I need to tell it how to use each piece.? This is where instructions come into play.

Agent instructions direct your agent on how to handle the information received from the trigger (new email request), what steps to take when triggered, and how to act.

The custom instructions for my agent

In the instructions, I’m guiding my agent, telling it when to call different actions, when to get information from the knowledge sources, and when to reach out to a human for input.

I can now test my agent and follow the activity map to see how the process unfolds.

The interactive activity map

Then, I can click into each step and see what happened.

The Outlook action used to send a confirmation email to the new employee

Note that I have not "hard-coded" the inputs for To, Subject, or Body. Instead, I used natural language in the instructions to tell the agent how to fill out these inputs. For example, my instructions tell the agent to send the email to the new employee - therefore, the agent is intelligent enough to fill in the "To" input for me.

As my agent processes these triggers, I can view the Activity tab to see each run.

The individual runs of my agent


Now that we've explored how it works, we can revisit the question, "how does this differ from traditional automation?"

Some of the benefits of using these autonomous agents features include:

Streamlined development and adaptability: Processes can be easily built and modified using natural language and the "building blocks" (actions, knowledge sources, and topics), simplifying implementation and updates

If my device inventory manager asks to be alerted whenever the inventory count for a device is less than 5, I can add a "Send an email" action and then modify my instructions to include that step.

The new action to send a low inventory email

Intelligent user interaction: Agents can seamlessly prompt users for input to address gaps in information, ensuring smoother workflows

I can instruct my agent to reach out to the new employee to make their device selection.

User interacts with the agent, specifying their selected laptop


The "Microsoft Surface Laptop Go 3" device is procured for that user

Enhanced flexibility for diverse use cases: These are nondeterministic agents that efficiently adapt to variations, making it easier to handle new and complex scenarios

A nondeterministic step could be added to my scenario that automatically selects the device with the higher inventory and lower demand when no device preference is specified in the email.

Modified instructions to auto-assign a device based on inventory levels


A "Microsoft Surface Laptop 5 (13.5 inch)" device is procured, due to higher inventory levels


This hardware procurement agent is just one simple example of using these autonomous capabilities.

As Microsoft continues to invest in Copilot Studio and its autonomous capabilities, we will see a new wave of autonomous processing that relies less on the structure you give it and more on AI that intuitively understands your intent, adapts to changing needs, and delivers results with minimal human input.

Check out some of the additional Copilot Studio enhancements announced at Ignite!?

?

?

Laurens N.

?? Microsoft 365 | Copilot | AI | PowerPlatform | Agile | bij Gemeente Zwolle

2 个月

And still, when playing around I experience very inconsistent results when testing stuff in a Dutch language environment. Example: I created a Copilot Studio bot with SharePoint knowledge. All Dutch. One page mentions opening times of a Service Point. When asking 'What are the opening times' (in Dutch) it replied with generic opening times from Redmond... And even though I instructed to only respond in Dutch this was all in English. That's really holding us back from deploying something to production unfortunately.

回复
Syed Aabir Rizvi

Microsoft Cloud Solution Architect | Visionary leader helping organizations drive Digital Transformation

3 个月

Very Insightful ??

回复
Abraham (Abe) Salda?a

Solution Architect and TPM, with extensive experience in D365 CE, M365, Power Platform, Power Pages, Liquid Templates, Copilot Studio, Presenter, MC, DJ, Voice Actor, Available for Weddings, Quince and more.

3 个月

This is incredibly exciting! The introduction of autonomous agents in Copilot Studio opens up a world of possibilities. I can't wait to dive deeper into the technical aspects and explore how to apply this feature. Looking forward to seeing the innovations this will bring. ????

Matthew Mead

Global Black Belt Technical Specialist @ Microsoft | Technical Sales Leader | Problem Solver

3 个月

Great write up Amber. I built an agent yesterday to try it out that could analyze my emails and look at my D365 opportunities to highlight insights and risks. Was actually super simple to get going and trigger.

Jennifer Geraghty Ryan

Principal Product Manager @ Microsoft | AI Agents, new products

3 个月

This is an excellent explainer, thanks Amber!

回复

要查看或添加评论,请登录

Amber Weise的更多文章

社区洞察

其他会员也浏览了