> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coreweave.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 스윕에서 맞춤형 CLI 명령어를 사용하려면 어떻게 해야 하나요?

트레이닝 설정에서 명령줄 인수를 전달하는 경우 W\&B Sweeps를 맞춤형 CLI 명령어와 함께 사용할 수 있습니다. 이렇게 하면 스크립트가 인수를 처리하는 방식을 바꾸지 않고도, 특정 CLI 플래그를 받도록 이미 작성된 기존 트레이닝 스크립트로 스윕을 실행할 수 있습니다.

다음 예시는 Bash 터미널에서 `train.py`라는 Python 스크립트로 트레이닝을 실행하면서 스크립트가 파싱할 값을 전달하는 방법을 보여줍니다.

```bash theme={"system"}
/usr/bin/env python train.py -b \
    your-training-config \
    --batchsize 8 \
    --lr 0.00001
```

스윕에서 해당 호출을 재현하려면 스윕 에이전트가 동일한 명령줄을 구성하도록 스윕 설정 YAML 파일의 `command` 키를 수정하세요. 앞의 예시를 기준으로 하면 설정은 다음과 같습니다.

```yaml theme={"system"}
program:
  train.py
method: grid
parameters:
  batch_size:
    value: 8
  lr:
    value: 0.0001
command:
  - ${env}
  - python
  - ${program}
  - "-b"
  - your-training-config
  - ${args}
```

`${args}` 키는 스윕 설정의 모든 매개변수로 확장되며, `argparse`에서 사용할 수 있도록 `--param1 value1 --param2 value2` 형식으로 변환됩니다.

스크립트가 `argparse`에서 처리하지 않는 추가 인수를 받는 경우, 인식되지 않는 플래그 때문에 파서가 실패하지 않도록 `parse_known_args`를 사용하세요.

```python theme={"system"}
parser = argparse.ArgumentParser()
args, unknown = parser.parse_known_args()
```

> [!NOTE]
>
> 환경에 따라 `python`이 Python 2를 가리킬 수 있습니다. Python 3를 실행하려면 `command` 설정에서 `python3`를 사용하세요.
>
> ```yaml theme={"system"}
> program:
>   script.py
> command:
>   - ${env}
>   - python3
>   - ${program}
>   - ${args}
> ```

***

[Sweeps](https://docs.coreweave.com/ko/support/models/tags/sweeps.md)
