ium/IUM_09.Python_srodowiska.ipynb
Paweł Skórzewski 82bf3f7ec7 Lab. 9
2024-05-15 08:05:24 +02:00

194 KiB
Raw Blame History

Inżynieria uczenia maszynowego

15 maja 2024

9. Środowiska wirtualne

Python Virtual Env

Poniżej stworzymy środowisko w katalogu ./myenv:

$ python3 -m venv myenv

Teraz możemy je aktywować:

$ source ./myenv/bin/activate
(myenv) $ which python
/home/tomek/myenv/bin/python

I modyfikować instalując zależności:

(myenv) $ python3 -m pip install requests

Środowisko możemy deaktywować poprzez:

deactivate

Środowisko można udostępnić kopiując cały katalog ze środowiskiem

pipx

  • pipx: polecenie, które instaluje moduł Pythonowy w odrębnym środowisku wirtualnym venv
  • jednocześnie dodaje powiązane z nim polecenie ("Command line entry point") do zmiennej PATH
  • w ten sposób możemy zainstalować polecenie, które będzie globalnie dostępne a jednocześnie nie będzie "mieszało" w zależnościach modułów Pythonowych. Umożliwia to uniknięcie konfliktów między zależnościami i jednocześnie umożliwia dostęp do polecenia oferowanego przez moduł z poziomu systemu (bez ręcznej aktywacji środowiska)
  • więcej informacji: https://packaging.python.org/guides/installing-stand-alone-command-line-tools/
  • https://github.com/pypa/pipx

Conda

_Package, dependency and environment management for any language—Python, R, Ruby, Lua, Scala, Java, JavaScript, C/ C++, FORTRAN, and more.

Conda umożliwia zarządzanie:

  • środowiskami (jak venv)
  • paczkami i zależnościami (jak pip)

Dokumentacja: https://docs.conda.io/en/latest/

Różnice między Conda a venv (źródło):

  • Dowolna wersja Python w Conda (inna niż systemowa)
  • Conda zarządza też zależnościami innymi niż Pythonowe
  • Paczki w PyPI (używane przez pip) pochodzą od ich autorów. Paczki w conda są  budowane przez conda albo społeczność conda-forge

Dystrybucje: Anaconda i MiniConda

