Bird
Raised Fist0
NLPml~10 mins

Hugging Face Transformers library in NLP - Interactive Code Practice

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to load a pre-trained BERT tokenizer from Hugging Face.

NLP
from transformers import [1]
tokenizer = [1].from_pretrained('bert-base-uncased')
Drag options to blanks, or click blank then click option'
ABertTokenizer
BBertModel
CAutoModel
DAutoTokenizer
Attempts:
3 left
💡 Hint
Common Mistakes
Using BertModel instead of BertTokenizer will cause errors because BertModel is for the model, not the tokenizer.
Using AutoModel instead of a tokenizer class.
2fill in blank
medium

Complete the code to tokenize a sentence using the tokenizer.

NLP
sentence = "Hello, how are you?"
tokens = tokenizer.[1](sentence, return_tensors='pt')
Drag options to blanks, or click blank then click option'
Aencode
Bencode_plus
Ctokenize
Dbatch_encode_plus
Attempts:
3 left
💡 Hint
Common Mistakes
Using tokenize returns only tokens as strings, not tensors.
Using encode returns token ids but not attention masks.
3fill in blank
hard

Fix the error in the code to load a pre-trained BERT model for sequence classification.

NLP
from transformers import BertForSequenceClassification
model = BertForSequenceClassification.from_pretrained([1])
Drag options to blanks, or click blank then click option'
Abert-base
Bbert-base-cased
Cbert-base-uncased-cased
Dbert-base-uncased
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'bert-base-uncased-cased' is invalid because it mixes casing.
Using 'bert-base' is incomplete and will cause an error.
4fill in blank
hard

Fill both blanks to prepare inputs and get model outputs.

NLP
inputs = tokenizer([1], return_tensors=[2])
outputs = model(**inputs)
Drag options to blanks, or click blank then click option'
A"This is a test sentence."
Bpt
Ctf
D"Another example text."
Attempts:
3 left
💡 Hint
Common Mistakes
Passing a list instead of a string for a single sentence.
Using 'tf' when the model expects PyTorch tensors.
5fill in blank
hard

Fill all three blanks to extract predicted class from model logits.

NLP
import torch
logits = outputs.logits
predicted_class = torch.[1](logits, dim=[2]).[3]()
Drag options to blanks, or click blank then click option'
Aargmax
B1
Citem
Dmax
Attempts:
3 left
💡 Hint
Common Mistakes
Using max instead of argmax returns the max value, not the index.
Using dim=0 instead of dim=1 for batch outputs.

Practice

(1/5)
1. What is the main purpose of the Hugging Face Transformers library?
easy
A. To manage databases efficiently
B. To create new programming languages
C. To design user interfaces
D. To easily use pre-trained language models for various tasks

Solution

  1. Step 1: Understand the library's goal

    The Hugging Face Transformers library provides easy access to pre-trained language models.
  2. Step 2: Match the purpose with options

    Only To easily use pre-trained language models for various tasks describes using pre-trained language models for tasks like sentiment analysis and translation.
  3. Final Answer:

    To easily use pre-trained language models for various tasks -> Option D
  4. Quick Check:

    Library purpose = Easy use of language models [OK]
Hint: Think: What does the library help you do with language models? [OK]
Common Mistakes:
  • Confusing it with database or UI tools
  • Thinking it creates new programming languages
  • Assuming it manages hardware or networks
2. Which of the following is the correct way to import the pipeline function from Hugging Face Transformers?
easy
A. from transformers import pipeline
B. import transformers.pipeline
C. from huggingface import pipeline
D. import pipeline from transformers

Solution

  1. Step 1: Recall correct import syntax in Python

    Python uses 'from module import function' to import specific functions.
  2. Step 2: Check each option's syntax

    from transformers import pipeline uses correct syntax: 'from transformers import pipeline'. Others are incorrect or invalid.
  3. Final Answer:

    from transformers import pipeline -> Option A
  4. Quick Check:

    Correct import syntax = from transformers import pipeline [OK]
Hint: Remember Python import style: from module import function [OK]
Common Mistakes:
  • Using dot notation incorrectly in import
  • Confusing library name 'huggingface' with 'transformers'
  • Wrong import order or keywords
3. What will be the output of this code snippet?
from transformers import pipeline
sentiment = pipeline('sentiment-analysis')
result = sentiment('I love learning AI!')
print(result)
medium
A. [{'label': 'POSITIVE', 'score': 0.99}]
B. [{'label': 'NEGATIVE', 'score': 0.99}]
C. SyntaxError
D. Empty list []

Solution

  1. Step 1: Understand the pipeline task

    The pipeline is set for 'sentiment-analysis', which classifies text sentiment.
  2. Step 2: Analyze the input text sentiment

    The text 'I love learning AI!' is positive, so the model predicts 'POSITIVE' with high confidence.
  3. Final Answer:

    [{'label': 'POSITIVE', 'score': 0.99}] -> Option A
  4. Quick Check:

    Positive text = POSITIVE label [OK]
Hint: Positive words usually yield 'POSITIVE' sentiment [OK]
Common Mistakes:
  • Assuming negative sentiment for positive text
  • Expecting syntax errors without code issues
  • Thinking output is empty list
4. Identify the error in this code snippet:
from transformers import pipeline
translator = pipeline('translation')
result = translator('Hello world')
print(result[0])
medium
A. The task name 'translation' is incorrect
B. Incorrect indexing in print statement
C. Missing model specification in pipeline
D. No import statement for pipeline

Solution

  1. Step 1: Check pipeline usage for translation

    Translation pipelines often require specifying a model or use a correct task name.
  2. Step 2: Verify if model is specified

    The code uses task 'translation' but does not specify a model, which can cause errors.
  3. Final Answer:

    Missing model specification in pipeline -> Option C
  4. Quick Check:

    Translation pipeline needs model specified [OK]
Hint: Translation pipelines usually need model name specified [OK]
Common Mistakes:
  • Assuming task name is always correct without model
  • Thinking print indexing is wrong
  • Ignoring missing model argument
5. You want to use Hugging Face Transformers to answer questions based on a custom text passage. Which approach is best?
hard
A. Use the 'sentiment-analysis' pipeline on the passage
B. Use the 'question-answering' pipeline with the passage as context
C. Train a new model from scratch without using pipelines
D. Use the 'translation' pipeline to convert the passage

Solution

  1. Step 1: Identify the task needed

    Answering questions based on a passage requires a question-answering model that uses context.
  2. Step 2: Match pipeline to task

    The 'question-answering' pipeline accepts a question and context passage to find answers.
  3. Final Answer:

    Use the 'question-answering' pipeline with the passage as context -> Option B
  4. Quick Check:

    QA pipeline fits question + context tasks [OK]
Hint: QA pipeline is for questions with context passages [OK]
Common Mistakes:
  • Using sentiment or translation pipelines incorrectly
  • Thinking training from scratch is needed for simple use
  • Ignoring context input for question answering