Spaces:
Running
on
Zero
Running
on
Zero
File size: 1,173 Bytes
e6af450 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# Copyright 2025 Bytedance Ltd. and/or its affiliates.
# SPDX-License-Identifier: Apache-2.0
import logging
import os
def create_logger(logging_dir, rank, filename="log"):
"""
Create a logger that writes to a log file and stdout.
"""
if rank == 0 and logging_dir is not None: # real logger
logging.basicConfig(
level=logging.INFO,
format='[\033[34m%(asctime)s\033[0m] %(message)s',
datefmt='%Y-%m-%d %H:%M:%S',
handlers=[
logging.StreamHandler(),
logging.FileHandler(f"{logging_dir}/{filename}.txt")
]
)
logger = logging.getLogger(__name__)
else: # dummy logger (does nothing)
logger = logging.getLogger(__name__)
logger.addHandler(logging.NullHandler())
return logger
def get_latest_ckpt(checkpoint_dir):
step_dirs = [d for d in os.listdir(checkpoint_dir) if os.path.isdir(os.path.join(checkpoint_dir, d))]
if len(step_dirs) == 0:
return None
step_dirs = sorted(step_dirs, key=lambda x: int(x))
latest_step_dir = os.path.join(checkpoint_dir, step_dirs[-1])
return latest_step_dir
|