Bird
Raised Fist0
NLPml~10 mins

spaCy installation and models 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 install spaCy using pip.

NLP
pip [1] spacy
Drag options to blanks, or click blank then click option'
Alist
Binstall
Cremove
Dupdate
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'pip update spacy' which is not the correct command to install.
Using 'pip remove spacy' which uninstalls the package.
2fill in blank
medium

Complete the code to download the English small model for spaCy.

NLP
python -m spacy [1] en_core_web_sm
Drag options to blanks, or click blank then click option'
Aremove
Binstall
Cupdate
Ddownload
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'install' instead of 'download' for spaCy models.
Trying to use pip to install the model directly.
3fill in blank
hard

Fix the error in the code to load the spaCy English model.

NLP
import spacy
nlp = spacy.[1]('en_core_web_sm')
Drag options to blanks, or click blank then click option'
Ainstall
Bdownload
Cload
Drun
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'download' or 'install' instead of 'load' in code.
Trying to run the model as a function.
4fill in blank
hard

Fill both blanks to create a spaCy pipeline and process text.

NLP
import spacy
nlp = spacy.[1]('en_core_web_sm')
doc = nlp([2])
Drag options to blanks, or click blank then click option'
Aload
B'Hello world!'
C'This is a test.'
Ddownload
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'download' instead of 'load' to get the model.
Passing a variable name instead of a string to the model.
5fill in blank
hard

Fill all three blanks to extract tokens from text using spaCy.

NLP
import spacy
nlp = spacy.[1]('en_core_web_sm')
doc = nlp([2])
tokens = [token.[3] for token in doc]
Drag options to blanks, or click blank then click option'
Aload
B'Natural Language Processing is fun!'
Ctext
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'download' instead of 'load'.
Passing a variable name instead of a string.
Using 'token' instead of 'token.text' to get token strings.

Practice

(1/5)
1. What is the correct command to install spaCy using pip?
easy
A. pip install spacy-model
B. pip install spacy
C. python -m spacy install
D. pip download spacy

Solution

  1. Step 1: Understand pip installation command

    The standard way to install Python packages is using pip install package_name.
  2. Step 2: Identify spaCy package name

    The correct package name for spaCy is exactly spacy, so the command is pip install spacy.
  3. Final Answer:

    pip install spacy -> Option B
  4. Quick Check:

    pip install spacy = B [OK]
Hint: Use 'pip install spacy' to install the main package [OK]
Common Mistakes:
  • Using 'pip install spacy-model' which is incorrect
  • Trying 'python -m spacy install' which is invalid
  • Using 'pip download spacy' which only downloads, not installs
2. Which command correctly downloads the English small model for spaCy?
easy
A. python -m spacy download en_core_web_sm
B. pip install en_core_web_sm
C. spacy install en_core_web_sm
D. python spacy download en

Solution

  1. Step 1: Identify the correct download command format

    spaCy models are downloaded using python -m spacy download <model_name>.
  2. Step 2: Match the correct model name for English small

    The official English small model is named en_core_web_sm, so the full command is python -m spacy download en_core_web_sm.
  3. Final Answer:

    python -m spacy download en_core_web_sm -> Option A
  4. Quick Check:

    python -m spacy download en_core_web_sm = A [OK]
Hint: Use 'python -m spacy download model_name' to get models [OK]
Common Mistakes:
  • Trying to install models with pip instead of spacy download
  • Using incomplete model names like 'en' only
  • Using 'spacy install' which is not a valid command
3. What will be the output of this code snippet after loading the spaCy English model and processing text?
import spacy
nlp = spacy.load('en_core_web_sm')
doc = nlp('Hello world!')
print([(token.text, token.pos_) for token in doc])
medium
A. [('Hello', 'NOUN'), ('world', 'VERB'), ('!', 'PUNCT')]
B. [('Hello', 'VERB'), ('world', 'ADJ'), ('!', 'SYM')]
C. [('Hello', 'INTJ'), ('world', 'NOUN'), ('!', 'PUNCT')]
D. SyntaxError

Solution

  1. Step 1: Load the English model and process text

    The code loads the 'en_core_web_sm' model and processes the sentence 'Hello world!'.
  2. Step 2: Understand token parts of speech

    In spaCy, 'Hello' is tagged as interjection (INTJ), 'world' as noun (NOUN), and '!' as punctuation (PUNCT).
  3. Final Answer:

    [('Hello', 'INTJ'), ('world', 'NOUN'), ('!', 'PUNCT')] -> Option C
  4. Quick Check:

    Token POS tags match [('Hello', 'INTJ'), ('world', 'NOUN'), ('!', 'PUNCT')] [OK]
Hint: Remember 'Hello' is INTJ, 'world' is NOUN, '!' is PUNCT [OK]
Common Mistakes:
  • Confusing POS tags like 'Hello' as VERB
  • Expecting syntax error due to correct code
  • Mixing up punctuation tag as SYM instead of PUNCT
4. Identify the error in this code snippet for loading a spaCy model:
import spacy
nlp = spacy.load('en_core_web_md')
doc = nlp('Test sentence.')
print(doc.text)

Assuming the model was not downloaded yet.
medium
A. ModelNotFoundError because 'en_core_web_md' is not installed
B. SyntaxError due to wrong import
C. AttributeError on 'nlp' object
D. No error, code runs fine

Solution

  1. Step 1: Check if model is downloaded

    The code tries to load 'en_core_web_md' model, which must be downloaded first using spaCy's download command.
  2. Step 2: Understand error when model missing

    If the model is not installed, spaCy raises a ModelNotFoundError when calling spacy.load().
  3. Final Answer:

    ModelNotFoundError because 'en_core_web_md' is not installed -> Option A
  4. Quick Check:

    Missing model causes ModelNotFoundError [OK]
Hint: Always download models before loading to avoid ModelNotFoundError [OK]
Common Mistakes:
  • Assuming code runs without downloading model
  • Thinking import causes SyntaxError
  • Expecting AttributeError on nlp object
5. You want to process text in French using spaCy. Which steps correctly install and load the French model for use in your Python code?
hard
A. Run python -m spacy install fr_core_news_sm then nlp = spacy.load('fr_core_news_sm')
B. Run pip install fr_core_news_sm then nlp = spacy.load('fr')
C. Run python -m spacy download fr then nlp = spacy.load('fr_core_news_sm')
D. Run python -m spacy download fr_core_news_sm then nlp = spacy.load('fr_core_news_sm')

Solution

  1. Step 1: Download the correct French model

    The official French small model is named fr_core_news_sm, downloaded with python -m spacy download fr_core_news_sm.
  2. Step 2: Load the model in Python

    After downloading, load it with spacy.load('fr_core_news_sm') to process French text.
  3. Final Answer:

    Run python -m spacy download fr_core_news_sm then nlp = spacy.load('fr_core_news_sm') -> Option D
  4. Quick Check:

    Download full model name, then load same name [OK]
Hint: Download full model name, then load it exactly [OK]
Common Mistakes:
  • Trying to install model with pip instead of spacy download
  • Using short name 'fr' in download command
  • Using 'spacy install' which is invalid