Skip to content

Onboarding

Sequential Chats and Customer Onboarding

Example 2 overview Example 2 overview

This guide explains how to configure and execute a customer onboarding flow using various agents. Each agent has a specific role, working together to gather user information, understand preferences, and provide engaging content.

Agent Roles

  1. personal_information_agent: Collects the user's name and location.
  2. topic_preference_agent: Asks the user about their topics of interest.
  3. customer_engagement_agent: Uses the collected information and preferences to share engaging content.
  4. customer_proxy: Acts as an intermediary to pass information between agents.

Models used

Feel free to use any models that suit your requirements. Here are the models used in this example:

  • personal_information_agent: claude-3.5-sonnet-20240620
  • topic_preference_agent: claude-3.5-sonnet-20240620
  • customer_engagement_agent: gpt-3.5-turbo

Agents Setup

1. Configure personal_information_agent
  • Purpose: Gather basic information (name, location).
  • Settings:
    • Model: claude-3.5-sonnet-20240620
    • System Message: "You are a helpful customer on-boarding agent, you are here to help new customers get started with our product. Your job is to gather customer's name and location. Do not ask for other information. Return 'TERMINATE' when you have gathered all the information."
    • Termination Keyword: TERMINATE

Personal Information Agent Personal Information Agent

2. Configure topic_preference_agent
  • Purpose: Gather the customer’s topics of interest.
  • Settings:
    • Model: claude-3.5-sonnet-20240620
    • System Message: "You are a helpful customer topic preference agent, you are here to help new customers get started with our product. Your job is to gather customer's topic of interest. Do not ask for other information. Return 'TERMINATE' when you have gathered all the information."
    • Termination Keyword: TERMINATE

Personal Information Agent Personal Information Agent

3. Configure customer_engagement_agent
  • Purpose: Provide engaging content based on user preferences and location.
  • Settings:
    • Model: gpt-3.5-turbo
    • System Message: "You are a helpful customer service agent here to provide fun for the customer based on the user's personal information and topic preferences. This could include fun facts, jokes, or interesting stories. Make sure to make it engaging and fun! Return 'TERMINATE' when you are done."
    • Termination Keyword: TERMINATE
4. Configure customer_proxy
  • Purpose: Intermediate agent to handle information passing between other agents.
  • Settings:
    • Human Input Mode: Always

Agent Connections

  1. personal_information_agent => customer_proxy

    • Message Configuration:
      • Message Type: Text
      • Message Content: "Hello, I'm here to help you get started with our product. Could you tell me your name and location?" -->
    • Summary Method: Reflection with LLM
    • Summary Prompt: "Return the customer information as JSON object only: {"name": "", "location": ""}."

      Agents connection Agents connection

  2. topic_preference_agent => customer_proxy

    • Message Configuration:
      • Message Type: Text
      • Message Content: "Great! Could you tell me what topics you are interested in reading about?"
    • Summary Method: Reflection with LLM
    • Summary Prompt: "Return the topic of interest as JSON: {"topic_of_interest": ""}."

      Agents connection Agents connection

  3. customer_proxy => customer_engagement_agent

    • Message Configuration: - Message Type: Text - Message Content: "Let's find something fun to read."

Define the Flow Order

Before running the flow, make sure the execution order is configured:

  1. Open the Edit Flow modal.
  2. Set the Order as follows:
    • personal_inform => customer_proxy
    • topic_preference => customer_proxy
    • customer_proxy => customer_engage
  3. Save the flow.

Example 2 flow Example 2 flow

Running the Flow

  1. Initialize the Conversation:

    • The personal_information_agent asks for the user's name and location.
    • Example Response: "Hi, I'm Stella from Athens."
  2. Capture User Preferences:

    • The topic_preference_agent asks for topics of interest.
    • Example Response: "Software Agents."
  3. Engage the Customer:

    • The customer_engagement_agent uses the data to provide a fun fact or engaging information.
    • Example Response to User: "Hey Stella from Athens! Did you know that the word 'robot' comes from the Czech word 'robota', which means forced labor? It's interesting when thinking about software agents!"

Files used in this example: