From production traces
The most common source. In Traces, filter to the runs you want (see Search & filter), then Add to dataset. Two flavors:- Trace-as-example — the full trace becomes the example. Input = original input, expected output = the answer that was given (marked “capture as-is”).
- Corrected-example — you edit the expected output to what the answer should have been.
From a signal cluster
Every cluster represents failing patterns. Right-click any cluster → Save as dataset:- Each signal’s trace becomes an example.
- If the signal has a text correction, that becomes the expected output.
- Otherwise, mark as “needs review” — you’ll annotate before running simulations.
From a file
Upload a CSV or JSONL: CSV:From scratch
Datasets → New → Add example. Type or paste input, type expected output, tag. Fastest for a handful of hand-crafted examples to bootstrap testing.Multi-turn examples
Some Flows are conversational. Multi-turn examples are supported:- Each example is a conversation (list of turns).
- Each turn has expected inputs and expected outputs.
- Simulation replays the conversation and grades each turn.
Tags and grouping
Every example can carry tags. Common uses:- Feature — which product feature this exercises.
- Difficulty — easy / medium / hard.
- Source — where the example came from (
prod,synthetic,hand-crafted). - Language — for multilingual coverage.
Metadata per example
Beyond input/expected/tags, examples can carry:- Scope — for testing per-tenant/per-user behavior.
- Attached context — session memory, prior turns, feature flags.
- Notes — free-text for reviewers.