Conversational AI Applications
Design
Developing a bot, like developing websites and applications, should start with a design for a great experience. When humans interact with bots, we expect that what we say is understood, what we receive as a response is appropriate, and what we get as a service is delight‐ ful. We expect that, if we leave mid-conversation, the bot will remember where we left off.
Build
A bot is a representational state transfer (REST) web service that communicates with the user by sending and receiving messages and events from conversational interfaces like chat rooms or Web Chat widgets. With Microsoft’s Azure Bot Service and Bot Framework, you can create bots in a variety of development environments and languages. You can start your bot development in the Azure portal or use one of the Bot Framework SDK templates for local develop‐ ment. The templates support the C#, JavaScript, and Python lan‐ guages with Java support in early preview at the time of writing.
Test
To test conversational AI application, Microsoft provides the Bot Framework Emulator enabling developers to test conversations quickly and easily. We can also write unit tests using the Bot Frame‐ work SDK, which can focus on functionality testing of specific dia‐ logs. Once configured through the Azure portal, bot can be reached through a web chat interface, enabling broader testing by end users early in your development process.
Publish
When ready for your bot to be available on the web, either publish your bot to Azure or to your own web service or data center —wherever a normal web application can be hosted.
Connect
Azure Bot Service does most of the work necessary to connect bots to a range of channels and devices. Configured through the Azure portal, you can connect your bots to Facebook Messenger, Slack, Microsoft Teams, Cortana, email, Telegram, Twilio, LINE, and other channels. You can also use Web Chat widgets to embed your bots in your websites or mobile applications.
Evaluate
Recordings of conversations between bots and users provide valua‐ ble business insights to help you evaluate your bot’s performance. At this phase, best practices include evaluating success metrics that you defined during the design phase, reviewing instrumentation logs, collecting user feedback, refining, and iterating. Bot Framework provides sample Application Insights queries and a Power BI dash‐ board to help you grasp the full breadth of your bot’s conversations with users and gain key insights into your bot’s health and behav
Virtual Assistants
Building on the Bot Framework SDK, Microsoft’s open source Vir‐ tual Assistant solution (available in C# and TypeScript) is a project template that encompasses the best practices for developing a bot on the Microsoft Azure platform.
Building a conversational experience using the Virtual Assistant template requires the following resources:
- Azure Bot Registration (to configure Bot endpoint and channel configuration)
- Azure Web App (to host your Bot application)
- Azure Storage Account (to store transcripts)
- Azure Application Insights (telemetry)
- Azure Cosmos DB (Conversational State and User State—this can be swapped for Azure Storage for development purposes)
- Language Understanding
- QnA Maker (including Azure Cognitive Search and an Azure Web App)
No comments:
Post a Comment