Skip to main content

What is the Conversation Simulator?

The Conversation Simulator, also known as the Synthetic User, is a Galtea feature for testing conversational AI systems. It programmatically generates realistic user messages to simulate multi-turn dialogues, helping you evaluate your AI’s ability to handle complex interactions, maintain context, and achieve user goals. You can run simulations programmatically using the Galtea SDK. Each simulation is guided by a Scenario attached to a Test Case.

Typical Uses

  • Dialogue flow testing — Verify your AI produces coherent, natural conversations across multiple turns
  • Role adherence — Confirm your AI stays in character and follows its assigned role
  • Task completion — Test whether your AI guides users to successfully complete their goals
  • Robustness — Evaluate how your AI handles unexpected, off-topic, or challenging user inputs

Simulation Result Structure

The simulator returns a result object containing the complete conversation history and metadata:
FieldTypeDescription
session_idstrThe identifier for the simulation session.
total_turnsintTotal number of conversation turns in the simulation.
messageslistThe full message history as a list of conversation messages.
finishedboolWhether the simulation ended naturally (true) or was stopped (false).
stopping_reasonstr/NoneIf stopped, the reason why the simulation ended.
metadatadict/NoneAny additional metadata for the simulation.

Example Output

{
  "session_id": "abc123",
  "total_turns": 5,
  "messages": [
    {"role": "user", "content": "I need to book a flight."},
    {"role": "agent", "content": "Where are you flying to?"},
    ...
  ],
  "finished": true,
  "stopping_reason": null,
  "metadata": {"scenario": "Flight booking scenario"}
}

SDK Integration

Use the Galtea SDK to automate conversation simulations and integrate them into your testing pipelines.

See Also