Skip to main content
Datasets provide the prompts and reference answers or per-row metadata that drive evaluation runs and training runs. Each row becomes an example that your rollout and Grader process.

Dataset Format

Osmosis accepts datasets in JSONL, CSV, or Parquet format, up to 5 GiB per uploaded file. For Parquet datasets, both the uploaded file and its uncompressed data must be no larger than 5 GiB. Each dataset must contain at least 4 rows.

Schema Modes

A dataset must use exactly one schema throughout. osmosis dataset upload and osmosis dataset validate pick the mode from the columns present and enforce the same rule on every row. system_prompt is optional in both modes. Column names are case-sensitive.
This is a breaking change from earlier releases. Prompt-mode datasets that omit ground_truth, and metadata-mode datasets with null, blank, missing, or empty metadata values, no longer validate.

Columns

Additional columns beyond these are allowed. In JSONL, every row must have the same set of top-level fields as the first row. CSV headers and Parquet schemas already fix a single column set.

Metadata Validation Rules

When the dataset is in metadata mode, every row is validated (not sampled):
  • Each cell must be a non-empty JSON object. CSV cells and JSONL strings are parsed as JSON. Parquet accepts a struct column or a JSON-object string column.
  • null, blank strings, {}, and nested empty objects fail validation.
  • Value types for each key must stay consistent across rows. For example, metadata.tag cannot be a string in one row and a number in another.
  • Integer values must fit in a signed 64-bit range.

Example: Prompt Mode (JSONL)

Example: Metadata Mode (JSONL)

Metadata-mode rows can omit all prompt fields:

Upload a Dataset

The uploaded dataset is named from the file stem (train in this example). In the Platform upload dialog, a file with the same stem as an existing dataset is marked Overwrites existing. Completing the upload replaces the existing dataset. You cannot replace a dataset while it is uploading or processing, or while an active training run is using it. After upload, the dataset enters a processing pipeline. You can check its status:

Validate Locally

Before uploading, validate your dataset locally to catch format issues early:
This checks required columns, file format, and basic JSONL/CSV/Parquet structure without uploading to the platform.

Preview a Dataset

Preview the first few rows of an uploaded dataset:

Manage Datasets

On the Platform Datasets page, use a dataset’s action menu to:
  • Rename the dataset.
  • Cancel a dataset while it is uploading or processing.
  • Download the dataset file.
  • Delete the dataset. A dataset used by an active training run cannot be deleted.
Deleted datasets and their data are retained for 30 days before permanent deletion.

Next Steps

Training Runs

Use validated datasets in training configs.

Evaluation Runs

Evaluate a rollout against examples from an uploaded dataset.
Last modified on August 10, 2026