# tinker_cookbook.distillation.train_off_policy.Config ## *class* [**tinker_cookbook.distillation.train_off_policy.Config**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L88)() Configuration for off-policy distillation with soft teacher targets. **Fields:** - [**learning_rate**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L100) (*float*) - [**dataset_configs**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L101) (*list\[[DatasetWithTeacher](https://tinker-docs.thinkingmachines.ai/cookbook/api-reference/distillation/datasetwithteacher/index.md)\]*) - [**model_name**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L102) (*str*) - [**recipe_name**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L103) (*str*) - [**renderer_name**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L104) (*str | None*, default: `None`) - [**lora_rank**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L105) (*int*, default: `32`) - [**n_teacher_targets**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L108) (*int*, default: `20`) – Number of highest-probability teacher tokens per position used as soft targets. - [**teacher_concurrency**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L110) (*int*, default: `64`) – Max concurrent teacher forward passes per batch. - [**batch_size**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L114) (*int*, default: `64`) – Number of examples per training step. - [**save_every**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L118) (*int*, default: `10`) – Checkpointing and logging - [**eval_every**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L119) (*int*, default: `20`) - [**max_steps**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L120) (*int | None*, default: `None`) - [**load_checkpoint_path**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L121) (*str | None*, default: `None`) - [**log_path**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L122) (*str*) - [**wandb_project**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L123) (*str | None*, default: `None`) - [**wandb_name**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L124) (*str | None*, default: `None`) - [**base_url**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L125) (*str | None*, default: `None`) - [**ttl_seconds**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L126) (*int | None*, default: `604800`) – Server-side checkpoint retention (seconds). None = keep indefinitely. - [**enable_trace**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L129) (*bool*, default: `False`) - [**evaluator_builders**](https://github.com/thinking-machines-lab/tinker-cookbook/blob/main/tinker_cookbook/distillation/train_off_policy.py#L131) (*list[SamplingClientEvaluatorBuilder]*, default: `[]`)