I have created a Custom entity for classes with list items such as 'Java', 'HTML', 'Javascript' etc.
I have a topic trigger such as "When is the next Java class scheduled for?".
Immediately after the topic trigger I have a question "What class are you interested in?"
Now if my chatbot input is "When is the next Java class scheduled for" the class entity is properly slot-filled and the question is skipped.
However if I use java, JAVA etc, in the chatbot input the slot-filling does not happen because of a change in case and the question is asked.
If I answer the question as java or JAVA that works, it ties it back to Java and the flow proceeds.
How can slot-filling be done without having to worry about the case used for the entity in the chatbot input?
Appreciate any feedback. Thanks.
Let me test this
Ok, maybe I was not going crazy after all. Case matching on custom entities is only happening for the 'Item' column on the custom entity screen. Case matching does not happen for the 'Synonyms' column. This is an issue.
On further testing I found, if the synonym is in lowercase, case matching happens OK regardless of whether the entity is typed in lower or upper case.
If the synonym use the right capitalization for example WHO for 'World Health Organization' and if the user inputs 'who' the entity is not recognized.
Thanks so much!
At the expense of sounding crazy, it is working now. I made no changes to the my topic and it is extacting the entity without any issues with the case and slot-filling.
I was not working for the day I opened up the support request here and the day after that where I was trying everything under the sun to get it going.
As if a bug was fixed in the Copilot source code and updated.
Thanks again. This is a big relief.
Tested this myself, and in my environment case sensitivity isn't an issue (see below).
Can you export your copilot with pac copilot extract-template?
Project is stuck here, any help/workaround is appreciated.
Deploying the chatbot on a public facing website and don't have the option of asking folks to type using only in lower case as some of the other solutions seem to suggested.
There is to be a way to address this very basic requirement.
If felt case might not be an issue in the published bot. However that is not the case. Slot filling only happens if the case matches the one in the entity list.
Yes, no luck with smart matching.
The entity is not matched if there is no exact match in the entity list.
I can input different cases in the enity list synonyms and it works when testing within copilot studio but I am not able to publish the bot.
Have you tried creating a list entity for the types of classes with smart matching enabled?