OpenDialog Docs
opendialog.aiStart BuildingTalk to an expert
  • GETTING STARTED
    • Introduction
    • Getting ready
    • Billing and plans
    • Quick Start AI Agents
      • Quick Start AI Agent
      • The "Start from Scratch" AI Agent
        • Chat Management Conversation
        • Welcome Conversation
        • Topic Conversation
        • Global No Match Conversation
        • Supporting LLM Actions
        • Semantic Classifier: Query Classifier
      • A Process Handling AI Agent
  • STEP BY STEP GUIDES
    • AI Agent Creation Overview
    • Add a new topic of discussion
    • Use knowledge sources via RAG
    • Adding a structured conversation
    • Add a 3rd party integration
    • Test and tweak your AI Agent
    • Publish your AI Agent
  • CORE CONCEPTS
    • OpenDialog Approach
      • Designing Conversational AI Agents
    • OpenDialog Platform
      • Scenarios
        • Conversations
        • Scenes
        • Turns and intents
      • Language Services
      • OpenDialog Account Management
        • Creating and managing users
        • Deleting OpenDialog account
        • Account Security
    • OpenDialog Conversation Engine
    • Contexts and attributes
      • Contexts
      • Attributes
      • Attribute Management
      • Conditions and operators
      • Composite Attributes
  • CREATE AI APPLICATIONS
    • Designing your application
      • Conversation Design
        • Conversational Patterns
          • Introduction to conversational patterns
          • Building robust assistants
            • Contextual help
            • Restart
            • End chat
            • Contextual and Global No Match
            • Contextual FAQ
          • Openings
            • Anatomy of an opening
            • Transactional openings
            • Additional information
          • Authentication
            • Components
            • Example dialog
            • Using in OpenDialog
          • Information collection
            • Components
            • Example dialog
            • Using in OpenDialog
            • Additional information
          • Recommendations
            • Components
            • Example dialog
            • Additional information
          • Extended telling
            • Components
            • Example dialog
            • Additional information
          • Repair
            • Types of repair
            • User request not understood
            • Example dialog
            • Additional information
          • Transfer
            • Components
            • Example dialog
            • Additional information
          • Closing
            • Components
            • Example dialog
            • Using in OpenDialog
            • Additional information
        • Best practices
          • Use Case
          • Subject Matter Expertise
          • Business Goals
          • User needs
            • Primary research
            • Secondary research
            • Outcome: user profile
          • Assistant personality
          • Sample dialogs
          • Conversation structure
          • API Integration Capabilities
          • NLU modeling
          • Testing strategy
          • The team
            • What does a conversation designer do
          • Select resources
      • Message Design
        • Message editor
        • Constructing Messages
        • Message Conditions
        • Messages best practices
        • Subsequent Messages - Virtual Intents
        • Using Attributes in Messages
        • Using Markdown in messages
        • Message Types
          • Text Message
          • Image Message
          • Button Message
          • Date Picker Message
          • Audio Message
          • Form Message
          • Full Page Message
          • Conversation Handover message
          • Autocomplete Message
          • Address Autocomplete Message
          • List Message
          • Rich Message
          • Location Message
          • E-Sign Message
          • File Upload Message
          • Meta Messages
            • Progress Bar Message
          • Attribute Message
      • Webchat Interface design
        • Webchat Interface Settings
        • Webchat Controls
      • Accessibility
      • Inclusive design
    • Leveraging Generative AI
      • Language Services
        • Semantic Intent Classifier
          • OpenAI
          • Azure
          • Google Gemini
          • Output attributes
        • Retrieval Augmented Generation
        • Example-based intent classification [Deprecated]
      • Interpreters
        • Available interpreters
          • OpenDialog interpreter
          • Amazon Lex interpreter
          • Google Dialogflow
            • Google Dialogflow interpreter
            • Google Dialogflow Knowledge Base
          • OpenAI interpreter
        • Using a language service interpreter
        • Interpreter Orchestration
        • Troubleshooting interpreters
      • LLM Actions
        • OpenAI
        • Azure OpenAI
        • Output attributes
        • Using conversation history (memory) in LLM actions
        • LLM Action Analytics
    • 3rd party Integrations in your application
      • Webhook actions
      • Actions from library
        • Freshdesk Action
        • Send to Email Action
        • Set Attributes Action
      • Conversation Hand-off
        • Chatwoot
    • Previewing your application
    • Launching your application
    • Monitoring your application
    • Debugging your application
    • Translating your application
    • FAQ
    • Troubleshooting and Common Problems
  • Developing With OpenDialog
    • Integrating with OpenDialog
    • Actions
      • Webhook actions
      • LLM actions
    • WebChat
      • Chat API
      • WebChat authentication
      • User Tracking
      • Load Webchat within page Element
      • How to enable JavaScript in your browser
      • SDK
        • Methods
        • Events
        • Custom Components
    • External APIs
  • Release Notes
    • Version 3 Upgrade Guide
    • Release Notes
