{"id":13435405,"url":"https://github.com/rlworkgroup/garage","last_synced_at":"2025-05-14T15:10:43.549Z","repository":{"id":39375929,"uuid":"136846372","full_name":"rlworkgroup/garage","owner":"rlworkgroup","description":"A toolkit for reproducible reinforcement learning research.","archived":false,"fork":false,"pushed_at":"2023-05-04T14:44:22.000Z","size":60358,"stargazers_count":1957,"open_issues_count":235,"forks_count":312,"subscribers_count":55,"default_branch":"master","last_synced_at":"2025-04-04T23:04:36.498Z","etag":null,"topics":["pytorch","reproducibility","rl-algorithms","tensorflow"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rlworkgroup.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2018-06-10T21:31:23.000Z","updated_at":"2025-04-04T14:47:15.000Z","dependencies_parsed_at":"2024-01-05T21:21:50.977Z","dependency_job_id":null,"html_url":"https://github.com/rlworkgroup/garage","commit_stats":{"total_commits":1216,"total_committers":82,"mean_commits":"14.829268292682928","dds":0.78125,"last_synced_commit":"2d594803636e341660cab0e81343abbe9a325353"},"previous_names":[],"tags_count":33,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rlworkgroup%2Fgarage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rlworkgroup%2Fgarage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rlworkgroup%2Fgarage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rlworkgroup%2Fgarage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rlworkgroup","download_url":"https://codeload.github.com/rlworkgroup/garage/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248505873,"owners_count":21115354,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["pytorch","reproducibility","rl-algorithms","tensorflow"],"created_at":"2024-07-31T03:00:35.441Z","updated_at":"2025-04-12T01:52:31.753Z","avatar_url":"https://github.com/rlworkgroup.png","language":"Python","readme":"[![Docs](https://readthedocs.org/projects/garage/badge)](http://garage.readthedocs.org/en/latest/)\n[![Garage CI](https://github.com/rlworkgroup/garage/workflows/Garage%20CI/badge.svg?event=schedule)](https://github.com/rlworkgroup/garage/actions?query=workflow%3A%22Garage+CI%22)\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/rlworkgroup/garage/blob/master/LICENSE)\n[![codecov](https://codecov.io/gh/rlworkgroup/garage/branch/master/graph/badge.svg)](https://codecov.io/gh/rlworkgroup/garage)\n[![PyPI version](https://badge.fury.io/py/garage.svg)](https://badge.fury.io/py/garage)\n\n# garage\n\ngarage is a toolkit for developing and evaluating reinforcement learning\nalgorithms, and an accompanying library of state-of-the-art implementations\nbuilt using that toolkit.\n\nThe toolkit provides wide range of modular tools for implementing RL algorithms,\nincluding:\n\n* Composable neural network models\n* Replay buffers\n* High-performance samplers\n* An expressive experiment definition interface\n* Tools for reproducibility (e.g. set a global random seed which all components\n  respect)\n* Logging to many outputs, including TensorBoard\n* Reliable experiment checkpointing and resuming\n* Environment interfaces for many popular benchmark suites\n* Supporting for running garage in diverse environments, including always\n  up-to-date Docker containers\n\nSee the [latest documentation](https://garage.readthedocs.org/en/latest/) for\ngetting started instructions and detailed APIs.\n\n## Installation\n\n```\npip install --user garage\n```\n\n## Examples\n\nStarting from version v2020.10.0, garage comes packaged with examples. To get a\nlist of examples, run:\n\n```\ngarage examples\n```\n\nYou can also run `garage examples --help`, or visit\n[the documentation](https://garage.readthedocs.io/en/latest/user/get_started.html#running-examples)\nfor even more details.\n\n## Join the Community\n\n**Join the [garage-announce mailing list](https://groups.google.com/forum/#!forum/garage-announce/join)**\nfor infrequent updates (\u003c1/mo.) on the status of the project and new releases.\n\nNeed some help? Want to ask garage is right for your project? Have a question\nwhich is not quite a bug and not quite a feature request?\n\n**Join the community Slack** by filling out\n[this Google Form](https://docs.google.com/forms/d/e/1FAIpQLSf4AXRIbA1cLGjku4lIRQ6btStWPeIMeG3J17i4_FhFQU8X0g/viewform).\n\n## Algorithms\n\nThe table below summarizes the algorithms available in garage.\n\n| Algorithm              | Framework(s)        |\n| ---------------------- | ------------------- |\n| CEM                    | numpy               |\n| CMA-ES                 | numpy               |\n| REINFORCE (a.k.a. VPG) | PyTorch, TensorFlow |\n| DDPG                   | PyTorch, TensorFlow |\n| DQN                    | PyTorch, TensorFlow |\n| DDQN                   | PyTorch, TensorFlow |\n| ERWR                   | TensorFlow          |\n| NPO                    | TensorFlow          |\n| PPO                    | PyTorch, TensorFlow |\n| REPS                   | TensorFlow          |\n| TD3                    | PyTorch, TensorFlow |\n| TNPG                   | TensorFlow          |\n| TRPO                   | PyTorch, TensorFlow |\n| MAML                   | PyTorch             |\n| RL2                    | TensorFlow          |\n| PEARL                  | PyTorch             |\n| SAC                    | PyTorch             |\n| MTSAC                  | PyTorch             |\n| MTPPO                  | PyTorch, TensorFlow |\n| MTTRPO                 | PyTorch, TensorFlow |\n| Task Embedding         | TensorFlow          |\n| Behavioral Cloning     | PyTorch             |\n\n## Supported Tools and Frameworks\n\ngarage requires Python 3.6+. If you need Python 3.5 support, the last garage\nrelease to support Python 3.5 was\n[v2020.06](https://github.com/rlworkgroup/garage/releases/tag/v2020.06.0).\n\nThe package is tested on Ubuntu 18.04. It is also known to run on Ubuntu 16.04,\n18.04, and 20.04, and recent versions of macOS using Homebrew. Windows users can\ninstall garage via WSL, or by making use of the Docker containers.\n\nWe currently support [PyTorch](https://pytorch.org/) and\n[TensorFlow](https://www.tensorflow.org/) for implementing the neural network\nportions of RL algorithms, and additions of new framework support are always\nwelcome. PyTorch modules can be found in the package\n[`garage.torch`](https://github.com/rlworkgroup/garage/tree/master/src/garage/torch)\nand TensorFlow modules can be found in the package\n[`garage.tf`](https://github.com/rlworkgroup/garage/tree/master/src/garage/tf).\nAlgorithms which do not require neural networks are found in the package\n[`garage.np`](https://github.com/rlworkgroup/garage/tree/master/src/garage/np).\n\nThe package is available for download on PyPI, and we ensure that it installs\nsuccessfully into environments defined using\n[conda](https://docs.conda.io/en/latest/),\n[Pipenv](https://pipenv.readthedocs.io/en/latest/), and\n[virtualenv](https://virtualenv.pypa.io/en/latest/).\n\n## Testing\n\nThe most important feature of garage is its comprehensive automated unit test\nand benchmarking suite, which helps ensure that the algorithms and modules in\ngarage maintain state-of-the-art performance as the software changes.\n\nOur testing strategy has three pillars:\n\n* **Automation:**\n  We use continuous integration to test all modules and algorithms in garage\n  before adding any change. The full installation and test suite is also run\n  nightly, to detect regressions.\n* **Acceptance Testing:**\n  Any commit which might change the performance of an algorithm is subjected to\n  comprehensive benchmarks on the relevant algorithms before it is merged\n* **Benchmarks and Monitoring:**\n  We benchmark the full suite of algorithms against their relevant benchmarks\n  and widely-used implementations regularly, to detect regressions and\n  improvements we may have missed.\n\n## Supported Releases\n\n| Release | Build Status | Last date of support |\n| ------- | ------------ | -------------------- |\n| [v2021.03](https://github.com/rlworkgroup/garage/releases/tag/v2021.03.0) | [![Garage CI Release-2021.03](https://github.com/rlworkgroup/garage/workflows/Garage%20CI%20Release-2021.03/badge.svg)](https://github.com/rlworkgroup/garage/actions?query=workflow%3A%22Garage+CI+Release-2021.03%22) | May 31st, 2021 |\n\nMaintenance releases have a stable API and dependency tree,\nand receive bug fixes and critical improvements but not new features. We\ncurrently support each release for a window of 2 months.\n\n## Citing garage\n\nIf you use garage for academic research, please cite the repository using the\nfollowing BibTeX entry. You should update the `commit` field with the commit or\nrelease tag your publication uses.\n\n```latex\n@misc{garage,\n author = {The garage contributors},\n title = {Garage: A toolkit for reproducible reinforcement learning research},\n year = {2019},\n publisher = {GitHub},\n journal = {GitHub repository},\n howpublished = {\\url{https://github.com/rlworkgroup/garage}},\n commit = {be070842071f736eb24f28e4b902a9f144f5c97b}\n}\n```\n\n## Credits\n\nThe earliest code for garage was adopted from predecessor project called\n[rllab](https://github.com/rll/rllab). The garage project is grateful for the\ncontributions of the original rllab authors, and hopes to continue advancing the\nstate of reproducibility in RL research in the same spirit. garage has\npreviously been supported by the Amazon Research Award \"Watch, Practice, Learn,\nDo: Unsupervised Learning of Robust and Composable Robot Motion Skills by Fusing\nExpert Demonstrations with Robot Experience.\"\n\n---\n\u003cp align=\"center\" style=\"align-items:center; display:inline-block\"\u003eMade with \u0026#10084; \u0026nbsp;at \u003ca href=\"https://robotics.usc.edu/resl/\" target=\"_blank\"\u003e\u003cimg align=\"absmiddle\" src=\"https://github.com/rlworkgroup/garage/blob/master/docs/_static/resl_logo.png?raw=true\" height=\"60px\"\u003e\u003c/a\u003e and \u0026nbsp;\u003ca href=\"https://viterbischool.usc.edu/\" target=\"_blank\"\u003e\u003cimg align=\"absmiddle\" src=\"https://github.com/rlworkgroup/garage/blob/master/docs/_static/viterbi_logo.png?raw=true\" height=\"30px\"\u003e\u003c/a\u003e\u003c/p\u003e\n","funding_links":[],"categories":["Reinforcement Learning (RL) and Deep Reinforcement Learning (DRL)","Reinforcement Learning","Libraries","强化学习","Python","Industry Strength RL","Reinforcement Learning Tools","JAX Models","Researchers","Open Source Reinforcement Learning Platforms"],"sub_categories":["RL/DRL Benchmarking","NLP","Others","Books","Reinforcement Learning","General-Purpose Machine Learning","Frameworks","Human Computer Interaction"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frlworkgroup%2Fgarage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frlworkgroup%2Fgarage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frlworkgroup%2Fgarage/lists"}