Skip to main content

Basic Conversation Example

This example shows a simple customer support conversation without tool usage.

The Scenario

A customer is asking about their account status.

JSON

{
  "conversations": [
    {
      "name": "Account Status Inquiry",
      "description": "Customer checking their account status",
      "messages": [
        {
          "role": "system",
          "sequence_number": 0,
          "content": "You are a helpful customer service agent for Acme Corp. Be friendly and concise."
        },
        {
          "role": "user",
          "sequence_number": 1,
          "content": "Hi, is my account still active?"
        },
        {
          "role": "assistant",
          "sequence_number": 2,
          "content": "Hello! I'd be happy to check your account status. Could you please provide your email address or account ID?",
          "steps": [
            {
              "model_name": "gpt-4",
              "step_order": 0,
              "thinking": "Customer wants to know their account status. I need their account information to look this up.",
              "output_content": "Hello! I'd be happy to check your account status. Could you please provide your email address or account ID?"
            }
          ]
        },
        {
          "role": "user",
          "sequence_number": 3,
          "content": "It's john@example.com"
        },
        {
          "role": "assistant",
          "sequence_number": 4,
          "content": "Thank you! I can confirm that your account associated with john@example.com is active and in good standing. Your current plan is the Pro tier, renewed on January 1st. Is there anything else I can help you with?",
          "steps": [
            {
              "model_name": "gpt-4",
              "step_order": 0,
              "thinking": "Customer provided their email. I should confirm their account status and provide relevant details.",
              "output_content": "Thank you! I can confirm that your account associated with john@example.com is active and in good standing. Your current plan is the Pro tier, renewed on January 1st. Is there anything else I can help you with?"
            }
          ]
        },
        {
          "role": "user",
          "sequence_number": 5,
          "content": "No, that's all. Thanks!"
        },
        {
          "role": "assistant",
          "sequence_number": 6,
          "content": "You're welcome! Have a great day!",
          "steps": [
            {
              "model_name": "gpt-4",
              "step_order": 0,
              "thinking": "Customer is satisfied. I should end the conversation politely.",
              "output_content": "You're welcome! Have a great day!"
            }
          ]
        }
      ]
    }
  ]
}

Key Points

  1. System message: Sets the context for the conversation
  2. Alternating roles: User and assistant messages alternate naturally
  3. Sequential numbering: Messages are numbered 0, 1, 2, 3, 4, 5, 6
  4. Steps with thinking: Each assistant message captures the reasoning process
  5. No agents defined: Tools weren’t used, so agents aren’t required

Minimal Version

If you don’t need to capture reasoning, here’s the minimal version:
{
  "conversations": [
    {
      "messages": [
        { "role": "user", "sequence_number": 0, "content": "Hi, is my account still active?" },
        { "role": "assistant", "sequence_number": 1, "content": "Hello! I'd be happy to check. What's your email?" },
        { "role": "user", "sequence_number": 2, "content": "john@example.com" },
        { "role": "assistant", "sequence_number": 3, "content": "Your account is active. Anything else?" },
        { "role": "user", "sequence_number": 4, "content": "No thanks!" },
        { "role": "assistant", "sequence_number": 5, "content": "Have a great day!" }
      ]
    }
  ]
}