| # 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/"
|
| }
|
|
|
|
|