class_docstr: Runner for Dopamine experiments with fixed replay buffer.
docstr: Run training phase.
docstr_tok: ["Run","training","phase","."]
code: def _run_train_phase(self):
      """Run training phase."""
      self._agent.eval_mode = False
      start_time = time.time()
  
      for i in range(self._training_steps):
          if i % 100 == 0:
              # We use sys.stdout.write instead of logging so as to flush frequently
              # without generating a line break.
              sys.stdout.write(
                  "Training step: {}/{}\r".format(
                      i, self._training_steps
                  )
              )
              sys.stdout.flush()
  
          self._agent.train_step()
  
      time_delta = time.time() - start_time
      logging.info(
          "Average training steps per second: %.2f",
          self._training_steps / time_delta,
      )
  
file_path: dopamine/dopamine/labs/offline_rl/jax/run_experiment.py
imports: import sys
  import time
  from absl import logging
  from dopamine.discrete_domains import iteration_statistics
  from dopamine.discrete_domains import run_experiment
  from dopamine.metrics import statistics_instance
  import gin
  import tensorflow
label_desc: Use image node_id 2 for calling the FixedReplayRunner obj's underlying member method code with example usage: obj._run_train_phase() without return types