Modèles automatiques et tokeniseurs

Travailler avec Hugging Face

Jacob H. Marquez

Lead Data Engineer

Pipelines : rapides et simples

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}]
Travailler avec Hugging Face

Classes auto : flexibles et performantes

$$

  • Cours auto : accès flexible aux modèles et aux tokeniseurs
  • Contrôle accru sur le comportement et les résultats du modèle
  • Idéal pour les tâches avancées

$$

  • Pipelines = rapidité ; Classes automatiques = flexibilité

Three slider bars with toggles and a hand adjusting one of them. Representing more control.

Travailler avec Hugging Face

Modèles auto

  • Sélectionner une classe AutoModel pour télécharger directement un modèle

$$

from transformers import AutoModelForSequenceClassification

# Download a pre-trained text classification model model = AutoModelForSequenceClassification.from_pretrained( "distilbert-base-uncased-finetuned-sst-2-english" )
Travailler avec Hugging Face

AutoTokenizers

  • Préparer les données de saisie de texte
  • Il est recommandé d'utiliser le tokenizer associé au modèle

$$

from transformers import AutoTokenizer


# Retrieve the tokenizer paired with the model tokenizer = AutoTokenizer.from_pretrained( "distilbert-base-uncased-finetuned-sst-2-english" )
Travailler avec Hugging Face

Tokenisation de texte avec AutoTokenizer

  • Les tokeniseurs nettoient les données saisies et divisent le texte en tokens

$$

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

# Tokenize input text tokens = tokenizer.tokenize("AI: Helping robots think and humans overthink:)") print(tokens)
['ai', ':', 'helping', 'robots', 'think', 'and', 
 'humans', 'over', '##thi', '##nk', ':', ')']
Travailler avec Hugging Face

Différents modèles, différents tokeniseurs

  • Notre modèle (distilbert-base-uncased) :

    ['ai', ':', 'helping', 'robots', 'think', 'and', 'humans', 'over', '##thi',
    '##nk', ':', ')']
    
  • Tokeniseur basé sur BERT :

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

Création d'un pipeline avec les classes automatiques

from transformers import AutoModelForSequenceClassification,
AutoTokenizer, pipeline

# Download the model and 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")
# Create the custom pipeline my_pipeline = pipeline( task="sentiment-analysis", model=my_model, tokenizer=my_tokenizer)
Travailler avec Hugging Face

Cas d'utilisation des modèles automatiques et des tokeniseurs automatiques

$$

  • 🔧 Utiliser cette fonctionnalité pour bénéficier d'un contrôle accru et d'options de personnalisation

  • 📝 Prétraitement du texte : nettoyer et tokeniser pour des cas d'utilisation spécifiques

  • 🏆 Seuil : donner la priorité aux catégories clés dans les tâches de classification
  • 🚀 Flux de travail complexes : contrôler le traitement et l'intégration en plusieurs étapes

$$ More control and customization

Travailler avec Hugging Face

Passons à la pratique !

Travailler avec Hugging Face

Preparing Video For Download...