model:
  target_model_path: "Qwen/Qwen3-8B"
  draft_model_config: "configs/qwen3-8b-dflash.json"
  target_backend: "sglang"
  trust_remote_code: true
  embedding_key: "model.embed_tokens.weight"
  torch_dtype: "bfloat16"
  mask_token_id: 151669
data:
  train_data_path: "./cache/dataset/perfectblend_qwen3-8b_regen.jsonl"
  max_length: 3072
  chat_template: "qwen"
  build_dataset_num_proc: 32
  cache_dir: "./cache"
training:
  strategy: "dflash"
  num_epochs: 10
  max_steps: 10000
  batch_size: 2
  learning_rate: 0.0006
  warmup_ratio: 0.04
  max_grad_norm: 1
  attention_backend: "flex_attention"
  num_anchors: 512
  loss_decay_gamma: 7
  save_interval: 1000
  log_interval: 10
  dist_timeout: 30
  seed: 42
tracking:
  report_to: "none"
  wandb_project: "qwen3-8b-dflash-disagg"
  wandb_name: "qwen3-8b-dflash-1srv-dp7"
run_id: "qwen3-8b-dflash-1server-dp7-disaggregated"
output_dir: "./outputs/qwen3-8b-dflash-1server-dp7-disaggregated"

deployment:
  mode: disaggregated
  trainer:
    nnodes: 1
    nproc_per_node: 7
  disaggregated:
    control_dir: outputs/qwen3-8b-dflash-1server-dp7-disaggregated/control
    backend: mooncake
    managed_local:
      trainer_cuda_visible_devices:
        - "1"
        - "2"
        - "3"
        - "4"
        - "5"
        - "6"
        - "7"
      mooncake:
        protocol: tcp
        global_segment_size_bytes: 34359738368
        local_buffer_size_bytes: 1073741824
      capture_servers:
        - port: 30000
          cuda_visible_devices:
            - "0"
          tp_size: 1
          mem_fraction_static: 0.5
