Sign in Get started

Guides

Task-shaped walkthroughs for the whole loop: upload images, draft labels with SAM3, tile and augment, train a model, deploy it, stream video and export data.

View as Markdown
On this page

In order, the guides take a dataset from upload to a model answering in real time. For a single call, see the API reference.

Guide Answers
Upload images How do I get my images in?
SAM3 auto-annotation How do I label them without drawing every shape?
Tile and augment How do I reshape the set before training?
Export & conversion How do I freeze a training set, or bring labels in?
Train a model How do I get weights out?
YOLOX vs RF-DETR Which architecture should I train?
Deployments How do I serve the model behind a URL?
Streams How do I send live video through it?
Workflows How do I chain models, tracking and counting?
Local inference How do I run a model on my own machine?

Reports

The methods that run a whole job - images.upload_from_directory, auto_annotate.dataset, images.tile, images.augment and the annotations.import_* importers - don’t raise on a partial failure. They return a report with counts, success and failures:

report = client.images.upload_from_directory(
    dataset="road-signs",
    source_path="./road_signs",
)
if report.success:
    print(f"Uploaded {report.images_uploaded}")
else:
    for failure in report.failures:
        print(failure.path, failure.reason)

success is false when anything failed or nothing was done. An error before the job starts still raises: NotFoundError for a missing dataset, ValidationError for a bad argument.

Copied to clipboard