qnamaker with LUIS - azure

I'm exploring the microsoft services.
LUIS caught my attention.
Would it be beneficial to add it to a QNAmaker bot?
The bot basically answers questions as accurately as possible, nothing else, just pure answer from knowledgebase.
Do I even need to add LUIS?

No, you don't need LUIS to have QnA maker answer questions. You might add LUIS as the app grows to do more than just a faq style interaction.

By itself, if all you want is for the bot to answer questions, then this is sufficient. However, even still it is helpful to pre-emptively tell users what your bot can actually do, so I would also like to suggest adding a pro-active message which actually informs your user of what your bot can actually do, i.e have the bot say something like: "Hi! I'm -A Bot-, you can ask me questions and I'll do my best to answer!"
If you are interested in looking at a c# implementation of LUIS with QnA here is a sample

Related

Who Bot for Microsoft Teams (Who knows about...)

Added Who Bot in MS Teams but am unable to find a reliable and definitive answer on how I can "teach" the bot to answer the questions "Who knows about ..."
Some sources point to updating Delve account with skills, some say it will get that information from chat discussions in Teams... nothing works (after almost a month of the bot being added).
So, how can I feed the Who Bot information so that it can answer that specific question - "Who knows about a topic"
Thank you.
I was talking to Microsoft about this. After weeks of back and forth, this is their conclusion:
Thank you for your time over the phone today.
As regards your concern, the Who Bot feature needs a different
expertise to feed data for the “Who Bot” to fetch results for the
queries on “who knows about”.
This information needs to be fed into a text file with a scripting
expert and then integrated into the Who Bot connector. This is where
"who knows about" fetch its data from.
Since we are only a break fix issues support team and do not work on
scripting, this is out of our support boundaries.
Ref articles and work items:
• https://github.com/microsoft/BotBuilder-Samples/tree/main/samples/csharp_dotnetcore/12.customQABot
Please, let me know if you have further concerns about this.
Thank you for choosing Microsoft support
Their solutions was "please code a bot to fix our bot"
You can create a question answering project from your own content, such as FAQs or product manuals.
This bot has been created using the Bot Framework SDK, it shows how to create a bot that uses Cognitive Services' question answering feature.
Question answering lets you to build, train and publish a simple question and answer bot based on FAQ URLs, structured and unstructured documents, or editorial content in minutes. In this sample, we demonstrate how to use question answering to answer questions based on an FAQ text file used as input.
Ref Sample-https://github.com/microsoft/BotBuilder-Samples/tree/main/samples/csharp_dotnetcore/12.customQABot

Is there a way in Google Assistant to ask for the available Training phrases?

