Modelos y tokenizadores automáticos

Trabajar con Hugging Face

Jacob H. Marquez

Lead Data Engineer

Pipelines: rápidos y simples

from transformers import pipeline  

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

print(my_pipeline("¡El Wi-Fi va más lento que un caracol hoy!"))
[{'label': 'NEGATIVE', 'score': 0.99}]
Trabajar con Hugging Face

Clases Auto: flexibles y potentes

$$

  • Clases Auto: Acceso flexible a modelos y tokenizadores
  • Más control sobre el comportamiento y las salidas
  • Ideal para tareas avanzadas

$$

  • Pipelines = rápidos; Clases Auto = flexibles

Tres barras deslizantes con interruptores y una mano ajustando una. Representa más control.

Trabajar con Hugging Face

AutoModels

  • Elige una clase AutoModel para descargar un modelo directamente

$$

from transformers import AutoModelForSequenceClassification

# Descarga un modelo preentrenado de clasificación de texto model = AutoModelForSequenceClassification.from_pretrained( "distilbert-base-uncased-finetuned-sst-2-english" )
Trabajar con Hugging Face

AutoTokenizers

  • Prepara el texto de entrada
  • Se recomienda usar el tokenizador emparejado con el modelo

$$

from transformers import AutoTokenizer


# Recupera el tokenizador emparejado con el modelo tokenizer = AutoTokenizer.from_pretrained( "distilbert-base-uncased-finetuned-sst-2-english" )
Trabajar con Hugging Face

Tokenizar texto con AutoTokenizer

  • Los tokenizadores limpian la entrada y dividen el texto en tokens

$$

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

# Tokeniza el texto de entrada tokens = tokenizer.tokenize("AI: Helping robots think and humans overthink:)") print(tokens)
['ai', ':', 'helping', 'robots', 'think', 'and', 
 'humans', 'over', '##thi', '##nk', ':', ')']
Trabajar con Hugging Face

Modelos distintos, tokenizadores distintos

  • Nuestro modelo (distilbert-base-uncased):

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

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

Crear un pipeline con clases Auto

from transformers import AutoModelForSequenceClassification,
AutoTokenizer, pipeline

# Descarga el modelo y el tokenizador 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 el pipeline personalizado my_pipeline = pipeline( task="sentiment-analysis", model=my_model, tokenizer=my_tokenizer)
Trabajar con Hugging Face

Casos de uso de AutoModels y AutoTokenizers

$$

  • 🔧 Úsalas para más control y personalización

  • 📝 Preprocesado de texto: Limpia y tokeniza para casos concretos

  • 🏆 Umbrales: Prioriza categorías clave en clasificación
  • 🚀 Flujos complejos: Controla procesos multi-etapa e integración

$$ Más control y personalización

Trabajar con Hugging Face

¡Vamos a practicar!

Trabajar con Hugging Face

Preparing Video For Download...