Implementation:Farama Foundation Gymnasium Wrappers Init
| Knowledge Sources | |
|---|---|
| Domains | Reinforcement_Learning, Wrappers |
| Last Updated | 2026-02-15 03:00 GMT |
Overview
The public API index for the Gymnasium wrappers package, providing a centralized import point for all single-environment wrapper classes with lazy loading for framework-specific wrappers.
Description
This __init__.py module serves as the entry point for the gymnasium.wrappers package. It imports and re-exports all available wrapper classes organized by category:
Observation Wrappers: AtariPreprocessing, DelayObservation, DtypeObservation, DiscretizeObservation, FilterObservation, FlattenObservation, FrameStackObservation, GrayscaleObservation, TransformObservation, MaxAndSkipObservation, NormalizeObservation, AddRenderObservation, ResizeObservation, ReshapeObservation, RescaleObservation, TimeAwareObservation
Action Wrappers: ClipAction, DiscretizeAction, TransformAction, RescaleAction, StickyAction
Reward Wrappers: ClipReward, TransformReward, NormalizeReward
Common Wrappers: TimeLimit, Autoreset, PassiveEnvChecker, OrderEnforcing, RecordEpisodeStatistics
Rendering Wrappers: AddWhiteNoise, ObstructView, RenderCollection, RecordVideo, HumanRendering
Conversion Wrappers (lazy-loaded): ArrayConversion, JaxToNumpy, JaxToTorch, NumpyToTorch
The conversion wrappers (ArrayConversion, JaxToNumpy, JaxToTorch, NumpyToTorch) are loaded lazily via __getattr__ to avoid importing jax or torch at module load time. A _renamed_wrapper dictionary provides helpful error messages for deprecated wrapper names.
Usage
Import any wrapper directly from gymnasium.wrappers. This is the primary way users access wrappers in the Gymnasium API. The vector wrappers subpackage is also accessible as gymnasium.wrappers.vector.
Code Reference
Source Location
- Repository: Farama_Foundation_Gymnasium
- File:
gymnasium/wrappers/__init__.py
Signature
# Module-level __getattr__ for lazy loading
def __getattr__(wrapper_name: str):
"""Load a wrapper by name, with lazy loading for framework-specific wrappers."""
...
Import
from gymnasium.wrappers import (
ClipAction, RescaleAction, TransformAction, DiscretizeAction, StickyAction,
NormalizeObservation, FrameStackObservation, TimeAwareObservation,
NormalizeReward, TransformReward, ClipReward,
TimeLimit, Autoreset, RecordEpisodeStatistics,
RecordVideo, HumanRendering,
)
# Lazy-loaded:
from gymnasium.wrappers import ArrayConversion, JaxToNumpy, JaxToTorch, NumpyToTorch
I/O Contract
Exported Symbols
| Category | Wrappers |
|---|---|
| Observation | AtariPreprocessing, DelayObservation, DtypeObservation, DiscretizeObservation, FilterObservation, FlattenObservation, FrameStackObservation, GrayscaleObservation, TransformObservation, MaxAndSkipObservation, NormalizeObservation, AddRenderObservation, ResizeObservation, ReshapeObservation, RescaleObservation, TimeAwareObservation |
| Action | ClipAction, DiscretizeAction, TransformAction, RescaleAction, StickyAction |
| Reward | ClipReward, TransformReward, NormalizeReward |
| Common | TimeLimit, Autoreset, PassiveEnvChecker, OrderEnforcing, RecordEpisodeStatistics |
| Rendering | AddWhiteNoise, ObstructView, RenderCollection, RecordVideo, HumanRendering |
| Conversion | ArrayConversion, JaxToNumpy, JaxToTorch, NumpyToTorch |
Renamed Wrappers
| Old Name | New Name |
|---|---|
| AutoResetWrapper | Autoreset |
| FrameStack | FrameStackObservation |
| PixelObservationWrapper | AddRenderObservation |
| VectorListInfo | vector.DictInfoToList |
Usage Examples
import gymnasium as gym
from gymnasium.wrappers import RescaleAction
base_env = gym.make("Hopper-v4")
base_env.action_space
# Box(-1.0, 1.0, (3,), float32)
wrapped_env = RescaleAction(base_env, min_action=0, max_action=1)
wrapped_env.action_space
# Box(0.0, 1.0, (3,), float32)
# Wrappers can be chained
from gymnasium.wrappers import NormalizeObservation, NormalizeReward
env = gym.make("CartPole-v1")
env = NormalizeObservation(env)
env = NormalizeReward(env)