LUIS and POS-Tagging, better together to build great bots

Hi,

I recently wrote a blog post on SharePoint’s nextgen searchbox that showed how to use a bot to query SharePoint instead of using the regular searchbox. As many of you know, SharePoint’s search engine is very powerful but end users will not leverage 10% of the keyword query syntax. The idea of having a bot building such queries automatically by interpreting end users questions and “translating” them into SP queries is a great way of letting end users express their needs in natural language and let the system figure out what they want.

Continue reading

Posted in Azure, NLP | Tagged , , , | 3 Comments

Writing a #cognitive #bot that leverages #luis #azureml and #qna maker

Hi,

In this blog post, I’m going to show you how to create the boilerplate code & actions to leverage a magic set of tools, namely: the bot framework, LUIS, Azure Machine Learning and the easy-to-use QnA maker.

Before diving into the “how to”, let’s describe the fictional scenario I had in mind for this blog post. We want to write a bot that advises people about the fitness for use of products against usages. So, the bot should be able to answer questions such as: “Is SharePoint suitable for document management?”, “Should I use Yammer for social computing or should I use IBM Connections?”. Here is a demo:

Continue reading

Posted in Azure, NLP | Tagged , , , | Leave a comment

#botframework custom #webchat control secret tip

Hi,

Following an issue I reported to the GitHub repository, pay attention to use the right secret when working with the custom webchat control. Indeed, if you rebuild this control yourself, you’ll have to enable the DirectLine Channel and use this channel’s secret instead of the webchat one.

At the time of writing, using the webchat channel’s secret works (with a websocket issue depicted in my previous post and in the page targeted by the above pointer), but it seems it’s gonna stop working soon, so it’s better to know it…

Happy Coding!

Posted in Azure | Tagged , , | Leave a comment

#botframework custom #webchat control and #websockets hacks

Hi,

At the time of writing, the default online webchat control (https://webchat.botframework.com/embed/…) isn’t websocket enabled at all. It seems that Microsoft will change that in a near future but I don’t know about the timing.

However, if you’re in a hurry and need to work with websocket right away, because for instance you know all your users use a company browser that is websocket compliant, then you have the opportunity to build your own webchat control as Microsoft made it available on GitHub. It is pretty straightforward to rebuild you own, just follow the instructions on the GitHub page.

Continue reading

Posted in Azure, NLP | Tagged , , | Leave a comment

Building the nextgen SharePoint search through a BOT and LUIS?

Hi,

I’ve recently worked on creating a BOT with the Microsoft Bot framework that handles queries from end users expressed in natural language. The BOT leverages #LUIS, Microsoft’s NLP engine, in order to extract entities and semantics our of the queries. At the time of writing, both LUIS and the Microsoft Bot framework are still in preview but they let us envision great possibiliities.

The SharePoint search engine is very powerful as it is fast and highly tunnable. However, most of the times, users simply use it as they use Google or Bing. They don’t know the name of the managed properties we created nor even the out of the box keyword query elements such as isDocument:1, etc.

Continue reading

Posted in Azure, SharePoint, SharePoint Online | Tagged , , , , , | 4 Comments

Transparent BOT authentication with Microsoft Teams

Hi,

At the time of writing this blog post, the BOT framework is still in preview so things are subject to change! However, if you already played with it and tried to enable the Teams Channel for one of your BOTs, you’ll see that it behaves differently than for the WebChat Channel.

Indeed, attachments are not handled the same way and although the user is automatically recognized in the Teams Channel, I couldn’t find any way to generate a Graph AccessToken (or anything else) by leveraging this information.This means that if you want to interact with any Azure Active Directory protected API, you’ll have to prompt the user for login (unless I missed something).

Continue reading

Posted in Azure, Azure Active Directory | Tagged , , | Leave a comment

NLP adventures with Microsoft LUIS, first impressions on the product.

Hi,

I had the opportunity to work with LUIS (Language Understanding Intelligent Service) recently in order to make an “intelligent” BOT. NLP (Natural Language Processing) and artificial intelligence in general are not new as Alan Turing was already busy with that decades ago but today, we have more power and more data than ever…

In general, if you want to have a reliable NLP engine, it’s always a good idea to restrict the scope of the application domain and that’s exactly what LUIS allows you to do in an easy way.

Continue reading

Posted in NLP | Tagged , , | Leave a comment