Using GenAI – Meeting Minutes Copilot

Using GenAI – Meeting Minutes Copilot

As a citizen developer it’s so easy to use generative AI. In one of my last blog posts, I outlined the use case of generating meeting minutes from a meeting protocol. Furthermore, I explained the technical details of my meeting minute service. Today I will show you how I build a meeting minutes copilot.

Correctly, I’m talking about building a copilot. Copilot is formerly known as Power Virtual Agent. Moreover, you might have noticed this when you navigate to https://powerva.microsoft.com/:

Now this amazing product is called Copilot Studio and I’ll show you, how-to use.

My Meeting Minutes Copilot

First, in Microsoft Copilot Studio I’m creating a new Copilot with the name Meeting Minutes Copilot. In addition, I’m selecting as copilot language English:

There are also advanced options, which allows me to define an icon and Power Platform solution details for my new copilot:

After clicking on the Create Copilot button, I can wait and watch a fancy animation until my copilot is ready:

After a while, my meeting minutes copilot is ready:

Ok, what’s next?

Copilot Basics

Before I start here some basics about Microsoft Copilot for you. First, a copilot defines a how a copilot conversation progresses within topics.

Therefore, I navigate to Topics and see there are some already some existing topics in my meeting minutes copilot:

A closer look at one of these topics shows me that a topic contains the logic of a partial conversation. In other words, a topic is like a dialog flow:

Like a Power Automate Flow, a topic starts also with a Trigger, which can be described with some phrases. In addition, you see from the example, this topic contains actions and can redirect to other topics. In other words, I can use a topic to split my copilot conversation functionality into small dialog chunks.

Secondly, I can extend the capabilities of my copilot by adding actions as plugins. I navigate to Actions and see there are currently no actions:

Microsoft says: plugin actions are used by my copilot to respond to users automatically. This means, I can (re)use here, for example my custom connectors.

Reusing my Meeting Minutes API

The result of my meeting minute service blog post was, I had deployed my API in Microsoft Azure as Containerized App. This means, I have already an endpoint that I can use in my Copilot:

In addition, I already utilized this API within Power Automate by using an HTTP action:

This will help me to build a topic for my meeting minutes copilot that can generate my meeting minutes from a given meeting transcript.

New Topic – Generate Meeting Minutes

First, I’m navigating back to my copilot topics. Then, I start creating a new topic from a description:

As you see, I use the name Generate Meeting Minutes for my new topic. In addition, I have added a description in the field Create a topic to...:

As result, Microsoft Copilot Studio automatically generates some trigger phrases for me:

In addition, Copilot Studio also added a question and a message to my conversation flow:

How cool is that!

I start adding a new node to my dialog flow:

A dialog opens, and now I can select Create a new flow:

I call my new flow Generate-Meeting-Minutes:

In addition, I add a parameter text to my trigger:

Furthermore, I add here a HTTP Action to my flow that will call my meeting minutes API:

The parameters of my HTTP action are URL, my header information, and my text provided as body:

Finally, I provide the generated meeting minutes as result to my copilot:

As result, my Power Automate Flow appears as a new node in my conversation flow where I add the variable Transcript as parameter text:

Finally, I return the generated meeting minutes from variable result as message to the user:

That’s it. My conversation topic is complete.

Testing my Copilot

After saving, I start testing my copilot:

Immediately, the chat opens, and I start asking the copilot to generate my meeting minutes:

You see my copilot is working as expected:

As you also see, I can follow the conversation flow during execution:

This helps me to analyze my copilot topics and helps me to understand what happens during the conversation.

Deploy my Copilot in Teams

For this, I navigate to Publish:

… and start publishing my copilot:

This takes a while:

Afterwards, I configure my copilot channels:

Here I select Microsoft Teams from the list of available channels:

Now, I must Turn on Teams for my copilot:

This also takes a while. You see, now my copilot is ready:

Next, I open my bot in Teams and add my Meeting Minutes Copilot as channel to my Microsoft Teams:

Let’s test…

…and here is the result:

My first Copilot is deployed and ready for my users!

Summary

Firstly, I created my copilot in Microsoft Copilot Studio, explaining basic concepts such as topics and actions. I then created a new topic in Copilot Studio, which generated an initial conversation flow based on my topic description. Next, I added an action to call my meeting minutes API within a Power Automate Flow and returned the result to the user in my dialog flow. Finally, I demonstrated how I tested and published my copilot, and enabled Microsoft Teams as a channel, allowing users to use my deployed copilot in Microsoft Teams.

I am very impressed with how easy it is to create a co-pilot, and I am confident that a citizen developer can create a co-pilot with the required features themselves.

Share

Leave a Reply