Hugging Face Transformers

Using pre-trained models with Hugging Face Transformers.

Installation & Import

Install transformers
pip install transformers

Import
from transformers import pipeline
from transformers import AutoModel, AutoTokenizer

Pipelines

Text classification
classifier = pipeline("sentiment-analysis")
result = classifier("I love this!")

Text generation
generator = pipeline("text-generation")
text = generator("Once upon a time")

Question answering
qa = pipeline("question-answering")
result = qa(question="What is AI?", context="...")

Translation
translator = pipeline("translation_en_to_fr")
result = translator("Hello world")

Load Model & Tokenizer

Load pre-trained model
model_name = "bert-base-uncased"
model = AutoModel.from_pretrained(model_name)
tokenizer = AutoTokenizer.from_pretrained(model_name)

Tokenize text
inputs = tokenizer("Hello world", return_tensors="pt")

Get model output
outputs = model(**inputs)

Fine-tuning

Import Trainer
from transformers import Trainer, TrainingArguments

Define training arguments
training_args = TrainingArguments(
  output_dir="./results",
  num_train_epochs=3,
  per_device_train_batch_size=8,
  learning_rate=2e-5
)

Create trainer
trainer = Trainer(
  model=model,
  args=training_args,
  train_dataset=train_dataset
)

Train model
trainer.train()