gitextract_r678upi2/ ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug-report.yml │ │ ├── feature-request.yml │ │ └── new-trainer-addition.yml │ ├── PULL_REQUEST_TEMPLATE.md │ ├── codeql/ │ │ └── custom-queries.qls │ └── workflows/ │ ├── build_documentation.yml │ ├── build_pr_documentation.yml │ ├── clear_cache.yml │ ├── codeQL.yml │ ├── docker-build.yml │ ├── issue_auto_labeller.yml │ ├── pr_style_bot.yml │ ├── publish.yml │ ├── slow-tests.yml │ ├── tests-experimental.yml │ ├── tests.yml │ ├── tests_latest.yml │ ├── tests_transformers_branch.yml │ ├── trufflehog.yml │ └── upload_pr_documentation.yml ├── .gitignore ├── .pre-commit-config.yaml ├── AGENTS.md ├── CITATION.cff ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── MANIFEST.in ├── MIGRATION.md ├── Makefile ├── README.md ├── RELEASE.md ├── VERSION ├── docker/ │ ├── trl/ │ │ └── Dockerfile │ └── trl-dev/ │ └── Dockerfile ├── docs/ │ └── source/ │ ├── _toctree.yml │ ├── async_grpo_trainer.md │ ├── bco_trainer.md │ ├── bema_for_reference_model.md │ ├── callbacks.md │ ├── chat_template_utils.md │ ├── clis.md │ ├── community_tutorials.md │ ├── cpo_trainer.md │ ├── customization.md │ ├── data_utils.md │ ├── dataset_formats.md │ ├── deepspeed_integration.md │ ├── distributing_training.md │ ├── dpo_trainer.md │ ├── example_overview.md │ ├── experimental_overview.md │ ├── gfpo.md │ ├── gkd_trainer.md │ ├── gold_trainer.md │ ├── grpo_trainer.md │ ├── grpo_with_replay_buffer.md │ ├── gspo_token.md │ ├── index.md │ ├── installation.md │ ├── jobs_training.md │ ├── judges.md │ ├── kernels_hub.md │ ├── kto_trainer.md │ ├── liger_kernel_integration.md │ ├── lora_without_regret.md │ ├── merge_model_callback.md │ ├── minillm_trainer.md │ ├── nash_md_trainer.md │ ├── nemo_gym.md │ ├── online_dpo_trainer.md │ ├── openenv.md │ ├── orpo_trainer.md │ ├── paper_index.md │ ├── papo_trainer.md │ ├── peft_integration.md │ ├── ppo_trainer.md │ ├── prm_trainer.md │ ├── ptt_integration.md │ ├── quickstart.md │ ├── rapidfire_integration.md │ ├── reducing_memory_usage.md │ ├── reward_trainer.md │ ├── rewards.md │ ├── rloo_trainer.md │ ├── script_utils.md │ ├── sft_trainer.md │ ├── speeding_up_training.md │ ├── trackio_integration.md │ ├── unsloth_integration.md │ ├── use_model.md │ ├── vllm_integration.md │ ├── winrate_callback.md │ └── xpo_trainer.md ├── examples/ │ ├── README.md │ ├── accelerate_configs/ │ │ ├── alst_ulysses_4gpu.yaml │ │ ├── context_parallel_2gpu.yaml │ │ ├── deepspeed_zero1.yaml │ │ ├── deepspeed_zero2.yaml │ │ ├── deepspeed_zero3.yaml │ │ ├── fsdp1.yaml │ │ ├── fsdp2.yaml │ │ ├── multi_gpu.yaml │ │ └── single_gpu.yaml │ ├── cli_configs/ │ │ └── example_config.yaml │ ├── datasets/ │ │ ├── deepmath_103k.py │ │ ├── hh-rlhf-helpful-base.py │ │ ├── llava_instruct_mix.py │ │ ├── lm-human-preferences-descriptiveness.py │ │ ├── lm-human-preferences-sentiment.py │ │ ├── math_shepherd.py │ │ ├── prm800k.py │ │ ├── rlaif-v.py │ │ ├── tldr.py │ │ ├── tldr_preference.py │ │ ├── ultrafeedback-prompt.py │ │ └── ultrafeedback.py │ ├── notebooks/ │ │ ├── README.md │ │ ├── grpo_agent.ipynb │ │ ├── grpo_functiongemma_browsergym_openenv.ipynb │ │ ├── grpo_ministral3_vl.ipynb │ │ ├── grpo_qwen3_vl.ipynb │ │ ├── grpo_rnj_1_instruct.ipynb │ │ ├── grpo_trl_lora_qlora.ipynb │ │ ├── openenv_sudoku_grpo.ipynb │ │ ├── openenv_wordle_grpo.ipynb │ │ ├── sft_ministral3_vl.ipynb │ │ ├── sft_nemotron_3.ipynb │ │ ├── sft_qwen_vl.ipynb │ │ ├── sft_tool_calling.ipynb │ │ └── sft_trl_lora_qlora.ipynb │ └── scripts/ │ ├── async_grpo.py │ ├── bco.py │ ├── cpo.py │ ├── dpo.py │ ├── dpo_vlm.py │ ├── evals/ │ │ └── judge_tldr.py │ ├── gkd.py │ ├── grpo_2048.py │ ├── grpo_agent.py │ ├── grpo_vlm.py │ ├── gspo.py │ ├── gspo_vlm.py │ ├── kto.py │ ├── mpo_vlm.py │ ├── nash_md.py │ ├── nemo_gym/ │ │ ├── README.md │ │ ├── config.yaml │ │ ├── deepspeed_zero3.yaml │ │ ├── submit.sh │ │ └── train_multi_environment.py │ ├── online_dpo.py │ ├── online_dpo_vlm.py │ ├── openenv/ │ │ ├── browsergym.py │ │ ├── browsergym_llm.py │ │ ├── carla.py │ │ ├── catch.py │ │ ├── echo.py │ │ ├── sudoku.py │ │ ├── sudoku_prompt.txt │ │ └── wordle.py │ ├── orpo.py │ ├── ppo/ │ │ ├── ppo.py │ │ └── ppo_tldr.py │ ├── prm.py │ ├── reward_modeling.py │ ├── rloo.py │ ├── rloo_vlm.py │ ├── sft.py │ ├── sft_gemma3.py │ ├── sft_gpt_oss.py │ ├── sft_nemotron_3.py │ ├── sft_tiny_aya_tool_calling.py │ ├── sft_video_llm.py │ ├── sft_vlm.py │ ├── sft_vlm_gemma3.py │ ├── tiny_aya_chat_template.jinja │ └── xpo.py ├── pyproject.toml ├── requirements.txt ├── scripts/ │ ├── add_copyrights.py │ ├── generate_harmony_dataset.py │ ├── generate_tiny_models.py │ ├── generate_toolcall_dataset.py │ ├── generate_zen_dataset.py │ ├── generate_zen_image_dataset.py │ ├── generate_zen_multi_image_dataset.py │ └── log_reports.py ├── tests/ │ ├── __init__.py │ ├── conftest.py │ ├── data/ │ │ └── template.jinja │ ├── distributed/ │ │ ├── __init__.py │ │ ├── data/ │ │ │ └── accelerate_configs/ │ │ │ ├── ddp.yaml │ │ │ ├── fsdp2.yaml │ │ │ ├── zero2.yaml │ │ │ └── zero3.yaml │ │ └── test_distributed.py │ ├── experimental/ │ │ ├── __init__.py │ │ ├── test_async_grpo_trainer.py │ │ ├── test_bco_trainer.py │ │ ├── test_cpo_trainer.py │ │ ├── test_dppo_trainer.py │ │ ├── test_gkd_trainer.py │ │ ├── test_gold_trainer.py │ │ ├── test_grpo_with_replay_buffer_trainer.py │ │ ├── test_gspo_token_trainer.py │ │ ├── test_judges.py │ │ ├── test_kto_trainer.py │ │ ├── test_merge_model_callback.py │ │ ├── test_minillm_trainer.py │ │ ├── test_modeling_value_head.py │ │ ├── test_nash_md_trainer.py │ │ ├── test_online_dpo_trainer.py │ │ ├── test_orpo_trainer.py │ │ ├── test_ppo_trainer.py │ │ ├── test_prm_trainer.py │ │ ├── test_utils.py │ │ ├── test_winrate_callback.py │ │ ├── test_xpo_trainer.py │ │ └── testing_utils.py │ ├── test_activation_offloading.py │ ├── test_callbacks.py │ ├── test_chat_template_utils.py │ ├── test_cli.py │ ├── test_cli_utils.py │ ├── test_data_utils.py │ ├── test_dpo_trainer.py │ ├── test_grpo_trainer.py │ ├── test_model_utils.py │ ├── test_reward_trainer.py │ ├── test_rewards.py │ ├── test_rich_progress_callback.py │ ├── test_rloo_trainer.py │ ├── test_sft_trainer.py │ ├── test_skills.py │ ├── test_skills_cli.py │ ├── test_utils.py │ ├── test_vllm_client_server.py │ ├── testing_constants.py │ └── testing_utils.py └── trl/ ├── __init__.py ├── _compat.py ├── _lazy_module.py ├── accelerate_configs/ │ ├── fsdp1.yaml │ ├── fsdp2.yaml │ ├── multi_gpu.yaml │ ├── single_gpu.yaml │ ├── zero1.yaml │ ├── zero2.yaml │ └── zero3.yaml ├── chat_template_utils.py ├── cli/ │ ├── __init__.py │ ├── accelerate_config.py │ ├── accelerate_launcher.py │ ├── commands/ │ │ ├── __init__.py │ │ ├── base.py │ │ ├── env.py │ │ ├── skills.py │ │ ├── training.py │ │ └── vllm_serve.py │ └── main.py ├── data_utils.py ├── experimental/ │ ├── __init__.py │ ├── async_grpo/ │ │ ├── __init__.py │ │ ├── async_grpo_config.py │ │ ├── async_grpo_trainer.py │ │ └── async_rollout_worker.py │ ├── bco/ │ │ ├── __init__.py │ │ ├── bco_config.py │ │ └── bco_trainer.py │ ├── bema_for_ref_model/ │ │ ├── __init__.py │ │ ├── callback.py │ │ └── dpo_trainer.py │ ├── cpo/ │ │ ├── __init__.py │ │ ├── cpo_config.py │ │ └── cpo_trainer.py │ ├── dppo/ │ │ ├── __init__.py │ │ ├── dppo_config.py │ │ └── dppo_trainer.py │ ├── gfpo/ │ │ ├── __init__.py │ │ ├── gfpo_config.py │ │ └── gfpo_trainer.py │ ├── gkd/ │ │ ├── __init__.py │ │ ├── gkd_config.py │ │ └── gkd_trainer.py │ ├── gold/ │ │ ├── __init__.py │ │ ├── gold.py │ │ ├── gold_config.py │ │ └── gold_trainer.py │ ├── grpo_with_replay_buffer/ │ │ ├── __init__.py │ │ ├── grpo_with_replay_buffer_config.py │ │ └── grpo_with_replay_buffer_trainer.py │ ├── gspo_token/ │ │ ├── __init__.py │ │ └── grpo_trainer.py │ ├── judges/ │ │ ├── __init__.py │ │ └── judges.py │ ├── kto/ │ │ ├── __init__.py │ │ ├── kto_config.py │ │ └── kto_trainer.py │ ├── merge_model_callback.py │ ├── minillm/ │ │ ├── __init__.py │ │ ├── minillm_config.py │ │ └── minillm_trainer.py │ ├── nash_md/ │ │ ├── __init__.py │ │ ├── nash_md_config.py │ │ └── nash_md_trainer.py │ ├── online_dpo/ │ │ ├── __init__.py │ │ ├── online_dpo_config.py │ │ └── online_dpo_trainer.py │ ├── openenv/ │ │ ├── __init__.py │ │ └── utils.py │ ├── orpo/ │ │ ├── __init__.py │ │ ├── orpo_config.py │ │ └── orpo_trainer.py │ ├── papo/ │ │ ├── __init__.py │ │ ├── papo_config.py │ │ └── papo_trainer.py │ ├── ppo/ │ │ ├── __init__.py │ │ ├── modeling_value_head.py │ │ ├── ppo_config.py │ │ └── ppo_trainer.py │ ├── prm/ │ │ ├── __init__.py │ │ ├── prm_config.py │ │ └── prm_trainer.py │ ├── utils.py │ ├── winrate_callback.py │ └── xpo/ │ ├── __init__.py │ ├── xpo_config.py │ └── xpo_trainer.py ├── extras/ │ ├── __init__.py │ ├── dataset_formatting.py │ └── profiling.py ├── generation/ │ ├── __init__.py │ ├── vllm_client.py │ └── vllm_generation.py ├── import_utils.py ├── models/ │ ├── __init__.py │ ├── activation_offloading.py │ └── utils.py ├── py.typed ├── rewards/ │ ├── __init__.py │ ├── accuracy_rewards.py │ ├── format_rewards.py │ └── other_rewards.py ├── scripts/ │ ├── __init__.py │ ├── _hf_argparser.py │ ├── dpo.py │ ├── env.py │ ├── grpo.py │ ├── kto.py │ ├── reward.py │ ├── rloo.py │ ├── sft.py │ ├── utils.py │ └── vllm_serve.py ├── skills/ │ ├── __init__.py │ ├── cli.py │ ├── skills.py │ └── trl-training/ │ └── SKILL.md ├── templates/ │ ├── completions_dataset_card.md │ ├── lm_model_card.md │ └── rm_model_card.md └── trainer/ ├── __init__.py ├── base_config.py ├── base_trainer.py ├── callbacks.py ├── dpo_config.py ├── dpo_trainer.py ├── grpo_config.py ├── grpo_trainer.py ├── kto_config.py ├── kto_trainer.py ├── model_config.py ├── reward_config.py ├── reward_trainer.py ├── rloo_config.py ├── rloo_trainer.py ├── sft_config.py ├── sft_trainer.py └── utils.py