पाइप आवश्यकताओं के साथ conda environment.yml का संयोजन


107

मैं कोंडा वातावरण के साथ काम करता हूं और कुछ पाइप पैकेजों की जरूरत है, जैसे ~ गोहलके पहले से संकलित पहिए ।

फिलहाल मेरे पास दो फाइलें हैं: environment.ymlकंडा के लिए:

# run: conda env create --file environment.yml
name: test-env
dependencies:
- python>=3.5
- anaconda

और requirements.txtपाइप के लिए जिसका उपयोग कोंडा पर्यावरण के ऊपर सक्रिय करने के बाद किया जा सकता है:

# run: pip install -i requirements.txt
docx
gooey
http://www.lfd.uci.edu/~gohlke/pythonlibs/bofhrmxk/opencv_python-3.1.0-cp35-none-win_amd64.whl

क्या उन्हें एक फ़ाइल (कोंडा के लिए) में संयोजित करने की संभावना है?


2
Conda में आवश्यकताओं का उपयोग करने के लिए GitHub पुल अनुरोध है। github.com/conda/conda-env/pull/172
OneCricketeer

3
conda env exportवर्तमान में स्थापित पैकेजों के आधार पर .yml के लिए पाठ उत्पन्न करेगा।
केनी

जवाबों:


132

पिप निर्भरता को environment.ymlइस तरह फ़ाइल में शामिल किया जा सकता है ( डॉक्स ):

# run: conda env create --file environment.yml
name: test-env
dependencies:
- python>=3.5
- anaconda
- pip
- pip:
  # works for regular pip packages
  - docx
  - gooey
  # and for wheels
  - http://www.lfd.uci.edu/~gohlke/pythonlibs/bofhrmxk/opencv_python-3.1.0-cp35-none-win_amd64.whl

यह .whlसमान निर्देशिका में फ़ाइलों के लिए भी काम करता है ( डेंगर का उत्तर देखें ) और साथ ही साथ आम पाइप पैकेज भी।


3
इसने अच्छा किया! conda env create -f environment.yml, और environment.ymlफ़ाइल को वर्तमान निर्देशिका में होना चाहिए, अन्यथा, इसे अजीब तरह से त्रुटियों को फेंक दिया जाएगा।
जॉनी झांग

40

एक भी requirements.txtYAML में सीधे उपयोग कर सकते हैं । उदाहरण के लिए,

name: test-env
dependencies:
  - python>=3.5
  - anaconda
  - pip
  - pip:
    - -r file:requirements.txt

मूल रूप से, आपके द्वारा चलाए जा सकने वाला कोई भी विकल्प किसीpip install YAML में चल सकता है। अन्य क्षमताओं के प्रदर्शन के लिए उन्नत पिप उदाहरण देखें ।


क्या -rमतलब है? पाइप की कमांड लाइन के विकल्प ( यहां ) को देखते हुए ऐसा नहीं है, -rइसलिए यह जानना उपयोगी होगा कि यह कहां से है (और यदि एक --लंबा-
चौड़ा

3
मिला, मुझे यहांpip install विकल्पों पर गौर करना चाहिए था । आवश्यकता फ़ाइल के लिए है और लंबा समकक्ष है-r--requirement
डम्बलड

वहाँ एक तरीका है conda बिना YAML का उपयोग करने के लिए? या आवश्यकताओं फ़ाइल में हम चाहते हैं अजगर का संस्करण निर्दिष्ट करें?
1813 में Mez13

@ Mez13 कृपया एक नया प्रश्न पूछें।
मर्व

13

बस जोड़ना चाहते हैं कि निर्देशिका में एक पहिया जोड़ना भी काम करता है। संपूर्ण URL का उपयोग करते समय मुझे यह त्रुटि मिली थी:

HTTP error 404 while getting http://www.lfd.uci.edu/~gohlke/pythonlibs/f9r7rmd8/opencv_python-3.1.0-cp35-none-win_amd64.whl

पहिया को डाउनलोड करने और yml फ़ाइल के समान निर्देशिका में सहेजने का समर्थन किया।

name: test-env
dependencies:
- python>=3.5
- anaconda
- pip
- pip:
  - opencv_python-3.1.0-cp35-none-win_amd64.whl

2
मैंने उपरोक्त उत्तर में इसका उल्लेख किया है।
bastelflp
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.