Next revision | Previous revision |
tutorials:conda [2024/03/04 12:29] – created eros | tutorials:conda [2024/03/04 12:38] (current) – eros |
---|
L'idea di base è quella di creare un "ambiente" personale (environment) basato su una certa versione di python e caricarci le librerie necessarie per il proprio progetto. Gli ambienti sono indipendenti. | L'idea di base è quella di creare un "ambiente" personale (environment) basato su una certa versione di python e caricarci le librerie necessarie per il proprio progetto. Gli ambienti sono indipendenti. |
| |
Di norma, conda è pensato per utenti singoli ma sono riuscito a installarlo in modalità condivisa, così da poter creare diversi enviroment preconfigurati standard che possono essere usati clonati o usati direttamente, se non serve aggiungere librerie. | Di norma, conda è pensato per utenti singoli, ma su John è stato installato in modalità condivisa, così da poter creare diversi enviroment preconfigurati standard che possono essere usati clonati o usati direttamente, se non serve aggiungere librerie. |
| |
Quando l'utente si logga sul sistema, conda non è caricato. Non l'ho fatto caricare di default perché - per funzionare - viene inserito all'inizio del path, sostituendo diversi comandi di sistema coi suoi. | Quando l'utente si logga sul sistema, conda non è caricato. Non viene caricato di default perché - per funzionare - viene inserito all'inizio del path, sostituendo diversi comandi di sistema coi suoi. |
| |
Per caricarlo, l'utente deve eseguire esplicitamente: | Per caricarlo, l'utente deve eseguire esplicitamente: |
</code> | </code> |
| |
Ho creato degli environment base con le varie versioni di python. Per alcuni, ho anche aggiungo torch e cuda, anche questi in varie versioni. Ho cercato di dare dei nomi significativi. Se ne possono ovviamente creare altri configurati come meglio credi. | Sono stati creati environment base con le varie versioni di python. Per alcuni, sono stati aggiunti anche torch e cuda, anche questi in varie versioni. I nomi degli environment sono, per quanto possibilie, significativi. Se ne possono ovviamente creare altri che l'utente può configurare come meglio crede. |
| |
L'utente può usare uno degli environment esistenti, ma non può aggiungere librerie a meno che l'environment non sia suo. | L'utente può usare uno degli environment esistenti, ma non può aggiungere librerie a meno che l'environment non sia suo. |
</code> | </code> |
| |
Aggiungo che con questo sistema è anche possibile installare applicazioni e utilizzarle. Ho installato, per esempio, whisperx e insanely-fast-whisper in due environment dedicati. Chiunque, attivando quel environment, può usare l'applicazione senza doverla re-installare e le diverse dipendenze delle due non creano problemi a livello di sistema operativo. Per esempio: | Con questo sistema è anche possibile installare applicazioni e utilizzarle. È stato installato per esempio, whisperx e insanely-fast-whisper in due environment dedicati. Chiunque, attivando quel environment, può usare l'applicazione senza doverla re-installare e le diverse dipendenze delle due non creano problemi a livello di sistema operativo. Per esempio: |
| |
<code bash> | <code bash> |
</code> | </code> |
| |
L'eseguibile finirà nel path ed eventuali variabili di sistema necessarie per lo specifico applicativo vengono pescate dal environment dell'utente. Esempio: | L'eseguibile finirà nel path ed eventuali variabili di sistema necessarie per lo specifico applicativo vengono pescate dal environment dell'utente. |
| |
| Esempio: |
| |
<code bash> | <code bash> |
</code> | </code> |
| |
In entrambi i casi $HF_TOKEN è quello definito nel file .bashrc dell'utente. | In entrambi i casi '''$HF_TOKEN''' è quello definito nel file .bashrc dell'utente. |