Transformers documentation

Installazione

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v4.46.2).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Installazione

Installa 🤗 Transformers per qualsiasi libreria di deep learning con cui stai lavorando, imposta la tua cache, e opzionalmente configura 🤗 Transformers per l’esecuzione offline.

🤗 Transformers è testato su Python 3.6+, PyTorch 1.1.0+, TensorFlow 2.0+, e Flax. Segui le istruzioni di installazione seguenti per la libreria di deep learning che stai utilizzando:

Installazione con pip

Puoi installare 🤗 Transformers in un ambiente virtuale. Se non sei familiare con gli ambienti virtuali in Python, dai un’occhiata a questa guida. Un ambiente virtuale rende più semplice la gestione di progetti differenti, evitando problemi di compatibilità tra dipendenze.

Inizia creando un ambiente virtuale nella directory del tuo progetto:

python -m venv .env

Attiva l’ambiente virtuale:

source .env/bin/activate

Ora puoi procedere con l’installazione di 🤗 Transformers eseguendo il comando seguente:

pip install transformers

Per il solo supporto della CPU, puoi installare facilmente 🤗 Transformers e una libreria di deep learning in solo una riga. Ad esempio, installiamo 🤗 Transformers e PyTorch con:

pip install transformers[torch]

🤗 Transformers e TensorFlow 2.0:

pip install transformers[tf-cpu]

🤗 Transformers e Flax:

pip install transformers[flax]

Infine, verifica se 🤗 Transformers è stato installato in modo appropriato eseguendo il seguente comando. Questo scaricherà un modello pre-allenato:

python -c "from transformers import pipeline; print(pipeline('sentiment-analysis')('we love you'))"

Dopodiché stampa l’etichetta e il punteggio:

[{'label': 'POSITIVE', 'score': 0.9998704791069031}]

Installazione dalla fonte

Installa 🤗 Transformers dalla fonte con il seguente comando:

pip install git+https://github.com/huggingface/transformers

Questo comando installa la versione main più attuale invece dell’ultima versione stabile. Questo è utile per stare al passo con gli ultimi sviluppi. Ad esempio, se un bug è stato sistemato da quando è uscita l’ultima versione ufficiale ma non è stata ancora rilasciata una nuova versione. Tuttavia, questo significa che questa versione main può non essere sempre stabile. Ci sforziamo per mantenere la versione main operativa, e la maggior parte dei problemi viene risolta in poche ore o in un giorno. Se riscontri un problema, per favore apri una Issue così possiamo sistemarlo ancora più velocemente!

Controlla se 🤗 Transformers è stata installata in modo appropriato con il seguente comando:

python -c "from transformers import pipeline; print(pipeline('sentiment-analysis')('I love you'))"

Installazione modificabile

Hai bisogno di un’installazione modificabile se vuoi:

  • Usare la versione main del codice dalla fonte.
  • Contribuire a 🤗 Transformers e hai bisogno di testare i cambiamenti nel codice.

Clona il repository e installa 🤗 Transformers con i seguenti comandi:

git clone https://github.com/huggingface/transformers.git
cd transformers
pip install -e .

Questi comandi collegheranno la cartella in cui è stato clonato il repository e i path delle librerie Python. Python guarderà ora all’interno della cartella clonata, oltre ai normali path delle librerie. Per esempio, se i tuoi pacchetti Python sono installati tipicamente in ~/anaconda3/envs/main/lib/python3.7/site-packages/, Python cercherà anche nella cartella clonata: ~/transformers/.

Devi tenere la cartella transformers se vuoi continuare ad utilizzare la libreria.

Ora puoi facilmente aggiornare il tuo clone all’ultima versione di 🤗 Transformers con il seguente comando:

cd ~/transformers/
git pull

Il tuo ambiente Python troverà la versione main di 🤗 Transformers alla prossima esecuzione.

Installazione con conda

Installazione dal canale conda conda-forge:

conda install conda-forge::transformers

Impostazione della cache

