web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Copilot Studio / Proactive slot filling...
Copilot Studio
Suggested Answer

Proactive slot filling to identify custom entity from user's conversation

(0) ShareShare
ReportReport
Posted on by 3

I have created a custom variable in Copilot Studio called 'Organization', with pre-made organizations (think OrgABC, OrgXYZ). I want the Copilot to proactively identify organizations from the user's conversations (what Copilot calls 'Proactive Slot Filling'). In this way, if the Organization entity is identified, Copilot will skip a question asking user which organization they are in. Else, it will have multiple choice buttons for users.

However, Copilot is not able to identify an organization. E.g. if a user prompts says "I want to know more about OrgABC", it is not able to identify OrgABC. Instead, Copilot will ask the user to select which organization they are in (choosing between OrgABC and OrgXYZ).

I have created:
- A custom entity called organization, with 1 of the choice being "OrgABC" exactly.

- Create a topic to direct Copilot to a topic on 'giving details about organizations'.

- In the topic, there is a question node. Copilot will identify the user's organization. <-- the issue is here, Copilot is not able to identify from a prompt and will always ask the next question. The ideal flow is Copilot identifies the organization and skips the next question. The question setting is set to "allow question to be skipped".

- If the organization is not identified, Copilot will give 2 options to the user (OrgABC or Org XYZ).

I want this to work essentially similar to Copilot Studio documentation for proactive slot filling: https://learn.microsoft.com/en-us/microsoft-copilot-studio/advanced-entities-slot-filling#proactive-slot-filling

I have the same question (0)
  • Suggested answer
    Sayali-MSFT Profile Picture
    Microsoft Employee on at
    Hello,

    Copilot is not identifying OrgABC from free text because Choice entities are not processed like real Named Entity Recognition (NER) entities. Choice values are only reliably captured when users explicitly select them or answer a direct question — they are not consistently extracted from natural language. This becomes more problematic when the values are short, uppercase, acronym-style identifiers (like OrgABC or OrgXYZ), which lack semantic meaning for the LLM.

    Proactive slot filling works best with natural, real-world concepts (like locations or company names), not artificial codes. Since the Organization variable is never automatically bound from free text, the “Allow question to be skipped” setting does not apply — Copilot correctly asks the question because the variable is still empty.

    The most reliable solutions are:

    1. Add rich, natural-language synonyms to the entity values
    2. Switch from a Choice entity to a Phrase List entity
    3. Add explicit topic instructions telling Copilot to bind organization names when detected
    4. Or implement a pre-extraction step before slot filling
     

    In short, nothing is misconfigured — Copilot simply needs semantic hints or a different entity setup to extract acronym-style organization names from free text reliably.

     
     
  • NZ-26020543-0 Profile Picture
    3 on at
    Hello,
     
    Thanks for the reply! The OrgABC is an example, the entities are company names like Microsoft or Samsung. 
     
    Wondering if you would know which solutions work best in this case?
    1. Add rich, natural-language synonyms to the entity values -- I have added synonyms to no avail. 
    2. Switch from a Choice entity to a Phrase List entity -- Similar to the link you've provided (thanks!), I'm using custom entity > new entity > closed list entity. 
    3. Add explicit topic instructions telling Copilot to bind organization names when detected -- tried this in the instruction but Copilot isn't saving company names to the custom entity or as a global variable. 
    4. Or implement a pre-extraction step before slot filling -- not sure how this can be done?
     
    Thanks again!

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Season of Sharing Community Challenge Launch!

Jump in, show your community spirit, and win prizes!

Kudos to our 2025 Community Spotlight Honorees

Expanding mentorship, skilling, and AI innovation

Congratulations to the May Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Copilot Studio

#1
Valantis Profile Picture

Valantis 277

#2
11manish Profile Picture

11manish 206

#3
sannavajjala87 Profile Picture

sannavajjala87 156 Super User 2026 Season 1

Last 30 days Overall leaderboard