ListStorage¶
- class torchrl.data.replay_buffers.ListStorage(max_size: int | None = None, *, compilable: bool = False, device: torch.device | str | int | None = None)[源代码]¶
存储在列表中的存储。
此类无法与 PyTrees 扩展,在调用
extend()
时提供的数据应为可迭代对象(如列表、元组、张量或具有非空批次大小的 TensorDict)。- 参数:
max_size (int, optional) – 存储在存储中的最大元素数量。如果未提供,则创建无限制存储。
- 关键字参数:
compilable (bool, optional) – 如果为
True
,则存储将与compile()
兼容,但代价是在多进程环境中执行时会受到限制。device (str, optional) – 用于存储的设备。默认为 None(输入不会移动到设备)。
- attach(buffer: Any) None ¶
此函数将采样器附加到此存储。
从此存储读取的缓冲区必须通过调用此方法作为附加实体包含。这确保当存储中的数据发生变化时,组件会意识到这些变化,即使存储与其他缓冲区(例如 Priority Samplers)共享。
- 参数:
buffer – 读取此存储的对象。
- dump(*args, **kwargs)¶
dumps()
的别名。
- load(*args, **kwargs)¶
loads()
的别名。
- save(*args, **kwargs)¶
dumps()
的别名。