API Reference
vyntri.data
Dataset loading, splitting, and folder dataset utilities.
vyntri.data
split(dataset, *, train=0.7, val=None, test=0.2, seed=42)
Create an explicit train/val/test split from a folder-per-class dataset. Returns a SplitResult.
| Parameter | Type | Description |
|---|---|---|
| dataset | str | Path to a folder-per-class dataset |
| train | float | Training fraction (default 0.7) |
| val | float | None | Validation fraction. When None, computed as 1 - train - test. |
| test | float | Test fraction (default 0.2) |
| seed | int | Deterministic seed (default 42) |
Returns: SplitResult
Raises: SplitError if the dataset already has an explicit layout.
SplitResult
Reusable result of split(). Contains logical FolderDataset subsets (no file copy).
| Field | Type | Description |
|---|---|---|
| train | FolderDataset | Training subset |
| val | FolderDataset | None | Validation subset (None for two-way split) |
| test | FolderDataset | None | Test subset (None if test=0) |
| seed | int | Seed used for the split |
| fractions | dict | Fractions per split |
| counts | dict | Sample counts per split |
| manifest | dict | Full provenance record |
| class_names | list[str] | Sorted class names |
from vyntri.data import split
from vyntri import Vyntri
s = split("./my_dataset", train=0.7, test=0.2, seed=42)
model = Vyntri()
model.fit(train=s.train, val=s.val)
result = model.evaluate(s.test)
print(f"Accuracy: {result.accuracy:.1%}")FolderDataset.from_ids(root, sample_ids)
Create a logical subset by sample IDs. No physical file copy.