Huggingface의 Accelerate으로 분산학습을 할 때 logger는 accelerate.logging.get_logger() 을 쓰게 되는데, 파라미터로 name:str만 있다. 파일 경로를 설정해주는 파라미터가 없는 것인데, 사실 accelerate.logging.get_logger()의 소스코드를 살펴보면 일반 라이브러리 logging.getLogger()을 호출한다는 것을 알 수 있다.
허깅페이스 accelerate.logging.get_logger() 소스코드 링크:
https://github.com/huggingface/accelerate/blob/main/src/accelerate/logging.py#L46
따라서 일반적인 logging을 사용할 때와 마찬가지로 사전에 logging.basicConfig()을 설정해준 후 accelerate.logging.get_logger()을 사용하면 log file이 지정해준 경로에 제대로 저장된다.
import logging
from accelerate.logging import get_logger
logging.basicConfig(filename='/path/to/log', level=logging.INFO)
logger = get_logger(__name__)