POST
/
train
Start Training
curl --request POST \
  --url https://training-service-433968519479.us-central1.run.app/train \
  --header 'Content-Type: application/json' \
  --data '{
  "processed_dataset_id": "<string>",
  "hf_token": "<string>",
  "job_name": "unnamed job",
  "training_config": {
    "base_model_id": "<string>",
    "provider": "huggingface",
    "method": "QLoRA",
    "trainer_type": "sft",
    "modality": "text",
    "hyperparameters": {
      "learning_rate": 0.0002,
      "batch_size": 2,
      "gradient_accumulation_steps": 4,
      "epochs": 3,
      "max_steps": -1,
      "packing": false,
      "padding_free": false,
      "use_fa2": false,
      "max_length": 1024,
      "lr_scheduler_type": "linear",
      "save_strategy": "epoch",
      "logging_steps": 10,
      "lora_rank": 16,
      "lora_alpha": 16,
      "lora_dropout": 0.05,
      "max_prompt_length": 512,
      "num_generations": 4,
      "max_grad_norm": 0.1,
      "adam_beta1": 0.9,
      "adam_beta2": 0.99,
      "warmup_ratio": 0.1,
      "beta": 0.1
    },
    "export_config": {
      "format": "adapter",
      "destination": "gcs",
      "include_gguf": false
    },
    "eval_config": {
      "eval_strategy": "<string>",
      "eval_steps": 123,
      "compute_eval_metrics": true,
      "batch_eval_metrics": true
    },
    "wandb_config": {
      "api_key": "<string>",
      "project": "<string>",
      "log_model": "false"
    },
    "reward_config": [
      {
        "name": "<string>",
        "type": "string_check",
        "reference_field": "<string>",
        "operation": "eq"
      }
    ]
  }
}'
{
  "job_id": "<string>"
}

Body

application/json

Request schema for training job, only TrainingConfig will be accessible in backend

processed_dataset_id
string
required
hf_token
string
required
training_config
object
required

Unified config structure for training, all customizations should be included here and ONLY here

job_name
string
default:unnamed job

Response

Successful Response

job_id
string
required