I modelli pre-allenati sono scaricati e memorizzati localmente nella cache in: ~/.cache/huggingface/transformers/. Questa è la directory di default data dalla variabile d’ambiente della shell TRANSFORMERS_CACHE. Su Windows, la directory di default è data da C:\Users\username\.cache\huggingface\transformers. Puoi cambiare le variabili d’ambiente della shell indicate in seguito, in ordine di priorità, per specificare una directory differente per la cache:

  1. Variabile d’ambiente della shell (default): TRANSFORMERS_CACHE.
  2. Variabile d’ambiente della shell: HF_HOME + transformers/.
  3. Variabile d’ambiente della shell: XDG_CACHE_HOME + /huggingface/transformers.

🤗 Transformers utilizzerà le variabili d’ambiente della shell PYTORCH_TRANSFORMERS_CACHE o PYTORCH_PRETRAINED_BERT_CACHE se si proviene da un’iterazione precedente di questa libreria e sono state impostate queste variabili d’ambiente, a meno che non si specifichi la variabile d’ambiente della shell TRANSFORMERS_CACHE.

ModalitĂ  Offline

🤗 Transformers può essere eseguita in un ambiente firewalled o offline utilizzando solo file locali. Imposta la variabile d’ambiente HF_HUB_OFFLINE=1 per abilitare questo comportamento.

Aggiungi 🤗 Datasets al tuo flusso di lavoro offline di training impostando la variabile d’ambiente HF_DATASETS_OFFLINE=1.

Ad esempio, in genere si esegue un programma su una rete normale, protetta da firewall per le istanze esterne, con il seguente comando:

python examples/pytorch/translation/run_translation.py --model_name_or_path google-t5/t5-small --dataset_name wmt16 --dataset_config ro-en ...

Esegui lo stesso programma in un’istanza offline con:

HF_DATASETS_OFFLINE=1 HF_HUB_OFFLINE=1 \
python examples/pytorch/translation/run_translation.py --model_name_or_path google-t5/t5-small --dataset_name wmt16 --dataset_config ro-en ...

Lo script viene ora eseguito senza bloccarsi o attendere il timeout, perchĂŠ sa di dover cercare solo file locali.

Ottenere modelli e tokenizer per l’uso offline

Un’altra opzione per utilizzare offline 🤗 Transformers è scaricare i file in anticipo, e poi puntare al loro path locale quando hai la necessità di utilizzarli offline. Ci sono tre modi per fare questo:

  • Scarica un file tramite l’interfaccia utente sul Model Hub premendo sull’icona ↓.

    download-icon

  • Utilizza il flusso PreTrainedModel.from_pretrained() e PreTrainedModel.save_pretrained():

    1. Scarica i tuoi file in anticipo con PreTrainedModel.from_pretrained():

      >>> from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
      
      >>> tokenizer = AutoTokenizer.from_pretrained("bigscience/T0_3B")
      >>> model = AutoModelForSeq2SeqLM.from_pretrained("bigscience/T0_3B")
    2. Salva i tuoi file in una directory specificata con PreTrainedModel.save_pretrained():

      >>> tokenizer.save_pretrained("./il/tuo/path/bigscience_t0")
      >>> model.save_pretrained("./il/tuo/path/bigscience_t0")
    3. Ora quando sei offline, carica i tuoi file con PreTrainedModel.from_pretrained() dalla directory specificata:

      >>> tokenizer = AutoTokenizer.from_pretrained("./il/tuo/path/bigscience_t0")
      >>> model = AutoModel.from_pretrained("./il/tuo/path/bigscience_t0")
  • Scarica in maniera programmatica i file con la libreria huggingface_hub:

    1. Installa la libreria huggingface_hub nel tuo ambiente virtuale:

      python -m pip install huggingface_hub
    2. Utilizza la funzione hf_hub_download per scaricare un file in un path specifico. Per esempio, il seguente comando scarica il file config.json dal modello T0 nel path che desideri:

      >>> from huggingface_hub import hf_hub_download
      
      >>> hf_hub_download(repo_id="bigscience/T0_3B", filename="config.json", cache_dir="./il/tuo/path/bigscience_t0")

Una volta che il tuo file è scaricato e salvato in cache localmente, specifica il suo path locale per caricarlo e utilizzarlo:

>>> from transformers import AutoConfig

>>> config = AutoConfig.from_pretrained("./il/tuo/path/bigscience_t0/config.json")

Fai riferimento alla sezione How to download files from the Hub per avere maggiori dettagli su come scaricare modelli presenti sull Hub.

< > Update on GitHub