Interested in diving deeper into Conversation Design or related topics? Check out the resources below.
Dell Hymes, a linguist and anthropologist, created the SPEAKING framework that we can use as a conceptual framework in planning and analyzing the context and dialogs of our conversation design.
The delivery method of the bot, for example SMS, Chat, WhatsApp, Slack.
Note that a bot can be deployed across multiple channels, and it is important to be aware of each channel's constraints, settings, and interactions.
Options delivered to the customer.
Conversational Copy is the text that the bot writes or says to the customer.
Conversation Repair is the process by which a bot guides the user toward an acceptable, understandable response when it is expecting something in a particular format but receives something else.
For example, a customer who is supposed to enter an email address could be given repair attempts such as “please enter this in the form of an email address”, or “email addresses require an @ symbol.”
A sequence of turn-takings that move a user toward completing a task or goal.
The customer's reasons for interacting with your bot. For example, booking a flight, changing an appointment, or getting store hours.
In Einstein Bots, intents are associated directly with dialogs, so if a customer types to change a flight, the bot recognizes the “Book a flight” intent and then opens the “Book a flight” dialog.
Intents are part of the bot’s intent model, which is every intent inside of a particular bot. Intents are made up of utterances, which are the phrases customers use to describe an intent. Learn more at How to Enable Natural Language Processing in your Einstein Bot
A singular transmission of communication.
One Breath Test
A guideline generally used in voice-driven products, which advises that if you can say the response out loud without taking a breath, the response is the right length. For chat experiences, this also helps us keep our dialogs simple and short. We don’t want to send paragraphs of info to a user.
A conversation pattern is a set of utterances that happen in a certain order to create a flow.
A chunk of conversation that performs a particular task. This can be defined in multiple turns or multiple dialogs. Note: Einstein Bots has a feature called Dialog Groups that group dialogs together for easier admin navigation. You can use Dialog Groups to organize turns and dialogs within a Skill, although this is not required.
The set of messages of one chat participant, bot or user, until the other participant has input into the system. In Einstein Bots, we would call these dialog steps.
Alternating turns in a conversation between two participants, where one speaks and the other listens.
When to use Conversational AI?
Before moving forward with designing a bot, it's essential to first decide if a conversational experience is definitely the best interface for your users’ needs.
For example, creating a dialog where you ask the user's name to get to know them can feel personal and help to build rapport with your customers. However, when that is followed by several more questions asking for their address, their last name, etc, the turn-taking becomes cumbersome for the user. In this example, a form would be better.
Similarly, presenting the content of a lengthy Help article back to the user in an attempt to answer their question is not an ideal bot scenario. This content could be broken into smaller, more conversational key points, or presented as a URL for the user to follow.
Resolution is key. The bot needs to provide value to the user, or they will lose trust and potentially not interact with the bot in future.
What roles make up a Conversational AI Team?
While there is no definitive answer to who should be involved in building a conversational experience, we have a few suggestions to help you ensure that your bot has the proper investment to get it off the ground, and team resources to maintain it as it gains users. We suggest including:
- Product Managers to manage contributor alignment and timelines, ensure executive sponsorship, and properly price and package the system for the end user
- Engineers to build any additional scripts or integrate any APIs or data necessary as the scope for the system evolves
- UX Designers to ensure accessibility and consistency across devices and unify multimodal experiences
- CCX, UX and/or Technical Writers to partner with Conversation Design and UX Design to ensure that UI text follows all company brand, style, and tone guidelines.
- Conversation Designers to craft the information architecture flow and conversational copy
What exactly is NLP (and NLU)?
People often think of artificial intelligence (AI) when they hear “chatbot,” but not all bots can respond flexibly (like a human) the way AI can. The ones that can, use natural language processing (NLP) or natural language understanding (NLU) to interpret user inputs and respond appropriately. In the world of bots, we call these user inputs “utterances”. Different utterances that signal the same request make up an “intent”. Having an NLP-based bot allows the user to interact with the bot using the same words they would use in regular conversation.
Which type of bot is best for your needs?
Chatbots can be categorized into the following categories:
- Menu-based bots (or Decision Tree bots) are based on a set of rules and use a planned, guided dialog. They allow users to select a path based on a menu of options within the chat. These bots are easy to set up, deliver high value on low-level tasks such as password resets, and help you deliver a curated experience to the customer.
- NLP bots can interpret free text using NLP. Users can choose where an NLP bot moves, so they have more control over the experience. Also, NLP bots can interpret multiple pieces of information within one phrase, so they can complete certain tasks in fewer steps.
- Hybrid bots use menu-based methods and NLP methods at the right time to create a blended experience. A menu helps customers understand what the bot can do. And NLP helps the bot sound smarter and more conversational.
Menu-based bots are great for automating common requests, easier to implement than NLP bots, and they give customers a sense of what they can do by providing them with clear options off the bat. One would likely use menus when options are limited to a set number of predetermined actions.
NLP or hybrid bots are more versatile and conversational but they take more resources to set up and maintain.
Most strong bot experiences use a combination of menus and NLP intents to offer a well-rounded experience that allows the user some degree of freedom and control in guiding the conversation while offering guardrails and likely suggestions through menus.
If you choose to create a menu-based bot and later change your mind, don't worry. It's entirely possible to add NLP to your menu-based bot down the track.
What are Slack Slash Commands?
Slash commands in Slack make it easy to perform very simple tasks, but they’re not always very obvious for the user to discover. At Salesforce, we leverage both NLP and Slash Commands in Slack to provide the best experience.
When the user needs to expand or negotiate more context.
Example: @salesApp Which opportunities should I focus on to meet my quota?
When the user needs to do basic lookup or task management.
Example: What is my highest-risk Opportunity? → /sales oppty biggest risk
- Always prioritize NLP/free text inputs from the user — this meets the user where they are.
- Educate user on Slash commands as a back-up resource during conversation repair.
For more information on NLP, intents and different types of bots, check out this article.
What is the Uncanny Valley?
The Uncanny Valley is a psychological concept that describes the feelings of unease or revulsion that people tend to have toward artificial representations of human beings, as robots or computer animations, that closely imitate many but not all the features and behaviors of actual human beings.
Is conversation design for bots different for conversation design for generative AI? If so, how?
Conversation design for generative AI use cases is more commonly referred to as prompt design. At Salesforce, that involves helping shape and create prompts and provide feedback on any interaction needed from the user for a conversational interface. The involvement of a conversation designer here helps ensure output quality, making sure it's precise, accurate, unbiased at scale, and, if needed, considerate of customer data in context. Conversation design also takes into account the fact that there might be prompt injection attacks or attempts to jailbreak the model, helping to safeguard internal prompts from undesirable attempts to harm the business of both the user and Salesforce and defining how the model should handle said attempts.
For bots, conversation designers work in Einstein Bot Builder to create information architectures and language designs, along with training the bot's intents, which the model interprets using NLP.
What do we consider a high quality prompt?
To make the model output as precise and efficient to get the job done in the way our users need, designing a high quality prompt is crucial. We define high quality as:
- tightly scoped
- explicit about what will be done with the model output
- clear about the nature of the relationship between the recipient of the model output and the model output itself
- linguistically explicit about the style (AKA "tone") of the model output
- Conversation Design-Trailhead Module
- Relationship Design-Trailhead Module
- Writing Style-Trailhead Module
- Greg Bennett: Conversation Design The Salesforce Way | L3-AI 2021, August 11 2021
- Greg Bennett & George Hu: Service Conversation Design Best Practices, September 26, 2018
- Greg Bennett: Voice & Tone Design Exercise, September 26, 2018
- 9 Tips to Design Conversational Style for Your Bot, October 6, 2017
- Conversation Design is the Future of UX, March 4, 2021
- Einstein Bots Basics-Trailhead Module
- Einstein Bots Project Planning-Trailhead Module
- Write Utterances for Einstein Bots
- Use Exact Matching for Intents
- Use Intents to Understand Your Customers