BrowserStack AI Evals
EvaluationDatasets

Manage Datasets

Create, list, and manage datasets from the dashboard, SDK, or API.

Manage Datasets

You can manage datasets from the Dashboard UI, the SDK (TypeScript, Python, Java), or the REST API.

From the Dashboard

View Datasets

Datasets list in the dashboard

Navigate to Datasets in the left sidebar.

The dataset list shows one row per dataset with these columns:

ColumnDescription
NameDataset name (click to open detail page)
ItemsNumber of items in the dataset
RunsNumber of dataset runs
CreatedCreation date
Last RunDate of the most recent run

Use the search bar to filter datasets by name. Pagination defaults to 50 rows per page.

Create a Dataset

Click New Dataset in the top-right of the Datasets page.

Fill in the form:

  • Name (required) — unique dataset name
  • Description (optional) — free-form notes about the dataset
  • Metadata (optional) — JSON key-value pairs for custom metadata

Click Create dataset. You'll be taken to the new dataset's detail page.

Dataset Detail Page

Click any dataset name to open its detail page. The page has three tabs:

  • Items — view, add, import, and manage dataset items (see Dataset Items)
  • Runs — view and create dataset runs (see Dataset Runs)
  • Linked Experiments — experiments that reference this dataset

Dataset Actions

Click the more menu (three dots) on the dataset detail page for:

  • Rename — update the dataset name and description
  • Duplicate Dataset — create a copy of the entire dataset with all items
  • Delete — permanently remove the dataset and all its items

From the SDK

Setup

import { AISDK } from '@browserstack/ai-sdk';

const testOps = new AISDK({
  publicKey: process.env.AISDK_PUBLIC_KEY,
  secretKey: process.env.AISDK_SECRET_KEY,
});

const datasets = testOps.datasets;       // DatasetsClient
const datasetRuns = testOps.datasetRuns; // DatasetRuns
import os
from browserstack_ai_sdk import AISDK

client = AISDK(
    public_key=os.environ["AISDK_PUBLIC_KEY"],
    secret_key=os.environ["AISDK_SECRET_KEY"],
)

datasets = testOps.datasets;       # datasets client
import com.browserstack.aisdk.TestOps;
import com.browserstack.aisdk.eval.DatasetsClient;
import com.browserstack.aisdk.eval.model.*;

TestOps sdk = TestOps.fromEnv();
DatasetsClient datasets = sdk.datasets();

Create a Dataset

const dataset = await datasets.create(
  'qa-golden-set',
  'Golden set for QA evaluation',
  { owner: 'ml-team', version: '1.0' } // optional metadata
);

console.log(dataset.id);   // dataset ID
console.log(dataset.name); // 'qa-golden-set'
dataset = client.datasets.create(
    name="qa-dataset-v1",
    description="Question-answer pairs for RAG evaluation",
    metadata='{"domain": "customer-support"}',
)
print(dataset)
// Name only
DatasetResponse ds = datasets.create("my-dataset");

// With description
DatasetResponse ds = datasets.create("my-dataset", "Questions about Northern Lights");

// With metadata
DatasetResponse ds = datasets.create(
    "my-dataset",
    "Questions about Northern Lights",
    Map.of("team", "nlp", "domain", "science")
);

System.out.println("Created: " + ds.getId() + " — " + ds.getName());

List Datasets

const result = await datasets.list(
  1,           // page (1-indexed)
  20,          // limit per page
  'qa'         // optional name filter
);

for (const ds of result.data) {
  console.log(ds.id, ds.name);
}
result = client.datasets.list(page=1, limit=20)

for dataset in result["data"]:
    print(f"{dataset.get('name')}: {dataset.get('id')}")

Filter by name:

datasets = client.datasets.list(name="qa-dataset-v1")
// Default (page 1, limit 50)
ListDatasetsResponse list = datasets.list();

// With pagination
ListDatasetsResponse list = datasets.list(1, 20);

// Filtered by name
ListDatasetsResponse list = datasets.list(1, 20, "my-dataset");

list.getData().forEach(d -> System.out.println(d.getId() + " " + d.getName()));

Get Dataset Tags

const tagsResult = await datasets.getTags('qa-golden-set');
console.log(tagsResult.tags); // string[]
tags = client.datasets.get_tags("qa-dataset-v1")
print(tags)
List<String> tags = datasets.getTags("my-dataset");
System.out.println("Tags: " + tags);