feature(xjx): refactor buffer (#129)
* Init base buffer and storage
* Use ratelimit as middleware
* Pass style check
* Keep the return original return value
* Add buffer.view
* Add replace flag on sample, rewrite middleware processing
* Test slicing
* Add buffer copy middleware
* Add update/delete api in buffer, rename middleware
* Implement update and delete api of buffer
* add naive use time count middleware in buffer
* Rename next to chain
* feature(nyz): add staleness check middleware and polish buffer
* feature(nyz): add naive priority experience replay
* Sample by indices
* Combine buffer and storage layers
* Support indices when deleting items from the queue
* Use dataclass to save buffered data, remove return_index and return_meta
* Add ignore_insufficient
* polish(nyz): add return index in push and copy same data in sample
* Drop useless import
* Fix sample with indices, ensure return size is equal to input size or indices size
* Make sure sampled data in buffer is different from each other
* Support sample by grouped meta key
* Support sample by rolling window
* Add import/export data in buffer
* Padding after sampling from buffer
* Polish use_time_check
* Use buffer as dataset
* Set collate_fn in buffer test
* feature(nyz): add deque buffer compatibility wrapper and demo
* polish(nyz): polish code style and add pong dqn new deque buffer demo
* feature(nyz): add use_time_count compatibility in wrapper
* feature(nyz): add priority replay buffer compatibility in wrapper
* Improve performance of buffer.update
* polish(nyz): add priority max limit and correct flake8
* Use __call__ to rewrite middleware
* Rewrite buffer index
* Fix buffer delete
* Skip first item
* Rewrite buffer delete
* Use caller
* Use caller in priority
* Add group sample
Co-authored-by: Nniuyazhe <niuyazhe@sensetime.com>
Showing
ding/worker/buffer/__init__.py
0 → 100644
ding/worker/buffer/buffer.py
0 → 100644
想要评论请 注册 或 登录