Auto Models e Tokenizers

Trabalhando com Hugging Face

Jacob H. Marquez

Lead Data Engineer

Pipelines: rápidos e 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}]
Trabalhando com Hugging Face

Auto Classes: flexíveis e poderosas

$$

  • Auto classes: Acesso flexível a modelos e tokenizers
  • Mais controle sobre o comportamento e as saídas
  • Perfeito para tarefas avançadas

$$

  • Pipelines = rápidos; Auto classes = flexíveis

Três barras deslizantes com alternadores e uma mão ajustando uma delas. Representa mais controle.

Trabalhando com Hugging Face

AutoModels

  • Escolha uma classe AutoModel para baixar um modelo direto

$$

from transformers import AutoModelForSequenceClassification

# Baixar um modelo pré-treinado de classificação de texto model = AutoModelForSequenceClassification.from_pretrained( "distilbert-base-uncased-finetuned-sst-2-english" )
Trabalhando com Hugging Face

AutoTokenizers

  • Prepare os textos de entrada
  • Recomenda-se usar o tokenizer pareado com o modelo

$$

from transformers import AutoTokenizer


# Recuperar o tokenizer pareado com o modelo tokenizer = AutoTokenizer.from_pretrained( "distilbert-base-uncased-finetuned-sst-2-english" )
Trabalhando com Hugging Face

Tokenizando texto com AutoTokenizer

  • Tokenizers limpam a entrada e dividem o texto em 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', ':', ')']
Trabalhando com Hugging Face

Modelos diferentes, tokenizers diferentes

  • Nosso modelo (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', ':', ')']
    
Trabalhando com Hugging Face

Construindo um Pipeline com Auto Classes

from transformers import AutoModelForSequenceClassification,
AutoTokenizer, pipeline

# Baixar o modelo e o 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")
# Criar o pipeline customizado my_pipeline = pipeline( task="sentiment-analysis", model=my_model, tokenizer=my_tokenizer)
Trabalhando com Hugging Face

Casos de uso de AutoModels e AutoTokenizers

$$

  • 🔧 Use para mais controle e personalização

  • 📝 Pré-processamento de texto: Limpe e tokenize para casos específicos

  • 🏆 Thresholding: Priorize categorias-chave em classificação
  • 🚀 Workflows complexos: Controle processamento em várias etapas e integrações

$$ Mais controle e personalização

Trabalhando com Hugging Face

Vamos praticar!

Trabalhando com Hugging Face

Preparing Video For Download...