Datasets SDK
Create and manage evaluation datasets programmatically. Datasets are collections of test cases used for prompt evaluation, each containing input variables and expected outputs.Dataset Architecture
Datasets are scoped to a prompt group (all versions of a prompt share the samepromptGroupId). This means a dataset created for prompt v1.0.0 is automatically available when testing v2.0.0.
List All Datasets
promptId, promptGroupId, name, or createdBy:
List Datasets for a Prompt
Create Dataset
Datasets are created for a specific prompt:Get Dataset
Update Dataset
Delete Dataset
Useforce: true to delete a dataset that still contains items:
Clone Dataset
Clone a dataset to another prompt. Provide eithertargetPromptId or targetPromptGroupId:
Export Dataset
Export a dataset with all items and metadata:Dataset Items
List Items
Add Single Item
Bulk Add Items
Get Item
Update Item
Delete Item
Two-Step Upload Pattern
For uploading datasets from files (JSON, JSONL, CSV), use the two-step pattern: create dataset metadata first, then bulk insert items.Type Definitions
Method Reference
Dataset Methods (client.promptDatasets)
| Method | Description | Returns |
|---|---|---|
listPromptDatasets(request?) | List all datasets (paginated) | PageIterator<ListPromptDatasetsResponse> |
listDatasetsForPrompt({ id }) | List datasets for a prompt | ListDatasetsForPromptResponse[] |
createPromptDataset({ id, body }) | Create dataset for prompt | PromptDataset |
getPromptDataset({ id }) | Get dataset by ID | PromptDataset |
updatePromptDataset({ id, body }) | Update dataset | PromptDataset |
deletePromptDataset({ id, force? }) | Delete dataset | PromptSuccessResponse |
clonePromptDataset({ id, body }) | Clone dataset to another prompt | PromptDataset |
exportPromptDataset({ id }) | Export dataset with all items | PromptDatasetExport |
Item Methods (client.promptDatasetItems)
| Method | Description | Returns |
|---|---|---|
listPromptDatasetItems({ id }) | List dataset items | ListPromptDatasetItemsResponse[] |
createPromptDatasetItem({ id, body }) | Add single item | PromptDatasetItem |
bulkCreatePromptDatasetItems({ id, body }) | Add multiple items | BulkCreatePromptDatasetItemsResponse[] |
getPromptDatasetItem({ id }) | Get item by ID | PromptDatasetItem |
updatePromptDatasetItem({ id, body }) | Update item | PromptDatasetItem |
deletePromptDatasetItem({ id }) | Delete item | PromptSuccessResponse |