Dialog Construction Toolkit

Getting started with constructing dialogs

This page is a collection of different tools, that help to create natural dialogs with digital agents with dialogflow. It is not mainly focused on the technical setup of dialogflow, but rather on the design process.


  1. Getting an Overview overview getting started

    Create a sample dialog

    A simple and cheap way to get an idea of the dialog and its parts is to create a sample dialog. You can do this by writing it down, or even prototyping in a wizard of oz way, and reenacting a computer.

    Get an overview

    First of all it is important to get an overview of the topics and the scenario that your dialog will happen within. Writing that down can help to get a clear idea.
    What we found interesting to look into for that is: Topic, Objective, Identity of the agent and Location / Environment.

    đź“‹ Worksheet Outline

    Finding user needs

    If you want to keep your agent close to the user's needs, then it is helpful to get an overview of what those are.

    đź“‹ Worksheet User Needs

  2. Finding Intents overview intents

    Intents

    Intents are the topics that your agent is aware of or is responding to.

    đź“‹ Worksheet List of Indents

  3. Laying out the dialog layout

    Make a flow diagram or use any other prototyping tool to sketch the flow of the dialog.

    Dialog Tool

    đź“‹ Try the tool

  4. Context & Knowledge layout

    In Dialogflow each intent takes (multiple) intent contexts and sets output contexts when finished. Only the intents that meet the current context are being triggered.

    Context

    To follow up on previous answers or to stay within a topic that the agent is talking about we can use context. That makes the agent more aware of the situation.

    Entities

    These can be words or short phrases that the agent can catch from user input. In Dialogflow we can store these values and pick them up anytime later in the dialog.

  5. Improve the flow user needs design process

    Catch-up phrases

    Because digital agents do not really understand what humans say, and they can solely analyze the underlying patterns from a technical perspective, we need the dialog to include phrases that mimic the understanding.
    Catch-up phrases like “ah ok”, or “aha” make answers to a question for instance feel more natural.

    Fallback

    Always prepare for the case, the agents doesn't get anything that the user is saying. Create Fallbacks or interesting answers, that leave the interpretation open. Incorporate machanisms to ask the user to repeat, if something has not been interpreted in the right way.

    There are a few mistakes that can happen during conversation, be aware of those:

    • No speech detected
    • Speech detected, but nothing recognized
    • Something was recognized correctly, but the system does the wrong thing with it
    • Something was recognized incorrectly

    Source: Designing Voice User Interfaces: Principles of Conversational Experiences

    Keep it short

    With visual material users can take a lot of time getting the information. This is not the case with speech. Users need a lot of focus and attention to get the answer by the agent, so keep it short and efficient.

  6. Terms terms

    User:

    We!

    Text / Voice:

    The user interacts with an app like facebook messenger / google home to start the interaction with the bot.
    Dialogflow: Bot platform

    Agent:

    A module within dialogflow which incorporates Natural Language Processing to understand what the user meant and to figure out what “action” has to be carried out. The agent transforms the user request into machine readable actionable data.

    Intent:

    Support or the service that the user wants from the agent. Intent is configured by the developers. Intent determines the action by the code.

    Entities:

    Help extract information from user speech with the help of prompts. Eg: “Book a flight” intent might need such as the: to and from cities, date, class etc as entities that the agent tries to extract from the user via conversations. The information received here are sent on for fulfilment.

    Source: https://medium.com/swlh/how-to-build-a-chatbot-with-dialog-flow-chapter-1-introduction-ab880c3428b5

  7. Resources links resources

An overview can be found here.