Skip to main content
Sort images into classes. Each sample is one image file plus one row in a labels CSV that names the file and its class.

Ingest with the CLI

Lay out each split as shown in Folder layout, then ingest the training set and the test set:
--label-column names the class column in labels.csv; on a terminal, the CLI asks for it if you leave it out. In a guided run, the CLI also asks for the image resolution: press Enter to read it from your images, or type it as WxH with the letter x, for example 256x256. Every image is checked against it. Pass --target-size WxH to set it without the question. To read an image’s size on macOS, run sips -g pixelWidth -g pixelHeight <file> or use the file’s Get Info; see Image resolution. The [256, 256] default in the ingest.yaml table below applies only to Helm ingests.

Folder layout

  • With the CLI, the dataset folder is on your machine (./cats-dogs-train). With Helm, it sits on the shared volume (/data/shared/...).
  • The image folder must be named images and sit next to the labels CSV, which the CLI expects to be named labels.csv.
  • Every image in the dataset must have the same extension and the same width and height. Mixed extensions or mixed resolutions fail the ingest.
  • Supported extensions: .jpg, .jpeg, .png. The CLI reads the extension from your files; with Helm, the default is .jpeg — override it with spec.file_options.extension.
  • The ingestor copies images as they are. It does not resize them — bring them to the target size before you ingest.

Labels CSV

Extra columns are ignored unless you declare them in schema.

ingest.yaml

To use images of another size, set target_size (or spec.file_options.target_size) to their exact dimensions:

What the ingestor checks

Plus the checks every ingest runs.

Size limit

One tracebloc data ingest takes at most 1 GiB in total and 500 MiB per file. If your dataset is larger:
  • Save the images as JPEG instead of PNG.
  • Lower the resolution: resize every image to one smaller size.
  • Use fewer images.
For datasets that stay above the limit, see Size limit.

Sample dataset

The template ships six 256×256 RGB JPEG images (three cats, three dogs) and a labels CSV with the two classes cat and dog. The ingest.yaml above ingests it with no overrides.

Next steps