Watson Assistant
Please use the Watson Apps Community, and the Assistant Topic Group for collecting links to high quality technical enablement materials.
This is a “landing page” for Watson Assistant. Look here for links to high value technical content specific for this service.
References for Further Reading
- Training Considerations for Chatbots Using Multiple Skills Orchestration - GREAT article by Cari Jacobs, that digs into orchestrating multiple Assistant skills, and the best strategies for doing so. Backed up by real testing data and some actual code, she has done some real work here highlighting some best practices.
- Why is it STILL so hard to build a useful chatbot? - announcement of new ACTIONS capabilities in Watson Assistant by Blake McGregor. He covers the basics that you need to know to get started with using actions in Watson Assistant.
- Conversational Assistants and Quality with Watson Assistant — Revisited - nice blog post that highlights some best practices for a deployed chatbot with Watson Assistant. Check out the Python notebook with k-fold testing and intent analysis. Also note the follow up article Conversational Assistants and Quality with Watson Assistant — The Measures, which explains the metrics.
- Managing Your Virtual Agent’s Lifecycle - article that describes the simple version management within Watson Assistant, as well as an example of the fine-grained access permissions now available in Watson Assistant.
- Best Practices for Building and Maintaining a Chatbot - great article that highlights some of the things that you have to consider when you are building a chatbot that is going to be a REAL chatbot.
- IBM Watson Assistant provides better intent classification than other commercial products - a blog post from 2021 that discusses how different technologies performed against benchmarks in a 2020 study. Nice comparison of the different technologies (Watson, Rasa, Luis, BERT, Dialogflow, etc.)
- Conversation Redbook - A large document with some best practices and example use cases using Assistant. Very big, lots of details, but parts of it are getting to be out of date.
- Designing chatbots for failure - A list of ten good things that you should be considering when you are designing your chatbot experience. Just getting the right answers and actions isn’t enough - you need to communicate effectively with the end-user.
- The five most common conversation patterns, and how to use them - James Walsh has provided a nice overview of five basic styles of chatbot interaction. Useful to think about when you are designing your user experience.
- IBM Watson Assistant — Multiple Workspace Orchestration, Part One - an older article (2017) that outlines some of the main strategies for supporting usage of multiple domain skills in a single user facing chatbot.
Intents
- Defining Intents - great starter page with video to help you in defining your intents.
- How to build intents in your chatbot with Watson Assistant - three minutes of YouTube video gold, showing you how to build up your intents.
- Compound Questions - Nice article on a technique for detecting compound questions.
- Handling Multi-Intent Questions in Watson Assistant - great article on how to handle usert utterances with multiple intents (like, “Turn on the lights and play my Funky Jams playlist…”) using Watson Assistant. A technique for the more advanced chatbot builder.
- Watson in the White and Black Room - Quick article on understanding Watson confidence scores.
- IBM Watson Assistant: Intent Recommendations - learn how to best improve your Watson Assistant using intent recommendations in this 4 minute YouTube video.
Entities
- Defining Entities - great starter page with video to help you in defining your entities.
- Improving Your Intents with Entities - an exploration of how intents and entities work together.
- How to build entities in your chatbot with Watson Assistant - - three minutes of YouTube video showing you how to build up your entities in Watson Assistant.
- Detecting Names And Locations With Watson Assistant - nice blog post on using contextual entities to replace functionality that used to pull user names and locations via the @sys-location and @sys-person entities. You shoukld know this stuff!
Dialog
- Building Dialogs - great starter page with video to help you in defining your entities. It’s a long page, but building a dialog can be a complex task.
- How to Dynamically Add Response Options to Dialog Nodes in Watson Assistant - nice article on how to dynamically configure chat responses based on dat from outside or backend systems. Uses webhooks and is a nice example of how to best do this.
- How to build dialog in your chatbot with Watson Assistant - in this 15 minute YouTube video, you will see how to create dialog nodes and have them use intents and entities to properly answer your end user questions.
- SpEL Language Guide - Valid expressions in conditions are written in the Spring Expression (SpEL) language. This is a reference guide for the SpEL language.
- Watson Assistant – Advanced dialog tutorial - an 11 minute YouTube tutorial on using some more advanced techniques, like slots and context variables.
- Gathering Information with Conversation - a nice example using a pizza ordering use case that demonstrates using “frames” in Conversation to collect a series of inputs from a user.
- Beyond Coding: Watson Assistant Multiple Conditioned Responses - a long, but informative, blog post with some great examples of how you can use Watson Assistant to create multiple condition responses, so your chatbot can be more fully functioned and seem more intelligent.
- Using Slots to Gather Information - YouTube video which goes over using slots in your dialog flow to be able to get specific user information.
Action Skills
- Actions - An Overview of Building Conversations - a 10 minute video that walks through building a simple conversation using Actions. Good compliment to the documentation on Action skills.
Integration
- Watson Assistant Integrations: channel your knowledge - nice article on how to manage and work with the integrations that you have for your chatbot. From managing the UI with things like web chat, Slack and Messenger, or integrating with backend systems. It’s all here.
- From cURL to an Extension under 5 minutes! - nice blog post on how to integrate with those backend systems that turn your chatbot into something with some real business value for you. Here’s how you create that API connection and integrate.
- Connect to Backend Systems and Third-Party APIs with Ease Thanks to Watson Assistant Extensions! - incredible article and review of the new, low-code, easy way to integrate your Watson Assistant based assistant to any number of other backend systems. David Amid does a great job explaining how to use this capability in Watson Assistant.
- Watson Assistant: Sample Applications Page - the product documentation has some good example applications that you can see in action, and get the code for. Other good resources here as well. Definitely worth a look (and I usually don’t like the documentation…).
- Wave Hello to Watson Assistant Voice Interaction, and Goodbye to Complex Phone Trees - nice article by Preeth on using the Watson Assistant for Voice Interaction (WAVI) integration to eliminate phone trees and annoying IVR systems.
- It’s Now Way Easier to Personalize Your Assistant! - great article by Mitch Mason on how to use Webhooks to integrate your own applications with Watson Assistant, and how to use this to add some personality to your chatbot or assistant.
- Build a configurable, retail-ready chatbot - this is a good example of integrating usage of Assistant and Discovery, along with some other things. It includes code as well.
- Learn how to export & import a Watson Assistant workspace - great little guide done by Ronan Dalton (with curl examples) of how to migrate your work via API calls from one Watson Assistant workspace to another. We like Ronan - he comes up with some really great stuff.
- Watson Conversation: How to Manage Workspaces - great article and code for a Watson Assistant workspace management tool.
- I Love My Watson Chatbot — How Do I Make Changes To It? - a primer on some quick and dirty change management options for Watson Assistant.
- A comparison of DevOps choices for IBM Watson Assistant - great post by Leigh Williamson with a more in-depth look at verious change management and DevOps strategies that you can use.
- Extending Your Watson Chatbot - article describing how to enable the Watson Assistant/Watson Discovery integration, allowing you to extend the capabilities of your chatbot to address those “long tail” questions.
- IBM Watson Assistant: Search Skill - a 4 minute video that covers setting up and using a search skill to enable a “longtail” chatbot.
- IBM Watson Assistant: Service Desk Integration - great overview of the Service Desk integration (think Zendesk, Salesforce, etc.), and how to set it up with the Watson Assistant service.
- Building voice-enabled cognitive applications with Watson - a seven minute video showing how to do the WAVI (Watson Assistant for Voice Interaction) integration, and in this instructional video, we see the integration being done with Twilio.
- Quickly improve your voice agent with a speech model - a great way to rapidly kickstart the use of a custom speech model to help make your chatbot really chat….
Code
- Watson Assistant API Reference - The API reference page. be aware that there is also an Assistant V2 API reference page, which covers the V2 API which does different things than the V1 API.
- How to Use Watson Assistant with Webhooks - great video that covers using Webhooks with Watson Assistant and IBM Cloud Functions. Morgan Langlais also shares some code with you out on GitHub in her Webhook demo project.
- IBM Watson Assistant: Webhooks Demo - see a video of webhooks in action, and an overview of how to set one up so you can integrate with an external website or service.
- 10 Steps to Train a Chatbot and its Machine Learning Models to Maximize Performance - this outlines the methodology for training chatbots and the associated machine learning models to maximize performance. Although presented in the context of chatbots due to their high popularity, the methodology applies to all cognitive solutions, not just chatbots. Old, but still relevant.
- Chatbot with Conversation, NLU and Weather - developerWorks article that walks you through setting up and cloning a project that will build a chatbot that uses Assistant, NLU and Weather. Good example and you can poke through the code.
- Introducing Version Control in Watson Assistant - the announcement of the ability to create versions of your Watson Assistant skills, with a nice explanation of how it works.
- IBM Watson Assistant: How Do I Determine Unique Users? - a great article with some code examples which covers some ways to pass along user ID’s to fit the MAU (Monthly Active Users) billing model now in place for Watson Assistant.
- How to insert a Watson Assistant chatbot on your website without coding - if you don’t have people who can sling code and build the UI for your chatbot, and the standard looking chatbot Watson provides isn’t good enough for you, try out this approach from Blahbox. Want to read this in Spanish? Just click on Cómo insertar un chatbot de Watson Assistant en tu sitio web.
Testing
Sorry if this seems like an Andrew Freed fan club, but the guy has some great content on testing and analysis of your Watson Assistant driven chatbot solutions. Find us something better from someone else, and we’ll put it here.
- Watson Assistant Continuous Improvement Best Practices - This is the definitive (for now) guide on how to improve your chatbot over time. It’s 14 pages long, but the advice here for chatbot owners is fantastic.
- Advanced Analysis and Log Related Tasks - This section of the product documentation has links to some great Jupyter notebooks and some other assets that will help you test and improve your chatbot
- Testing Strategies for Chatbots (Part 1)— Testing Their Classifiers - make sure that you are testing your intents and classifiers adequately. Andrew Freed has some good approaches to doing testing in this area.
- Testing Strategies for Chatbots (Part 2)— Testing Their Dialog Logic - make sure that you are testing your dialogs adequately. Andrew Freed has some good approaches to doing testing in this area, in part 2 of a series on chatbot testing.
- Do You Know Where and Why Users Drop Off the Conversation? - I have seen some of the pre-release versions of this notebook. It’s really impressive and delivers real insight based on your logs - something you should have in your analysis toolbox.
- Testing a Chatbot with k-folds Cross Validation - another Andrew Freed blog post with links to a k-fold testing tool out on GitHub.
- Analyzing and Improving a Watson Assistant Solution Part 1: Analytics Personas and Existing Solutions - long title, short article. Great overview on how to do some real analysis of your Watson based chatbot, and on the people and perspectives that matter.
- Analyzing and Improving a Watson Assistant Solution Part 2: Foundational Components of Watson Assistant analysis - a discussion of pulling your Watson Assistant logs, and how to prepare the data for analysis (which will happen in part 3……)
- Analyzing and Improving a Watson Assistant Solution Part 3: Recipes for common analytic patterns - great advice and code that you can use to help you in doing a real analysis of your chatbot solution using the logs from it’s real day-to-day operations. Another Andrew Freed classic.
- How to Design the Training Data for an AI Assistant - this introduces a Dialog skill testing notebook, which is a really interesting concept. It attempts to give you a solid look at the entire skill - not just classification.
Logs
- Improve Your Chatbot using Watson Assistant Chat Logs - nice article showing you how to use the Assistant chat logs to provide feedback on chatbot performance and operations, and use that information to improve your chatbot.
- I love Pandas! - quick but informative blog post on how to use the Python pandas library to analyze your Assistant logs.
- Improve your Premium Development Instance with Intent Recommendations - Customers using a premium instance of Watson Assistant will get pertinent data for their intent recommendations feature in their production environment. If however, they are using a separate premium instance, or “slot”, for lower development environments they will not be able to see those recommendations in the workspaces/skills on that slot. This script addresses that need to export and import those intent recommendations. Developed by Prat Singh.
Education
- Watson Assistant On-Line Guided Demo - cool little demo environment so non-technical people can see how easy it is to set up and use Watson Assistant to create high powered chatbots with little to no code needed.
- Watson Assistant Foundations - from the IBM Learn site, this 90 minute online course will provide you with the foundational knowledge that you need.
- Designing Conversational Solutions - from the IBM Learn site, this 2 hour online course will provide you with the basics about building coversational chatbot solutions.
- Cognitive Class - How to Build a Chatbot - a Cognitive Class offering that will help you build up and learn how to build your own chatbot.
- Watson Assistant Learning Path - this free rersource is geared towards developers looking for some hands on examples and learning activities with Watson Assistant.
- Watson Assistant Demos and Tutorials - great collection of materials so you can do some self-guided activities that will help you learn and become familiar with how Watson Assistant works.
- Watson Covid-19 Chatbot Training Path - this learning path is for customers who have deployed a Covid-19 chatbot with IBM, but the learning path and the materials are a good source for ANYONE to come up to speed with Watson Assistant.