Microsoft Bot Framework and ML.NET - bots

I am very new to bot framework and was wonder if anyone has integrated models generated by ML.Net with Microsoft Bot framework.
Any pointers to any type of documentation will be great.
Thanks

You may refer to the blog
INTEGRATE CUSTOM MACHINE LEARNING MODELS TO YOUR BOT USING ML.NET
https://www.arafattehsin.com/machine-learning-models-to-botframework/
other than that you can refer to .Net Conf 2019 session - How To Integrate ML NET with a Chat Bot
and here with the sample Source Code that I had Created.

I would suggest separating the ML.Net logic into a separate API or Azure function, and call that from your bot.
There are examples of how to create those APIs in the ML.Net samples repo here https://github.com/dotnet/machinelearning-samples/tree/master/samples/csharp/end-to-end-apps
If you do really want to include the model and ML.net in your bot code, remember that the bot framework template is essentially a dotnet core API. So you could adapt the ML.net samples to run in your bot application.

Related

How to publish / deploy / consume Microsoft bot to my website?

I've created a interactive chat bot using the Microsoft Bot framework (.NET Core). I want to consume it in my website as widget. Is there any way i can do it. I don't have azure subscription nor i can afford it so please suggest an alternative way.
Ex: like converting the bot project to a web service or micro service and consuming it or may be creating a API of this and consume it
PS: I'm not sure about this.
Please help me with this

How to deploy NLP models on Azure?

I am working on a project to create an AI Chatbot. For that, I have built an NLP model. After making the bot, I deployed this bot on Azure. But It is not responding to anything after getting messages from users. Whereas, It was working and answering correctly on localhost. Does anyone know the exact way of deploying NLP models on Azure? Any proper documentation will be highly appreciated.
You can find the Github repo here- Link
This could be the required documentation you are looking for deploying the NLP on azure platform enter link description here

Is Microsoft Bot Framework in Teams free with my own endpoint?

I would like to understand how payments work as far as Microsoft Bot Framework is concerned.
This is my scenario: In Visual Studio Code I wrote an bot app using Microsoft Teams Toolkit to use it as a chatbot in Microsoft Teams. My company has an Azure Active Directory subscription, so my bot app appeared there. This app communicates with an endpoint which is NOT hosted on Azure.
So my question is - will it generate any extra costs? Should I worry about this 10000 messages per month limit?
https://azure.microsoft.com/en-us/pricing/details/bot-services/
As I understand I'm not using Azure Bot Services as I host my endpoint and I'm taking care of the logic, am I right?
My endpoint is written in .Net Core using Bot Framework SDK. So I use their classes and also MicrosoftAppId and MicrosoftAppPassword is also sent to the endpoint (obligatory to use with Teams).
Thanks for clearing it for me.
You can see in the link that the limit only applies to premium channels. Your Teams bot should be fine.

How to create Web App bot in azure using programmatically?

I just created web app bot manually in azure and its working fine. I need to create web app bot programmatically using node.js. Please suggest any idea. Thanks in advance.
Programmatic bot creation is not an option right now, but this is a high priority for the Bot Framework team and will be available soon. Please watch the Bot Framework blog for announcements. http://blog.botframework.com

Microsoft Bot Framework - Development Environments

I started learning Microsoft bot and coming across different environments to build and test. I am trying to understand the exact purpose of all environments.
Bots can be developed using Visual Studio using c# or Node.js in our local machine after downloading the Bot Template. Also, It can be tested in our local development machine using the Bot Emulator. I am clear till this point.
In one article, I could see that Bots can be built using https://dev.botframework.com/bots. When should we go for this environment?
Also, Bot Service can be enabled in Azure (portal.Azure.com). How it differs from the previous dev.botframework.
Can someone clarify?
If you are developing a bot locally, the environment you described is perfect.
However, once you want to allow others to access your bot and from different channels (Facebook Messenger, Skype, etc), you will likely host it in a cloud platform, let's say, Azure. Once you do that, in order to allow the Bot Framework infrastructure to interact with your bot you will have to authenticate your bot against that infrastructure. For that to happen, you will have to register your bot in https://dev.botframework.com/bots whereyou will get your Microsoft AppId and your Microsoft AppSecret, that then you will use in your bot code (in C# in the Web.config, in Node.js usually in a .env file).
You can read more about this on the How the Bot Framework works documentation topic.
Regarding Azure Bot Service: it an integrated environment that is purpose-built for bot development, enabling you to build, connect, test, deploy, and manage intelligent bots, all from one place. You can write your bot in C# or Node.js directly in the browser using the Azure editor. Your bot is automatically deployed to Azure.
You can read more on https://azure.microsoft.com/en-us/services/bot-service/

Resources