Skip to main content

Notifications

Topic Creation & Management
Answered

Slot filling is not working as expected when the question is asked in a different topic

Posted on by 26

I am struggling to overcome one important scenario that I have. Say I have an entity of "flight number" (fictional scenario).  I would expect many types of question to require the user to provide the flight number.

- What time is flight FR1567 expected?

- Where did flight FR1567 originate from?

 

For these two questions I would create two topics.  In each topic I ask the question "Sure, what flight number".  The question behaviour is marked as "Allow question to be skipped".  This works as hoped.   If the user enters "can I check the time of a flight" we shall ask for the flight number, but if they ask "can I check the time of flight FR1567" we do not.

 

But I don't like the fact that the question is duplicated in both topics.  I hoped to create a "Request Flight Number" topic, that all the topics requiring a flight number could temporarily redirect to.    We have one place for the question.  But slot filling is not working with this approach - the flight number will never be picked up from the user prompt.

 

i.e. unless the question is asked in the original topic, slot filling is not working.

 

Any ideas on how I could make this work?

Categories:
  • IanMcD Profile Picture
    IanMcD 26 on at
    Re: Slot filling is not working as expected when the question is asked in a different topic

    Thats a great example for me to follow, thank you, will start pursuing that direction.

  • Verified answer
    adilei Profile Picture
    adilei on at
    Re: Slot filling is not working as expected when the question is asked in a different topic

    Yes, reuse seems like a good idea, but sometimes conversation design has its own special constraints. That being said, you could potentially leverage Gen AI to directly respond to questions, within the same topic.

     

    Here is an example of a custom prompt that ingests a customer query and flight details and responds directly to the query, all within a single topic. This will work assuming you have already extracted the flight number and retrieved its details:

     

    adilei_0-1709298966699.png

     

    This is the prompt I am working with:

     

    adilei_1-1709299049477.png

     

    Here is some more info about custom prompts in Copilot Studio: Create AI plugins for Microsoft Copilot (preview) - Microsoft Copilot Studio | Microsoft Learn

     

  • IanMcD Profile Picture
    IanMcD 26 on at
    Re: Slot filling is not working as expected when the question is asked in a different topic

    I'd tie this in with the DRY principle in programming.  We have twenty places where we need to request a flight number.  Rather than writing the code twenty times, I want to write a shared method containing that logic only once.  What happens inside that method is the same for all 20 use callers.  i.e. we ask for the flight number in one of the possible ways.  We store it.  If the flight number begins with FR we abort the operation.

     

    I'm appreciating the responses, its making me look at the problem in different ways.   I was hoping to have very specific topics so we give the user a straight answer to their specific initial question.  But I get the point that if we start with more general, we can identify the flight and then worry about what detail is required as the next step.

     

    Thanks for the help.  Knowing that slot filling requires me to ask the question in the original topic is enough encouragement for me to tackle it in another way.

  • adilei Profile Picture
    adilei on at
    Re: Slot filling is not working as expected when the question is asked in a different topic

    I would think that having to manage different variations on the same question is an argument for managing separate questions in separate topics, not against.

    There are more advanced ways of working with NLU (specifically when relying on Azure CLU as a classification engine), but I'm still not convinced that is required in your case. Just for my benefit - why would you need multiple topics?

     

    It seems like the intent could always be understood as "request flight details", regardless of whether the user is interested in the flight's destination, time of arrival, etc.

  • IanMcD Profile Picture
    IanMcD 26 on at
    Re: Slot filling is not working as expected when the question is asked in a different topic

    I was trying to keep my described scenario simple, but really there could be quite a bit of logic associated with the question.  For the question itself we might have many variations.

    - Sure, what is the flight number?

    - No problem, give me the flight number and I'll have a look.

     

    If I have 20 topics each with their own copy of this question keeping them all aligned will become painful.

     

    Also I have some accompanying logic that triggers after the question.  For example if the user specifies the flight number and it begins with 'FR', we may want to interrupt their original ask "oh, sorry we don't support enquiries for the EMEA region".  Again I could replicate this logic in each of the 20 topics but then when I fix a problem, I need to do it in all the places.

     

    I was trying to avoid the repetition by pushing it into a shared topic.  Then each of the 20 use cases have one node redirecting to the shared topic.  That one simple node makes it clear that the use case topic has a need of a flight number, but it doesn't control HOW the flight number is collected.

  • adilei Profile Picture
    adilei on at
    Re: Slot filling is not working as expected when the question is asked in a different topic

    That's correct, intent classification and topic triggering happens before the question node is being assessed. I'm just curious, what will be gained by having only a single question node? I'm not sure efficiency gains will be dramatic, and it will contribute towards complexity, as you would have to somehow link the "generic" question node with specific topics.

Helpful resources

Quick Links

Welcome to the Power Platform…

We are thrilled to unveil the newly-launched Power Platform Communities!…

Getting Started…

Welcome to the Power Platform Community! We appreciate your visit…

Welcome to the new Power Platform Community!…

We are excited to announce our new Copilot Cookbook Gallery in the Community…

Leaderboard

#1
WarrenBelz Profile Picture

WarrenBelz 138,287

#2
RandyHayes Profile Picture

RandyHayes 76,308

#3
Pstork1 Profile Picture

Pstork1 63,172

Leaderboard

Featured topics