(cur_step, epoch, train_steps_per_epoch, evals_per_epoch)
return evals_per_epoch - (done_steps_this_epoch // train_steps_per_eval)
Helper function to calculate remaining evaluations for a trainer.

  Args:
    cur_step: current step of the supervised trainer
    epoch: current epoch of the RL trainer
    train_steps_per_epoch: supervised trainer steps per RL epoch
    evals_per_epoch: supervised trainer evals per RL epoch

  Returns:
    number of remaining evals to do this epoch

  Raises:
    ValueError if the provided numbers indicate a step mismatch
Helper function to calculate remaining evaluations for a trainer.
Helper function to calculate remaining evaluations for a trainer .
def remaining_evals(cur_step, epoch, train_steps_per_epoch, evals_per_epoch):
  """Helper function to calculate remaining evaluations for a trainer.

  Args:
    cur_step: current step of the supervised trainer
    epoch: current epoch of the RL trainer
    train_steps_per_epoch: supervised trainer steps per RL epoch
    evals_per_epoch: supervised trainer evals per RL epoch

  Returns:
    number of remaining evals to do this epoch

  Raises:
    ValueError if the provided numbers indicate a step mismatch
  """
  if epoch < 1:
    raise ValueError('Epoch must be at least 1, got %d' % epoch)
  prev_steps = (epoch - 1) * train_steps_per_epoch
  done_steps_this_epoch = cur_step - prev_steps
  if done_steps_this_epoch < 0:
    raise ValueError('Current step (%d) < previously done steps (%d).'
                     % (cur_step, prev_steps))
  train_steps_per_eval = train_steps_per_epoch // evals_per_epoch
  if done_steps_this_epoch % train_steps_per_eval != 0:
    raise ValueError('Done steps (%d) must divide train steps per eval (%d).'
                     % (done_steps_this_epoch, train_steps_per_eval))
  return evals_per_epoch - (done_steps_this_epoch // train_steps_per_eval)
def remaining_evals ( cur_step , epoch , train_steps_per_epoch , evals_per_epoch ) : if epoch < 1 : raise ValueError ( 'Epoch must be at least 1, got %d' % epoch ) prev_steps = ( epoch - 1 ) * train_steps_per_epoch done_steps_this_epoch = cur_step - prev_steps if done_steps_this_epoch < 0 : raise ValueError ( 'Current step (%d) < previously done steps (%d).' % ( cur_step , prev_steps ) ) train_steps_per_eval = train_steps_per_epoch // evals_per_epoch if done_steps_this_epoch % train_steps_per_eval != 0 : raise ValueError ( 'Done steps (%d) must divide train steps per eval (%d).' % ( done_steps_this_epoch , train_steps_per_eval ) ) return evals_per_epoch - ( done_steps_this_epoch // train_steps_per_eval )