Skip to main content
POST
POST /v1/training-jobs Creates an asynchronous training job and returns its job record. This endpoint is limited to 20 requests per minute per user.

Request

string
required
Your Fastino API key.
string
required
Display name for the trained model. Length: 1–100 characters.
string
required
A trainable model ID from GET /v1/base-models?supports_training=true, or a supported checkpoint UUID.
object[]
required
One or more dataset references. Each item requires name and may include version; omitted versions resolve to the latest version.
string
default:"lora"
lora or full. The selected base model must support the requested type.
number
default:"0.2"
Fraction held out for validation, from 0 to 1.
integer
default:"100"
Maximum epoch count. Must be at least 1; early stopping can finish sooner.
number
Positive peak learning rate. Omit it to use the selected model’s training recipe.
integer
default:"4"
Per-device batch size. Prefer omitting it so the training service can apply or safely clamp to the model-specific default.
integer
Optional reproducibility seed from 0 through 2147483647. Set provider_name to modal when using it. A seed reduces one source of variation but does not guarantee bit-identical GPU runs.
string
Project UUID. When omitted, Fastino associates the job with the caller’s default project.

Response

Returns 200 with the full training-job record, including a UUID id and initial status.
Save the id from this response. You will use it to poll status, retrieve metrics and artifacts, and run inference against the trained model. A malformed body returns 422. A valid but unavailable model, dataset, training type, or provider combination returns a request-specific 4xx error.