google/gin-config

Gin provides a lightweight configuration framework for Python

해결하는 문제

Gin은 복잡한 구성 객체(예: 프로토콜 버퍼)와 지루한 매개변수 전달 코드를 제거합니다. 개발자는 프로젝트 설정과 실험 매개변수를 외부에서 관리할 수 있어 핵심 Python 코드를 깨끗하게 유지하면서 높은 유연성을 유지할 수 있습니다.

작동 방식

Gin은 데코레이터 @gin.configurable를 사용하여 함수와 클래스를 등록합니다. 등록 후 해당 매개변수는 간단한 외부 ".gin" 구성 파일이나 명령줄 인수를 통해 설정하거나 재정의할 수 있습니다. 리터럴 값을 전달하거나, 다른 구성 가능한 함수를 참조하거나, "스코프"를 사용하여 프로그램의 다른 부분에서 동일한 함수에 다른 설정을 적용할 수 있습니다.

대상 사용자

TensorFlow나 PyTorch를 사용하는 등 머신러닝 실험을 수행하는 개발자를 위해 특별히 설계되었습니다. 이러한 프로젝트는 종종 복잡한 계층 구조에 중첩된 많은 매개변수를 포함합니다.

주요 기능

  • 함수와 클래스에 매개변수를 바인딩하는 간단한 구문.
  • 참조를 통해 모듈식 구성 요소를 연결하여 계층적 구성을 지원합니다.
  • 스코프를 사용하면 사용 컨텍스트에 따라 동일한 함수를 다르게 구성할 수 있습니다.
  • 구성된 매개변수 값을 자동으로 기록하고 TensorBoard와 같은 도구와 통합됩니다.
  • 최소한의 코드 변경만 필요: 데코레이터와 단일 파싱 함수 호출만 추가하면 됩니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트