There are a lot of concept from Microsoft Conversational AI services. My teammate and I organized the following concept and resources for you hopefully it helps you get started.
- Types of Bots:
- Knowledge
This type of bot is result from knowledge base. A knowledge base is a pre-stored database which host Question and Answer pairs.
- Enhancement
This is a helping conversation part built as an enhancement of existing working application
- Functional
The bot itself is a full application
- Virtual Assistant
It is an open-source Virtual Assistant bot solution provides you with a set of core functional capabilities and full control over the end user experience.
- Technologies
- Q&A (Aka Knowledge base stores question and answer pairs) Link
- Score
- Q&A (Aka Knowledge base stores question and answer pairs) Link
when you asking the bot a question, the bot will return a score where how much % it matches existing questions in the knowledge base using MS internal fuzzy match logic
- Metadata
It allow us to separate one information to the next. Metadata is data about data. By adding Meta Tags for you question and answer pair in a Q&A KB, it can better filter and answer for the end user.
- Single/Multiple Turn
The distinguish between single turn and multiple turn is that multiple turn conversation has follow-up questions
- LUIS (
Language Understanding (LUIS) is a cloud-based API service that applies custom machine-learning intelligence to natural language text to predict overall meaning, and pull out relevant, detailed information.) Link
- Intents
The overall meaning of the phrase
- Entitles
The detailed pieces of information that LUIS extract
- Patterns
A pattern is a combination of expression matching and machine learning to increase intent and entity prediction
- Utterances
Text in users own words
- Natural language process
The process which changes users unstructured text input to and return a JSON-formatted response with a top intent. LUIS support prebuilt NLP model as well as custom model for domain-specific natural language models.
- Adaptive Cards
They are a way to present a self-contained UI to a user within a larger UI such as a chat client.
- OAuth
OAuth (Open Authorization) is an open standard for token-based authentication and authorization on the Internet. You can add Authentication capability to your bot Source Link
- Bot specific concepts
- Channels
A channel is a connection between the bot and communication apps.
- Turn
Request and response in and out model
- Events
Microsoft Teams sends notifications to your bot for events that happen in scopes where your bot is active.
From <Source Link>
- Conversation
A set of request and response groups
- Prompts
A prompt is used whenever a bot needs input from the user
From <Source Link>
- Dialogs
you can use dialogs to model a conversation and manage conversation flow.
From <Source Link>
- State
State data can be used for many purposes, such as determining where the prior conversation left off or simply greeting a returning user by name.
From <Source Link>
- Dispatch
If a bot uses multiple LUIS models and QnA Maker knowledge bases (knowledge bases), you can use Dispatch tool to determine which LUIS model or QnA Maker knowledge base best matches the user input
From <Source Link>
- Tools
- Bot Framework Emulator https://docs.microsoft.com/en-us/azure/bot-service/bot-service-debug-emulator?view=azure-bot-service-4.0&tabs=csharp
- Adaptive Card Designer https://www.adaptivecards.io/designer/
- REST APIs https://docs.microsoft.com/en-us/azure/bot-service/rest-api/bot-framework-rest-connector-quickstart?view=azure-bot-service-4.0
- Postman https://www.getpostman.com/
- Composer https://github.com/Microsoft/BotFramework-Composer
Thank you for reading.
Your friend, Annie