code: def insert(
      self,
      current_obs,
      state,
      action,
      action_log_prob,
      value_pred,
      reward,
      mask,
  ):
      self.observations[self.step + 1].copy_(current_obs)
      self.states[self.step + 1].copy_(state)
      self.actions[self.step].copy_(action)
      self.action_log_probs[self.step].copy_(action_log_prob)
      self.value_preds[self.step].copy_(value_pred)
      self.rewards[self.step].copy_(reward)
      self.masks[self.step + 1].copy_(mask)
  
      self.step = (self.step + 1) % self.num_steps
  
file_path: SerpentAI/serpent/machine_learning/reinforcement_learning/ppo/rollout_storage.py
imports: import torch
  from torch.utils.data.sampler import BatchSampler, SubsetRandomSampler
label_desc: Use image node_id 3 for calling the RolloutStorage obj's underlying member method code with example usage: obj.insert(current_obs, state, action, action_log_prob, value_pred, reward, mask) without return types