Auto Models e Tokenizer

Lavorare con Hugging Face

Jacob H. Marquez

Lead Data Engineer

Pipeline: veloci e semplici

from transformers import pipeline  

my_pipeline = pipeline(
    "text-classification",
    model="distilbert-base-uncased-finetuned-sst-2-english"))

print(my_pipeline("Wi-Fi is slower than a snail today!"))
[{'label': 'NEGATIVE', 'score': 0.99}]
Lavorare con Hugging Face

Auto Classes: flessibili e potenti

$$

  • Auto classes: accesso flessibile a modelli e tokenizer
  • Più controllo su comportamento e output del modello
  • Ideali per task avanzati

$$

  • Pipeline = veloci; Auto classes = flessibili

Tre cursori con interruttori e una mano che ne regola uno. Rappresentano più controllo.

Lavorare con Hugging Face

AutoModels

  • Scegli una classe AutoModel per scaricare direttamente un modello

$$

from transformers import AutoModelForSequenceClassification

# Scarica un modello pre-addestrato di classificazione del testo model = AutoModelForSequenceClassification.from_pretrained( "distilbert-base-uncased-finetuned-sst-2-english" )
Lavorare con Hugging Face

AutoTokenizers

  • Prepara il testo di input
  • Consigliato usare il tokenizer abbinato al modello

$$

from transformers import AutoTokenizer


# Recupera il tokenizer abbinato al modello tokenizer = AutoTokenizer.from_pretrained( "distilbert-base-uncased-finetuned-sst-2-english" )
Lavorare con Hugging Face

Tokenizzare il testo con AutoTokenizer

  • I tokenizer pulisono l'input e dividono il testo in token

$$

tokenizer = AutoTokenizer.from_pretrained("distilbert-base-uncased")

# Tokenizza il testo di input tokens = tokenizer.tokenize("AI: Helping robots think and humans overthink:)") print(tokens)
['ai', ':', 'helping', 'robots', 'think', 'and', 
 'humans', 'over', '##thi', '##nk', ':', ')']
Lavorare con Hugging Face

Modelli diversi, tokenizer diversi

  • Il nostro modello (distilbert-base-uncased):

    ['ai', ':', 'helping', 'robots', 'think', 'and', 'humans', 'over', '##thi',
    '##nk', ':', ')']
    
  • Tokenizer BERT-Base-Cased:

    ['AI', ':', 'Help', '##ing', 'robots', 'think', 'and', 'humans', 'over',
    '##thin', '##k', ':', ')']
    
Lavorare con Hugging Face

Creare una pipeline con le Auto Classes

from transformers import AutoModelForSequenceClassification,
AutoTokenizer, pipeline

# Scarica il modello e il tokenizer my_model = AutoModelForSequenceClassification.from_pretrained( "distilbert-base-uncased-finetuned-sst-2-english") my_tokenizer = AutoTokenizer.from_pretrained( "distilbert-base-uncased-finetuned-sst-2-english")
# Crea la pipeline personalizzata my_pipeline = pipeline( task="sentiment-analysis", model=my_model, tokenizer=my_tokenizer)
Lavorare con Hugging Face

Casi d'uso per AutoModels e AutoTokenizers

$$

  • 🔧 Usale per più controllo e personalizzazione

  • 📝 Preprocessing del testo: pulisci e tokenizza per casi d'uso specifici

  • 🏆 Soglie (threshold): dai priorità alle classi chiave nei task di classificazione
  • 🚀 Workflow complessi: controlla pipeline multi-stage e integrazione

$$ Più controllo e personalizzazione

Lavorare con Hugging Face

Passiamo alla pratica !

Lavorare con Hugging Face

Preparing Video For Download...