class_docstr: Reverb fixed length sequence observer.
  
  This is a specialized observer similar to ReverbAddTrajectoryObserver but each
  sequence contains a fixed number of steps and can span multiple episodes. This
  implementation is consistent with (Schulman, 17).
  
  **Note**: Counting of steps in drivers does not include boundary steps. To
  guarantee only 1 item is pushed to the replay when collecting n steps with a
  `sequence_length` of n make sure to set the `stride_length`.
docstr: Writes the trajectory into the underlying replay buffer.
  
  Allows trajectory to be a flattened trajectory. No batch dimension allowed.
  
  Args:
    trajectory: The trajectory to be written which could be (possibly nested)
      trajectory object or a flattened version of a trajectory. It assumes
      there is *no* batch dimension.
docstr_tok: ["Writes","the","trajectory","into","the","underlying","replay","buffer",".","Allows","trajectory","to","be","a","flattened","trajectory",".","No","batch","dimension","allowed",".","Args",":","trajectory",":","The","trajectory","to","be","written","which","could","be","(","possibly","nested",")","trajectory","object","or","a","flattened","version","of","a","trajectory",".","It","assumes","there","is","*","no","*","batch","dimension","."]
code: def __call__(self, trajectory):
      """Writes the trajectory into the underlying replay buffer.
  
      Allows trajectory to be a flattened trajectory. No batch dimension allowed.
  
      Args:
        trajectory: The trajectory to be written which could be (possibly nested)
          trajectory object or a flattened version of a trajectory. It assumes
          there is *no* batch dimension.
      """
      self._writer.append(trajectory)
      self._cached_steps += 1
  
      self._write_cached_steps()
  
imports: import os
  from absl import logging
  import gin
  import reverb
  import tensorflow.compat.v2
  from tf_agents.agents.ppo import ppo_actor_network
  from tf_agents.agents.ppo import ppo_clip_agent
  from tf_agents.environments import suite_mujoco
  from tf_agents.metrics import py_metrics
  from tf_agents.networks import value_network
  from tf_agents.policies import py_tf_eager_policy
  from tf_agents.replay_buffers import reverb_replay_buffer
  from tf_agents.replay_buffers import reverb_utils
  from tf_agents.train import actor
  from tf_agents.train import learner
  from tf_agents.train import ppo_learner
  from tf_agents.train import triggers
  from tf_agents.train.utils import spec_utils
  from tf_agents.train.utils import train_utils
label_desc: Use image node_id 1 for calling the ReverbFixedLengthSequenceObserver obj's underlying member method code with example usage: obj.__call__(trajectory) without return types