환경 템플리트 사용자 정의 예제
환경 템플리트를 작성할 때 Python 및 R에 제공된 템플리트를 사용하여 conda 또는 pip를 통해 사용자 정의 라이브러리를 추가하는 방법에 대한 예제를 따를 수 있습니다.
다음 예제에서는 conda와 함께 mamba를 사용할 수 있다. mamba 에서 기존 환경 템플리트로 채널 또는 패키지를 추가하는 경우 mamba 에서 설치할 선택란을 선택하는 것을 잊지 마십시오.
다음에 대한 예가 있습니다.
힌트와 팁:
conda 패키지 추가
pandas-profiling의 최신 버전을 얻으려면 다음을 수행하십시오.
dependencies:
- pandas-profiling
이는 노트북에서 conda install pandas-profiling
을(를) 실행하는 것과 같습니다.
pip 패키지 추가
또한 conda 채널에서 특정 패키지를 사용할 수 없는 경우 pip
을(를) 사용하여 환경을 사용자 정의할 수도 있습니다.
dependencies:
- pip:
- ibm-watson-machine-learning
이는 노트북에서 pip install ibm-watson-machine-learning
을(를) 실행하는 것과 같습니다.
사용자 정의는 실제로 지정된 pip
패키지를 설치하는 것 이상의 작업을 수행합니다. conda
의 기본 동작은 또한 pip
자체의 새 버전을 찾은 후 설치하는 것입니다. conda
의 모든 내재적 종속성을 확인하는 데에는 종종 몇 분의 시간과 기가바이트의 메모리가 소요됩니다. 다음 사용자 정의는 pip
설치를 단축합니다.
channels:
- empty
- nodefaults
dependencies:
- pip:
- ibm-watson-machine-learning
empty
conda 채널은 패키지를 제공하지 않습니다. 특히 pip
패키지가 없습니다. conda
는 pip
를 설치하려고 하지 않으며 대신 이미 사전 설치된 버전을 사용합니다. 채널 목록의 키워드 nodefaults
에는 목록에 있는 다른 채널이 하나 이상 필요합니다. 그렇지 않으면 conda
이(가) 자동으로 키워드를 무시하고 기본 채널을 사용합니다.
conda 및 pip 패키지 결합
행당 하나의 패키지를 갖는 다중 패키지를 나열할 수 있습니다. 단일 사용자 정의가 conda 패키지와 pip 패키지를 둘 다 가질 수 있습니다.
dependencies:
- pandas-profiling
- scikit-learn=0.20
- pip:
- watson-machine-learning-client-V4
- sklearn-pandas==1.8.0
필수 템플리트 표기법은 선행 공백에 민감함을 주의하십시오. conda 패키지의 목록에 있는 각 항목은 2개의 선행 공백을 가져야 합니다. pip 패키지의 목록에 있는 각 항목은 4개의 선행 공백을 가져야 합니다. conda 패키지의 버전은 단일 등호 기호(=
)를 사용하여 지정해야 하며, 두 개의 등호 기호(==
)를 사용하여 pip 패키지의 버전을 추가해야 합니다.
내부 종속 항목을 갖는 복합 패키지 추가
많은 패키지 또는 많은 내부 종속 항목을 갖는 복합 패키지를 추가할 때, conda 설치가 오래 걸리거나 심지어 오류 메시지를 표시하지 않고 중지할 수도 있습니다. 이를 방지하려면 다음을 수행하십시오.
- 추가하려는 패키지의 버전을 지정하십시오. 이것은 conda가 종속성을 해결하기 위한 검색 영역을 줄입니다.
- 환경의 메모리 크기를 늘리십시오.
.condarc
파일에 정의된 기본 conda 채널 대신 특정 채널을 사용하십시오. 그러면 큰 채널을 통한 긴 검색 실행을 피하게 해줍니다.
기본 conda 채널을 사용하지 않는 사용자 정의 예:
# get latest version of the prophet package from the conda-forge channel
channels:
- conda-forge
- nodefaults
dependencies:
- prophet
이 사용자 정의는 노트북에서 다음 명령에 해당합니다.
!conda install -c conda-forge --override-channels prophet -y
R 노트북용 conda 패키지 추가
다음 예는 R 노트북에서 사용할 conda 패키지를 추가하는 사용자 정의를 작성하는 방법을 보여줍니다.
channels:
- defaults
dependencies:
- r-plotly
이 사용자 정의는 노트북에서 다음 명령에 해당합니다.
print(system("conda install r-plotly", intern=TRUE))
conda에 있는 R 패키지의 이름은 일반적으로 r-
접두부로 시작합니다. 사용자 정의에서 plotly
을(를) 사용하는 경우에는 설치에 성공하지만 R 패키지 대신 Python 패키지가 설치됩니다. 그런 다음 library(plotly)
에서와 같이 R 코드에서 패키지를 사용하려고 하면 오류가 리턴됩니다.
환경 변수 설정
다음 예제에 표시된 대로 소프트웨어 사용자 정의 템플리트에 변수 섹션을 추가하여 환경에서 환경 변수를 설정할 수 있습니다.
variables:
my_var: my_value
HTTP_PROXY: https://myproxy:3128
HTTPS_PROXY: https://myproxy:3128
NO_PROXY: cluster.local
또한 이 예제에서는 변수 섹션을 사용하여 환경에 대한 프록시 서버를 설정할 수 있음을 보여줍니다.
제한사항: 기존 환경 변수 (예: LD_LIBRARY_PATH) 를 이 접근 방식을 사용하여 대체할 수 없습니다.
우수 사례
패키지 찾기 또는 충돌하는 종속 항목 해결이 발생할 수 있는 문제점을 피하기 위해, 테스트 환경에서 노트북을 통해 수동으로 필요한 패키지를 설치하여 시작하십시오. 그러면 패키지를 오류 없이 설치할 수 있는 경우 대화식으로 검사할 수 있습니다. 패키지가 모두 올바르게 설치되었음을 확인한 후, 개발 또는 프로덕션 환경을 위한 사용자 정의를 작성하고 해당 패키지를 사용자 정의 템플리트에 추가하십시오.
상위 주제: 환경 사용자 정의