Skip to main content

Datasets - Python SDK

client.datasets manages uploaded training and evaluation datasets. The high-level upload(...) workflow signs, transfers, commits, and registers all local files in one call.

Overview​

Available Operations​

MethodDescription
upload(files, ...)Upload one file, a directory, or a sequence of files and create a Dataset.
list(...)Search and page datasets.
get(id)Read one Dataset.
preview(id, limit=None, cursor=None)Preview parsed records without downloading the object.
download_url(body)Create a temporary URL for one Dataset file.
update(id, body)Update Dataset metadata or committed file references.
delete(id)Delete an unreferenced Dataset.

upload​

Upload one file, a directory, or a sequence of files and create a Dataset.

Request​

files, name, dataset_type, training_category required; optional on_progress.

Response​

Created DatasetVO.

list​

Search and page datasets.

Request​

Optional dataset_name, dataset_type, training_category, order_by, order_direction, page_num, page_size, scope.

Response​

PageResult[DatasetVO].

get​

Read one Dataset.

Request​

id required.

Response​

DatasetVO.

preview​

Preview parsed records without downloading the object.

Request​

id required; optional limit, cursor.

Response​

DatasetPreviewVO.

download_url​

Create a temporary URL for one Dataset file.

Request​

Body requires datasetId and zero-based fileIndex.

Response​

DownloadUrl.

update​

Update Dataset metadata or committed file references.

Request​

id and body required.

Response​

Updated DatasetVO.

delete​

Delete an unreferenced Dataset.

Request​

id required.

Response​

None.

Field Reference and Examples​

upload(...) parameters

ParameterTypeRequiredValues / Default
filespath-like or sequenceYesFile, recursively expanded directory, or file list.
namestrYesNon-empty Dataset name.
dataset_typestrYestraining or evaluation.
training_categorystrYessft-llm, dpo-llm, sft-vlm, dpo-vlm, or cpt-llm.
on_progresscallbackNoSame progress dictionary as My Model upload.

Update body fields: optional datasetName, type, trainingCategory, and files. Key DatasetVO fields: id, datasetName, type, trainingCategory, files, fileSizeTotal, owner, createdAt, updatedAt. DatasetPreviewVO contains items, totalRecords, datasetRevision, hasNext, and nextCursor.

dataset = client.datasets.upload(
"./train.jsonl",
name="example-training-dataset",
dataset_type="training",
training_category="sft-llm",
)
dataset_id = dataset["id"]

page = client.datasets.list(
dataset_name="example",
dataset_type=["training"],
training_category=["sft-llm"],
order_by="createdAt",
order_direction="DESC",
page_num=1,
page_size=20,
scope="self",
)
detail = client.datasets.get(dataset_id)
preview = client.datasets.preview(dataset_id, limit=20)
download = client.datasets.download_url({"datasetId": dataset_id, "fileIndex": 0})
updated = client.datasets.update(dataset_id, {"datasetName": "renamed-dataset"})
client.datasets.delete(dataset_id)

All methods use the shared authentication and typed error behavior described in Response Conventions and Retry and Security.