Amy Rumenapp June 20, 2023
In the rapidly evolving digital landscape, Google Cloud’s Contact Center AI (CCAI) has emerged as a strategic tool for enhancing customer experiences and driving operational efficiencies for organizations. However, the successful implementation of CCAI is more complex than one may think. It requires careful planning, adherence to best practices, and a deep understanding of conversational design principles. And who’s better suited to take on that challenge than a product manager?
At Nuvalence, our product managers have helped large-scale organizations use CCAI to handle the skyrocketing call volumes that have become “the new normal,” by automating everyday tasks that do not require a customer service representative. We’ve learned a lot about the complexities that come with designing a virtual contact center agent – especially the importance of early planning, good design, and adoption of common patterns and best practices that will help you keep up with constantly-evolving customer needs.
If you’re just starting out with CCAI, check out our practical guide for a holistic, 30K-foot view of what it means to automate a contact center using AI. In this post, we’ll take a deeper dive into one of the most impactful aspects of CCAI implementation: conversational design.
Conversational design is the practice of creating human-like, engaging, and user-friendly conversations between users and conversational AI systems. As a product manager, you’ll most likely own this design and will work closely with your team to implement it and evolve it over time. Here are the six steps you need to know to get it right.
Step 1: Understand Target Users and Define Your Virtual Agent User Persona
As a first step, we recommend doing research to understand and define the characteristics of your target users. The virtual agent’s responses should reflect the target audience’s demographics, goals, preferences, frustrations, and needs. Focus on understanding the target user’s level of understanding of the topics, and then tailor the virtual agent’s behaviors and responses to align with their expectations and emotional state. Understanding your target users in this way will go a long way toward ensuring your virtual agent’s conversation patterns deliver the best possible customer experience. Doing this important pre-work will influence every subsequent step in the process.
Step 2: Identify Use Cases and Scenarios
To begin, first prioritize the high-value use cases that bring immediate benefits and contribute to the outcomes you want to achieve. These use cases range from answering frequently asked questions (FAQs) to actions of varying complexity, such as facilitating orders, checking on the status of a payment, or completing an application. Even though you want to iteratively deploy your virtual agent, early identification of the underlying business use cases where automation will improve efficiency and the overall customer experience is critical.
Step 3: Define & Prioritize Agent Capabilities
Once the use cases are identified, the next step is to define the agent’s behaviors, features, and integrations. Start by breaking down all the use cases into Intents, which represent the things users will want to know or do. We found great success breaking out intents into categories such as FAQs, Small Talk, Simple Intents, Complex Intents, and Agent Intents.
Once you identify the intents, you will need to focus on the virtual agent behaviors needed to facilitate the intent conversation with the user. What types of questions or pitfalls do you need to plan for? What behaviors will be needed to ensure the conversation can be repaired if the virtual agent doesn’t understand user prompts? What if the user needs more help? What do you do if the user doesn’t respond?
For example, let’s say your virtual agent can take online orders and payments. The virtual agent takes the online order, and now the customer needs to provide payment information. If the agent asks for the credit card number and the user doesn’t have it with them, the user may say “wait a minute” or “give me a second to get my card.” This is a Small Talk intent: your agent should be able to support giving extra time for a user to respond.
If you understand all these behaviors in-depth, you’ll be able to communicate them clearly to your engineers – empowering them to plan for a design that is well-structured, reusable, and maintainable.
Step 4: Design the Agent’s Conversation Flow
The conversation flow of the CCAI agent should be designed to follow a natural, human-like conversation, offering clear and straightforward prompts and responses. Your virtual agent must be able to navigate a variety of interactions, from the “happy path” to more challenging scenarios and “feature-rich conversations,” where the agent solicits input from the user. For example, when users express more than expected or deviate from expected responses, it is important to create a conversational flow that can manage unforeseen responses and repair the conversation as quickly as possible.
Integrating best practices for these generic or Small Talk intents is a crucial step for providing a consistent user experience. These intents capture common phrases and responses and help repair a conversation that is not moving in a positive direction. They also ensure support for escalating to a live agent when the virtual agent cannot help.
Here are some best practices we found especially successful:
- Use Clear Greetings and Goodbyes: Use a clear welcome intent that explains the type of questions users can ask. Greetings should be informative without overwhelming the user, and cater to users with varying degrees of familiarity with the organization. Once users are provided with the information they need, end the conversation by giving them the option to continue with other actions or by ensuring a clear and accessible path to end the call.
- Always ask follow-up questions: Use of a confirmation Small Talk intent, such as “Did this answer your question?” adds a lot of value to your virtual agent. It will help create a feedback loop, improve user engagement, and contribute to the ongoing learning and refinement of the CCAI virtual agent.
- Stay consistent throughout the conversation when using small talk or follow-up prompts. Start with a complete list of common small talk responses and leverage them throughout. The goal of Small Talk intents is to capture common phrases and responses, as well as build in the ability to quickly repair a conversation that needs to be moving in the right direction.
- Plan for proper voice responses: Don’t make voice responses unusually long, and consider allowing the user to interrupt (“barge in”) to respond and ask a different question. A good rule of thumb is to limit virtual agent voice responses to what an average person can say within one to two breaths.
- Conversation Repair: Be prepared to handle interactions where users say things the virtual agent doesn’t understand, or when the user does not say anything. Handle both “no matches” or “no responses” gracefully and avoid escalation to a live agent by providing more detail in the re-prompt. Consider why the user might be having difficulty, and then, in the re-prompt, include additional support in the form of options.
- Support foundational small talk phrases: Be prepared to help at any time. Recognize and appropriately respond to user input like “what?” “repeat,” “say that again,” “I need more time,” “help,” “go back,” and other similar phrases. Ensure there is an unobstructed path to exit and support simple requests like “never mind” and “no thanks” where it makes sense. TIP: Stay tuned for an upcoming post that dives into the design patterns we use to handle these “feature-rich conversations.”
- Support and plan for edge cases: Be prepared to understand and detect edge cases, such as system integration failures, that can break your agent. It is crucial for product managers to team up with engineers to define a plan for gracefully repairing conversations with the user and appropriately communicating the next steps, especially when a request cannot be completed.
- Map and speak sample conversations: This crucial step validates that your design follows a natural and cooperative conversation flow based on your user personas. Read every dialogue aloud to make sure it is something your desired persona would say, and that it follows the innate rules of human conversation. Be truthful, informative, relevant, and straightforward. We found it very useful to map out conversational flows to test happy path and alternative use cases.
Step 5: Train, Test & Refine the Agent
We just reviewed the best practices for designing your virtual agent. Now, let’s talk about testing and refining your agent, a critical step and one that is crucial in the early stages of your design. This process starts with developing comprehensive training phrases to detect the intents, with each intent ideally having 20-50 phrases. Remember, complete training phrases are more effective than mere keywords.
Iterative testing will help identify additional training phrases and detect any conflicts. This is where the article “Fast-track Your DialogFlow Virtual Agents with Auto-Generation” comes in handy. I highly recommend sharing this resource with your engineers; it provides valuable insights on how to quickly develop a base agent that you can test and refine from a spreadsheet. The ability to create a new base agent in just seconds gives your product a significant advantage, allowing you to iteratively define and test it.
Once you have a base agent, it’s time to test and refine it, which is arguably the most crucial part of the design process. This involves using the base FAQ agent starter spreadsheet to customize the small talk responses and add your list of FAQ agent training phrases and responses. Testing ensures that the agent meets the desired functionality and aligns with your target user personas. Based on the feedback received during testing, you can then go back to updating your spreadsheet and making any necessary refinements. This iterative process of training, testing, and refining is key to improving the accuracy and effectiveness of your virtual agent.
At this point, leverage the principles from the article “Fast-track Your DialogFlow Virtual Agents with Auto-Generation” to significantly enhance your agent’s training. By quickly iterating on your FAQ base agent, you can improve the accuracy and effectiveness of the conversational experience. This also allows you to quickly recreate agents using the agent generator, enabling you to iterate the first release candidate for your agent effectively.
Step 6: Plan for Extensibility and Maintainability
Now that you have your base agent, you are probably wondering how to maintain it long-term: extending it to handle more complex intents, and whether it’s possible to support more languages. The answer is YES! We worked closely with our engineering team to build an open-source suite of tools to extend virtual agents to support one or more languages and to maintain and update your training phrases and intent responses. I recommend you check out our article “Introducing Agent Essentials for CCAI: Nuvalence’s Virtual Agent Accelerator” to learn more about extending your agent and how non-technical users can maintain intent training phrases and responses.
As a product manager, you’re in the driver’s seat when it comes to making sure your organization is maximizing the value of CCAI to automate your contact center. You just need the tools and the know-how to get the job done right. In this post, I shared a look behind the curtain at how we’ve applied our product management expertise to conversational design.
By following these recommended best practices and investing in upfront planning and research, you can minimize re-work for engineering and create a more maintainable system. This strategic approach not only reduces iterations but also ensures a solid foundation for a well-designed CCAI virtual agent from the start. With these key considerations in mind, you are equipped to maximize the value of CCAI and propel your organization toward automation success.