Table of contents

Fine-tuning — podstack train

Run managed fine-tuning (“train”) jobs — you provide a dataset and a base model, Podstack runs the training on GPUs and gives you a fine-tuned model. No box to provision or babysit.

1. Upload a dataset

Fine-tuning reads a dataset file (e.g. JSONL). Upload it first with podstack files:

podstack files upload ./data.jsonl --purpose fine-tune
# → prints a file id like file_123

2. Pick a base model

podstack train models                # list available base models

Base models span chat, image, and video modalities — for example podstack/gemma-4-31b-it and podstack/deepseek-v4-flash (chat), podstack/flux.2-dev and podstack/seedream-4.0 (image), or podstack/seedance-1.0-pro (video). Run podstack train models for the live list and each model’s modality.

3. Start a job

podstack train create \
  --model podstack/gemma-4-31b-it \
  --training-file file_123 \
  --method lora

Common options: --model (base model), --training-file (the uploaded file id), --method (e.g. lora). Run podstack train create --help for the full list (epochs, learning rate, validation file, etc.).

4. Track the job

podstack train list                  # all your jobs and their status
podstack train get <id>              # details for one job
podstack train events <id> --follow  # stream job events live
podstack train cancel <id>           # cancel a running job

Scenario: fine-tune and serve

  1. podstack files upload ./train.jsonl --purpose fine-tune
  2. podstack train create --model podstack/gemma-4-31b-it --training-file file_… --method lora
  3. podstack train events <id> --follow until it completes.
  4. Use the resulting model on Inference Cloud or list it with podstack models.
  • Files — dataset upload.
  • Models — list models, including your fine-tunes.
  • Inference — serve the fine-tuned model over an API.