class_docstr: PPO Builder.
docstr: Creates an adder which handles observations.
docstr_tok: ["Creates","an","adder","which","handles","observations","."]
code: def make_adder(
      self,
      replay_client: reverb.Client,
      environment_spec: Optional[specs.EnvironmentSpec],
      policy: Optional[actor_core_lib.FeedForwardPolicyWithExtra],
  ) -> Optional[adders.Adder]:
      """Creates an adder which handles observations."""
      del environment_spec, policy
      # Note that the last transition in the sequence is used for bootstrapping
      # only and is ignored otherwise. So we need to make sure that sequences
      # overlap on one transition, thus "-1" in the period length computation.
      return adders_reverb.SequenceAdder(
          client=replay_client,
          priority_fns={self._config.replay_table_name: None},
          period=self._sequence_length - 1,
          sequence_length=self._sequence_length,
      )
  
imports: from typing import Iterator, List, Optional
  from acme import adders
  from acme import core
  from acme import specs
  from acme.adders import reverb
  from acme.agents.jax import actor_core
  from acme.agents.jax import actors
  from acme.agents.jax import builders
  from acme.agents.jax.ppo import config
  from acme.agents.jax.ppo import learning
  from acme.agents.jax.ppo import networks
  from acme.agents.jax.ppo import normalization
  from acme.jax import networks
  from acme.jax import utils
  from acme.jax import variable_utils
  from acme.utils import counting
  from acme.utils import loggers
  import jax
  import numpy
  import optax
  import reverb
label_desc: Use image node_id 4 for calling the PPOBuilder obj's underlying member method code with example usage: obj.make_adder(replay_client, environment_spec, policy) and returns: adders_reverb