{"library":"sb3-contrib","title":"Stable Baselines3 Contrib","description":"sb3-contrib is the experimental contribution package for Stable Baselines3, providing additional reinforcement learning algorithms and features not yet integrated into the main SB3 library. It is currently at version 2.8.0 and typically releases new versions in sync with Stable Baselines3's major and minor updates, often introducing breaking changes related to Python or SB3 dependency versions.","language":"python","status":"active","last_verified":"Tue May 12","install":{"commands":["pip install sb3-contrib stable-baselines3 gymnasium"],"cli":null},"imports":["from sb3_contrib import MaskablePPO","from sb3_contrib import RecurrentPPO","from sb3_contrib import ARS","from sb3_contrib import TRPO","from sb3_contrib import CrossQ","from stable_baselines3 import QRDQN"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import gymnasium as gym\nfrom sb3_contrib import ARS\nfrom stable_baselines3.common.env_util import make_vec_env\nfrom stable_baselines3.common.vec_env import VecMonitor\n\n# 1. Create a vectorized environment\nenv_id = \"CartPole-v1\"\nvec_env = make_vec_env(env_id, n_envs=4, seed=0)\nvec_env = VecMonitor(vec_env) # Recommended wrapper for logging\n\n# 2. Initialize the ARS agent\n# ARS (Augmented Random Search) is a policy-gradient-free algorithm\nmodel = ARS(\"MlpPolicy\", vec_env, verbose=1)\n\n# 3. Train the agent\nprint(\"Training the ARS model...\")\nmodel.learn(total_timesteps=10000)\nprint(\"Training finished.\")\n\n# 4. Save and load the model (optional)\nmodel.save(\"ars_cartpole\")\ndel model # remove to demonstrate loading\nmodel = ARS.load(\"ars_cartpole\")\n\n# 5. Evaluate the trained agent\nprint(\"Evaluating the trained model...\")\nobs, info = vec_env.reset()\nfor _ in range(100): # Run for 100 steps\n    action, _states = model.predict(obs, deterministic=True)\n    obs, rewards, dones, infos = vec_env.step(action)\n    # Handle episode termination for vectorized environments\n    for i, done in enumerate(dones):\n        if done:\n            print(f\"Episode finished, reward: {infos[i]['episode']['r']:.2f}\")\nvec_env.close()","lang":"python","description":"This quickstart demonstrates how to set up a vectorized Gymnasium environment and train an ARS (Augmented Random Search) agent from sb3-contrib. It covers environment creation, model initialization, training, and basic evaluation.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-12","installed_version":null,"pypi_latest":"2.8.0","is_stale":null,"summary":{"python_range":"3.10–3.9","success_rate":0,"avg_install_s":null,"avg_import_s":null,"wheel_type":null},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"sb3-contrib","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"sb3-contrib","exit_code":1,"wheel_type":null,"failure_reason":"timeout","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"sb3-contrib","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"sb3-contrib","exit_code":1,"wheel_type":null,"failure_reason":"timeout","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"sb3-contrib","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"sb3-contrib","exit_code":1,"wheel_type":null,"failure_reason":"timeout","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"sb3-contrib","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"sb3-contrib","exit_code":1,"wheel_type":null,"failure_reason":"timeout","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"sb3-contrib","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"sb3-contrib","exit_code":1,"wheel_type":null,"failure_reason":"timeout","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null}]}}