No history yet

Advanced Conversational Design

Beyond the First Question

Your copilot can answer a question. That's a great start. But what happens next? A truly helpful interaction doesn't end after one exchange. It flows, adapts, and feels like a real conversation. This is where multi-turn dialogues come in.

Instead of treating every user message as a brand-new query, we can design conversations that remember what was said before. This allows the copilot to ask clarifying questions, gather necessary details, and guide the user through a process step-by-step.

A good conversational AI doesn't just provide answers; it accomplishes tasks. And most tasks require more than one step.

Think about booking a hotel. You don't just say "book a room." You provide a city, check-in dates, check-out dates, and the number of guests. A multi-turn dialogue handles this sequence naturally, asking for each piece of information in a logical order.

Memory and Meaning

To build these flowing conversations, your copilot needs two things: a way to understand specific pieces of information and a place to store them. In Copilot Studio, these are handled by entities and variables.

Entity

noun

A specific type of information the copilot is trained to recognize in a user's input, such as a date, location, color, or number.

Entities are like highlighters. They scan the user's message and pick out the important bits. Copilot Studio has pre-built entities for common things like emails and phone numbers, but you can also create custom ones for product names, service types, or anything else specific to your needs.

Variable

noun

A container that stores a piece of information for later use in the conversation. This information can come from user input or be set by the copilot itself.

If an entity is the highlighter, a variable is the sticky note where you write down what you highlighted. Once information is stored in a variable, you can reference it at any point later in the conversation. You can use it to confirm details ("Okay, booking a flight to Paris..."), pass it to another system, or use it to decide which question to ask next.

Crafting Conversation Paths

Not all conversations follow a straight line. Users might change their minds, ask unrelated questions, or provide unexpected answers. A robust copilot needs to handle these detours gracefully. This is done through branching.

Branching uses conditions to create different paths in the dialogue. A condition checks the value of a variable and directs the conversation down a specific route based on that value. It's the classic "if this, then that" logic.

Use flowcharts to visualize conversation paths before implementation.

For example, after asking a user for their preferred department, you can create a branching path:

  • If userDepartment is "Sales," then ask about product inquiries.
  • If userDepartment is "Support," then ask for their ticket number.
  • If userDepartment is anything else, then offer a list of available departments.

This logic ensures the user is always guided toward a relevant and helpful next step. By combining multi-turn questions, entities, variables, and conditional branching, you can move beyond simple bots and start building sophisticated copilots that truly understand and assist your users.

Quiz Questions 1/5

What is the primary advantage of designing a multi-turn dialogue for a copilot?

Quiz Questions 2/5

In Copilot Studio, which component is used to extract specific pieces of information, like a date or a city, from a user's message?

Building these complex flows takes practice, but mastering these concepts is the key to creating copilots that feel intelligent and are genuinely useful.