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
Related
I managed to create a chatbot using Azure with the QnA Maker service. Everything works fine and the bot responds to my questions if there is an answer set up already in my Knowledge base.
What I need to do now is to not let the client anything until a real assistant joins the chat to provide some answers. Bascially, I want the client to only communicate with the bot using premade questions. So if the user clicks on a question, it should follow a tree like structure to another question and so on. Something like this image:
I tried researching this and the only thing that I could find is a different Microsoft service that refers to some dialog flows, which is not really what I try to do since the bot is made in Javascript.
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
Prewarning: I am a noob with development, I started doing web design when I retired from the Marines about 3 years ago. I specialized in Intelligence and Tactics, so not a computer user during that career. Fast forward to Today:
I work as an Exchange admin and migration specialist with GoDaddy, I have been through several Webdesign courses and learned a decent foundation of html/css/php however JavaScript, Nodejs, Java, Python, C++, and C# are all still things I am working on.
My issue: My lead wants to have a bot built that essentially posts messages in the #general group (I learned how to do this and actually setup a nodejs server within my test hosting server # GD and have a Joke bot running in my slack WS). The tricky part that I have been scratching my brain on is how to use an web API that GD has to monitor our call que, hold times, and agents online. I need to figure out how to get the bot to post a message regarding certain triggers automatically(exp. Hold time exceeds 10mins). I can not figure out whether to use a webhook, eventListener, or a direct bot auth'd into the GD api like my joke bot that links to chuckNorris jokes.
I appreciate all the comments truly, I have thick skin and know that I am late to the game on development. I want to build this for the experience and to integrate with slack, my end goal would be more projects to eventually become a Dev within GD.
I have a few thoughts that might help you.
Regarding these holdtimes, agents online, and call queues, think of these as events. Whenever these events occur, they should fire a payload (HTTP request) to your service that then posts messages to slack. I think you might need a slack bot token for this.
Many APIs have this functionality under webhooks. You provide them the URL to the endpoint your developing and theres usually a toggle to tell them that you want to start accepting events.
To get going on your service/bot, I'd recommend starting with learning about what these webhook event payloads will look like in terms of structure so that you can parse it.
If you have more detailed questions feel free to comment or message. Happy to help. I've written a slack bot or two.
I want to make Frequently asked questions and answers bot in dialogflow. I have Q&A files, so I am used knowledge base in dialogflow .i have the 6-7 file i make documents in the knowledge base. but when i ask question bot not sending any response.
Image of knowledge base console
Knowledge Base Document QNA
dialogflow text response screen
In the response section you need to give $Knowledge.Answer[1].
If you can't get answer in your App knowledge connectors won't work with the production SDK for now, you have to use the Beta SDK/API and pass QueryParameters object for the knowledge connector when you use detect_intent function.
check the documentation
If you can't get answer in the portal you need to adjust KNOWLEDGE RESULTS PREFERENCE to be stronger and lower ML CLASSIFICATION THRESHOLD otherwise the default fallback intent gonna always answer. check the pictures below to see how to:
The error might just be because you didn't enable the knowledge base
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