Methods
GRPO is the default. All methods support LoRA and QLoRA.
grpo_agentic is being rebuilt and is not currently runnable as a managed method. To run multi-turn, environment-based RL today, use a custom script with your own framework (for example verl) and environment.The training loop
What happens at each transition:queued— job row written, balance pre-checked (HTTP 402 if insufficient credit). No spend yet.provisioning— Veri leases a GPU and the instance boots and self-configures the worker.started_atis stillnull. Once the instance boots, the GPU is rented and cost accrues from this point, even before the first training step. A job that never secures a GPU (for exampleCAPACITY_UNAVAILABLE) rents nothing and is not billed.running— worker reports its first step.started_atpopulates. Metrics start streaming.completed | failed | cancelled— pod auto-terminates. Cost is attributed (cost_attributed_at). Stripe credit is deducted (billing_deducted_at). The full stdout is uploaded to S3 and available viaGET /v1/training_jobs/{id}/logs/full.
Failure modes
When a job ends infailed, error.code carries one of:
The last 200 log lines from the worker are surfaced in
error.log_tail for fast triage; the full stdout is uploaded to S3 and accessible via GET /v1/training_jobs/{id}/logs/full.
Submitting a job
Choosing a launch region
Capacity is per-region. If your job fails withCAPACITY_UNAVAILABLE, another region may have the GPU you need right now:
region="us-west-2" to client.training_jobs.create, the @veri.train decorator, or veri train --region us-west-2. Omit it to launch in the default region. Unknown or not-yet-available regions are rejected at submit with the list of valid options.
Choosing a GPU provider
Veri supports multiple GPU providers — AWS (NVIDIA, default), Hot Aisle (AMD MI300X), and Vast.ai (NVIDIA marketplace). Passprovider at submit time to choose where your job runs:
This snippet uses the low-level client and assumes you have already uploaded a dataset and reward function (the
dataset and reward_fn it references). For a runnable end-to-end version that handles those uploads for you with @training_job + veri train, see the Managed GRPO quickstart.kind = "train" in the TOML config. See the CLI training reference for the full schema.
Where to go next
Managed GRPO quickstart
End-to-end on a small model: one decorator, one command.
Deploy your checkpoint
Skip downloading — serve from Veri with an OpenAI-compatible API.
Evaluate it
Score the trained model on a held-out dataset.
CLI training commands
veri run, veri jobs, veri rewards.