Conda jest dostępna w dwóch dystrybcjach:

  • Miniconda:
    • wymaga 400 MB miejsca na dysku
    • zawiera jedynie podstawowe narzędzia:
      • conda
      • Python
      • pip, zlib
    • pozostałe narzędzia/biblioteki doinstalujemy w miarę potrzeb
  • Anaconda
    • wymaga conajmniej 3 GB miejsca na dysku
    • Zawiera narzędzi GUI Anaconda Navigator (można je doinstalować do Miniconda)
    • zawiera to co Miniconda +:
      • Ponad 1500 preinstalowanych pakietów, głównie "naukowych", m.in.: SciPy, NumPy, Jupyter, scikit-learn, Pandas
    • bezpłatna dla użytkowników indywidualnych, małych firm i orgranizacji non-profit ("Anaconda distribution")
    • płatna dla dużych firm (+200 osób i instytucji rządowych ("Anaconda Proferssional")

Dystrybucje

  • Wersje paczek/bibliotek zawartych w danej dystrybucji są przetestowane pod względem zgodności ze sobą
  • Możemy dokonać zaktualizacji wszystkich pakietów za pomocą polecenia: conda update conda
  • Conda zatroszczy się o to, by rozwiązać potencjalne konflikty wynikające z zależności deklarowanych przez poszczególne biblioteki.
  • Nie zawsze wszystkie biblioteki będą w swoich najnowszych wersjach - mogłoby to powodować problemy z działaniem bibliotek od nich zależnych
  • Podczas aktualizacji niektóre biblioteki mogą zostać "zdowngradowane"
$ conda update conda
Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /home/tomek/miniconda3

  added / updated specs:
    - conda


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    attrs-21.2.0               |     pyhd3eb1b0_0          46 KB
    cffi-1.14.5                |   py39h261ae71_0         226 KB
    chardet-4.0.0              |py39h06a4308_1003         194 KB
    conda-package-handling-1.7.3|   py39h27cfd23_1         884 KB
    cryptography-3.4.7         |   py39hd23ed53_0         906 KB
    decorator-5.0.9            |     pyhd3eb1b0_0          12 KB
    glib-2.68.2                |       h36276a3_0         3.0 MB
    idna-2.10                  |     pyhd3eb1b0_0          52 KB
    jinja2-3.0.0               |     pyhd3eb1b0_0         106 KB
    markupsafe-2.0.1           |   py39h27cfd23_0          22 KB
    notebook-6.4.0             |   py39h06a4308_0         4.1 MB
    pygments-2.9.0             |     pyhd3eb1b0_0         721 KB
    pyopenssl-20.0.1           |     pyhd3eb1b0_1          49 KB
    requests-2.25.1            |     pyhd3eb1b0_0          52 KB
    ruamel_yaml-0.15.100       |   py39h27cfd23_0         260 KB
    tqdm-4.59.0                |     pyhd3eb1b0_1          93 KB
    urllib3-1.26.4             |     pyhd3eb1b0_0         105 KB
    ------------------------------------------------------------
                                           Total:        10.7 MB

The following packages will be REMOVED:

  libedit-3.1.20191231-h14c3975_1
  pip-20.3.1-py39h06a4308_0
  wheel-0.36.1-pyhd3eb1b0_0

The following packages will be UPDATED:

  attrs                                 20.3.0-pyhd3eb1b0_0 --> 21.2.0-pyhd3eb1b0_0
  ca-certificates    conda-forge::ca-certificates-2020.12.~ --> pkgs/main::ca-certificates-2021.4.13-h06a4308_1
  cffi                                1.14.4-py39h261ae71_0 --> 1.14.5-py39h261ae71_0
  chardet                           3.0.4-py39h06a4308_1003 --> 4.0.0-py39h06a4308_1003
  conda              conda-forge::conda-4.10.1-py39hf3d152~ --> pkgs/main::conda-4.10.1-py39h06a4308_1
  conda-package-han~                   1.7.2-py39h27cfd23_1 --> 1.7.3-py39h27cfd23_1
  cryptography                         3.3.1-py39h3c74f83_0 --> 3.4.7-py39hd23ed53_0
  decorator                              5.0.6-pyhd3eb1b0_0 --> 5.0.9-pyhd3eb1b0_0
  glib                                    2.68.1-h36276a3_0 --> 2.68.2-h36276a3_0
  jinja2                                2.11.3-pyhd3eb1b0_0 --> 3.0.0-pyhd3eb1b0_0
  markupsafe                           1.1.1-py39h27cfd23_0 --> 2.0.1-py39h27cfd23_0
  notebook                             6.3.0-py39h06a4308_0 --> 6.4.0-py39h06a4308_0
  pygments                               2.8.1-pyhd3eb1b0_0 --> 2.9.0-pyhd3eb1b0_0
  pyopenssl                             20.0.0-pyhd3eb1b0_1 --> 20.0.1-pyhd3eb1b0_1
  readline                                   8.0-h7b6447c_0 --> 8.1-h27cfd23_0
  requests                              2.25.0-pyhd3eb1b0_0 --> 2.25.1-pyhd3eb1b0_0
  ruamel_yaml                        0.15.80-py39h27cfd23_0 --> 0.15.100-py39h27cfd23_0
  setuptools                          51.0.0-py39h06a4308_2 --> 52.0.0-py39h06a4308_0
  sqlite                                  3.33.0-h62c20be_0 --> 3.35.4-hdfb4753_0
  tqdm                                  4.54.1-pyhd3eb1b0_0 --> 4.59.0-pyhd3eb1b0_1
  tzdata                                   2020d-h14c3975_0 --> 2020f-h52ac0ba_0
  urllib3                                      1.25.11-py_0 --> 1.26.4-pyhd3eb1b0_0

The following packages will be SUPERSEDED by a higher-priority channel:

  certifi            conda-forge::certifi-2020.12.5-py39hf~ --> pkgs/main::certifi-2020.12.5-py39h06a4308_0

The following packages will be DOWNGRADED:

  idna                                            2.10-py_0 --> 2.10-pyhd3eb1b0_0


Proceed ([y]/n)? y

[...]

Instalacja

Instrukcje:

Pakiety Conda

Pakiet (Package) conda to archiwum o rozszerzeniu .tar.bz2 lub .condazawierające:

  • folder lib: biblioteki systemowe, moduły Python

  • folder bin: pliki wykonywalne i wszelkie inne pliki potrzebne to zainstalowania danej zależności

  • metadane w katalogu info/

    Pakiety można:

  • wyszukiwać: conda search pytorch

  • instalować: conda install pytorch

  • tworzyć: conda build hello_world

  • usuwać: conda remove pytorch

Repozytoria i kanały

  • Pakiety mogą być ściągane z różnych kanałów ("channels")
  • Kanały mogą być zdalne albo lokalne
  • Domyślny kanał to https://repo.anaconda.com/pkgs/ - zawiera ponad 7,5 tys pakietów, jest utrzymywany przez Anacondę.
  • Jeśli jakiejś paczki nie ma na oficjalnym kanale, bardzo możliwe, że znajdziemy ją na Conda-forge - kanale utrzymywanym przez społeczność
  • Wyszukiwanie i przeglądanie pakietów: conda i conda-forge

Na przykład, pakiet mlflow nie jest dostępny na oficjalnym kanale:

conda search mlflow
Loading channels: done
No match found for: mlflow. Search: *mlflow*

PackagesNotFoundError: The following packages are not available from current channels:

  - mlflow

Current channels:

  - https://repo.anaconda.com/pkgs/main/linux-64
  - https://repo.anaconda.com/pkgs/main/noarch
  - https://repo.anaconda.com/pkgs/r/linux-64
  - https://repo.anaconda.com/pkgs/r/noarch

To search for alternate channels that may provide the conda package you're
looking for, navigate to

    https://anaconda.org

and use the search bar at the top of the page.



Note: you may need to restart the kernel to use updated packages.

Do poleceń search i install możemy dodać flagę channel co doda podany kanał do listy przeszukiwanych przez to polecenie kanałów:

conda search mlflow --channel conda-forge
Loading channels: done
# Name                       Version           Build  Channel             
mlflow                       0.9.0.1            py_0  conda-forge         
mlflow                         0.9.1            py_0  conda-forge         
mlflow                         1.0.0          py27_0  conda-forge         
mlflow                         1.0.0          py27_1  conda-forge         
mlflow                         1.0.0            py_2  conda-forge         
mlflow                         1.0.0            py_3  conda-forge         
mlflow                         1.1.0            py_0  conda-forge         
mlflow                         1.2.0            py_0  conda-forge         
mlflow                         1.2.0            py_1  conda-forge         
mlflow                         1.3.0          py36_0  conda-forge         
mlflow                         1.3.0          py37_0  conda-forge         
mlflow                         1.4.0          py36_0  conda-forge         
mlflow                         1.4.0          py37_0  conda-forge         
mlflow                         1.4.0          py38_0  conda-forge         
mlflow                         1.5.0          py36_0  conda-forge         
mlflow                         1.5.0          py36_1  conda-forge         
mlflow                         1.5.0          py37_0  conda-forge         
mlflow                         1.5.0          py37_1  conda-forge         
mlflow                         1.5.0          py38_0  conda-forge         
mlflow                         1.5.0          py38_1  conda-forge         
mlflow                         1.6.0          py36_0  conda-forge         
mlflow                         1.6.0          py37_0  conda-forge         
mlflow                         1.6.0          py38_0  conda-forge         
mlflow                         1.7.0          py36_0  conda-forge         
mlflow                         1.7.0          py37_0  conda-forge         
mlflow                         1.7.0          py38_0  conda-forge         
mlflow                         1.7.1  py36h9f0ad1d_0  conda-forge         
mlflow                         1.7.1  py37hc8dfbb8_0  conda-forge         
mlflow                         1.7.1  py38h32f6830_0  conda-forge         
mlflow                         1.7.2  py36h9f0ad1d_0  conda-forge         
mlflow                         1.7.2  py37hc8dfbb8_0  conda-forge         
mlflow                         1.7.2  py38h32f6830_0  conda-forge         
mlflow                         1.8.0  py36h9f0ad1d_0  conda-forge         
mlflow                         1.8.0  py37hc8dfbb8_0  conda-forge         
mlflow                         1.8.0  py38h32f6830_0  conda-forge         
mlflow                         1.9.1  py36h9f0ad1d_0  conda-forge         
mlflow                         1.9.1  py37hc8dfbb8_0  conda-forge         
mlflow                         1.9.1  py38h32f6830_0  conda-forge         
mlflow                        1.10.0  py36h9f0ad1d_0  conda-forge         
mlflow                        1.10.0  py37hc8dfbb8_0  conda-forge         
mlflow                        1.10.0  py38h32f6830_0  conda-forge         
mlflow                        1.11.0  py36h9f0ad1d_0  conda-forge         
mlflow                        1.11.0  py36h9f0ad1d_1  conda-forge         
mlflow                        1.11.0  py37hc8dfbb8_0  conda-forge         
mlflow                        1.11.0  py37hc8dfbb8_1  conda-forge         
mlflow                        1.11.0  py38h32f6830_0  conda-forge         
mlflow                        1.11.0  py38h32f6830_1  conda-forge         
mlflow                        1.12.0  py36h5fab9bb_0  conda-forge         
mlflow                        1.12.0  py37h89c1867_0  conda-forge         
mlflow                        1.12.0  py38h578d9bd_0  conda-forge         
mlflow                        1.12.1  py36h5fab9bb_0  conda-forge         
mlflow                        1.12.1  py37h89c1867_0  conda-forge         
mlflow                        1.12.1  py38h578d9bd_0  conda-forge         
mlflow                          1.13  py36h5fab9bb_0  conda-forge         
mlflow                          1.13  py37h89c1867_0  conda-forge         
mlflow                          1.13  py38h578d9bd_0  conda-forge         
mlflow                        1.13.1  py36h5fab9bb_0  conda-forge         
mlflow                        1.13.1  py36h5fab9bb_2  conda-forge         
mlflow                        1.13.1  py36hd000896_2  conda-forge         
mlflow                        1.13.1  py37h89c1867_0  conda-forge         
mlflow                        1.13.1  py37h89c1867_2  conda-forge         
mlflow                        1.13.1  py38h578d9bd_0  conda-forge         
mlflow                        1.13.1  py38h578d9bd_2  conda-forge         
mlflow                        1.13.1  py39hf3d152e_2  conda-forge         
mlflow                        1.14.0  py36h24e63a9_1  conda-forge         
mlflow                        1.14.0  py36h5fab9bb_0  conda-forge         
mlflow                        1.14.0  py36h87b8279_1  conda-forge         
mlflow                        1.14.0  py36hd000896_0  conda-forge         
mlflow                        1.14.0  py37h02d9ccd_1  conda-forge         
mlflow                        1.14.0  py37h89c1867_0  conda-forge         
mlflow                        1.14.0  py38h578d9bd_0  conda-forge         
mlflow                        1.14.0  py38he918c71_1  conda-forge         
mlflow                        1.14.0  py39ha39b057_1  conda-forge         
mlflow                        1.14.0  py39hf3d152e_0  conda-forge         
mlflow                        1.14.1  py36h24e63a9_0  conda-forge         
mlflow                        1.14.1  py36h87b8279_0  conda-forge         
mlflow                        1.14.1  py37h02d9ccd_0  conda-forge         
mlflow                        1.14.1  py38he918c71_0  conda-forge         
mlflow                        1.14.1  py39ha39b057_0  conda-forge         
mlflow                        1.15.0  py36h24e63a9_0  conda-forge         
mlflow                        1.15.0  py36h87b8279_0  conda-forge         
mlflow                        1.15.0  py37h02d9ccd_0  conda-forge         
mlflow                        1.15.0  py38he918c71_0  conda-forge         
mlflow                        1.15.0  py39ha39b057_0  conda-forge         
mlflow                        1.16.0  py36h24e63a9_0  conda-forge         
mlflow                        1.16.0  py36h87b8279_0  conda-forge         
mlflow                        1.16.0  py37h02d9ccd_0  conda-forge         
mlflow                        1.16.0  py38he918c71_0  conda-forge         
mlflow                        1.16.0  py39ha39b057_0  conda-forge         
mlflow                        1.17.0  py36h24e63a9_0  conda-forge         
mlflow                        1.17.0  py36h24e63a9_1  conda-forge         
mlflow                        1.17.0  py36h87b8279_0  conda-forge         
mlflow                        1.17.0  py36h87b8279_1  conda-forge         
mlflow                        1.17.0  py37h02d9ccd_0  conda-forge         
mlflow                        1.17.0  py37h02d9ccd_1  conda-forge         
mlflow                        1.17.0  py38he918c71_0  conda-forge         
mlflow                        1.17.0  py38he918c71_1  conda-forge         
mlflow                        1.17.0  py39ha39b057_0  conda-forge         
mlflow                        1.17.0  py39ha39b057_1  conda-forge         

Note: you may need to restart the kernel to use updated packages.

Możemy dodać kanał conda-forge tak, żeby był używany automatycznie (bez podawania flagi channel):

conda config --add channels conda-forge
Warning: 'conda-forge' already in 'channels' list, moving to the top

Note: you may need to restart the kernel to use updated packages.

Polecanie conda info pokaże nam m.in. używane domyślnie kanały. Możem dodawać i usuwać kanały oraz zmieniać ich kolejność (priorytet) edytując plik ~/.condarc

conda info
     active environment : base
    active env location : /home/tomek/miniconda3
            shell level : 1
       user config file : /home/tomek/.condarc
 populated config files : /home/tomek/.condarc
          conda version : 4.10.1
    conda-build version : not installed
         python version : 3.9.1.final.0
       virtual packages : __cuda=11.2=0
                          __linux=5.4.0=0
                          __glibc=2.31=0
                          __unix=0=0
                          __archspec=1=x86_64
       base environment : /home/tomek/miniconda3  (writable)
      conda av data dir : /home/tomek/miniconda3/etc/conda
  conda av metadata url : https://repo.anaconda.com/pkgs/main
           channel URLs : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /home/tomek/miniconda3/pkgs
                          /home/tomek/.conda/pkgs
       envs directories : /home/tomek/miniconda3/envs
                          /home/tomek/.conda/envs
               platform : linux-64
             user-agent : conda/4.10.1 requests/2.25.1 CPython/3.9.1 Linux/5.4.0-73-generic ubuntu/20.04.2 glibc/2.31
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False


Note: you may need to restart the kernel to use updated packages.

Jak widać, po dodaniu kanału conda-forge, pakiet mlflow zostaje znaleziony:

conda search mlflow
Loading channels: done
# Name                       Version           Build  Channel             
mlflow                       0.9.0.1            py_0  conda-forge         
mlflow                         0.9.1            py_0  conda-forge         
mlflow                         1.0.0          py27_0  conda-forge         
mlflow                         1.0.0          py27_1  conda-forge         
mlflow                         1.0.0            py_2  conda-forge         
mlflow                         1.0.0            py_3  conda-forge         
mlflow                         1.1.0            py_0  conda-forge         
mlflow                         1.2.0            py_0  conda-forge         
mlflow                         1.2.0            py_1  conda-forge         
mlflow                         1.3.0          py36_0  conda-forge         
mlflow                         1.3.0          py37_0  conda-forge         
mlflow                         1.4.0          py36_0  conda-forge         
mlflow                         1.4.0          py37_0  conda-forge         
mlflow                         1.4.0          py38_0  conda-forge         
mlflow                         1.5.0          py36_0  conda-forge         
mlflow                         1.5.0          py36_1  conda-forge         
mlflow                         1.5.0          py37_0  conda-forge         
mlflow                         1.5.0          py37_1  conda-forge         
mlflow                         1.5.0          py38_0  conda-forge         
mlflow                         1.5.0          py38_1  conda-forge         
mlflow                         1.6.0          py36_0  conda-forge         
mlflow                         1.6.0          py37_0  conda-forge         
mlflow                         1.6.0          py38_0  conda-forge         
mlflow                         1.7.0          py36_0  conda-forge         
mlflow                         1.7.0          py37_0  conda-forge         
mlflow                         1.7.0          py38_0  conda-forge         
mlflow                         1.7.1  py36h9f0ad1d_0  conda-forge         
mlflow                         1.7.1  py37hc8dfbb8_0  conda-forge         
mlflow                         1.7.1  py38h32f6830_0  conda-forge         
mlflow                         1.7.2  py36h9f0ad1d_0  conda-forge         
mlflow                         1.7.2  py37hc8dfbb8_0  conda-forge         
mlflow                         1.7.2  py38h32f6830_0  conda-forge         
mlflow                         1.8.0  py36h9f0ad1d_0  conda-forge         
mlflow                         1.8.0  py37hc8dfbb8_0  conda-forge         
mlflow                         1.8.0  py38h32f6830_0  conda-forge         
mlflow                         1.9.1  py36h9f0ad1d_0  conda-forge         
mlflow                         1.9.1  py37hc8dfbb8_0  conda-forge         
mlflow                         1.9.1  py38h32f6830_0  conda-forge         
mlflow                        1.10.0  py36h9f0ad1d_0  conda-forge         
mlflow                        1.10.0  py37hc8dfbb8_0  conda-forge         
mlflow                        1.10.0  py38h32f6830_0  conda-forge         
mlflow                        1.11.0  py36h9f0ad1d_0  conda-forge         
mlflow                        1.11.0  py36h9f0ad1d_1  conda-forge         
mlflow                        1.11.0  py37hc8dfbb8_0  conda-forge         
mlflow                        1.11.0  py37hc8dfbb8_1  conda-forge         
mlflow                        1.11.0  py38h32f6830_0  conda-forge         
mlflow                        1.11.0  py38h32f6830_1  conda-forge         
mlflow                        1.12.0  py36h5fab9bb_0  conda-forge         
mlflow                        1.12.0  py37h89c1867_0  conda-forge         
mlflow                        1.12.0  py38h578d9bd_0  conda-forge         
mlflow                        1.12.1  py36h5fab9bb_0  conda-forge         
mlflow                        1.12.1  py37h89c1867_0  conda-forge         
mlflow                        1.12.1  py38h578d9bd_0  conda-forge         
mlflow                          1.13  py36h5fab9bb_0  conda-forge         
mlflow                          1.13  py37h89c1867_0  conda-forge         
mlflow                          1.13  py38h578d9bd_0  conda-forge         
mlflow                        1.13.1  py36h5fab9bb_0  conda-forge         
mlflow                        1.13.1  py36h5fab9bb_2  conda-forge         
mlflow                        1.13.1  py36hd000896_2  conda-forge         
mlflow                        1.13.1  py37h89c1867_0  conda-forge         
mlflow                        1.13.1  py37h89c1867_2  conda-forge         
mlflow                        1.13.1  py38h578d9bd_0  conda-forge         
mlflow                        1.13.1  py38h578d9bd_2  conda-forge         
mlflow                        1.13.1  py39hf3d152e_2  conda-forge         
mlflow                        1.14.0  py36h24e63a9_1  conda-forge         
mlflow                        1.14.0  py36h5fab9bb_0  conda-forge         
mlflow                        1.14.0  py36h87b8279_1  conda-forge         
mlflow                        1.14.0  py36hd000896_0  conda-forge         
mlflow                        1.14.0  py37h02d9ccd_1  conda-forge         
mlflow                        1.14.0  py37h89c1867_0  conda-forge         
mlflow                        1.14.0  py38h578d9bd_0  conda-forge         
mlflow                        1.14.0  py38he918c71_1  conda-forge         
mlflow                        1.14.0  py39ha39b057_1  conda-forge         
mlflow                        1.14.0  py39hf3d152e_0  conda-forge         
mlflow                        1.14.1  py36h24e63a9_0  conda-forge         
mlflow                        1.14.1  py36h87b8279_0  conda-forge         
mlflow                        1.14.1  py37h02d9ccd_0  conda-forge         
mlflow                        1.14.1  py38he918c71_0  conda-forge         
mlflow                        1.14.1  py39ha39b057_0  conda-forge         
mlflow                        1.15.0  py36h24e63a9_0  conda-forge         
mlflow                        1.15.0  py36h87b8279_0  conda-forge         
mlflow                        1.15.0  py37h02d9ccd_0  conda-forge         
mlflow                        1.15.0  py38he918c71_0  conda-forge         
mlflow                        1.15.0  py39ha39b057_0  conda-forge         
mlflow                        1.16.0  py36h24e63a9_0  conda-forge         
mlflow                        1.16.0  py36h87b8279_0  conda-forge         
mlflow                        1.16.0  py37h02d9ccd_0  conda-forge         
mlflow                        1.16.0  py38he918c71_0  conda-forge         
mlflow                        1.16.0  py39ha39b057_0  conda-forge         
mlflow                        1.17.0  py36h24e63a9_0  conda-forge         
mlflow                        1.17.0  py36h24e63a9_1  conda-forge         
mlflow                        1.17.0  py36h87b8279_0  conda-forge         
mlflow                        1.17.0  py36h87b8279_1  conda-forge         
mlflow                        1.17.0  py37h02d9ccd_0  conda-forge         
mlflow                        1.17.0  py37h02d9ccd_1  conda-forge         
mlflow                        1.17.0  py38he918c71_0  conda-forge         
mlflow                        1.17.0  py38he918c71_1  conda-forge         
mlflow                        1.17.0  py39ha39b057_0  conda-forge         
mlflow                        1.17.0  py39ha39b057_1  conda-forge         

Note: you may need to restart the kernel to use updated packages.

Środowiska (Environments)

  • Podstawową funkcjonalnością, którą zapewnia conda są izolowane środowiska
  • Nie zapewniają one takiego stopnia izolacji co np. Docker, ale ma to swoje zalety
  • Środowisko to tak naprawdę katalog zawierający zbiór bibliotek, plików wykonywalnych i innych zależności
  • Środowiska mogą zawierać różne wersje zarówno modułów Python jak i bibliotek systemowych, plików wykonywalnych (w tym samego Pythona)
  • Domyślne środowisko nazywa się base. Nie powinniśmy go modyfikować a raczej tworzyć nowe środowisko dla każdego zastosowania

Wyświetlanie listy środowisk:

conda info --envs
# conda environments:
#
                         /home/tomek/anaconda3
base                  *  /home/tomek/miniconda3
mlflow-004410b12f95e2e00831a0ba11ee1bfdc29d6f9d     /home/tomek/miniconda3/envs/mlflow-004410b12f95e2e00831a0ba11ee1bfdc29d6f9d
mlflow-503f0c7520a32f054a9d168bd099584a9439de9d     /home/tomek/miniconda3/envs/mlflow-503f0c7520a32f054a9d168bd099584a9439de9d
mlflow-5987e03d4dbaa5faa1a697bb113be9b9bdc39b29     /home/tomek/miniconda3/envs/mlflow-5987e03d4dbaa5faa1a697bb113be9b9bdc39b29


Note: you may need to restart the kernel to use updated packages.

Tworzenie środowiska

Środowisko można utworzyć i skonfigurować interaktywnie, lub z pliku *.yml

conda create --name hello_env -y
Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /home/tomek/miniconda3/envs/hello_env



Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate hello_env
#
# To deactivate an active environment, use
#
#     $ conda deactivate


Note: you may need to restart the kernel to use updated packages.

Aktywacja środowiska

  • Żeby zmodyfikować środowisko albo zacząć z niego korzystać, musimy je aktywować.
  • Aktywacja środowiska polega tak naprawdę na zmianie zmiennych środowiskowych, które mówią programom gdzie szukać ładowanych przez nie bibliotek i plików wykonywalnych, takich jak PATH, PYTHON_PATH itp.
  • Po aktywowaniu środowiska w konsoli zobaczymy jego nazwę dopisaną na początku lini poleceń:
$ conda activate hello_env
(hello_env) tomek@tomek-asus:/home$ python3 --version
Python 3.8.5

Domyślnie wersja pythona będzie taka sama jak systemowa. Żeby deaktywować środowisko, używamy conda deactivate:

$ conda deactivate
python3 --version
Python 3.8.5

Modyfikowanie środowiska

Jeśli chcemy stworzyc środowisko z inną wersją niż systemowa:

conda create -y -n myenv python=3.9
Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /home/tomek/miniconda3/envs/myenv

  added / updated specs:
    - python=3.9


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    ca-certificates-2023.01.10 |       h06a4308_0         120 KB
    libffi-3.4.2               |       h6a678d5_6         136 KB
    libgcc-ng-11.2.0           |       h1234567_1         5.3 MB
    libgomp-11.2.0             |       h1234567_1         474 KB
    libstdcxx-ng-11.2.0        |       h1234567_1         4.7 MB
    ncurses-6.4                |       h6a678d5_0         914 KB
    pip-23.0.1                 |   py39h06a4308_0         2.5 MB
    python-3.9.16              |       h7a1cb2a_2        25.1 MB
    readline-8.2               |       h5eee18b_0         357 KB
    setuptools-66.0.0          |   py39h06a4308_0         1.2 MB
    sqlite-3.41.2              |       h5eee18b_0         1.2 MB
    tk-8.6.12                  |       h1ccaba5_0         3.0 MB
    tzdata-2023c               |       h04d1e81_0         116 KB
    wheel-0.38.4               |   py39h06a4308_0          64 KB
    xz-5.2.10                  |       h5eee18b_1         429 KB
    zlib-1.2.13                |       h5eee18b_0         103 KB
    ------------------------------------------------------------
                                           Total:        45.7 MB

The following NEW packages will be INSTALLED:

  _libgcc_mutex      pkgs/main/linux-64::_libgcc_mutex-0.1-main 
  _openmp_mutex      pkgs/main/linux-64::_openmp_mutex-5.1-1_gnu 
  ca-certificates    pkgs/main/linux-64::ca-certificates-2023.01.10-h06a4308_0 
  ld_impl_linux-64   pkgs/main/linux-64::ld_impl_linux-64-2.38-h1181459_1 
  libffi             pkgs/main/linux-64::libffi-3.4.2-h6a678d5_6 
  libgcc-ng          pkgs/main/linux-64::libgcc-ng-11.2.0-h1234567_1 
  libgomp            pkgs/main/linux-64::libgomp-11.2.0-h1234567_1 
  libstdcxx-ng       pkgs/main/linux-64::libstdcxx-ng-11.2.0-h1234567_1 
  ncurses            pkgs/main/linux-64::ncurses-6.4-h6a678d5_0 
  openssl            pkgs/main/linux-64::openssl-1.1.1t-h7f8727e_0 
  pip                pkgs/main/linux-64::pip-23.0.1-py39h06a4308_0 
  python             pkgs/main/linux-64::python-3.9.16-h7a1cb2a_2 
  readline           pkgs/main/linux-64::readline-8.2-h5eee18b_0 
  setuptools         pkgs/main/linux-64::setuptools-66.0.0-py39h06a4308_0 
  sqlite             pkgs/main/linux-64::sqlite-3.41.2-h5eee18b_0 
  tk                 pkgs/main/linux-64::tk-8.6.12-h1ccaba5_0 
  tzdata             pkgs/main/noarch::tzdata-2023c-h04d1e81_0 
  wheel              pkgs/main/linux-64::wheel-0.38.4-py39h06a4308_0 
  xz                 pkgs/main/linux-64::xz-5.2.10-h5eee18b_1 
  zlib               pkgs/main/linux-64::zlib-1.2.13-h5eee18b_0 



Downloading and Extracting Packages
tzdata-2023c         | 116 KB    |                                       |   0% 
libgcc-ng-11.2.0     | 5.3 MB    |                                       |   0% 

python-3.9.16        | 25.1 MB   |                                       |   0% 


setuptools-66.0.0    | 1.2 MB    |                                       |   0% 



readline-8.2         | 357 KB    |                                       |   0% 




libstdcxx-ng-11.2.0  | 4.7 MB    |                                       |   0% 





ca-certificates-2023 | 120 KB    |                                       |   0% 






xz-5.2.10            | 429 KB    |                                       |   0% 







libffi-3.4.2         | 136 KB    |                                       |   0% 








ncurses-6.4          | 914 KB    |                                       |   0% 









wheel-0.38.4         | 64 KB     |                                       |   0% 










zlib-1.2.13          | 103 KB    |                                       |   0% 











sqlite-3.41.2        | 1.2 MB    |                                       |   0% 












tk-8.6.12            | 3.0 MB    |                                       |   0% 













libgomp-11.2.0       | 474 KB    |                                       |   0% 














tzdata-2023c         | 116 KB    | #####1                                |  14% 

python-3.9.16        | 25.1 MB   |                                       |   0% 


setuptools-66.0.0    | 1.2 MB    | 4                                     |   1% 
libgcc-ng-11.2.0     | 5.3 MB    | 1                                     |   0% 



tzdata-2023c         | 116 KB    | ###############3                      |  42% 

python-3.9.16        | 25.1 MB   |                                       |   0% 


setuptools-66.0.0    | 1.2 MB    | #4                                    |   4% 
libgcc-ng-11.2.0     | 5.3 MB    | 3                                     |   1% 



tzdata-2023c         | 116 KB    | ##############################7       |  83% 

python-3.9.16        | 25.1 MB   | 1                                     |   0% 


setuptools-66.0.0    | 1.2 MB    | ##4                                   |   7% 
libgcc-ng-11.2.0     | 5.3 MB    | 5                                     |   1% 



readline-8.2         | 357 KB    | ########2                             |  22% 

python-3.9.16        | 25.1 MB   | 1                                     |   0% 
libgcc-ng-11.2.0     | 5.3 MB    | 6                                     |   2% 




libstdcxx-ng-11.2.0  | 4.7 MB    | 1                                     |   0% 


tzdata-2023c         | 116 KB    | ##################################### | 100% 
libgcc-ng-11.2.0     | 5.3 MB    | 9                                     |   3% 



readline-8.2         | 357 KB    | #############2                        |  36% 




libstdcxx-ng-11.2.0  | 4.7 MB    | 3                                     |   1% 

python-3.9.16        | 25.1 MB   | 2                                     |   1% 


setuptools-66.0.0    | 1.2 MB    | #####4                                |  15% 
libgcc-ng-11.2.0     | 5.3 MB    | #1                                    |   3% 



readline-8.2         | 357 KB    | ##################2                   |  49% 

python-3.9.16        | 25.1 MB   | 2                                     |   1% 




libstdcxx-ng-11.2.0  | 4.7 MB    | 7                                     |   2% 

python-3.9.16        | 25.1 MB   | 3                                     |   1% 




libstdcxx-ng-11.2.0  | 4.7 MB    | 8                                     |   2% 
libgcc-ng-11.2.0     | 5.3 MB    | #4                                    |   4% 

python-3.9.16        | 25.1 MB   | 3                                     |   1% 


setuptools-66.0.0    | 1.2 MB    | ######9                               |  19% 


setuptools-66.0.0    | 1.2 MB    | #######3                              |  20% 



readline-8.2         | 357 KB    | #######################2              |  63% 




libstdcxx-ng-11.2.0  | 4.7 MB    | 9                                     |   3% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #1                                    |   3% 

python-3.9.16        | 25.1 MB   | 3                                     |   1% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #2                                    |   3% 

python-3.9.16        | 25.1 MB   | 4                                     |   1% 

python-3.9.16        | 25.1 MB   | 4                                     |   1% 
libgcc-ng-11.2.0     | 5.3 MB    | #5                                    |   4% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #3                                    |   4% 



readline-8.2         | 357 KB    | ##########################5           |  72% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #4                                    |   4% 



readline-8.2         | 357 KB    | #############################8        |  81% 


setuptools-66.0.0    | 1.2 MB    | ########8                             |  24% 


setuptools-66.0.0    | 1.2 MB    | #########3                            |  25% 
libgcc-ng-11.2.0     | 5.3 MB    | #8                                    |   5% 
libgcc-ng-11.2.0     | 5.3 MB    | #9                                    |   5% 
libgcc-ng-11.2.0     | 5.3 MB    | ##                                    |   6% 

python-3.9.16        | 25.1 MB   | 4                                     |   1% 

python-3.9.16        | 25.1 MB   | 4                                     |   1% 



readline-8.2         | 357 KB    | ###############################5      |  85% 

python-3.9.16        | 25.1 MB   | 5                                     |   1% 


setuptools-66.0.0    | 1.2 MB    | #########8                            |  27% 


setuptools-66.0.0    | 1.2 MB    | ##########3                           |  28% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #7                                    |   5% 



readline-8.2         | 357 KB    | ##################################8   |  94% 

python-3.9.16        | 25.1 MB   | 5                                     |   2% 
libgcc-ng-11.2.0     | 5.3 MB    | ##1                                   |   6% 



readline-8.2         | 357 KB    | ##################################### | 100% 



readline-8.2         | 357 KB    | ##################################### | 100% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##                                    |   6% 

python-3.9.16        | 25.1 MB   | 6                                     |   2% 
libgcc-ng-11.2.0     | 5.3 MB    | ##8                                   |   8% 
libgcc-ng-11.2.0     | 5.3 MB    | ###1                                  |   8% 
libgcc-ng-11.2.0     | 5.3 MB    | ###2                                  |   9% 
libgcc-ng-11.2.0     | 5.3 MB    | ###3                                  |   9% 

python-3.9.16        | 25.1 MB   | 6                                     |   2% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##7                                   |   7% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###                                   |   8% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###4                                  |   9% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###5                                  |  10% 


setuptools-66.0.0    | 1.2 MB    | ###########3                          |  31% 





ca-certificates-2023 | 120 KB    | ####9                                 |  13% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###9                                  |  11% 

python-3.9.16        | 25.1 MB   | 6                                     |   2% 





ca-certificates-2023 | 120 KB    | ##################################5   |  93% 





ca-certificates-2023 | 120 KB    | ##################################### | 100% 

python-3.9.16        | 25.1 MB   | 7                                     |   2% 


setuptools-66.0.0    | 1.2 MB    | #############3                        |  36% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ####                                  |  11% 


setuptools-66.0.0    | 1.2 MB    | #############8                        |  37% 

python-3.9.16        | 25.1 MB   | 8                                     |   2% 


setuptools-66.0.0    | 1.2 MB    | ##############2                       |  39% 

python-3.9.16        | 25.1 MB   | 8                                     |   2% 


setuptools-66.0.0    | 1.2 MB    | ##############7                       |  40% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ####1                                 |  11% 

python-3.9.16        | 25.1 MB   | 8                                     |   2% 


setuptools-66.0.0    | 1.2 MB    | ###############7                      |  43% 






xz-5.2.10            | 429 KB    | #3                                    |   4% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ####3                                 |  12% 


setuptools-66.0.0    | 1.2 MB    | #################2                    |  47% 


setuptools-66.0.0    | 1.2 MB    | ####################2                 |  55% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ####5                                 |  12% 






xz-5.2.10            | 429 KB    | ##7                                   |   7% 


setuptools-66.0.0    | 1.2 MB    | ########################6             |  67% 

python-3.9.16        | 25.1 MB   | 8                                     |   2% 


setuptools-66.0.0    | 1.2 MB    | #############################5        |  80% 






xz-5.2.10            | 429 KB    | ####1                                 |  11% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ####6                                 |  13% 


setuptools-66.0.0    | 1.2 MB    | ##################################9   |  95% 







libffi-3.4.2         | 136 KB    | ####3                                 |  12% 






xz-5.2.10            | 429 KB    | #####5                                |  15% 

python-3.9.16        | 25.1 MB   | 9                                     |   2% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ####8                                 |  13% 








ncurses-6.4          | 914 KB    | 6                                     |   2% 

python-3.9.16        | 25.1 MB   | 9                                     |   3% 






xz-5.2.10            | 429 KB    | ########2                             |  22% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ####9                                 |  13% 


setuptools-66.0.0    | 1.2 MB    | ##################################### | 100% 

python-3.9.16        | 25.1 MB   | 9                                     |   3% 








ncurses-6.4          | 914 KB    | ######################6               |  61% 






xz-5.2.10            | 429 KB    | ############4                         |  34% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #####1                                |  14% 







libffi-3.4.2         | 136 KB    | ##################################### | 100% 







libffi-3.4.2         | 136 KB    | ##################################### | 100% 

python-3.9.16        | 25.1 MB   | 9                                     |   3% 






xz-5.2.10            | 429 KB    | ###############1                      |  41% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #####2                                |  14% 









wheel-0.38.4         | 64 KB     | #########3                            |  25% 

python-3.9.16        | 25.1 MB   | #                                     |   3% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #####4                                |  15% 






xz-5.2.10            | 429 KB    | #################9                    |  48% 










zlib-1.2.13          | 103 KB    | #####7                                |  15% 











sqlite-3.41.2        | 1.2 MB    | 4                                     |   1% 








ncurses-6.4          | 914 KB    | ##################################### | 100% 

python-3.9.16        | 25.1 MB   | #                                     |   3% 






xz-5.2.10            | 429 KB    | ###########################5          |  75% 











sqlite-3.41.2        | 1.2 MB    | ####9                                 |  13% 









wheel-0.38.4         | 64 KB     | ##################################### | 100% 









wheel-0.38.4         | 64 KB     | ##################################### | 100% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #####7                                |  16% 

python-3.9.16        | 25.1 MB   | #                                     |   3% 











sqlite-3.41.2        | 1.2 MB    | #########8                            |  27% 






xz-5.2.10            | 429 KB    | ###############################7      |  86% 










zlib-1.2.13          | 103 KB    | ##################################### | 100% 










zlib-1.2.13          | 103 KB    | ##################################### | 100% 











sqlite-3.41.2        | 1.2 MB    | ##############7                       |  40% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ######                                |  16% 

python-3.9.16        | 25.1 MB   | #1                                    |   3% 






xz-5.2.10            | 429 KB    | ###################################8  |  97% 











sqlite-3.41.2        | 1.2 MB    | ###################7                  |  53% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ######1                               |  17% 











sqlite-3.41.2        | 1.2 MB    | ########################6             |  67% 

python-3.9.16        | 25.1 MB   | #1                                    |   3% 






xz-5.2.10            | 429 KB    | ##################################### | 100% 












tk-8.6.12            | 3.0 MB    | 1                                     |   1% 











sqlite-3.41.2        | 1.2 MB    | #############################5        |  80% 












tk-8.6.12            | 3.0 MB    | 5                                     |   2% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ######4                               |  17% 

python-3.9.16        | 25.1 MB   | #1                                    |   3% 












tk-8.6.12            | 3.0 MB    | 9                                     |   3% 











sqlite-3.41.2        | 1.2 MB    | ##################################    |  92% 

python-3.9.16        | 25.1 MB   | #1                                    |   3% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ######6                               |  18% 












tk-8.6.12            | 3.0 MB    | #5                                    |   4% 













libgomp-11.2.0       | 474 KB    | #2                                    |   3% 











sqlite-3.41.2        | 1.2 MB    | ##################################### | 100% 

python-3.9.16        | 25.1 MB   | #1                                    |   3% 













libgomp-11.2.0       | 474 KB    | #############7                        |  37% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ######9                               |  19% 












tk-8.6.12            | 3.0 MB    | ##1                                   |   6% 













libgomp-11.2.0       | 474 KB    | ##########################2           |  71% 

python-3.9.16        | 25.1 MB   | #2                                    |   3% 












tk-8.6.12            | 3.0 MB    | ##6                                   |   7% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #######1                              |  19% 

python-3.9.16        | 25.1 MB   | #2                                    |   3% 














pip-23.0.1           | 2.5 MB    | 2                                     |   1% 












tk-8.6.12            | 3.0 MB    | ###2                                  |   9% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #######3                              |  20% 













libgomp-11.2.0       | 474 KB    | ##################################### | 100% 














pip-23.0.1           | 2.5 MB    | ##2                                   |   6% 

python-3.9.16        | 25.1 MB   | #2                                    |   3% 












tk-8.6.12            | 3.0 MB    | ###8                                  |  10% 














pip-23.0.1           | 2.5 MB    | ####5                                 |  12% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #######6                              |  21% 

python-3.9.16        | 25.1 MB   | #2                                    |   3% 












tk-8.6.12            | 3.0 MB    | ####3                                 |  12% 














pip-23.0.1           | 2.5 MB    | ######6                               |  18% 

python-3.9.16        | 25.1 MB   | #3                                    |   4% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #######8                              |  21% 












tk-8.6.12            | 3.0 MB    | ####9                                 |  13% 














pip-23.0.1           | 2.5 MB    | ########6                             |  23% 

python-3.9.16        | 25.1 MB   | #3                                    |   4% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ########1                             |  22% 












tk-8.6.12            | 3.0 MB    | #####5                                |  15% 














pip-23.0.1           | 2.5 MB    | ##########7                           |  29% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ########3                             |  23% 

python-3.9.16        | 25.1 MB   | #3                                    |   4% 












tk-8.6.12            | 3.0 MB    | ######1                               |  17% 














pip-23.0.1           | 2.5 MB    | ############5                         |  34% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ########6                             |  23% 

python-3.9.16        | 25.1 MB   | #4                                    |   4% 














pip-23.0.1           | 2.5 MB    | ##############6                       |  40% 












tk-8.6.12            | 3.0 MB    | ######6                               |  18% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ########8                             |  24% 














pip-23.0.1           | 2.5 MB    | ################4                     |  44% 












tk-8.6.12            | 3.0 MB    | #######2                              |  20% 

python-3.9.16        | 25.1 MB   | #4                                    |   4% 














pip-23.0.1           | 2.5 MB    | ##################2                   |  49% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #########1                            |  25% 












tk-8.6.12            | 3.0 MB    | #######8                              |  21% 














pip-23.0.1           | 2.5 MB    | ####################1                 |  54% 

python-3.9.16        | 25.1 MB   | #5                                    |   4% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #########3                            |  25% 












tk-8.6.12            | 3.0 MB    | ########4                             |  23% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #########6                            |  26% 

python-3.9.16        | 25.1 MB   | #5                                    |   4% 














pip-23.0.1           | 2.5 MB    | #####################9                |  59% 












tk-8.6.12            | 3.0 MB    | ########9                             |  24% 














pip-23.0.1           | 2.5 MB    | #######################7              |  64% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #########8                            |  27% 












tk-8.6.12            | 3.0 MB    | #########5                            |  26% 

python-3.9.16        | 25.1 MB   | #6                                    |   4% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##########1                           |  27% 












tk-8.6.12            | 3.0 MB    | ##########1                           |  27% 

python-3.9.16        | 25.1 MB   | #6                                    |   4% 














pip-23.0.1           | 2.5 MB    | #########################6            |  69% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##########3                           |  28% 














pip-23.0.1           | 2.5 MB    | ###########################6          |  75% 












tk-8.6.12            | 3.0 MB    | ##########6                           |  29% 

python-3.9.16        | 25.1 MB   | #7                                    |   5% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##########5                           |  29% 














pip-23.0.1           | 2.5 MB    | #############################2        |  79% 












tk-8.6.12            | 3.0 MB    | ###########2                          |  30% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##########8                           |  29% 

python-3.9.16        | 25.1 MB   | #7                                    |   5% 














pip-23.0.1           | 2.5 MB    | ##############################8       |  83% 












tk-8.6.12            | 3.0 MB    | ############                          |  33% 














pip-23.0.1           | 2.5 MB    | ################################4     |  88% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###########2                          |  30% 

python-3.9.16        | 25.1 MB   | #7                                    |   5% 












tk-8.6.12            | 3.0 MB    | ############6                         |  34% 














pip-23.0.1           | 2.5 MB    | ##################################    |  92% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###########4                          |  31% 












tk-8.6.12            | 3.0 MB    | #############3                        |  36% 

python-3.9.16        | 25.1 MB   | #8                                    |   5% 














pip-23.0.1           | 2.5 MB    | ###################################6  |  96% 












tk-8.6.12            | 3.0 MB    | ##############1                       |  38% 

python-3.9.16        | 25.1 MB   | #8                                    |   5% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###########8                          |  32% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ############1                         |  33% 












tk-8.6.12            | 3.0 MB    | ###############2                      |  41% 

python-3.9.16        | 25.1 MB   | #9                                    |   5% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ############5                         |  34% 














pip-23.0.1           | 2.5 MB    | ##################################### | 100% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #############1                        |  36% 












tk-8.6.12            | 3.0 MB    | ##################3                   |  50% 

python-3.9.16        | 25.1 MB   | ##                                    |   6% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #############6                        |  37% 












tk-8.6.12            | 3.0 MB    | ###################8                  |  54% 

python-3.9.16        | 25.1 MB   | ##1                                   |   6% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##############1                       |  38% 












tk-8.6.12            | 3.0 MB    | #####################2                |  57% 

python-3.9.16        | 25.1 MB   | ##2                                   |   6% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##############7                       |  40% 

python-3.9.16        | 25.1 MB   | ##3                                   |   6% 












tk-8.6.12            | 3.0 MB    | ######################5               |  61% 

python-3.9.16        | 25.1 MB   | ##3                                   |   6% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###############4                      |  42% 












tk-8.6.12            | 3.0 MB    | #######################8              |  65% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###############8                      |  43% 

python-3.9.16        | 25.1 MB   | ##4                                   |   7% 












tk-8.6.12            | 3.0 MB    | #########################2            |  68% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ################3                     |  44% 

python-3.9.16        | 25.1 MB   | ##5                                   |   7% 












tk-8.6.12            | 3.0 MB    | ##########################5           |  72% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ################8                     |  46% 

python-3.9.16        | 25.1 MB   | ##6                                   |   7% 












tk-8.6.12            | 3.0 MB    | ###########################7          |  75% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #################3                    |  47% 

python-3.9.16        | 25.1 MB   | ##7                                   |   7% 












tk-8.6.12            | 3.0 MB    | ############################8         |  78% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #################8                    |  48% 

python-3.9.16        | 25.1 MB   | ##8                                   |   8% 












tk-8.6.12            | 3.0 MB    | #############################8        |  81% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##################3                   |  50% 

python-3.9.16        | 25.1 MB   | ##9                                   |   8% 












tk-8.6.12            | 3.0 MB    | ##############################7       |  83% 

python-3.9.16        | 25.1 MB   | ###                                   |   8% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##################8                   |  51% 












tk-8.6.12            | 3.0 MB    | ###############################7      |  86% 

python-3.9.16        | 25.1 MB   | ###1                                  |   8% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###################3                  |  52% 












tk-8.6.12            | 3.0 MB    | ################################8     |  89% 

python-3.9.16        | 25.1 MB   | ###2                                  |   9% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###################8                  |  54% 












tk-8.6.12            | 3.0 MB    | ##################################3   |  93% 

python-3.9.16        | 25.1 MB   | ###3                                  |   9% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ####################3                 |  55% 












tk-8.6.12            | 3.0 MB    | ###################################5  |  96% 

python-3.9.16        | 25.1 MB   | ###4                                  |   9% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ####################8                 |  56% 












tk-8.6.12            | 3.0 MB    | ####################################6 |  99% 

python-3.9.16        | 25.1 MB   | ###5                                  |   9% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #####################4                |  58% 

python-3.9.16        | 25.1 MB   | ###5                                  |  10% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ######################                |  60% 












tk-8.6.12            | 3.0 MB    | ##################################### | 100% 

python-3.9.16        | 25.1 MB   | ###8                                  |  10% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ######################7               |  62% 

python-3.9.16        | 25.1 MB   | ###9                                  |  11% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #######################6              |  64% 

python-3.9.16        | 25.1 MB   | ####1                                 |  11% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ########################5             |  66% 

python-3.9.16        | 25.1 MB   | ####2                                 |  12% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #########################3            |  69% 

python-3.9.16        | 25.1 MB   | ####4                                 |  12% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##########################2           |  71% 

python-3.9.16        | 25.1 MB   | ####6                                 |  12% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##########################9           |  73% 

python-3.9.16        | 25.1 MB   | ####7                                 |  13% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###########################7          |  75% 

python-3.9.16        | 25.1 MB   | ####9                                 |  13% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ############################4         |  77% 

python-3.9.16        | 25.1 MB   | #####                                 |  14% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #############################2        |  79% 

python-3.9.16        | 25.1 MB   | #####2                                |  14% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #############################9        |  81% 

python-3.9.16        | 25.1 MB   | #####3                                |  14% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##############################6       |  83% 

python-3.9.16        | 25.1 MB   | #####4                                |  15% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###############################4      |  85% 

python-3.9.16        | 25.1 MB   | #####6                                |  15% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ################################1     |  87% 
libgcc-ng-11.2.0     | 5.3 MB    | ###4                                  |   9% 

python-3.9.16        | 25.1 MB   | #####7                                |  16% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #################################     |  89% 
libgcc-ng-11.2.0     | 5.3 MB    | ###5                                  |  10% 

python-3.9.16        | 25.1 MB   | #####9                                |  16% 

python-3.9.16        | 25.1 MB   | ######1                               |  17% 

python-3.9.16        | 25.1 MB   | ######2                               |  17% 




libstdcxx-ng-11.2.0  | 4.7 MB    | #################################7    |  91% 

python-3.9.16        | 25.1 MB   | ######3                               |  17% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##################################3   |  93% 

python-3.9.16        | 25.1 MB   | ######5                               |  18% 
libgcc-ng-11.2.0     | 5.3 MB    | ###6                                  |  10% 

python-3.9.16        | 25.1 MB   | ######6                               |  18% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##################################8   |  94% 

python-3.9.16        | 25.1 MB   | ######7                               |  18% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###################################3  |  96% 

python-3.9.16        | 25.1 MB   | ######8                               |  19% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ###################################8  |  97% 
libgcc-ng-11.2.0     | 5.3 MB    | ###7                                  |  10% 

python-3.9.16        | 25.1 MB   | ######9                               |  19% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ####################################3 |  98% 

python-3.9.16        | 25.1 MB   | #######                               |  19% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ####################################8 | 100% 

python-3.9.16        | 25.1 MB   | #######1                              |  19% 

python-3.9.16        | 25.1 MB   | #######2                              |  20% 
libgcc-ng-11.2.0     | 5.3 MB    | ###8                                  |  11% 




libstdcxx-ng-11.2.0  | 4.7 MB    | ##################################### | 100% 

python-3.9.16        | 25.1 MB   | #######4                              |  20% 

python-3.9.16        | 25.1 MB   | #######6                              |  21% 

python-3.9.16        | 25.1 MB   | #######7                              |  21% 
libgcc-ng-11.2.0     | 5.3 MB    | ####                                  |  11% 

python-3.9.16        | 25.1 MB   | #######8                              |  21% 
libgcc-ng-11.2.0     | 5.3 MB    | ####1                                 |  11% 
libgcc-ng-11.2.0     | 5.3 MB    | ####2                                 |  11% 

python-3.9.16        | 25.1 MB   | ########                              |  22% 
libgcc-ng-11.2.0     | 5.3 MB    | ####3                                 |  12% 

python-3.9.16        | 25.1 MB   | ########1                             |  22% 
libgcc-ng-11.2.0     | 5.3 MB    | ####4                                 |  12% 

python-3.9.16        | 25.1 MB   | ########1                             |  22% 
libgcc-ng-11.2.0     | 5.3 MB    | ####5                                 |  12% 
libgcc-ng-11.2.0     | 5.3 MB    | ####7                                 |  13% 
libgcc-ng-11.2.0     | 5.3 MB    | ####9                                 |  13% 
libgcc-ng-11.2.0     | 5.3 MB    | #####7                                |  16% 

python-3.9.16        | 25.1 MB   | ########7                             |  24% 
libgcc-ng-11.2.0     | 5.3 MB    | #####9                                |  16% 

python-3.9.16        | 25.1 MB   | ########9                             |  24% 
libgcc-ng-11.2.0     | 5.3 MB    | ######1                               |  17% 
libgcc-ng-11.2.0     | 5.3 MB    | ######3                               |  17% 

python-3.9.16        | 25.1 MB   | #########                             |  24% 
libgcc-ng-11.2.0     | 5.3 MB    | ######6                               |  18% 
libgcc-ng-11.2.0     | 5.3 MB    | ######7                               |  18% 
libgcc-ng-11.2.0     | 5.3 MB    | ######8                               |  18% 

python-3.9.16        | 25.1 MB   | #########1                            |  25% 
libgcc-ng-11.2.0     | 5.3 MB    | ######9                               |  19% 
libgcc-ng-11.2.0     | 5.3 MB    | #######                               |  19% 
libgcc-ng-11.2.0     | 5.3 MB    | #######1                              |  19% 

python-3.9.16        | 25.1 MB   | #########1                            |  25% 
libgcc-ng-11.2.0     | 5.3 MB    | #######3                              |  20% 

python-3.9.16        | 25.1 MB   | #########2                            |  25% 
libgcc-ng-11.2.0     | 5.3 MB    | #######5                              |  20% 

python-3.9.16        | 25.1 MB   | #########2                            |  25% 
libgcc-ng-11.2.0     | 5.3 MB    | #######7                              |  21% 

python-3.9.16        | 25.1 MB   | #########3                            |  25% 
libgcc-ng-11.2.0     | 5.3 MB    | ########                              |  22% 

python-3.9.16        | 25.1 MB   | #########3                            |  25% 
libgcc-ng-11.2.0     | 5.3 MB    | ########2                             |  22% 

python-3.9.16        | 25.1 MB   | #########4                            |  25% 
libgcc-ng-11.2.0     | 5.3 MB    | ########4                             |  23% 

python-3.9.16        | 25.1 MB   | #########4                            |  26% 
libgcc-ng-11.2.0     | 5.3 MB    | ########7                             |  24% 

python-3.9.16        | 25.1 MB   | #########5                            |  26% 
libgcc-ng-11.2.0     | 5.3 MB    | #########                             |  25% 

python-3.9.16        | 25.1 MB   | #########6                            |  26% 
libgcc-ng-11.2.0     | 5.3 MB    | #########4                            |  25% 
libgcc-ng-11.2.0     | 5.3 MB    | #########7                            |  26% 

python-3.9.16        | 25.1 MB   | #########7                            |  26% 
libgcc-ng-11.2.0     | 5.3 MB    | ##########                            |  27% 

python-3.9.16        | 25.1 MB   | #########7                            |  26% 

python-3.9.16        | 25.1 MB   | #########8                            |  27% 
libgcc-ng-11.2.0     | 5.3 MB    | ##########4                           |  28% 

python-3.9.16        | 25.1 MB   | #########9                            |  27% 
libgcc-ng-11.2.0     | 5.3 MB    | ##########8                           |  29% 

python-3.9.16        | 25.1 MB   | #########9                            |  27% 
libgcc-ng-11.2.0     | 5.3 MB    | ###########1                          |  30% 

python-3.9.16        | 25.1 MB   | ##########                            |  27% 
libgcc-ng-11.2.0     | 5.3 MB    | ###########4                          |  31% 

python-3.9.16        | 25.1 MB   | ##########1                           |  27% 
libgcc-ng-11.2.0     | 5.3 MB    | ###########7                          |  32% 

python-3.9.16        | 25.1 MB   | ##########1                           |  27% 
libgcc-ng-11.2.0     | 5.3 MB    | ############                          |  32% 

python-3.9.16        | 25.1 MB   | ##########2                           |  28% 
libgcc-ng-11.2.0     | 5.3 MB    | ############2                         |  33% 

python-3.9.16        | 25.1 MB   | ##########2                           |  28% 
libgcc-ng-11.2.0     | 5.3 MB    | ############4                         |  34% 

python-3.9.16        | 25.1 MB   | ##########3                           |  28% 
libgcc-ng-11.2.0     | 5.3 MB    | ############7                         |  35% 

python-3.9.16        | 25.1 MB   | ##########3                           |  28% 
libgcc-ng-11.2.0     | 5.3 MB    | ############9                         |  35% 

python-3.9.16        | 25.1 MB   | ##########3                           |  28% 
libgcc-ng-11.2.0     | 5.3 MB    | #############3                        |  36% 

python-3.9.16        | 25.1 MB   | ##########4                           |  28% 
libgcc-ng-11.2.0     | 5.3 MB    | #############6                        |  37% 

python-3.9.16        | 25.1 MB   | ##########5                           |  28% 
libgcc-ng-11.2.0     | 5.3 MB    | #############9                        |  38% 

python-3.9.16        | 25.1 MB   | ##########6                           |  29% 
libgcc-ng-11.2.0     | 5.3 MB    | ##############3                       |  39% 

python-3.9.16        | 25.1 MB   | ##########6                           |  29% 
libgcc-ng-11.2.0     | 5.3 MB    | ##############8                       |  40% 

python-3.9.16        | 25.1 MB   | ##########7                           |  29% 
libgcc-ng-11.2.0     | 5.3 MB    | ###############2                      |  41% 

python-3.9.16        | 25.1 MB   | ##########8                           |  29% 
libgcc-ng-11.2.0     | 5.3 MB    | ###############5                      |  42% 

python-3.9.16        | 25.1 MB   | ##########9                           |  29% 
libgcc-ng-11.2.0     | 5.3 MB    | ################                      |  43% 

python-3.9.16        | 25.1 MB   | ##########9                           |  30% 
libgcc-ng-11.2.0     | 5.3 MB    | ################4                     |  44% 

python-3.9.16        | 25.1 MB   | ###########                           |  30% 
libgcc-ng-11.2.0     | 5.3 MB    | ################7                     |  45% 

python-3.9.16        | 25.1 MB   | ###########1                          |  30% 
libgcc-ng-11.2.0     | 5.3 MB    | #################                     |  46% 

python-3.9.16        | 25.1 MB   | ###########2                          |  30% 
libgcc-ng-11.2.0     | 5.3 MB    | #################4                    |  47% 

python-3.9.16        | 25.1 MB   | ###########2                          |  30% 
libgcc-ng-11.2.0     | 5.3 MB    | #################7                    |  48% 

python-3.9.16        | 25.1 MB   | ###########3                          |  31% 
libgcc-ng-11.2.0     | 5.3 MB    | ##################                    |  49% 

python-3.9.16        | 25.1 MB   | ###########4                          |  31% 
libgcc-ng-11.2.0     | 5.3 MB    | ##################3                   |  50% 

python-3.9.16        | 25.1 MB   | ###########5                          |  31% 
libgcc-ng-11.2.0     | 5.3 MB    | ##################7                   |  51% 
libgcc-ng-11.2.0     | 5.3 MB    | ##################9                   |  51% 

python-3.9.16        | 25.1 MB   | ###########5                          |  31% 
libgcc-ng-11.2.0     | 5.3 MB    | ###################1                  |  52% 

python-3.9.16        | 25.1 MB   | ###########6                          |  31% 
libgcc-ng-11.2.0     | 5.3 MB    | ###################3                  |  52% 

python-3.9.16        | 25.1 MB   | ###########6                          |  32% 
libgcc-ng-11.2.0     | 5.3 MB    | ###################5                  |  53% 

python-3.9.16        | 25.1 MB   | ###########7                          |  32% 
libgcc-ng-11.2.0     | 5.3 MB    | ###################8                  |  54% 

python-3.9.16        | 25.1 MB   | ###########7                          |  32% 
libgcc-ng-11.2.0     | 5.3 MB    | ####################                  |  54% 

python-3.9.16        | 25.1 MB   | ###########8                          |  32% 
libgcc-ng-11.2.0     | 5.3 MB    | ####################2                 |  55% 

python-3.9.16        | 25.1 MB   | ###########9                          |  32% 
libgcc-ng-11.2.0     | 5.3 MB    | ####################5                 |  56% 

python-3.9.16        | 25.1 MB   | ###########9                          |  32% 
libgcc-ng-11.2.0     | 5.3 MB    | ####################7                 |  56% 

python-3.9.16        | 25.1 MB   | ############                          |  33% 
libgcc-ng-11.2.0     | 5.3 MB    | ####################9                 |  57% 

python-3.9.16        | 25.1 MB   | ############1                         |  33% 
libgcc-ng-11.2.0     | 5.3 MB    | #####################3                |  58% 

python-3.9.16        | 25.1 MB   | ############1                         |  33% 
libgcc-ng-11.2.0     | 5.3 MB    | #####################5                |  58% 

python-3.9.16        | 25.1 MB   | ############2                         |  33% 
libgcc-ng-11.2.0     | 5.3 MB    | #####################7                |  59% 

python-3.9.16        | 25.1 MB   | ############2                         |  33% 
libgcc-ng-11.2.0     | 5.3 MB    | #####################9                |  59% 

python-3.9.16        | 25.1 MB   | ############3                         |  33% 

python-3.9.16        | 25.1 MB   | ############3                         |  33% 
libgcc-ng-11.2.0     | 5.3 MB    | ######################1               |  60% 

python-3.9.16        | 25.1 MB   | ############4                         |  34% 
libgcc-ng-11.2.0     | 5.3 MB    | ######################3               |  61% 

python-3.9.16        | 25.1 MB   | ############4                         |  34% 
libgcc-ng-11.2.0     | 5.3 MB    | ######################6               |  61% 

python-3.9.16        | 25.1 MB   | ############5                         |  34% 
libgcc-ng-11.2.0     | 5.3 MB    | ######################9               |  62% 

python-3.9.16        | 25.1 MB   | ############6                         |  34% 
libgcc-ng-11.2.0     | 5.3 MB    | #######################2              |  63% 

python-3.9.16        | 25.1 MB   | ############7                         |  34% 

python-3.9.16        | 25.1 MB   | ############7                         |  35% 
libgcc-ng-11.2.0     | 5.3 MB    | #######################5              |  64% 

python-3.9.16        | 25.1 MB   | ############8                         |  35% 
libgcc-ng-11.2.0     | 5.3 MB    | #######################8              |  64% 

python-3.9.16        | 25.1 MB   | ############9                         |  35% 
libgcc-ng-11.2.0     | 5.3 MB    | ########################              |  65% 
libgcc-ng-11.2.0     | 5.3 MB    | ########################2             |  66% 

python-3.9.16        | 25.1 MB   | ############9                         |  35% 
libgcc-ng-11.2.0     | 5.3 MB    | ########################4             |  66% 

python-3.9.16        | 25.1 MB   | #############                         |  35% 
libgcc-ng-11.2.0     | 5.3 MB    | ########################6             |  67% 

python-3.9.16        | 25.1 MB   | #############1                        |  35% 
libgcc-ng-11.2.0     | 5.3 MB    | ########################8             |  67% 

python-3.9.16        | 25.1 MB   | #############1                        |  36% 
libgcc-ng-11.2.0     | 5.3 MB    | #########################1            |  68% 

python-3.9.16        | 25.1 MB   | #############2                        |  36% 
libgcc-ng-11.2.0     | 5.3 MB    | #########################4            |  69% 

python-3.9.16        | 25.1 MB   | #############3                        |  36% 
libgcc-ng-11.2.0     | 5.3 MB    | #########################7            |  70% 

python-3.9.16        | 25.1 MB   | #############4                        |  36% 
libgcc-ng-11.2.0     | 5.3 MB    | ##########################            |  70% 
libgcc-ng-11.2.0     | 5.3 MB    | ##########################4           |  71% 

python-3.9.16        | 25.1 MB   | #############5                        |  37% 
libgcc-ng-11.2.0     | 5.3 MB    | ##########################8           |  73% 

python-3.9.16        | 25.1 MB   | #############6                        |  37% 
libgcc-ng-11.2.0     | 5.3 MB    | ###########################1          |  73% 

python-3.9.16        | 25.1 MB   | #############7                        |  37% 
libgcc-ng-11.2.0     | 5.3 MB    | ###########################4          |  74% 

python-3.9.16        | 25.1 MB   | #############7                        |  37% 
libgcc-ng-11.2.0     | 5.3 MB    | ###########################8          |  75% 

python-3.9.16        | 25.1 MB   | #############8                        |  37% 
libgcc-ng-11.2.0     | 5.3 MB    | ############################1         |  76% 

python-3.9.16        | 25.1 MB   | #############9                        |  38% 
libgcc-ng-11.2.0     | 5.3 MB    | ############################3         |  77% 

python-3.9.16        | 25.1 MB   | #############9                        |  38% 
libgcc-ng-11.2.0     | 5.3 MB    | ############################5         |  77% 

python-3.9.16        | 25.1 MB   | ##############                        |  38% 

python-3.9.16        | 25.1 MB   | ##############                        |  38% 
libgcc-ng-11.2.0     | 5.3 MB    | ############################7         |  78% 

python-3.9.16        | 25.1 MB   | ##############1                       |  38% 
libgcc-ng-11.2.0     | 5.3 MB    | #############################         |  78% 

python-3.9.16        | 25.1 MB   | ##############1                       |  38% 
libgcc-ng-11.2.0     | 5.3 MB    | #############################2        |  79% 

python-3.9.16        | 25.1 MB   | ##############2                       |  38% 
libgcc-ng-11.2.0     | 5.3 MB    | #############################4        |  80% 

python-3.9.16        | 25.1 MB   | ##############2                       |  39% 
libgcc-ng-11.2.0     | 5.3 MB    | #############################6        |  80% 

python-3.9.16        | 25.1 MB   | ##############3                       |  39% 

python-3.9.16        | 25.1 MB   | ##############3                       |  39% 
libgcc-ng-11.2.0     | 5.3 MB    | #############################8        |  81% 

python-3.9.16        | 25.1 MB   | ##############4                       |  39% 
libgcc-ng-11.2.0     | 5.3 MB    | ##############################        |  81% 

python-3.9.16        | 25.1 MB   | ##############4                       |  39% 

python-3.9.16        | 25.1 MB   | ##############5                       |  39% 
libgcc-ng-11.2.0     | 5.3 MB    | ##############################2       |  82% 

python-3.9.16        | 25.1 MB   | ##############5                       |  39% 
libgcc-ng-11.2.0     | 5.3 MB    | ##############################5       |  82% 

python-3.9.16        | 25.1 MB   | ##############5                       |  39% 
libgcc-ng-11.2.0     | 5.3 MB    | ##############################7       |  83% 

python-3.9.16        | 25.1 MB   | ##############6                       |  40% 
libgcc-ng-11.2.0     | 5.3 MB    | ##############################9       |  84% 

python-3.9.16        | 25.1 MB   | ##############6                       |  40% 

python-3.9.16        | 25.1 MB   | ##############7                       |  40% 
libgcc-ng-11.2.0     | 5.3 MB    | ###############################1      |  84% 

python-3.9.16        | 25.1 MB   | ##############7                       |  40% 
libgcc-ng-11.2.0     | 5.3 MB    | ###############################4      |  85% 

python-3.9.16        | 25.1 MB   | ##############8                       |  40% 
libgcc-ng-11.2.0     | 5.3 MB    | ###############################7      |  86% 

python-3.9.16        | 25.1 MB   | ##############9                       |  40% 
libgcc-ng-11.2.0     | 5.3 MB    | ###############################9      |  86% 

python-3.9.16        | 25.1 MB   | ##############9                       |  41% 
libgcc-ng-11.2.0     | 5.3 MB    | ################################1     |  87% 

python-3.9.16        | 25.1 MB   | ###############                       |  41% 
libgcc-ng-11.2.0     | 5.3 MB    | ################################3     |  87% 

python-3.9.16        | 25.1 MB   | ###############1                      |  41% 
libgcc-ng-11.2.0     | 5.3 MB    | ################################5     |  88% 

python-3.9.16        | 25.1 MB   | ###############1                      |  41% 
libgcc-ng-11.2.0     | 5.3 MB    | ################################7     |  89% 

python-3.9.16        | 25.1 MB   | ###############2                      |  41% 
libgcc-ng-11.2.0     | 5.3 MB    | #################################     |  89% 

python-3.9.16        | 25.1 MB   | ###############3                      |  41% 
libgcc-ng-11.2.0     | 5.3 MB    | #################################2    |  90% 
libgcc-ng-11.2.0     | 5.3 MB    | #################################4    |  90% 

python-3.9.16        | 25.1 MB   | ###############3                      |  42% 
libgcc-ng-11.2.0     | 5.3 MB    | #################################6    |  91% 

python-3.9.16        | 25.1 MB   | ###############4                      |  42% 
libgcc-ng-11.2.0     | 5.3 MB    | #################################8    |  92% 

python-3.9.16        | 25.1 MB   | ###############5                      |  42% 
libgcc-ng-11.2.0     | 5.3 MB    | ##################################1   |  92% 

python-3.9.16        | 25.1 MB   | ###############5                      |  42% 
libgcc-ng-11.2.0     | 5.3 MB    | ##################################5   |  93% 

python-3.9.16        | 25.1 MB   | ###############6                      |  42% 
libgcc-ng-11.2.0     | 5.3 MB    | ##################################8   |  94% 

python-3.9.16        | 25.1 MB   | ###############7                      |  43% 
libgcc-ng-11.2.0     | 5.3 MB    | ###################################2  |  95% 

python-3.9.16        | 25.1 MB   | ###############8                      |  43% 
libgcc-ng-11.2.0     | 5.3 MB    | ###################################6  |  96% 

python-3.9.16        | 25.1 MB   | ###############9                      |  43% 
libgcc-ng-11.2.0     | 5.3 MB    | ####################################  |  97% 

python-3.9.16        | 25.1 MB   | ################                      |  43% 
libgcc-ng-11.2.0     | 5.3 MB    | ####################################3 |  98% 

python-3.9.16        | 25.1 MB   | ################1                     |  44% 
libgcc-ng-11.2.0     | 5.3 MB    | ####################################6 |  99% 
libgcc-ng-11.2.0     | 5.3 MB    | ##################################### | 100% 

python-3.9.16        | 25.1 MB   | ################1                     |  44% 

python-3.9.16        | 25.1 MB   | ################2                     |  44% 
libgcc-ng-11.2.0     | 5.3 MB    | ##################################### | 100% 

python-3.9.16        | 25.1 MB   | ################3                     |  44% 

python-3.9.16        | 25.1 MB   | ################4                     |  45% 

python-3.9.16        | 25.1 MB   | ################6                     |  45% 

python-3.9.16        | 25.1 MB   | ################7                     |  45% 

python-3.9.16        | 25.1 MB   | ################8                     |  46% 

python-3.9.16        | 25.1 MB   | ################9                     |  46% 

python-3.9.16        | 25.1 MB   | #################1                    |  46% 

python-3.9.16        | 25.1 MB   | #################2                    |  47% 

python-3.9.16        | 25.1 MB   | #################4                    |  47% 

python-3.9.16        | 25.1 MB   | #################6                    |  48% 

python-3.9.16        | 25.1 MB   | #################8                    |  48% 

python-3.9.16        | 25.1 MB   | #################9                    |  49% 

python-3.9.16        | 25.1 MB   | ##################1                   |  49% 

python-3.9.16        | 25.1 MB   | ##################3                   |  50% 

python-3.9.16        | 25.1 MB   | ##################5                   |  50% 

python-3.9.16        | 25.1 MB   | ##################6                   |  51% 

python-3.9.16        | 25.1 MB   | ##################8                   |  51% 

python-3.9.16        | 25.1 MB   | ###################                   |  51% 

python-3.9.16        | 25.1 MB   | ###################2                  |  52% 

python-3.9.16        | 25.1 MB   | ###################4                  |  52% 

python-3.9.16        | 25.1 MB   | ###################5                  |  53% 

python-3.9.16        | 25.1 MB   | ###################7                  |  53% 

python-3.9.16        | 25.1 MB   | ###################8                  |  54% 

python-3.9.16        | 25.1 MB   | ####################                  |  54% 

python-3.9.16        | 25.1 MB   | ####################2                 |  55% 

python-3.9.16        | 25.1 MB   | ####################3                 |  55% 

python-3.9.16        | 25.1 MB   | ####################5                 |  55% 

python-3.9.16        | 25.1 MB   | ####################6                 |  56% 

python-3.9.16        | 25.1 MB   | ####################7                 |  56% 

python-3.9.16        | 25.1 MB   | ####################9                 |  57% 

python-3.9.16        | 25.1 MB   | #####################                 |  57% 

python-3.9.16        | 25.1 MB   | #####################1                |  57% 

python-3.9.16        | 25.1 MB   | #####################2                |  57% 

python-3.9.16        | 25.1 MB   | #####################3                |  58% 

python-3.9.16        | 25.1 MB   | #####################4                |  58% 

python-3.9.16        | 25.1 MB   | #####################6                |  58% 

python-3.9.16        | 25.1 MB   | #####################7                |  59% 

python-3.9.16        | 25.1 MB   | #####################8                |  59% 

python-3.9.16        | 25.1 MB   | #####################9                |  59% 

python-3.9.16        | 25.1 MB   | ######################                |  60% 

python-3.9.16        | 25.1 MB   | ######################1               |  60% 

python-3.9.16        | 25.1 MB   | ######################2               |  60% 

python-3.9.16        | 25.1 MB   | ######################3               |  60% 

python-3.9.16        | 25.1 MB   | ######################4               |  61% 

python-3.9.16        | 25.1 MB   | ######################5               |  61% 

python-3.9.16        | 25.1 MB   | ######################7               |  61% 

python-3.9.16        | 25.1 MB   | ######################8               |  62% 

python-3.9.16        | 25.1 MB   | ######################9               |  62% 

python-3.9.16        | 25.1 MB   | #######################               |  62% 

python-3.9.16        | 25.1 MB   | #######################1              |  63% 

python-3.9.16        | 25.1 MB   | #######################2              |  63% 

python-3.9.16        | 25.1 MB   | #######################3              |  63% 

python-3.9.16        | 25.1 MB   | #######################4              |  63% 

python-3.9.16        | 25.1 MB   | #######################5              |  64% 

python-3.9.16        | 25.1 MB   | #######################6              |  64% 

python-3.9.16        | 25.1 MB   | #######################7              |  64% 

python-3.9.16        | 25.1 MB   | #######################9              |  65% 

python-3.9.16        | 25.1 MB   | ########################              |  65% 

python-3.9.16        | 25.1 MB   | ########################1             |  65% 

python-3.9.16        | 25.1 MB   | ########################2             |  66% 

python-3.9.16        | 25.1 MB   | ########################3             |  66% 

python-3.9.16        | 25.1 MB   | ########################4             |  66% 

python-3.9.16        | 25.1 MB   | ########################6             |  66% 

python-3.9.16        | 25.1 MB   | ########################7             |  67% 

python-3.9.16        | 25.1 MB   | ########################8             |  67% 

python-3.9.16        | 25.1 MB   | ########################9             |  68% 

python-3.9.16        | 25.1 MB   | #########################1            |  68% 

python-3.9.16        | 25.1 MB   | #########################2            |  68% 

python-3.9.16        | 25.1 MB   | #########################4            |  69% 

python-3.9.16        | 25.1 MB   | #########################5            |  69% 

python-3.9.16        | 25.1 MB   | #########################7            |  70% 

python-3.9.16        | 25.1 MB   | #########################9            |  70% 

python-3.9.16        | 25.1 MB   | ##########################            |  70% 

python-3.9.16        | 25.1 MB   | ##########################1           |  71% 

python-3.9.16        | 25.1 MB   | ##########################3           |  71% 

python-3.9.16        | 25.1 MB   | ##########################4           |  71% 

python-3.9.16        | 25.1 MB   | ##########################5           |  72% 

python-3.9.16        | 25.1 MB   | ##########################6           |  72% 

python-3.9.16        | 25.1 MB   | ##########################7           |  72% 

python-3.9.16        | 25.1 MB   | ##########################8           |  73% 

python-3.9.16        | 25.1 MB   | ###########################           |  73% 

python-3.9.16        | 25.1 MB   | ###########################1          |  73% 

python-3.9.16        | 25.1 MB   | ###########################3          |  74% 

python-3.9.16        | 25.1 MB   | ###########################5          |  74% 

python-3.9.16        | 25.1 MB   | ###########################7          |  75% 

python-3.9.16        | 25.1 MB   | ###########################9          |  76% 

python-3.9.16        | 25.1 MB   | ############################1         |  76% 

python-3.9.16        | 25.1 MB   | ############################3         |  77% 

python-3.9.16        | 25.1 MB   | ############################5         |  77% 

python-3.9.16        | 25.1 MB   | ############################7         |  78% 

python-3.9.16        | 25.1 MB   | ############################9         |  78% 

python-3.9.16        | 25.1 MB   | #############################1        |  79% 

python-3.9.16        | 25.1 MB   | #############################4        |  80% 

python-3.9.16        | 25.1 MB   | #############################6        |  80% 

python-3.9.16        | 25.1 MB   | #############################8        |  81% 

python-3.9.16        | 25.1 MB   | ##############################        |  81% 

python-3.9.16        | 25.1 MB   | ##############################2       |  82% 

python-3.9.16        | 25.1 MB   | ##############################4       |  82% 

python-3.9.16        | 25.1 MB   | ##############################6       |  83% 

python-3.9.16        | 25.1 MB   | ##############################8       |  83% 

python-3.9.16        | 25.1 MB   | ###############################       |  84% 

python-3.9.16        | 25.1 MB   | ###############################1      |  84% 

python-3.9.16        | 25.1 MB   | ###############################3      |  85% 

python-3.9.16        | 25.1 MB   | ###############################5      |  85% 

python-3.9.16        | 25.1 MB   | ###############################7      |  86% 

python-3.9.16        | 25.1 MB   | ###############################8      |  86% 

python-3.9.16        | 25.1 MB   | ################################      |  87% 

python-3.9.16        | 25.1 MB   | ################################1     |  87% 

python-3.9.16        | 25.1 MB   | ################################3     |  87% 

python-3.9.16        | 25.1 MB   | ################################4     |  88% 

python-3.9.16        | 25.1 MB   | ################################6     |  88% 

python-3.9.16        | 25.1 MB   | ################################7     |  89% 

python-3.9.16        | 25.1 MB   | ################################8     |  89% 

python-3.9.16        | 25.1 MB   | #################################     |  89% 

python-3.9.16        | 25.1 MB   | #################################1    |  90% 

python-3.9.16        | 25.1 MB   | #################################2    |  90% 

python-3.9.16        | 25.1 MB   | #################################3    |  90% 

python-3.9.16        | 25.1 MB   | #################################4    |  90% 

python-3.9.16        | 25.1 MB   | #################################5    |  91% 

python-3.9.16        | 25.1 MB   | #################################7    |  91% 

python-3.9.16        | 25.1 MB   | #################################8    |  92% 

python-3.9.16        | 25.1 MB   | ##################################    |  92% 

python-3.9.16        | 25.1 MB   | ##################################1   |  92% 

python-3.9.16        | 25.1 MB   | ##################################2   |  93% 

python-3.9.16        | 25.1 MB   | ##################################4   |  93% 

python-3.9.16        | 25.1 MB   | ##################################4   |  93% 

python-3.9.16        | 25.1 MB   | ##################################5   |  93% 

python-3.9.16        | 25.1 MB   | ##################################6   |  94% 

python-3.9.16        | 25.1 MB   | ##################################6   |  94% 

python-3.9.16        | 25.1 MB   | ##################################7   |  94% 

python-3.9.16        | 25.1 MB   | ##################################7   |  94% 

python-3.9.16        | 25.1 MB   | ##################################8   |  94% 

python-3.9.16        | 25.1 MB   | ##################################8   |  94% 

python-3.9.16        | 25.1 MB   | ##################################9   |  94% 

python-3.9.16        | 25.1 MB   | ##################################9   |  95% 

python-3.9.16        | 25.1 MB   | ###################################   |  95% 

python-3.9.16        | 25.1 MB   | ###################################   |  95% 

python-3.9.16        | 25.1 MB   | ###################################1  |  95% 

python-3.9.16        | 25.1 MB   | ###################################1  |  95% 

python-3.9.16        | 25.1 MB   | ###################################2  |  95% 

python-3.9.16        | 25.1 MB   | ###################################2  |  95% 

python-3.9.16        | 25.1 MB   | ###################################3  |  95% 

python-3.9.16        | 25.1 MB   | ###################################3  |  96% 

python-3.9.16        | 25.1 MB   | ###################################3  |  96% 

python-3.9.16        | 25.1 MB   | ###################################4  |  96% 

python-3.9.16        | 25.1 MB   | ###################################5  |  96% 

python-3.9.16        | 25.1 MB   | ###################################6  |  96% 

python-3.9.16        | 25.1 MB   | ###################################6  |  96% 

python-3.9.16        | 25.1 MB   | ###################################7  |  97% 

python-3.9.16        | 25.1 MB   | ###################################7  |  97% 

python-3.9.16        | 25.1 MB   | ###################################8  |  97% 

python-3.9.16        | 25.1 MB   | ###################################8  |  97% 

python-3.9.16        | 25.1 MB   | ###################################9  |  97% 

python-3.9.16        | 25.1 MB   | ####################################  |  97% 

python-3.9.16        | 25.1 MB   | ####################################1 |  98% 

python-3.9.16        | 25.1 MB   | ####################################3 |  98% 

python-3.9.16        | 25.1 MB   | ####################################4 |  99% 

python-3.9.16        | 25.1 MB   | ####################################6 |  99% 

python-3.9.16        | 25.1 MB   | ####################################7 |  99% 

python-3.9.16        | 25.1 MB   | ####################################9 | 100% 

                                                                                
                                                                                

                                                                                


                                                                                



                                                                                




                                                                                





                                                                                






                                                                                







                                                                                








                                                                                









                                                                                










                                                                                











                                                                                












                                                                                













                                                                                














                                                                                
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate myenv
#
# To deactivate an active environment, use
#
#     $ conda deactivate


Note: you may need to restart the kernel to use updated packages.

Rzeczywiście, stworzone środowisko ma wersję Pythona z linii 3.9:

$ conda activate myenv
(myenv)$ python3 --version
Python 3.9.4

Tak samo, przy tworzeniu środowiska możemy podać inne zależności wraz z ich wersjami:

conda create -y -n p39-mlflow-pandas python=3.9 pandas=1.2.3 mlflow
Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /home/tomek/miniconda3/envs/p39-mlflow-pandas

  added / updated specs:
    - mlflow
    - pandas=1.2.3
    - python=3.9


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    alembic-1.6.3              |     pyhd8ed1ab_0         114 KB  conda-forge
    appdirs-1.4.4              |     pyh9f0ad1d_0          13 KB  conda-forge
    asn1crypto-1.4.0           |     pyh9f0ad1d_0          78 KB  conda-forge
    brotlipy-0.7.0             |py39h3811e60_1001         341 KB  conda-forge
    cffi-1.14.5                |   py39he32792d_0         227 KB  conda-forge
    chardet-4.0.0              |   py39hf3d152e_1         205 KB  conda-forge
    click-8.0.1                |   py39hf3d152e_0         146 KB  conda-forge
    cloudpickle-1.6.0          |             py_0          22 KB  conda-forge
    configparser-5.0.2         |     pyhd8ed1ab_0          21 KB  conda-forge
    cryptography-3.4.7         |   py39hbca0aa6_0         1.1 MB  conda-forge
    databricks-cli-0.9.1       |             py_0          48 KB  conda-forge
    dataclasses-0.8            |     pyhc8e2a94_1           7 KB  conda-forge
    docker-py-5.0.0            |   py39hf3d152e_0         187 KB  conda-forge
    docker-pycreds-0.4.0       |             py_0          11 KB  conda-forge
    entrypoints-0.3            |  pyhd8ed1ab_1003           8 KB  conda-forge
    flask-2.0.1                |     pyhd8ed1ab_0          70 KB  conda-forge
    gitdb-4.0.7                |     pyhd8ed1ab_0          46 KB  conda-forge
    gitpython-3.1.17           |     pyhd8ed1ab_0         115 KB  conda-forge
    gorilla-0.4.0              |     pyhd8ed1ab_0          13 KB  conda-forge
    greenlet-1.1.0             |   py39he80948d_0          84 KB  conda-forge
    gunicorn-20.1.0            |   py39hf3d152e_0         119 KB  conda-forge
    idna-2.10                  |     pyh9f0ad1d_0          52 KB  conda-forge
    itsdangerous-2.0.1         |     pyhd8ed1ab_0          17 KB  conda-forge
    jinja2-3.0.1               |     pyhd8ed1ab_0          99 KB  conda-forge
    libblas-3.9.0              |       9_openblas          11 KB  conda-forge
    libcblas-3.9.0             |       9_openblas          11 KB  conda-forge
    libgfortran-ng-9.3.0       |      hff62375_19          22 KB  conda-forge
    libgfortran5-9.3.0         |      hff62375_19         2.0 MB  conda-forge
    liblapack-3.9.0            |       9_openblas          11 KB  conda-forge
    libopenblas-0.3.15         |pthreads_h8fe5266_1         9.2 MB  conda-forge
    libprotobuf-3.17.0         |       h780b84a_0         2.5 MB  conda-forge
    mako-1.1.4                 |     pyh44b312d_0          58 KB  conda-forge
    markupsafe-2.0.1           |   py39h3811e60_0          22 KB  conda-forge
    mlflow-1.2.0               |             py_1         3.4 MB  conda-forge
    numpy-1.20.3               |   py39hdbf815f_0         5.8 MB  conda-forge
    packaging-20.9             |     pyh44b312d_0          35 KB  conda-forge
    pandas-1.2.3               |   py39hde0f152_0        12.1 MB  conda-forge
    protobuf-3.17.0            |   py39he80948d_0         346 KB  conda-forge
    pycparser-2.20             |     pyh9f0ad1d_2          94 KB  conda-forge
    pyopenssl-20.0.1           |     pyhd8ed1ab_0          48 KB  conda-forge
    pyparsing-2.4.7            |     pyh9f0ad1d_0          60 KB  conda-forge
    pysocks-1.7.1              |   py39hf3d152e_3          28 KB  conda-forge
    python-dateutil-2.8.1      |             py_0         220 KB  conda-forge
    python-editor-1.0.4        |             py_0           9 KB  conda-forge
    pytz-2021.1                |     pyhd8ed1ab_0         239 KB  conda-forge
    pyyaml-5.4.1               |   py39h3811e60_0         193 KB  conda-forge
    querystring_parser-1.2.4   |             py_0          10 KB  conda-forge
    requests-2.25.1            |     pyhd3deb0d_0          51 KB  conda-forge
    simplejson-3.17.2          |   py39h3811e60_2         103 KB  conda-forge
    six-1.16.0                 |     pyh6c4a22f_0          14 KB  conda-forge
    smmap-3.0.5                |     pyh44b312d_0          22 KB  conda-forge
    sqlalchemy-1.4.15          |   py39h3811e60_0         2.3 MB  conda-forge
    sqlparse-0.4.1             |     pyh9f0ad1d_0          34 KB  conda-forge
    tabulate-0.8.9             |     pyhd8ed1ab_0          26 KB  conda-forge
    typing_extensions-3.7.4.3  |             py_0          25 KB  conda-forge
    urllib3-1.26.4             |     pyhd8ed1ab_0          99 KB  conda-forge
    websocket-client-0.57.0    |   py39hf3d152e_4          59 KB  conda-forge
    werkzeug-2.0.1             |     pyhd8ed1ab_0         219 KB  conda-forge
    yaml-0.2.5                 |       h516909a_0          82 KB  conda-forge
    ------------------------------------------------------------
                                           Total:        42.3 MB

The following NEW packages will be INSTALLED:

  _libgcc_mutex      conda-forge/linux-64::_libgcc_mutex-0.1-conda_forge
  _openmp_mutex      conda-forge/linux-64::_openmp_mutex-4.5-1_gnu
  alembic            conda-forge/noarch::alembic-1.6.3-pyhd8ed1ab_0
  appdirs            conda-forge/noarch::appdirs-1.4.4-pyh9f0ad1d_0
  asn1crypto         conda-forge/noarch::asn1crypto-1.4.0-pyh9f0ad1d_0
  brotlipy           conda-forge/linux-64::brotlipy-0.7.0-py39h3811e60_1001
  ca-certificates    conda-forge/linux-64::ca-certificates-2020.12.5-ha878542_0
  certifi            conda-forge/linux-64::certifi-2020.12.5-py39hf3d152e_1
  cffi               conda-forge/linux-64::cffi-1.14.5-py39he32792d_0
  chardet            conda-forge/linux-64::chardet-4.0.0-py39hf3d152e_1
  click              conda-forge/linux-64::click-8.0.1-py39hf3d152e_0
  cloudpickle        conda-forge/noarch::cloudpickle-1.6.0-py_0
  configparser       conda-forge/noarch::configparser-5.0.2-pyhd8ed1ab_0
  cryptography       conda-forge/linux-64::cryptography-3.4.7-py39hbca0aa6_0
  databricks-cli     conda-forge/noarch::databricks-cli-0.9.1-py_0
  dataclasses        conda-forge/noarch::dataclasses-0.8-pyhc8e2a94_1
  docker-py          conda-forge/linux-64::docker-py-5.0.0-py39hf3d152e_0
  docker-pycreds     conda-forge/noarch::docker-pycreds-0.4.0-py_0
  entrypoints        conda-forge/noarch::entrypoints-0.3-pyhd8ed1ab_1003
  flask              conda-forge/noarch::flask-2.0.1-pyhd8ed1ab_0
  gitdb              conda-forge/noarch::gitdb-4.0.7-pyhd8ed1ab_0
  gitpython          conda-forge/noarch::gitpython-3.1.17-pyhd8ed1ab_0
  gorilla            conda-forge/noarch::gorilla-0.4.0-pyhd8ed1ab_0
  greenlet           conda-forge/linux-64::greenlet-1.1.0-py39he80948d_0
  gunicorn           conda-forge/linux-64::gunicorn-20.1.0-py39hf3d152e_0
  idna               conda-forge/noarch::idna-2.10-pyh9f0ad1d_0
  itsdangerous       conda-forge/noarch::itsdangerous-2.0.1-pyhd8ed1ab_0
  jinja2             conda-forge/noarch::jinja2-3.0.1-pyhd8ed1ab_0
  ld_impl_linux-64   conda-forge/linux-64::ld_impl_linux-64-2.35.1-hea4e1c9_2
  libblas            conda-forge/linux-64::libblas-3.9.0-9_openblas
  libcblas           conda-forge/linux-64::libcblas-3.9.0-9_openblas
  libffi             conda-forge/linux-64::libffi-3.3-h58526e2_2
  libgcc-ng          conda-forge/linux-64::libgcc-ng-9.3.0-h2828fa1_19
  libgfortran-ng     conda-forge/linux-64::libgfortran-ng-9.3.0-hff62375_19
  libgfortran5       conda-forge/linux-64::libgfortran5-9.3.0-hff62375_19
  libgomp            conda-forge/linux-64::libgomp-9.3.0-h2828fa1_19
  liblapack          conda-forge/linux-64::liblapack-3.9.0-9_openblas
  libopenblas        conda-forge/linux-64::libopenblas-0.3.15-pthreads_h8fe5266_1
  libprotobuf        conda-forge/linux-64::libprotobuf-3.17.0-h780b84a_0
  libstdcxx-ng       conda-forge/linux-64::libstdcxx-ng-9.3.0-h6de172a_19
  mako               conda-forge/noarch::mako-1.1.4-pyh44b312d_0
  markupsafe         conda-forge/linux-64::markupsafe-2.0.1-py39h3811e60_0
  mlflow             conda-forge/noarch::mlflow-1.2.0-py_1
  ncurses            conda-forge/linux-64::ncurses-6.2-h58526e2_4
  numpy              conda-forge/linux-64::numpy-1.20.3-py39hdbf815f_0
  openssl            conda-forge/linux-64::openssl-1.1.1k-h7f98852_0
  packaging          conda-forge/noarch::packaging-20.9-pyh44b312d_0
  pandas             conda-forge/linux-64::pandas-1.2.3-py39hde0f152_0
  pip                conda-forge/noarch::pip-21.1.2-pyhd8ed1ab_0
  protobuf           conda-forge/linux-64::protobuf-3.17.0-py39he80948d_0
  pycparser          conda-forge/noarch::pycparser-2.20-pyh9f0ad1d_2
  pyopenssl          conda-forge/noarch::pyopenssl-20.0.1-pyhd8ed1ab_0
  pyparsing          conda-forge/noarch::pyparsing-2.4.7-pyh9f0ad1d_0
  pysocks            conda-forge/linux-64::pysocks-1.7.1-py39hf3d152e_3
  python             conda-forge/linux-64::python-3.9.4-hffdb5ce_0_cpython
  python-dateutil    conda-forge/noarch::python-dateutil-2.8.1-py_0
  python-editor      conda-forge/noarch::python-editor-1.0.4-py_0
  python_abi         conda-forge/linux-64::python_abi-3.9-1_cp39
  pytz               conda-forge/noarch::pytz-2021.1-pyhd8ed1ab_0
  pyyaml             conda-forge/linux-64::pyyaml-5.4.1-py39h3811e60_0
  querystring_parser conda-forge/noarch::querystring_parser-1.2.4-py_0
  readline           conda-forge/linux-64::readline-8.1-h46c0cb4_0
  requests           conda-forge/noarch::requests-2.25.1-pyhd3deb0d_0
  setuptools         conda-forge/linux-64::setuptools-49.6.0-py39hf3d152e_3
  simplejson         conda-forge/linux-64::simplejson-3.17.2-py39h3811e60_2
  six                conda-forge/noarch::six-1.16.0-pyh6c4a22f_0
  smmap              conda-forge/noarch::smmap-3.0.5-pyh44b312d_0
  sqlalchemy         conda-forge/linux-64::sqlalchemy-1.4.15-py39h3811e60_0
  sqlite             conda-forge/linux-64::sqlite-3.35.5-h74cdb3f_0
  sqlparse           conda-forge/noarch::sqlparse-0.4.1-pyh9f0ad1d_0
  tabulate           conda-forge/noarch::tabulate-0.8.9-pyhd8ed1ab_0
  tk                 conda-forge/linux-64::tk-8.6.10-h21135ba_1
  typing_extensions  conda-forge/noarch::typing_extensions-3.7.4.3-py_0
  tzdata             conda-forge/noarch::tzdata-2021a-he74cb21_0
  urllib3            conda-forge/noarch::urllib3-1.26.4-pyhd8ed1ab_0
  websocket-client   conda-forge/linux-64::websocket-client-0.57.0-py39hf3d152e_4
  werkzeug           conda-forge/noarch::werkzeug-2.0.1-pyhd8ed1ab_0
  wheel              conda-forge/noarch::wheel-0.36.2-pyhd3deb0d_0
  xz                 conda-forge/linux-64::xz-5.2.5-h516909a_1
  yaml               conda-forge/linux-64::yaml-0.2.5-h516909a_0
  zlib               conda-forge/linux-64::zlib-1.2.11-h516909a_1010



Downloading and Extracting Packages
smmap-3.0.5          | 22 KB     | ##################################### | 100% 
sqlalchemy-1.4.15    | 2.3 MB    | ##################################### | 100% 
appdirs-1.4.4        | 13 KB     | ##################################### | 100% 
gunicorn-20.1.0      | 119 KB    | ##################################### | 100% 
pyopenssl-20.0.1     | 48 KB     | ##################################### | 100% 
mako-1.1.4           | 58 KB     | ##################################### | 100% 
libopenblas-0.3.15   | 9.2 MB    | ##################################### | 100% 
libcblas-3.9.0       | 11 KB     | ##################################### | 100% 
gitdb-4.0.7          | 46 KB     | ##################################### | 100% 
click-8.0.1          | 146 KB    | ##################################### | 100% 
gorilla-0.4.0        | 13 KB     | ##################################### | 100% 
gitpython-3.1.17     | 115 KB    | ##################################### | 100% 
typing_extensions-3. | 25 KB     | ##################################### | 100% 
pysocks-1.7.1        | 28 KB     | ##################################### | 100% 
pandas-1.2.3         | 12.1 MB   | ##################################### | 100% 
libgfortran-ng-9.3.0 | 22 KB     | ##################################### | 100% 
docker-pycreds-0.4.0 | 11 KB     | ##################################### | 100% 
docker-py-5.0.0      | 187 KB    | ##################################### | 100% 
itsdangerous-2.0.1   | 17 KB     | ##################################### | 100% 
configparser-5.0.2   | 21 KB     | ##################################### | 100% 
sqlparse-0.4.1       | 34 KB     | ##################################### | 100% 
werkzeug-2.0.1       | 219 KB    | ##################################### | 100% 
alembic-1.6.3        | 114 KB    | ##################################### | 100% 
tabulate-0.8.9       | 26 KB     | ##################################### | 100% 
cloudpickle-1.6.0    | 22 KB     | ##################################### | 100% 
asn1crypto-1.4.0     | 78 KB     | ##################################### | 100% 
brotlipy-0.7.0       | 341 KB    | ##################################### | 100% 
dataclasses-0.8      | 7 KB      | ##################################### | 100% 
cryptography-3.4.7   | 1.1 MB    | ##################################### | 100% 
pycparser-2.20       | 94 KB     | ##################################### | 100% 
libprotobuf-3.17.0   | 2.5 MB    | ##################################### | 100% 
simplejson-3.17.2    | 103 KB    | ##################################### | 100% 
requests-2.25.1      | 51 KB     | ##################################### | 100% 
pytz-2021.1          | 239 KB    | ##################################### | 100% 
flask-2.0.1          | 70 KB     | ##################################### | 100% 
numpy-1.20.3         | 5.8 MB    | ##################################### | 100% 
markupsafe-2.0.1     | 22 KB     | ##################################### | 100% 
idna-2.10            | 52 KB     | ##################################### | 100% 
six-1.16.0           | 14 KB     | ##################################### | 100% 
libgfortran5-9.3.0   | 2.0 MB    | ##################################### | 100% 
liblapack-3.9.0      | 11 KB     | ##################################### | 100% 
pyparsing-2.4.7      | 60 KB     | ##################################### | 100% 
packaging-20.9       | 35 KB     | ##################################### | 100% 
jinja2-3.0.1         | 99 KB     | ##################################### | 100% 
chardet-4.0.0        | 205 KB    | ##################################### | 100% 
protobuf-3.17.0      | 346 KB    | ##################################### | 100% 
urllib3-1.26.4       | 99 KB     | ##################################### | 100% 
pyyaml-5.4.1         | 193 KB    | ##################################### | 100% 
databricks-cli-0.9.1 | 48 KB     | ##################################### | 100% 
websocket-client-0.5 | 59 KB     | ##################################### | 100% 
python-dateutil-2.8. | 220 KB    | ##################################### | 100% 
greenlet-1.1.0       | 84 KB     | ##################################### | 100% 
entrypoints-0.3      | 8 KB      | ##################################### | 100% 
yaml-0.2.5           | 82 KB     | ##################################### | 100% 
libblas-3.9.0        | 11 KB     | ##################################### | 100% 
mlflow-1.2.0         | 3.4 MB    | ##################################### | 100% 
cffi-1.14.5          | 227 KB    | ##################################### | 100% 
python-editor-1.0.4  | 9 KB      | ##################################### | 100% 
querystring_parser-1 | 10 KB     | ##################################### | 100% 
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate p39-mlflow-pandas
#
# To deactivate an active environment, use
#
#     $ conda deactivate


Note: you may need to restart the kernel to use updated packages.

Możemy podać jakie pakiety i w jakich wersjach mają być domyślnie dodawane do nowo tworzonych środowisk za pomocą sekcji create_default_package w pliku ~/.condarc

create_default_packages:
  - python=3.9
  - pandas=1.2.3
  - mlflow

Doinstalowanie nowych pakietów może odbyć się poprzez:

  • conda install mlflow - wywołane w aktywowanym środowisku
  • conda install -n myenv mlflow - wywołane spoza atkywanego środowiska (instaluje mlflow w środowisku myenv)
  • pip install - jeśli w środowisku mamy zainstalowane polecenie pip - używamy pip tylko, jeśli pakiet nie jest dostępny w repozytoriach conda. Uwagi dotyczące używania pip razem z Conda: link

Klonowanie środowiska

Istniejące środowisko można skopiować:

conda create --name myclone --clone myenv

Eksportowanie środowisk

  • Definicję środowiska można wyeksportować do pliku *.yml, który może potem posłużyć do jego odtworzenia
  • Takie pliki są np. wykorzystywane przez MLflow
conda env export -n myenv
name: myenv
channels:
  - conda-forge
  - defaults
dependencies:
  - _libgcc_mutex=0.1=conda_forge
  - _openmp_mutex=4.5=1_gnu
  - ca-certificates=2020.12.5=ha878542_0
  - certifi=2020.12.5=py39hf3d152e_1
  - ld_impl_linux-64=2.35.1=hea4e1c9_2
  - libffi=3.3=h58526e2_2
  - libgcc-ng=9.3.0=h2828fa1_19
  - libgomp=9.3.0=h2828fa1_19
  - libstdcxx-ng=9.3.0=h6de172a_19
  - ncurses=6.2=h58526e2_4
  - openssl=1.1.1k=h7f98852_0
  - pip=21.1.2=pyhd8ed1ab_0
  - python=3.9.4=hffdb5ce_0_cpython
  - python_abi=3.9=1_cp39
  - readline=8.1=h46c0cb4_0
  - setuptools=49.6.0=py39hf3d152e_3
  - sqlite=3.35.5=h74cdb3f_0
  - tk=8.6.10=h21135ba_1
  - tzdata=2021a=he74cb21_0
  - wheel=0.36.2=pyhd3deb0d_0
  - xz=5.2.5=h516909a_1
  - zlib=1.2.11=h516909a_1010
prefix: /home/tomek/miniconda3/envs/myenv

Note: you may need to restart the kernel to use updated packages.

Normalnie, zapisalibyśmy wyni eksportu do pliku:

conda env export -n myenv > myenv.yml
Note: you may need to restart the kernel to use updated packages.

Eksport między systemami

  • Jeśli chcemy zapeniwć, że nasze środowisko będzie można odtworzyć na innym systemie, musimy uyżyć flagi --from-history
  • Użycie tej flagi spowoduje eksport jedynie tych zależności, które explicite instalowaliśmy (bez ich zależności, które mogą być niekompatybilne między systemami)
conda env export --from-history #Jeśli nie podamy nazwy środowiska, eksportujemy aktywne środowisko
name: base
channels:
  - conda-forge
  - defaults
dependencies:
  - conda
  - python=3.9
  - jupyter
  - rise
  - anaconda-navigator
prefix: /home/tomek/miniconda3

Note: you may need to restart the kernel to use updated packages.

Tworzenie środowiska z pliku *.yml

Mając plik *.yml wyeksportowany za pomocą conda env export albo stworzony/zmodyfikowane ręcznie, możemy utworzyć na jego podstawie środowisko:

conda env create -n myenv_from_file -f myenv.yml
Collecting package metadata (repodata.json): done
Solving environment: done
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate myenv_from_file
#
# To deactivate an active environment, use
#
#     $ conda deactivate


Note: you may need to restart the kernel to use updated packages.

Zadania [10pkt]

  1. Zainstaluj Anaconda lub Miniconda na swoim komputerze
  2. Stwórz środowisko zawierające wszystkie zależności wymagane przez stworzone na zajęciach skrypty/programy
  3. Wyeksportuj środowisko do pliku environment.yml i dodaj ten plik do repozytorium