agilerl 2.7.0.dev2__tar.gz → 2.7.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- agilerl-2.7.1/.envrc +5 -0
- agilerl-2.7.1/.gitattributes +3 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.github/workflows/linux-tests.yml +1 -1
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.pre-commit-config.yaml +2 -2
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/PKG-INFO +48 -48
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/README.md +6 -5
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/__init__.py +1 -14
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/cispo.py +4 -10
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/core/__init__.py +8 -1
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/core/base.py +1612 -616
- agilerl-2.7.1/agilerl/algorithms/core/llm_ops/__init__.py +49 -0
- agilerl-2.7.1/agilerl/algorithms/core/llm_ops/fused_logprobs.py +274 -0
- agilerl-2.7.1/agilerl/algorithms/core/llm_ops/fused_lora.py +271 -0
- agilerl-2.7.1/agilerl/algorithms/core/llm_ops/fused_loss.py +769 -0
- agilerl-2.7.1/agilerl/algorithms/core/llm_ops/vllm_colocate.py +201 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/dpo.py +62 -6
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/dqn.py +2 -2
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/dqn_rainbow.py +2 -0
- agilerl-2.7.1/agilerl/algorithms/grpo.py +1845 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/gspo.py +4 -10
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/ppo.py +3 -0
- agilerl-2.7.1/agilerl/algorithms/ppo_llm.py +1464 -0
- agilerl-2.7.1/agilerl/algorithms/reinforce_llm.py +1189 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/sft.py +76 -21
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/components/sampler.py +1 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/llm_envs/sft.py +1 -1
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/llm_envs/sync_vec_env.py +60 -8
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/llm_envs/token_observation.py +156 -19
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/base.py +4 -4
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/cnn.py +11 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/protocols.py +8 -3
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/rollouts/on_policy.py +17 -8
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/training/train_llm.py +72 -31
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/training/train_off_policy.py +2 -1
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/typing.py +16 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/algo_utils.py +149 -2
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/evolvable_networks.py +1 -1
- agilerl-2.7.1/agilerl/utils/llm_packing.py +276 -0
- agilerl-2.7.1/agilerl/utils/llm_utils.py +1960 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/minari_utils.py +10 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/ppo_value_head.py +7 -3
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/utils.py +106 -9
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/vector/pz_vec_env.py +1 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/wrappers/learning.py +1 -1
- agilerl-2.7.1/benchmarking/benchmarking_llm_multiturn.py +156 -0
- agilerl-2.7.1/configs/accelerate/bench_accelerate_config.yaml +25 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/llm_finetuning/cispo.yaml +17 -8
- agilerl-2.7.1/configs/training/llm_finetuning/cispo_quant_bench.yaml +114 -0
- agilerl-2.7.1/configs/training/llm_finetuning/cispo_quant_bench_qwen.yaml +69 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/llm_finetuning/grpo.yaml +12 -11
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/llm_finetuning/grpo_multiturn.yaml +17 -6
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/llm_finetuning/gspo.yaml +15 -6
- agilerl-2.7.1/configs/training/llm_finetuning/ppo_llm.yaml +44 -0
- agilerl-2.7.1/configs/training/llm_finetuning/ppo_llm_quant_bench.yaml +68 -0
- agilerl-2.7.1/configs/training/llm_finetuning/reinforce_llm.yaml +40 -0
- agilerl-2.7.1/configs/training/llm_finetuning/reinforce_quant_bench.yaml +80 -0
- agilerl-2.7.1/custom-gym-env/acrobot.py +461 -0
- agilerl-2.7.1/custom-gym-env/requirements.txt +1 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/debugging_llm.py +0 -3
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/debugging_llm_stage_1.py +0 -3
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/debugging_llm_stage_2.py +1 -4
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/debugging_llm_stage_3.py +0 -5
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/debugging_llm_training_matrix.py +0 -1
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/demo_llm_finetuning.py +6 -2
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/grpo.rst +22 -6
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/gspo.rst +2 -2
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/index.rst +4 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/llmppo.rst +14 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/llmreinforce.rst +39 -2
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/distributed_training/index.rst +2 -0
- agilerl-2.7.1/docs/llm_finetuning/fused_logprobs.rst +172 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/llm_finetuning/index.rst +23 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/llm_finetuning/llm_checkpoints.rst +18 -20
- agilerl-2.7.1/docs/llm_finetuning/quantization.rst +346 -0
- agilerl-2.7.1/docs/llm_finetuning/vllm_sleep_handoff.md +74 -0
- agilerl-2.7.1/grpo.yaml +65 -0
- agilerl-2.7.1/guess_the_number.py +117 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/pyproject.toml +63 -52
- agilerl-2.7.1/reward.py +72 -0
- agilerl-2.7.1/tensorboard_logs/CQN-CartPole-v1-04092026131147/events.out.tfevents.1775736707.Jaime-Laptop.890000.0 +0 -0
- agilerl-2.7.1/tensorboard_logs/IPPO-pettingzoo.mpe.simple_speaker_listener_v4-04092026132856/events.out.tfevents.1775737736.Jaime-Laptop.894244.0 +0 -0
- agilerl-2.7.1/tensorboard_logs/MADDPG-pettingzoo.mpe.simple_speaker_listener_v4-04092026134740/events.out.tfevents.1775738860.Jaime-Laptop.897254.0 +0 -0
- agilerl-2.7.1/tensorboard_logs/MADDPG-pettingzoo.mpe.simple_speaker_listener_v4-04092026140316/events.out.tfevents.1775739796.Jaime-Laptop.902018.0 +0 -0
- agilerl-2.7.1/tensorboard_logs/NeuralTS-IRIS-04092026105527/events.out.tfevents.1775728527.Jaime-Laptop.785816.0 +0 -0
- agilerl-2.7.1/tensorboard_logs/NeuralTS-IRIS-04092026110058/events.out.tfevents.1775728858.Jaime-Laptop.819376.0 +0 -0
- agilerl-2.7.1/tensorboard_logs/NeuralUCB-IRIS-04092026111556/events.out.tfevents.1775729756.Jaime-Laptop.822617.0 +0 -0
- agilerl-2.7.1/tensorboard_logs/PPO-LunarLander-v3-04092026131846/events.out.tfevents.1775737126.Jaime-Laptop.891893.0 +0 -0
- agilerl-2.7.1/tests/assets/tiny_llm/tokenizer.json +1 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/conftest.py +52 -6
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_core_base.py +826 -549
- agilerl-2.7.1/tests/test_algorithms/test_llm_ops/test_fused_logprobs.py +81 -0
- agilerl-2.7.1/tests/test_algorithms/test_llm_ops/test_fused_lora.py +401 -0
- agilerl-2.7.1/tests/test_algorithms/test_llm_ops/test_fused_loss.py +1268 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_llms/conftest.py +23 -23
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_llms/test_dpo.py +46 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_llms/test_grpo.py +1731 -490
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_llms/test_ppo_llm.py +803 -32
- agilerl-2.7.1/tests/test_algorithms/test_llms/test_quantization.py +982 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_llms/test_reinforce_llm.py +528 -29
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_llms/test_sft.py +26 -7
- agilerl-2.7.1/tests/test_algorithms/test_llms/test_vllm.py +333 -0
- agilerl-2.7.1/tests/test_algorithms/test_llms/test_vllm_colocate.py +314 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_multi_agent/test_matd3.py +38 -0
- agilerl-2.7.1/tests/test_algorithms/test_param_docstrings.py +102 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_single_agent/test_ppo.py +4 -4
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_hpo/test_mutation.py +3 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_hpo/test_tournament.py +1 -1
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_protocols.py +21 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_rollouts/test_on_policy.py +9 -4
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_train/test_train.py +16 -4
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_train/test_train_llm.py +166 -38
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_algo_utils.py +54 -0
- agilerl-2.7.1/tests/test_utils/test_llm_packing.py +374 -0
- agilerl-2.7.1/tests/test_utils/test_llm_utils.py +2818 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_log_utils.py +22 -5
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_ppo_value_head.py +8 -8
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_utils.py +501 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_wrappers/test_agent.py +260 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_wrappers/test_bandit_env.py +4 -2
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_wrappers/test_llm_envs.py +9 -7
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_wrappers/test_multiturn_wrappers.py +412 -10
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/uv.lock +2926 -2642
- agilerl-2.7.0.dev2/agilerl/algorithms/core/fused_lora.py +0 -146
- agilerl-2.7.0.dev2/agilerl/algorithms/grpo.py +0 -1076
- agilerl-2.7.0.dev2/agilerl/algorithms/ppo_llm.py +0 -905
- agilerl-2.7.0.dev2/agilerl/algorithms/reinforce_llm.py +0 -729
- agilerl-2.7.0.dev2/agilerl/utils/llm_utils.py +0 -867
- agilerl-2.7.0.dev2/benchmarking/benchmarking_llm_multiturn.py +0 -120
- agilerl-2.7.0.dev2/configs/training/llm_finetuning/ppo_llm.yaml +0 -47
- agilerl-2.7.0.dev2/configs/training/llm_finetuning/reinforce_llm.yaml +0 -42
- agilerl-2.7.0.dev2/tests/assets/tiny_llm/tokenizer.json +0 -757444
- agilerl-2.7.0.dev2/tests/test_algorithms/test_llms/test_fused_lora.py +0 -125
- agilerl-2.7.0.dev2/tests/test_algorithms/test_llms/test_vllm.py +0 -143
- agilerl-2.7.0.dev2/tests/test_utils/test_llm_utils.py +0 -1284
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.github/badges/arena-github-badge.svg +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.github/codeql/install_codeql.sh +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.github/codeql/run_codeql.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.github/dependabot.yml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.github/workflows/codeql.yml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.github/workflows/macos-tests.yml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.github/workflows/windows-tests.yml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.gitignore +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/.readthedocs.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/CITATION.cff +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/CODE_OF_CONDUCT.md +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/CONTRIBUTING.md +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/LICENSE +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/bc_lm.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/core/optimizer_wrapper.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/core/registry.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/cqn.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/ddpg.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/ilql.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/ippo.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/maddpg.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/matd3.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/neural_ts_bandit.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/neural_ucb_bandit.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/algorithms/td3.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/components/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/components/data.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/components/multi_agent_replay_buffer.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/components/replay_buffer.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/components/rollout_buffer.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/components/segment_tree.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/data/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/data/language_environment.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/data/rl_data.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/data/tokenizer.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/data/torch_datasets.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/hpo/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/hpo/mutation.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/hpo/tournament.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/llm_envs/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/llm_envs/base.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/llm_envs/preference.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/llm_envs/reasoning.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/llm_envs/search.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/bert.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/configs.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/custom_components.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/dummy.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/gpt.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/lstm.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/mlp.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/multi_input.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/resnet.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/modules/simba.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/networks/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/networks/actors.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/networks/base.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/networks/custom_modules.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/networks/distributions.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/networks/q_networks.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/networks/value_networks.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/rollouts/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/training/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/training/train_bandits.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/training/train_multi_agent_off_policy.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/training/train_multi_agent_on_policy.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/training/train_offline.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/training/train_on_policy.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/cache.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/ilql_utils.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/log_utils.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/probe_envs.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/probe_envs_llm.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/probe_envs_ma.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/sampling_utils.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/utils/torch_utils.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/vector/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/vector/pz_async_vec_env.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/wrappers/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/wrappers/agent.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/wrappers/llm_envs.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/wrappers/make_evolvable.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/wrappers/pettingzoo_wrappers.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/agilerl/wrappers/utils.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_bandits.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_llm_preference.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_llm_reasoning.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_multi_agent_off_policy.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_multi_agent_on_policy.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_off_policy.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_off_policy_distributed.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_offline.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_offline_distributed.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_on_policy.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_rainbow.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_recurrent.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_resnet.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_sft.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/benchmarking_simba.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/configs/ds_config.json +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/make_evolvable_benchmarking.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/benchmarking/networks.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/accelerate/accelerate.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/accelerate/grpo_accelerate_config.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/bandit/neural_ts.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/bandit/neural_ucb.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/cqn.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/ddpg/ddpg.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/ddpg/ddpg_lstm.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/ddpg/ddpg_simba.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/dqn/dqn.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/dqn/dqn_lstm.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/dqn/dqn_rainbow.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/llm_finetuning/dpo.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/multi_agent/ippo.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/multi_agent/ippo_pong.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/multi_agent/maddpg.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/multi_agent/matd3.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/multi_input.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/ppo/ppo.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/ppo/ppo_image.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/ppo/ppo_recurrent.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/sft.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/configs/training/td3.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/data/cartpole/cartpole_random_v1.1.0.h5 +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/data/cartpole/cartpole_v1.1.0.h5 +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/data/pendulum/pendulum_random_v1.1.0.h5 +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/data/pendulum/pendulum_v1.1.0.h5 +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/bandits/demo_bandit.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/config_load.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/configs/grpo_constant_target.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/configs/grpo_grid_navigation.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/configs/ppo_conditional_target.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/configs/ppo_constant_target.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/configs/ppo_grid_navigation.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/configs/ppo_multi_input.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/configs/ppo_value_head.yaml +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/debugging_value.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/llm_debug_utils.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/llm/debugging/tiny_model.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/multi_agent/demo_multi_agent.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/demo_custom_network.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/demo_off_policy.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/demo_off_policy_distributed.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/demo_offline.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/demo_offline_distributed.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/demo_on_policy.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/demo_on_policy_rnn_cartpole.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/demo_on_policy_rnn_memory.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/demo_on_policy_rnn_minigrid.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/performance_flamegraph_cartpole.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/performance_flamegraph_lunar_lander.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/performance_flamegraph_lunar_lander_rnn.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/demos/single_agent/performance_flamegraph_rnn_memory.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/Makefile +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/_static/arena-github-badge.svg +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/_static/css/custom.css +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/_static/favicon.ico +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/_static/js/expand_sidebar.js +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/_static/logo_teal.png +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/_static/logo_white.png +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/_static/module.png +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/_static/network.png +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/_static/thumbnails/iris-thumbnail.png +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/_static/thumbnails/pendigits-thumbnail.png +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/_static/thumbnails/rainbow_performance.png +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/_static/thumbnails/simba_thumbnail.png +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/base.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/cispo.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/cql.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/ddpg.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/dpo.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/dqn.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/dqn_rainbow.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/ilql.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/ippo.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/maddpg.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/matd3.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/neural_ts.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/neural_ucb.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/ppo.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/registry.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/sft.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/td3.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/algorithms/wrappers.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/components/data.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/components/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/components/multi_agent_replay_buffer.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/components/replay_buffer.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/components/rollout_buffer.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/components/sampler.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/components/segment_tree.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/hpo/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/hpo/mutation.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/hpo/tournament.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/modules/base.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/modules/bert.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/modules/cnn.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/modules/custom_activation.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/modules/dummy.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/modules/gpt.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/modules/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/modules/lstm.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/modules/mlp.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/modules/multi_input.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/modules/resnet.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/modules/simba.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/networks/actors.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/networks/base.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/networks/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/networks/q_networks.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/networks/value_networks.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/rollouts/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/rollouts/on_policy.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/train.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/utils/algo_utils.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/utils/cache.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/utils/evolvable_networks.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/utils/ilql_utils.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/utils/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/utils/llm_utils.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/utils/log_utils.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/utils/minari_utils.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/utils/probe_envs.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/utils/torch_utils.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/utils/utils.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/vector/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/vector/petting_zoo_async_vector_env.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/vector/petting_zoo_vector_env.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/wrappers/agent.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/wrappers/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/wrappers/learning.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/wrappers/llm_envs.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/wrappers/make_evolvable.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/api/wrappers/pettingzoo.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/bandits/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/conf.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/custom_algorithms/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/debugging_rl/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/evo_hyperparam_opt/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/evolvable_networks/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/get_started/agilerl2changes.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/get_started/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/make.bat +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/multi_agent_training/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/off_policy/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/offline_training/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/on_policy/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/pomdp/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/releases/index.rst +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/docs/requirements.txt +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/sitecustomize.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/build_minari_fixture.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/build_tiny_llm_fixture.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/minari_cache/D4RL/door/human-v2/data/main_data.hdf5 +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/minari_cache/D4RL/door/human-v2/data/metadata.json +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/minari_cache/D4RL/door/namespace_metadata.json +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/minari_cache/D4RL/namespace_metadata.json +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/tiny_llm/added_tokens.json +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/tiny_llm/chat_template.jinja +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/tiny_llm/config.json +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/tiny_llm/generation_config.json +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/tiny_llm/model.safetensors +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/tiny_llm/special_tokens_map.json +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/assets/tiny_llm/tokenizer_config.json +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/helper_functions.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/pz_vector_test_utils.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/subprocess_runner.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/conftest.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_bandits/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_bandits/test_neural_ts.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_bandits/test_neural_ucb.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_base.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_bc_lm.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_llms/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_llms/test_llm_checkpoint.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_multi_agent/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_multi_agent/conftest.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_multi_agent/test_ippo.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_multi_agent/test_maddpg.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_optimizer_wrapper.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_registry.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_single_agent/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_single_agent/test_cqn.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_single_agent/test_ddpg.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_single_agent/test_dqn.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_single_agent/test_dqn_rainbow.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_single_agent/test_ilql.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_algorithms/test_single_agent/test_td3.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_components/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_components/test_multi_agent_replay_buffer.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_components/test_replay_buffer.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_components/test_replay_data.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_components/test_rollout_buffer.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_components/test_sampler.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_components/test_segment_tree.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_data.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_hpo/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_init.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/test_base.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/test_bert.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/test_cnn.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/test_configs.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/test_custom_activation.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/test_dummy.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/test_gpt.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/test_lstm.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/test_mlp.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/test_multi_input.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/test_resnet.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_modules/test_simba.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_networks/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_networks/test_actors.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_networks/test_base.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_networks/test_distributions.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_networks/test_q_networks.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_networks/test_value_functions.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_cache.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_ilql_utils.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_minari_utils.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_probe_envs.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_probe_envs_llm.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_probe_envs_ma.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_sampling_utils.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_torch_utils.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_utils/test_utils_evolvable.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_vector/test_vector.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_wrappers/__init__.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_wrappers/test_autoreset.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_wrappers/test_make_evolvable.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_wrappers/test_ppo_test_method.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/test_wrappers/test_skills.py +0 -0
- {agilerl-2.7.0.dev2 → agilerl-2.7.1}/tests/utils.py +0 -0
agilerl-2.7.1/.envrc
ADDED
|
@@ -33,7 +33,7 @@ jobs:
|
|
|
33
33
|
python-version: ['3.10', '3.11', '3.12', '3.13']
|
|
34
34
|
|
|
35
35
|
container:
|
|
36
|
-
image: pytorch/pytorch:2.
|
|
36
|
+
image: pytorch/pytorch:2.11.0-cuda13.0-cudnn9-devel
|
|
37
37
|
options: --user root
|
|
38
38
|
|
|
39
39
|
# Workspace (/__w) is ~1GB with little free space; root (/) has plenty. Put cache and venv on /.
|
|
@@ -35,7 +35,7 @@ repos:
|
|
|
35
35
|
- --skip=*.css,*.js,*.map,*.scss,*.svg
|
|
36
36
|
- --ignore-words-list=magent,pres,roate
|
|
37
37
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
38
|
-
rev: v0.15.
|
|
38
|
+
rev: v0.15.18
|
|
39
39
|
hooks:
|
|
40
40
|
- id: ruff
|
|
41
41
|
name: Ruff Linter
|
|
@@ -50,7 +50,7 @@ repos:
|
|
|
50
50
|
|
|
51
51
|
- repo: https://github.com/astral-sh/uv-pre-commit
|
|
52
52
|
# uv version.
|
|
53
|
-
rev: 0.11.
|
|
53
|
+
rev: 0.11.23
|
|
54
54
|
hooks:
|
|
55
55
|
- id: uv-lock
|
|
56
56
|
|
|
@@ -1,59 +1,58 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agilerl
|
|
3
|
-
Version: 2.7.
|
|
3
|
+
Version: 2.7.1
|
|
4
4
|
Summary: AgileRL is a deep reinforcement learning library focused on improving RL development through RLOps.
|
|
5
5
|
Author-email: Nick Ustaran-Anderegg <dev@agilerl.com>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
7
7
|
License-File: LICENSE
|
|
8
8
|
Requires-Python: <3.14,>=3.10
|
|
9
|
-
Requires-Dist: accelerate
|
|
10
|
-
Requires-Dist: dill
|
|
11
|
-
Requires-Dist: fastrand
|
|
12
|
-
Requires-Dist: flatten-dict
|
|
13
|
-
Requires-Dist: google-cloud-storage
|
|
14
|
-
Requires-Dist: gymnasium
|
|
15
|
-
Requires-Dist: h5py
|
|
16
|
-
Requires-Dist: hydra-core
|
|
17
|
-
Requires-Dist: jax[cpu]
|
|
18
|
-
Requires-Dist: matplotlib
|
|
19
|
-
Requires-Dist: minari[all]
|
|
9
|
+
Requires-Dist: accelerate>=1.7.0
|
|
10
|
+
Requires-Dist: dill>=0.3.7
|
|
11
|
+
Requires-Dist: fastrand>=1.3.0
|
|
12
|
+
Requires-Dist: flatten-dict>=0.4.2
|
|
13
|
+
Requires-Dist: google-cloud-storage>=2.5.0
|
|
14
|
+
Requires-Dist: gymnasium>=1.0.0
|
|
15
|
+
Requires-Dist: h5py>=3.15.0
|
|
16
|
+
Requires-Dist: hydra-core>=1.3.2
|
|
17
|
+
Requires-Dist: jax[cpu]>=0.4.31
|
|
18
|
+
Requires-Dist: matplotlib>=3.9.4
|
|
19
|
+
Requires-Dist: minari[all]>=0.5.2
|
|
20
20
|
Requires-Dist: numpy<3.0,>=2.0.0
|
|
21
|
-
Requires-Dist: omegaconf
|
|
21
|
+
Requires-Dist: omegaconf>=2.3.0
|
|
22
22
|
Requires-Dist: packaging>=20.0
|
|
23
|
-
Requires-Dist: pandas
|
|
24
|
-
Requires-Dist: pettingzoo
|
|
25
|
-
Requires-Dist: pre-commit
|
|
26
|
-
Requires-Dist: pygame
|
|
27
|
-
Requires-Dist: pymunk
|
|
28
|
-
Requires-Dist: redis
|
|
29
|
-
Requires-Dist: supersuit
|
|
30
|
-
Requires-Dist: tensordict
|
|
31
|
-
Requires-Dist: termcolor
|
|
32
|
-
Requires-Dist: torch
|
|
33
|
-
Requires-Dist: torch==2.9.0; sys_platform != 'darwin'
|
|
23
|
+
Requires-Dist: pandas>=2.2.3
|
|
24
|
+
Requires-Dist: pettingzoo>=1.23.1
|
|
25
|
+
Requires-Dist: pre-commit>=3.8.0
|
|
26
|
+
Requires-Dist: pygame>=2.6.0
|
|
27
|
+
Requires-Dist: pymunk<7.3,>=6.2
|
|
28
|
+
Requires-Dist: redis<8.1.0,>=4.4.4
|
|
29
|
+
Requires-Dist: supersuit>=3.9.0
|
|
30
|
+
Requires-Dist: tensordict==0.13.0
|
|
31
|
+
Requires-Dist: termcolor>=1.1.0
|
|
32
|
+
Requires-Dist: torch>=2.11.0
|
|
34
33
|
Requires-Dist: tqdm>=4.66.4
|
|
35
|
-
Requires-Dist: wandb
|
|
34
|
+
Requires-Dist: wandb>=0.18.0
|
|
36
35
|
Provides-Extra: all
|
|
37
|
-
Requires-Dist:
|
|
38
|
-
Requires-Dist:
|
|
39
|
-
Requires-Dist:
|
|
40
|
-
Requires-Dist:
|
|
41
|
-
Requires-Dist:
|
|
42
|
-
Requires-Dist:
|
|
43
|
-
Requires-Dist:
|
|
44
|
-
Requires-Dist:
|
|
45
|
-
Requires-Dist: vllm
|
|
36
|
+
Requires-Dist: bitsandbytes==0.49.2; (sys_platform == 'linux') and extra == 'all'
|
|
37
|
+
Requires-Dist: datasets==5.0.0; extra == 'all'
|
|
38
|
+
Requires-Dist: deepspeed>=0.19.1; (sys_platform == 'linux') and extra == 'all'
|
|
39
|
+
Requires-Dist: gymnasium[box2d]>=1.0.0; (sys_platform != 'win32') and extra == 'all'
|
|
40
|
+
Requires-Dist: liger-kernel==0.8.0; (sys_platform == 'linux') and extra == 'all'
|
|
41
|
+
Requires-Dist: peft==0.19.1; extra == 'all'
|
|
42
|
+
Requires-Dist: swig>=4.4.1; (sys_platform != 'win32') and extra == 'all'
|
|
43
|
+
Requires-Dist: transformers==5.11.0; extra == 'all'
|
|
44
|
+
Requires-Dist: vllm>=0.23; (sys_platform == 'linux') and extra == 'all'
|
|
46
45
|
Provides-Extra: box2d
|
|
47
|
-
Requires-Dist: gymnasium[box2d]
|
|
48
|
-
Requires-Dist: swig
|
|
46
|
+
Requires-Dist: gymnasium[box2d]>=1.0.0; (sys_platform != 'win32') and extra == 'box2d'
|
|
47
|
+
Requires-Dist: swig>=4.4.1; (sys_platform != 'win32') and extra == 'box2d'
|
|
49
48
|
Provides-Extra: llm
|
|
50
|
-
Requires-Dist:
|
|
51
|
-
Requires-Dist:
|
|
52
|
-
Requires-Dist:
|
|
53
|
-
Requires-Dist:
|
|
54
|
-
Requires-Dist:
|
|
55
|
-
Requires-Dist:
|
|
56
|
-
Requires-Dist: vllm
|
|
49
|
+
Requires-Dist: bitsandbytes==0.49.2; (sys_platform == 'linux') and extra == 'llm'
|
|
50
|
+
Requires-Dist: datasets==5.0.0; extra == 'llm'
|
|
51
|
+
Requires-Dist: deepspeed>=0.19.1; (sys_platform == 'linux') and extra == 'llm'
|
|
52
|
+
Requires-Dist: liger-kernel==0.8.0; (sys_platform == 'linux') and extra == 'llm'
|
|
53
|
+
Requires-Dist: peft==0.19.1; extra == 'llm'
|
|
54
|
+
Requires-Dist: transformers==5.11.0; extra == 'llm'
|
|
55
|
+
Requires-Dist: vllm>=0.23; (sys_platform == 'linux') and extra == 'llm'
|
|
57
56
|
Description-Content-Type: text/markdown
|
|
58
57
|
|
|
59
58
|
<p align="center">
|
|
@@ -153,7 +152,7 @@ We are constantly updating our tutorials to showcase the latest features of Agil
|
|
|
153
152
|
| [Hierarchical curriculum learning](https://docs.agilerl.com/en/latest/tutorials/skills/index.html) | Shows how to teach agents Skills and combine them to achieve an end goal. | [PPO - Lunar Lander](https://docs.agilerl.com/en/latest/tutorials/skills/index.html) |
|
|
154
153
|
| [Contextual multi-arm bandits](https://docs.agilerl.com/en/latest/tutorials/bandits/index.html) | Learn to make the correct decision in environments that only have one timestep. | [NeuralUCB - Iris Dataset](https://docs.agilerl.com/en/latest/tutorials/bandits/agilerl_neural_ucb_tutorial.html) <br> [NeuralTS - PenDigits](https://docs.agilerl.com/en/latest/tutorials/bandits/agilerl_neural_ts_tutorial.html) |
|
|
155
154
|
| [Custom Modules & Networks](https://docs.agilerl.com/en/latest/tutorials/custom_networks/index.html) | Learn how to create custom evolvable modules and networks for RL algorithms. | [Dueling Distributional Q Network](https://docs.agilerl.com/en/latest/tutorials/custom_networks/agilerl_rainbow_tutorial.html) <br> [EvolvableSimBa](https://docs.agilerl.com/en/latest/tutorials/custom_networks/agilerl_simba_tutorial.html) |
|
|
156
|
-
| [LLM Finetuning](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/index.html) | Learn how to finetune an LLM using AgileRL. | [GRPO](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/
|
|
155
|
+
| [LLM Finetuning](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/index.html) | Learn how to finetune an LLM using AgileRL. | [GRPO](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/grpo_finetuning.html) <br> [GRPO with HPO](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/grpo_hpo.html) <br> [SFT & DPO](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/sft_dpo_finetuning.html) <br> [Multi-turn LLMPPO, LLMREINFORCE & GRPO](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/multiturn_grpo_ppo.html) |
|
|
157
156
|
|
|
158
157
|
## Evolvable algorithms (more coming soon!)
|
|
159
158
|
|
|
@@ -179,10 +178,11 @@ We are constantly updating our tutorials to showcase the latest features of Agil
|
|
|
179
178
|
|
|
180
179
|
### LLM Fine-tuning Algorithms
|
|
181
180
|
|
|
182
|
-
|
|
|
183
|
-
|
|
|
184
|
-
| [On-Policy](https://docs.agilerl.com/en/latest/llm_finetuning/index.html) | [Group Relative Policy Optimization (GRPO)](https://docs.agilerl.com/en/latest/api/algorithms/grpo.html)
|
|
185
|
-
| [
|
|
181
|
+
| Type | Algorithm |
|
|
182
|
+
| ------------ | --------- |
|
|
183
|
+
| [On-Policy RL](https://docs.agilerl.com/en/latest/llm_finetuning/index.html) | [Group Relative Policy Optimization (GRPO)](https://docs.agilerl.com/en/latest/api/algorithms/grpo.html) <br> [Clipped IS-weight Policy Optimization (CISPO)](https://docs.agilerl.com/en/latest/api/algorithms/cispo.html) <br> [Group Sequence Policy Optimization (GSPO)](https://docs.agilerl.com/en/latest/api/algorithms/gspo.html) <br> [LLM Proximal Policy Optimization (LLM PPO)](https://docs.agilerl.com/en/latest/api/algorithms/llmppo.html) <br> [LLM REINFORCE](https://docs.agilerl.com/en/latest/api/algorithms/llmreinforce.html) |
|
|
184
|
+
| [Preference Optimization](https://docs.agilerl.com/en/latest/llm_finetuning/index.html) | [Direct Preference Optimization (DPO)](https://docs.agilerl.com/en/latest/api/algorithms/dpo.html) |
|
|
185
|
+
| [Supervised Fine-Tuning](https://docs.agilerl.com/en/latest/llm_finetuning/index.html) | [Supervised Fine-Tuning (SFT)](https://docs.agilerl.com/en/latest/api/algorithms/sft.html) |
|
|
186
186
|
|
|
187
187
|
|
|
188
188
|
## Train an Agent to Beat a Gym Environment
|
|
@@ -95,7 +95,7 @@ We are constantly updating our tutorials to showcase the latest features of Agil
|
|
|
95
95
|
| [Hierarchical curriculum learning](https://docs.agilerl.com/en/latest/tutorials/skills/index.html) | Shows how to teach agents Skills and combine them to achieve an end goal. | [PPO - Lunar Lander](https://docs.agilerl.com/en/latest/tutorials/skills/index.html) |
|
|
96
96
|
| [Contextual multi-arm bandits](https://docs.agilerl.com/en/latest/tutorials/bandits/index.html) | Learn to make the correct decision in environments that only have one timestep. | [NeuralUCB - Iris Dataset](https://docs.agilerl.com/en/latest/tutorials/bandits/agilerl_neural_ucb_tutorial.html) <br> [NeuralTS - PenDigits](https://docs.agilerl.com/en/latest/tutorials/bandits/agilerl_neural_ts_tutorial.html) |
|
|
97
97
|
| [Custom Modules & Networks](https://docs.agilerl.com/en/latest/tutorials/custom_networks/index.html) | Learn how to create custom evolvable modules and networks for RL algorithms. | [Dueling Distributional Q Network](https://docs.agilerl.com/en/latest/tutorials/custom_networks/agilerl_rainbow_tutorial.html) <br> [EvolvableSimBa](https://docs.agilerl.com/en/latest/tutorials/custom_networks/agilerl_simba_tutorial.html) |
|
|
98
|
-
| [LLM Finetuning](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/index.html) | Learn how to finetune an LLM using AgileRL. | [GRPO](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/
|
|
98
|
+
| [LLM Finetuning](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/index.html) | Learn how to finetune an LLM using AgileRL. | [GRPO](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/grpo_finetuning.html) <br> [GRPO with HPO](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/grpo_hpo.html) <br> [SFT & DPO](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/sft_dpo_finetuning.html) <br> [Multi-turn LLMPPO, LLMREINFORCE & GRPO](https://docs.agilerl.com/en/latest/tutorials/llm_finetuning/multiturn_grpo_ppo.html) |
|
|
99
99
|
|
|
100
100
|
## Evolvable algorithms (more coming soon!)
|
|
101
101
|
|
|
@@ -121,10 +121,11 @@ We are constantly updating our tutorials to showcase the latest features of Agil
|
|
|
121
121
|
|
|
122
122
|
### LLM Fine-tuning Algorithms
|
|
123
123
|
|
|
124
|
-
|
|
|
125
|
-
|
|
|
126
|
-
| [On-Policy](https://docs.agilerl.com/en/latest/llm_finetuning/index.html) | [Group Relative Policy Optimization (GRPO)](https://docs.agilerl.com/en/latest/api/algorithms/grpo.html)
|
|
127
|
-
| [
|
|
124
|
+
| Type | Algorithm |
|
|
125
|
+
| ------------ | --------- |
|
|
126
|
+
| [On-Policy RL](https://docs.agilerl.com/en/latest/llm_finetuning/index.html) | [Group Relative Policy Optimization (GRPO)](https://docs.agilerl.com/en/latest/api/algorithms/grpo.html) <br> [Clipped IS-weight Policy Optimization (CISPO)](https://docs.agilerl.com/en/latest/api/algorithms/cispo.html) <br> [Group Sequence Policy Optimization (GSPO)](https://docs.agilerl.com/en/latest/api/algorithms/gspo.html) <br> [LLM Proximal Policy Optimization (LLM PPO)](https://docs.agilerl.com/en/latest/api/algorithms/llmppo.html) <br> [LLM REINFORCE](https://docs.agilerl.com/en/latest/api/algorithms/llmreinforce.html) |
|
|
127
|
+
| [Preference Optimization](https://docs.agilerl.com/en/latest/llm_finetuning/index.html) | [Direct Preference Optimization (DPO)](https://docs.agilerl.com/en/latest/api/algorithms/dpo.html) |
|
|
128
|
+
| [Supervised Fine-Tuning](https://docs.agilerl.com/en/latest/llm_finetuning/index.html) | [Supervised Fine-Tuning (SFT)](https://docs.agilerl.com/en/latest/api/algorithms/sft.html) |
|
|
128
129
|
|
|
129
130
|
|
|
130
131
|
## Train an Agent to Beat a Gym Environment
|
|
@@ -16,19 +16,6 @@ def get_extra_dependencies(package: str, extra: str) -> list[str]:
|
|
|
16
16
|
return deps
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
def _is_dist_installed(dist_name: str) -> bool:
|
|
20
|
-
"""Check if a distribution is installed by its PyPI name.
|
|
21
|
-
|
|
22
|
-
Uses distribution metadata instead of find_spec because PyPI names
|
|
23
|
-
can differ from import names.
|
|
24
|
-
"""
|
|
25
|
-
try:
|
|
26
|
-
metadata(dist_name)
|
|
27
|
-
return True
|
|
28
|
-
except PackageNotFoundError:
|
|
29
|
-
return False
|
|
30
|
-
|
|
31
|
-
|
|
32
19
|
LLM_PACKAGES = get_extra_dependencies("agilerl", "llm")
|
|
33
20
|
|
|
34
21
|
|
|
@@ -40,7 +27,7 @@ def _is_distribution_installed(distribution: str) -> bool:
|
|
|
40
27
|
return True
|
|
41
28
|
|
|
42
29
|
|
|
43
|
-
# Use these flags for
|
|
30
|
+
# Use these flags for lazy import checks
|
|
44
31
|
HAS_LLM_DEPENDENCIES = all(_is_distribution_installed(pkg) for pkg in LLM_PACKAGES)
|
|
45
32
|
HAS_LIGER_KERNEL = _is_distribution_installed("liger-kernel")
|
|
46
33
|
HAS_VLLM = _is_distribution_installed("vllm")
|
|
@@ -2,25 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
-
from functools import partial
|
|
6
5
|
from typing import Any
|
|
7
6
|
|
|
8
|
-
from agilerl.algorithms.grpo import GRPO
|
|
7
|
+
from agilerl.algorithms.grpo import GRPO
|
|
8
|
+
from agilerl.utils.algo_utils import inherit_init_signature
|
|
9
9
|
|
|
10
10
|
|
|
11
|
+
@inherit_init_signature(GRPO, fixed={"loss_type"})
|
|
11
12
|
class CISPO(GRPO):
|
|
12
13
|
"""CISPO loss variant of :class:`agilerl.algorithms.grpo.GRPO`
|
|
13
14
|
|
|
14
15
|
Paper: https://arxiv.org/abs/2506.13585
|
|
15
16
|
"""
|
|
16
17
|
|
|
17
|
-
_init_with_cispo = partial(GRPO.__init__, loss_type="cispo")
|
|
18
|
-
|
|
19
18
|
def __init__(self, *args: Any, **kwargs: Any) -> None:
|
|
20
19
|
"""Initialize a CISPO agent with fixed ``loss_type``."""
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
_CISPO_CLASS_SIG, _CISPO_INIT_SIG = _signatures_without_loss_type()
|
|
25
|
-
CISPO.__signature__ = _CISPO_CLASS_SIG
|
|
26
|
-
CISPO.__init__.__signature__ = _CISPO_INIT_SIG
|
|
20
|
+
super().__init__(*args, loss_type="cispo", **kwargs)
|
|
@@ -1,7 +1,14 @@
|
|
|
1
|
-
from .base import
|
|
1
|
+
from .base import (
|
|
2
|
+
ActionResult,
|
|
3
|
+
EvolvableAlgorithm,
|
|
4
|
+
LLMAlgorithm,
|
|
5
|
+
MultiAgentRLAlgorithm,
|
|
6
|
+
RLAlgorithm,
|
|
7
|
+
)
|
|
2
8
|
from .optimizer_wrapper import OptimizerWrapper
|
|
3
9
|
|
|
4
10
|
__all__ = [
|
|
11
|
+
"ActionResult",
|
|
5
12
|
"EvolvableAlgorithm",
|
|
6
13
|
"LLMAlgorithm",
|
|
7
14
|
"MultiAgentRLAlgorithm",
|