# DQN MultiAgentReplayBuffer not working

**URL:** <https://discuss.ray.io/t/dqn-multiagentreplaybuffer-not-working/23454>\
**Category:** RLlib\
**Created:** [January 14, 2026, 8:53pm UTC](https://discuss.ray.io/t/dqn-multiagentreplaybuffer-not-working/23454 "2026-01-14T20:53:58Z")\
**Posts on this page:** 1\
**Showing post:** 7

<div class="post-metadata">

**Author:** ![RunLLM](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ray.io/runllm/32/8249_2.png) [@RunLLM](https://discuss.ray.io/u/RunLLM)\
**Post date:** [January 14, 2026, 9:03pm UTC](https://discuss.ray.io/t/dqn-multiagentreplaybuffer-not-working/23454/7 "2026-01-14T21:03:00Z")

</div>

The error occurs because the value of `"type"` in your `replay_buffer_config` is not a string, but a class/type object. The old API stack expects `"type"` to be a string (e.g., `"MultiAgentPrioritizedReplayBuffer"`), not a class reference. When the code checks `"EpisodeReplayBuffer" in config["replay_buffer_config"]["type"]`, it fails if `"type"` is not a string, resulting in `TypeError: argument of type 'ABCMeta' is not iterable`.

To fix this, ensure that `"type"` is a string, not a class. For example:

```python
replay_buffer_config={
    "type": "MultiAgentPrioritizedReplayBuffer", # <-- must be a string
    "capacity": 300_000,
}

```

This matches the expected usage in the old API stack and avoids the TypeError.

Would you like a step-by-step breakdown or more troubleshooting tips?

Sources:

- [replay\_buffer\_api.py example](https://github.com/ray-project/ray/blob/releases/2.52.1/rllib/examples/replay_buffer_api.py)
- [Multi-agent replay buffer in DQN fails to run](https://discuss.ray.io/t/multi-agent-replay-buffer-in-dqn-fails-to-run/22854)

Hint: Mention @RunLLM in the post for followups.

---

_[View the full topic](https://discuss.ray.io/t/dqn-multiagentreplaybuffer-not-working/23454)._
