gitextract_d67wvh9g/ ├── .github/ │ └── workflows/ │ ├── dataset.yml │ ├── e2e_digit_completion.yml │ ├── e2e_gsm8k.yml │ ├── model.yml │ ├── ray_test.yml │ ├── sanity.yml │ ├── vllm.yml │ └── yapf_format.yml ├── .gitignore ├── .readthedocs.yaml ├── .style.yapf ├── LICENSE ├── Notice.txt ├── OLD_README.md ├── README.md ├── docker/ │ ├── Dockerfile.ngc.vllm │ └── Dockerfile.vemlp.vllm.te ├── docs/ │ ├── Makefile │ ├── README.md │ ├── advance/ │ │ ├── dpo_extension.rst │ │ ├── fsdp_extension.rst │ │ ├── megatron_extension.rst │ │ └── placement.rst │ ├── conf.py │ ├── examples/ │ │ ├── config.rst │ │ ├── gsm8k_example.rst │ │ └── ppo_code_architecture.rst │ ├── experiment/ │ │ └── ppo.rst │ ├── faq/ │ │ └── faq.rst │ ├── index.rst │ ├── preparation/ │ │ ├── prepare_data.rst │ │ └── reward_function.rst │ ├── requirements-docs.txt │ ├── start/ │ │ ├── install.rst │ │ └── quickstart.rst │ └── workers/ │ ├── fsdp_workers.rst │ ├── megatron_workers.rst │ └── ray_trainer.rst ├── examples/ │ ├── data_preprocess/ │ │ ├── arth.py │ │ ├── countdown.py │ │ ├── full_hh_rlhf.py │ │ ├── gsm8k.py │ │ ├── hellaswag.py │ │ ├── math_dataset.py │ │ └── multiply.py │ ├── generation/ │ │ └── run_deepseek_v2_lite_math.sh │ ├── grpo_trainer/ │ │ ├── run_deepseek7b_llm.sh │ │ ├── run_deepseek7b_llm_seq_balance.sh │ │ ├── run_qwen2-7b.sh │ │ └── run_qwen2-7b_seq_balance.sh │ ├── ppo_trainer/ │ │ ├── run_deepseek7b_llm.sh │ │ ├── run_deepseek7b_llm_sp2.sh │ │ ├── run_deepseek_full_hh_rlhf.sh │ │ ├── run_deepseek_math_gsm8k_megatron.sh │ │ ├── run_deepseek_megatron.sh │ │ ├── run_gemma.sh │ │ ├── run_qwen2-7b.sh │ │ ├── run_qwen2-7b_rm.sh │ │ ├── run_qwen2-7b_rm_seq_balance.sh │ │ ├── run_qwen2-7b_seq_balance.sh │ │ ├── run_qwen2.5-32b.sh │ │ └── verl_getting_started.ipynb │ ├── ray/ │ │ └── tutorial.ipynb │ ├── sft/ │ │ └── gsm8k/ │ │ ├── run_deepseek_6b7.sh │ │ ├── run_gemma_2b.sh │ │ └── run_gemma_7b.sh │ └── split_placement/ │ ├── README.md │ ├── config/ │ │ └── ppo_trainer_split.yaml │ ├── main_ppo_split.py │ ├── run_deepseek7b_llm.sh │ └── split_monkey_patch.py ├── patches/ │ └── megatron_v4.patch ├── pyproject.toml ├── requirements.txt ├── scripts/ │ ├── format.sh │ └── train_tiny_zero.sh ├── setup.py ├── tests/ │ ├── __init__.py │ ├── e2e/ │ │ ├── __init__.py │ │ ├── arithmetic_sequence/ │ │ │ ├── data/ │ │ │ │ ├── create_dataset.py │ │ │ │ ├── test.parquet │ │ │ │ └── train.parquet │ │ │ ├── model/ │ │ │ │ ├── config.json │ │ │ │ ├── create_model_tokenizer.py │ │ │ │ ├── generation_config.json │ │ │ │ ├── model.safetensors │ │ │ │ └── tokenizer_config.json │ │ │ └── rl/ │ │ │ ├── README.md │ │ │ ├── config/ │ │ │ │ └── ray_trainer.yaml │ │ │ └── main_trainer.py │ │ ├── check_results.py │ │ ├── envs/ │ │ │ ├── __init__.py │ │ │ └── digit_completion/ │ │ │ ├── __init__.py │ │ │ ├── task.py │ │ │ └── tokenizer.py │ │ ├── run_qwen_gsm8k_function_rm.sh │ │ ├── run_qwen_gsm8k_function_rm_no_rmpad.sh │ │ ├── run_qwen_gsm8k_model_rm.sh │ │ ├── run_qwen_gsm8k_model_rm_no_rmpad.sh │ │ ├── run_qwen_gsm8k_model_rm_seq_balance.sh │ │ ├── run_qwen_gsm8k_model_rm_ulysses.sh │ │ ├── run_ray_trainer.sh │ │ └── run_ray_trainer_rmpad.sh │ ├── gpu_utility/ │ │ ├── test_memory_buffers.py │ │ ├── test_ops.py │ │ └── test_torch_functional.py │ ├── model/ │ │ ├── test_transformer.py │ │ └── test_transformers_ulysses.py │ ├── ray/ │ │ ├── check_worker_alive/ │ │ │ └── main.py │ │ ├── detached_worker/ │ │ │ ├── README.md │ │ │ ├── client.py │ │ │ ├── run.sh │ │ │ └── server.py │ │ ├── test_check_worker_alive.py │ │ ├── test_colocated_workers.py │ │ ├── test_data_transfer.py │ │ ├── test_driverfunc_to_worker.py │ │ ├── test_high_level_scheduling_api.py │ │ ├── test_ray_local_envs.py │ │ ├── test_rvdz.py │ │ ├── test_worker_group_basics.py │ │ └── test_worker_group_torch.py │ ├── rollout/ │ │ ├── run_fsdp_vllm.py │ │ └── test_vllm_hf_loader.py │ ├── sanity/ │ │ ├── check_license.py │ │ └── test_import.py │ ├── utility/ │ │ └── test_tensor_dict_utilities.py │ └── verl/ │ └── utils/ │ └── dataset/ │ ├── test_rl_dataset.py │ ├── test_rm_dataset.py │ └── test_sft_dataset.py └── verl/ ├── __init__.py ├── models/ │ ├── README.md │ ├── __init__.py │ ├── llama/ │ │ ├── __init__.py │ │ └── megatron/ │ │ ├── __init__.py │ │ ├── checkpoint_utils/ │ │ │ ├── __init__.py │ │ │ ├── llama_loader.py │ │ │ └── llama_saver.py │ │ ├── layers/ │ │ │ ├── __init__.py │ │ │ ├── parallel_attention.py │ │ │ ├── parallel_decoder.py │ │ │ ├── parallel_linear.py │ │ │ ├── parallel_mlp.py │ │ │ └── parallel_rmsnorm.py │ │ └── modeling_llama_megatron.py │ ├── registry.py │ ├── transformers/ │ │ ├── __init__.py │ │ ├── llama.py │ │ ├── monkey_patch.py │ │ └── qwen2.py │ └── weight_loader_registry.py ├── protocol.py ├── single_controller/ │ ├── __init__.py │ ├── base/ │ │ ├── __init__.py │ │ ├── decorator.py │ │ ├── megatron/ │ │ │ ├── __init__.py │ │ │ ├── worker.py │ │ │ └── worker_group.py │ │ ├── register_center/ │ │ │ ├── __init__.py │ │ │ └── ray.py │ │ ├── worker.py │ │ └── worker_group.py │ ├── ray/ │ │ ├── __init__.py │ │ ├── base.py │ │ └── megatron.py │ └── version/ │ └── version ├── third_party/ │ ├── __init__.py │ └── vllm/ │ ├── __init__.py │ ├── vllm_v_0_3_1/ │ │ ├── __init__.py │ │ ├── arg_utils.py │ │ ├── config.py │ │ ├── llm.py │ │ ├── llm_engine_sp.py │ │ ├── model_loader.py │ │ ├── model_runner.py │ │ ├── parallel_state.py │ │ ├── tokenizer.py │ │ ├── weight_loaders.py │ │ └── worker.py │ ├── vllm_v_0_4_2/ │ │ ├── __init__.py │ │ ├── arg_utils.py │ │ ├── config.py │ │ ├── dtensor_weight_loaders.py │ │ ├── hf_weight_loader.py │ │ ├── llm.py │ │ ├── llm_engine_sp.py │ │ ├── megatron_weight_loaders.py │ │ ├── model_loader.py │ │ ├── model_runner.py │ │ ├── parallel_state.py │ │ ├── spmd_gpu_executor.py │ │ ├── tokenizer.py │ │ └── worker.py │ ├── vllm_v_0_5_4/ │ │ ├── __init__.py │ │ ├── arg_utils.py │ │ ├── config.py │ │ ├── dtensor_weight_loaders.py │ │ ├── hf_weight_loader.py │ │ ├── llm.py │ │ ├── llm_engine_sp.py │ │ ├── megatron_weight_loaders.py │ │ ├── model_loader.py │ │ ├── model_runner.py │ │ ├── parallel_state.py │ │ ├── spmd_gpu_executor.py │ │ ├── tokenizer.py │ │ └── worker.py │ └── vllm_v_0_6_3/ │ ├── __init__.py │ ├── arg_utils.py │ ├── config.py │ ├── dtensor_weight_loaders.py │ ├── hf_weight_loader.py │ ├── llm.py │ ├── llm_engine_sp.py │ ├── megatron_weight_loaders.py │ ├── model_loader.py │ ├── model_runner.py │ ├── parallel_state.py │ ├── spmd_gpu_executor.py │ ├── tokenizer.py │ └── worker.py ├── trainer/ │ ├── __init__.py │ ├── config/ │ │ ├── evaluation.yaml │ │ ├── generation.yaml │ │ ├── ppo_megatron_trainer.yaml │ │ ├── ppo_trainer.yaml │ │ └── sft_trainer.yaml │ ├── fsdp_sft_trainer.py │ ├── main_eval.py │ ├── main_generation.py │ ├── main_ppo.py │ ├── ppo/ │ │ ├── __init__.py │ │ ├── core_algos.py │ │ └── ray_trainer.py │ └── runtime_env.yaml ├── utils/ │ ├── __init__.py │ ├── config.py │ ├── dataset/ │ │ ├── README.md │ │ ├── __init__.py │ │ ├── rl_dataset.py │ │ ├── rm_dataset.py │ │ └── sft_dataset.py │ ├── debug/ │ │ ├── __init__.py │ │ ├── performance.py │ │ └── trajectory_tracker.py │ ├── distributed.py │ ├── flops_counter.py │ ├── fs.py │ ├── fsdp_utils.py │ ├── hdfs_io.py │ ├── import_utils.py │ ├── logger/ │ │ ├── __init__.py │ │ └── aggregate_logger.py │ ├── logging_utils.py │ ├── megatron/ │ │ ├── __init__.py │ │ ├── memory.py │ │ ├── optimizer.py │ │ ├── optimizer_config.py │ │ ├── pipeline_parallel.py │ │ ├── sequence_parallel.py │ │ └── tensor_parallel.py │ ├── megatron_utils.py │ ├── memory_buffer.py │ ├── model.py │ ├── py_functional.py │ ├── ray_utils.py │ ├── rendezvous/ │ │ ├── __init__.py │ │ └── ray_backend.py │ ├── reward_score/ │ │ ├── __init__.py │ │ ├── countdown.py │ │ ├── gsm8k.py │ │ ├── math.py │ │ └── multiply.py │ ├── seqlen_balancing.py │ ├── tokenizer.py │ ├── torch_dtypes.py │ ├── torch_functional.py │ ├── tracking.py │ └── ulysses.py ├── version/ │ └── version └── workers/ ├── __init__.py ├── actor/ │ ├── __init__.py │ ├── base.py │ ├── dp_actor.py │ └── megatron_actor.py ├── critic/ │ ├── __init__.py │ ├── base.py │ ├── dp_critic.py │ └── megatron_critic.py ├── fsdp_workers.py ├── megatron_workers.py ├── reward_model/ │ ├── __init__.py │ ├── base.py │ └── megatron/ │ ├── __init__.py │ └── reward_model.py ├── rollout/ │ ├── __init__.py │ ├── base.py │ ├── hf_rollout.py │ ├── naive/ │ │ ├── __init__.py │ │ └── naive_rollout.py │ ├── tokenizer.py │ └── vllm_rollout/ │ ├── __init__.py │ └── vllm_rollout.py └── sharding_manager/ ├── __init__.py ├── base.py ├── fsdp_ulysses.py ├── fsdp_vllm.py └── megatron_vllm.py