설정 그룹에서 여러 개 고르기 — 선택지 조합 패턴
설정 그룹에서 여러 개 고르기 — 선택지 조합 패턴
Hydra의 defaults는 보통 설정 그룹(config group)에서 하나를 골라요. 그런데 가끔은 하나의 그룹에서 여러 개를 동시에 선택해야 할 때가 있어요. 예를 들어 "이 모델을 두 데이터셋으로 각각 실험"하고 싶은 경우죠. Hydra는 이런 다중 선택을 위한 패턴을 제공해요.
출처: https://hydra.cc/docs/patterns/select_multiple_configs_from_config_group/
하나만 고르는 기본 문법
먼저 하나만 고르는 기본부터요.
defaults:
- fruits: apple
conf/fruits/apple.yaml에 apple의 설정이 들어 있어요.
여러 개 고르기
설정 그룹에서 여러 개를 고르려면 defaults에 그룹을 여러 번 나열해요.
defaults:
- fruits: apple
- fruits: banana
- server: local
이렇게 하면 fruits 그룹에서 apple과 banana 두 설정이 모두 조합되고, server 그룹에서 local이 조합돼요. 같은 그룹 이름을 여러 번 썼을 때 키 이름(fruits)이 겹칠 수 있는데, 필요하면 한쪽에 마킹을 붙여서 충돌을 피할 수 있어요.
언제 유용한가
이 패턴은 한 실행에서 여러 설정 조각을 함께 실어야 할 때 쓸모가 있어요. 서로 독립적인 "부가 기능"들을 하나의 실행에 켜고 싶을 때, 각각을 다른 그룹으로 나누거나 같은 그룹에서 여러 개를 골라 조합하면 코드 수정 없이 조합을 바꿀 수 있어요.
더 알아보기
defaults 선택과 우선순위에 대한 완전한 규칙은 공식 Advanced defaults list 문서에서 이어서 볼 수 있어요.