python-lab

È un ambiente virtuale creato con il modulo venv, che contiene una serie di moduli e librerie Python utili nell’ambito dell’analisi dei dati, del machine learning, e dell’intelligenza artificiale.

La versione di Python è quella di sistema.

In laboratorio, al momento si tratta di Python 3.10.

Programmi inclusi

  • spyder
  • jupiter-notebook

Moduli inclusi

  • TensorFlow
  • PyTorch
  • keras
  • scikit-learn & scikit-image
  • matplotlib, bokeh, holoviews, plotly, seaborn
  • Flask, SQLAlchemy
  • Scrapy
  • imblearn
  • pm4py
  • graphviz
  • biopython
  • umap-learn
  • tabulate

Assieme a questi moduli sono disponibili le relative dipendenze, come numpy, numba, pandas, keras, pyzmq, tornado, Twisted, Werkzeug, di cui non stiamo a dare un elenco completo.

Chi è interessato a vedere l’elenco completo, può lanciare il seguente comando dopo aver attivato l’ambiente virtuale:

  pip list

Utilizzo

Per attivare l’ambiente, è possibile lanciare da terminale:

  source /opt/python-lab/python-lab/bin/activate

Note: python-lab è ripetuto due volte, perché è anche il nome del virtual environment. Non è un errore. Scrivete il path correttamente, così come è riportato nella pagina.

Il prompt dovrebbe cambiare, con l’indicazione ‘(python-lab)’ aggiunta all’inizio.

L’ambiente è attivo solo nella shell (nel terminale) in cui è stato eseguito questo comando.

Disattivazione

Per uscire dall’ambiente virtuale basta lanciare il comando:

  deactivate

Il prompt della shell dovrebbe ritornare normale.

Ricreare l’ambiente su altre macchine

Quanto segue non è necessario per l’utilizzo in laboratorio, ma solo se si vuole ricreare un ambiente simile su altre macchine.

Per creare un ambiente uguale a quello presente sulle macchine del laboratorio si possono utilizzare i file requirements.txt e requirements.txt.lock con pip.

1) Creare un venv

Come primo passo, si crea un nuovo venv, di solito all’interno della directory con il proprio progetto1:

  python -m venv .ven

E poi lo si attiva:

  source .venv/bin/activate

2a) Macchine senza GPU

Installare manualmente PyTorch e Tensorflow:

  pip3 install torch torchvision --index-url https://download.pytorch.org/whl/cpu
  pip3 install tensorflow

2b) Macchine con GPU

Installare manualmente PyTorch e Tensorflow:

  pip3 install torch torchvision --index-url https://download.pytorch.org/whl/cu130
  pip3 install tensorflow[and-cuda]

3) Installare gli altri moduli

Per installare la versione più aggiornata dei vari moduli:

  pip3 install -r requirements.txt

Se invece si vuole mantenere la stessa versione utilizzata in laboratorio, è possibile utilizzare il file requirements.txt.lock al posto di requirements.txt. Il suo funzionamento corretto dipende dalla versione di Python, perché alcune versioni dei moduli non sono disponibili per tutte le versioni di Python.

  1. Nota: in lab utilizziamo python-lab come ambiente condiviso, ma è un eccezione, e viene fatto principalmente per motivi di spazio disco.