Powered by GitBook
On this page
  • Why a Pattern Library for Conversation Design?
  • Conversation is systematic
  • Patterns capture conversation’s systematic nature
  • Patterns can help conversation designers
  • Select resources
  1. CREATE AI APPLICATIONS
  2. Designing your application
  3. Conversation Design

Conversational Patterns

by Joseph Tyler, Maaike Coppens, Ronald Ashri, Inge De Bleecker

Patterns help us make sense of the world. They identify and describe where there is regularity in a design. They make the design process and the outcomes more predictable. Patterns help us scale our thinking about a complex system through categorization and encapsulation of complex behavior under a simplified label. Patterns provide shared understanding between a team from design to development and deployment.

This library was created to make your life as a conversation designer easier and your conversational applications better. It collects insights about the nature of conversation, distills them into their most useful essence, and describes them through conversational patterns to make conversation design simpler and more robust.

Why a Pattern Library for Conversation Design?

Conversation is systematic

Conversations between humans show immense variation, but within all that variation there are consistent patterns.

People have studied these patterns: scholars of sociology, linguistics, anthropology and many other disciplines have studied the patterns of everyday talk under the banner of conversation analysis, discourse analysis, interactional sociolinguistics, and other terms.

These patterns have been recorded, analyzed and documented, showing the systematic nature of everyday conversational interaction. Being able to carry on a conversation involves the competent use of these conversational patterns.

The process of building a conversational application to carry on a conversation can be facilitated by understanding and using those patterns.

Most people don’t think about the details of everyday conversation while talking. We don’t deliberate on every word choice, the details of timing, how to transition between topics, or how to wrap up a conversation. We communicate everyday and generally the mechanics of conversation feel second-nature. But bots don’t know any of these things without being explicitly trained, and conversation designers need to know what to tell the bot to do. We can make the conversation design process easier AND more robust by collecting the many conversational patterns in everyday talk into a library.

Patterns capture conversation’s systematic nature

For our purposes, a conversational pattern is a sequence of conversational actions that can generalize beyond a single instance. As an example, a single conversation may start with each person saying “Hello”. That is, one conversational pattern is the conversation opening, which features each participant giving a greeting. Using the label “greeting” is a way of abstracting away from specific word choice to the social action (a greeting). Having a greeting-greeting conversation opening pattern means that a single pattern can be realised in thousands of ways, for example:

A: Hello

B: Hello

Less formally:

A: Howdy

B: Yo

More formally:

A: Greetings

B: Good day

In other languages:

A: Bonjour

B: Bonjour

The pattern exists independent of specific words. For conversation design, this means you can build a conversation structure one time but realize that structure in infinitely different ways. Patterns offer the structural strength for generalizability.

Patterns can help conversation designers

Now that we have established the patterned nature of human conversation, we can leverage this knowledge to make it easier to do conversation design. You are not starting from scratch! With a library of standard patterns, pre-built components, fleshed out to meet the common ways those patterns are used in everyday conversation, your design process can be more efficient, since you do not have to rebuild these patterns each time. Your designs also end up more robust, since you are less likely to leave out key components. The library of patterns is here to make it fast and easy to include a breadth of conversational competence. You’re not starting from zero. You’re starting with the basics already there.

OpenDialog wins with patterns

This library is useful for any conversation designer working on any platform. It is especially useful if you are on the OpenDialog platform! OpenDialog is a pattern-centric framework, able to leverage patterns for robust conversation design.

Select resources

  • Conversation design

  • Academic literature

  • Software Engineering

PreviousConversation DesignNextIntroduction to conversational patterns

Last updated 12 months ago

Conversational UX Design: A Practitioner's Guide to the Natural Conversation Framework
A Pattern Language
The Timeless Way of Building
A City is Not a Tree
Conversation Analysis and Discourse Analysis
Design Patterns: Elements of Reusable Object-Oriented Software