INNER CODE UNIT · TypeScript
tokens_per_sec
theaniketgiri/create-llm · src/python-callback-templates.ts:335
tokens_per_sec = trainer.tokens_processed / elapsed
# Get learning rate
lr = trainer.optimizer.param_groups[0]['lr']
# Log to file
log_path = self.log_dir / self.log_file
with open(log_path, 'a') as f:
f.write(f"{step},{loss:.6f},{lr:.6e},{tokens_per_sec:.2f},{elapsed:.2f}\\n")
# Log to TensorBoard
if self.writer is not None:
self.writer.add_scalar('train/loss', loss, step)
self.writer.add_scalar('train/learning_rate', lr, step)
self.writer.add_scalar('train/tokens_per_sec', tokens_per_sec, step)
if metrics:
for key, value in metrics.items():
self.writer.add_scalar(f'train/{key}', value, step)