|
|
# okto_version: "1.2"
|
|
|
PROJECT "ControlNestedExample"
|
|
|
DESCRIPTION "Demonstrates nested CONTROL blocks with advanced decision-making"
|
|
|
|
|
|
ENV {
|
|
|
accelerator: "gpu"
|
|
|
min_memory: "8GB"
|
|
|
precision: "fp16"
|
|
|
}
|
|
|
|
|
|
DATASET {
|
|
|
train: "examples/datasets/demo_train.jsonl"
|
|
|
validation: "examples/datasets/demo_train.jsonl"
|
|
|
format: "jsonl"
|
|
|
type: "chat"
|
|
|
}
|
|
|
|
|
|
MODEL {
|
|
|
name: "nested-control-model"
|
|
|
base: "oktoseek/base-mini"
|
|
|
device: "cuda"
|
|
|
}
|
|
|
|
|
|
TRAIN {
|
|
|
epochs: 10
|
|
|
batch_size: 32
|
|
|
learning_rate: 0.0001
|
|
|
optimizer: "adamw"
|
|
|
device: "cuda"
|
|
|
}
|
|
|
|
|
|
CONTROL {
|
|
|
on_step_end {
|
|
|
LOG loss
|
|
|
}
|
|
|
|
|
|
on_epoch_end {
|
|
|
IF loss > 2.0 {
|
|
|
SET LR
|
|
|
LOG
|
|
|
|
|
|
WHEN
|
|
|
SET
|
|
|
LOG
|
|
|
}
|
|
|
|
|
|
IF
|
|
|
STOP_TRAINING
|
|
|
}
|
|
|
}
|
|
|
|
|
|
IF
|
|
|
SAVE
|
|
|
LOG
|
|
|
}
|
|
|
|
|
|
EVERY
|
|
|
SAVE
|
|
|
}
|
|
|
}
|
|
|
|
|
|
validate_every: 200
|
|
|
|
|
|
IF
|
|
|
LOG
|
|
|
}
|
|
|
|
|
|
IF
|
|
|
SET
|
|
|
LOG
|
|
|
}
|
|
|
|
|
|
IF
|
|
|
STOP_TRAINING
|
|
|
}
|
|
|
|
|
|
WHEN
|
|
|
SET
|
|
|
}
|
|
|
|
|
|
EVERY
|
|
|
SAVE
|
|
|
}
|
|
|
}
|
|
|
|
|
|
MONITOR
|
|
|
metrics: ["loss", "val_loss", "accuracy", "gpu_usage", "ram_usage"]
|
|
|
notify_if
|
|
|
loss
|
|
|
gpu_usage
|
|
|
}
|
|
|
log_to: "logs/training.log"
|
|
|
}
|
|
|
|
|
|
EXPORT
|
|
|
format: ["okm"]
|
|
|
path: "export/"
|
|
|
}
|
|
|
|
|
|
|