I am learning about DialogFlow and its integration with Google Assistant but I think it's a bit hard to develop because the users don't know all the posible topics that the chatbot can talk about. I know that this is probably a bad design from my side but I assume that there should be a "help" command to offer suggestions of the available Training phrases that a user can invoke, right?
There is no automated help command to display all of the possible actions in the Dialogflow platform. However, it can be a good idea for you to build out some sort of 'Help' or 'What can you do' intent to give the user some sort of guidance.
Additionally, you can provide them with a few use cases in the Default Welcome Intent.
"Greetings. Do you want to (do X) or (do Y)?"
Visiting our voice design guidelines can provide you with additional advice on creating a good voice experience.
This is not a build-in feature for Google Assistant (or any other integration as far as I know). Having a clear roadmap of available features/intents is often a challenge when deciding your chatbot's design. Here are some tips that might help you in this:
Build a custom help intent
With a custom help intent you would be able to assist your users in any way you see fit, you explain to them what your action is or offer them some suggestions. Since it is a custom intent you can really do whatever you want. As you asked about sending available training you could use the Dialogflow API to show them which training phrases are available in your bot to give them an example.
Use suggestion chips
This is probably the easiest option, when you user asks for help you can give them a set of standard suggestions to guide your user back on track. Your users can click on them or say what is in them to continue to a different intent. (Users that talk to your action on device without a screen can't see these, so you have to design an alternative for those devices too)
Example phrases in action overview
When publishing an action, you get the option to add some example phrases to get the user informed about what you action is designed to do. These suggestions only show up on the action overview so they don't help your users while interacting with your action, but it is still nice to add to help new users get started quickly.

Forwarding Messages with Microsoft Teams Bot

So I'm trying to create a chatbot in MS Teams with the Microsoft Bot Framework in order for a handful of end-users to be able to do basic troubleshooting. Does anyone know of a good way to be able for the Bot to be able forward certain questions that do not have responses within the knowledge base? Does anyone have any suggestions on what would be the best way of doing this? I've looked briefly into MS Flow. Thanks!!!
EDIT: So In order to further clarify what I am trying to do I'm adding some more. When someone asks a question to the Q&A Bot in Microsoft Teams. If the bot doesn't have an answer, the question will then be forwarded to a live agent that could answer the question asked in real-time. I'm looking for some type of software or API that could do the forwarding part
#G-Snider you're in danger of having your question shut down if you don't provide more detail--like some code that you've tried, for example.
And I'm afraid I don't very clearly understand your question...however I'll take a stab at helping.
You could always use Dispatch connected to a QnA Maker knowledge base to determine if a user hits an intent that would be answer able to your QnA KB or if it's "None" intent--or if you don't want the LUIS layer.
BF Dispatch Sample: C# / JS
Alternatively, you could forego the Dispatch layer and stick with only QnA and work with confidence scores and thresholds that get returned that's built into the QnA module itself.
QnA Maker Sample: C# / JS
Second step, if your bot determines that the user hit None intent or has no result from your QnA KB directly, then you could implement human hand-off.
Human Hand-Off Sample

Add more small talk options into Dialogflow

I am utilising the small talk options within the chatbot that I currently use, however, I have noticed a couple of common questions which seem to be asked which fit into small talk, such as "What is your name?" and "What does you name mean?".
Is there any way in which I can add to the list of small talk questions? If not, how can I add these questions in with their responses? My issue is that I believe that you shall need a new intent for every question that gets asked? Any help would be appreciated.
Using a new intent for every question asked (or at least different versions of the same question with one answer) is the standard Dialogflow design and isn't really a problem.
The small talk functionality is just a big list of questions and answers in separate intents - you can see by looking at the pre built small talk agent through Prebuilt Agents -> Small Talk -> Import.
Therefore I would suggest to simply do it this way.
Initially, small-talk option had this issue which you specified here where users were not able to add more phrases to existing questions or add more questions.
To solve this issue, DialogFlow has introduced Small Talk Pre-built Agent.
There are approx 86 pre-built intents in the small-talk agent.
You can add/modify the phrases in those intents,
You can add/delete intents
You can modify the responses of these intents
To use small-talk agent, go to pre-built agents option in left menu, go to Small Talk agent, then import it.
Hope it helps.
I will suggest to use QnA maker service to achieve the functionality. Basically you have to create a QnA maker service and have to integrate to Bot. It will resolve your query. Please let us know if you need more information .
Regards,
Tharak

Is there a way to push content to Cortana without user initiation?

Before anyone marks this question as a dupe, let me say I am aware of this question from 2015. But Microsoft has done a lot of work on Cortana in the last two years so I thought it might be worth asking again. Please forgive me if this is not proper etiquette and feel free to educate me on how I should have handled asking the quesiton again.
I am currently writing a new skill for Cortana using, of course, the Microsoft Bot Framework. I've gotten everything registered and working except my actual interaction with Cortana. For this, I need Cortana to be able to initiate a conversation without the user prompting it. In 2015, this was not available. Is there currently a way to do so in the latest iteration of the platform? I can't seem to find it but I could be simply missing something subtle.
The Cortana Skills kit currently does not support proactive notifications, however it is on the feature request list and will be considered.

Resources