2. Which of the following is the correct way to create a QA pipeline using Hugging Face Transformers in Python?
easy
A. import pipeline from transformers
qa = pipeline('qa')
B. from transformers import QA
qa = QA('pipeline')
C. from transformers import question_answering
qa = question_answering()
D. from transformers import pipeline
qa = pipeline('question-answering')
Solution
Step 1: Recall correct import and pipeline creation
The correct import is from transformers import pipeline, then call pipeline('question-answering').
Step 2: Check each option syntax
Only from transformers import pipeline
qa = pipeline('question-answering') matches the correct syntax and function call.
Final Answer:
from transformers import pipeline
qa = pipeline('question-answering') -> Option D
Quick Check:
Correct import and pipeline call = from transformers import pipeline
qa = pipeline('question-answering') [OK]
Hint: Use pipeline('question-answering') from transformers [OK]
Common Mistakes:
Wrong import statement
Incorrect pipeline argument
Using non-existent classes or functions
3. What will be the output of this code snippet?
from transformers import pipeline
qa = pipeline('question-answering')
result = qa(question='Where is the Eiffel Tower?', context='The Eiffel Tower is in Paris.')
print(result['answer'])
medium
A. In Paris
B. Paris
C. The Eiffel Tower
D. Eiffel Tower
Solution
Step 1: Understand the question and context
The question asks for the location of the Eiffel Tower, and the context states it is in Paris.
Step 2: Predict the pipeline answer output
The pipeline extracts the answer span from the context, which is 'Paris'.
Final Answer:
Paris -> Option B
Quick Check:
Answer extracted = Paris [OK]
Hint: Answer is the location mentioned in context [OK]
Common Mistakes:
Choosing the full phrase instead of the exact answer
Confusing question with context text
Expecting the pipeline to generate new text
4. Identify the error in this code snippet that uses the Hugging Face QA pipeline:
from transformers import pipeline
qa = pipeline('question-answering')
result = qa(question='Who wrote Hamlet?', text='Hamlet was written by Shakespeare.')
print(result['answer'])
medium
A. The argument 'text' should be 'context'.
B. The pipeline name should be 'qa' instead of 'question-answering'.
C. The print statement should use result.answer instead of result['answer'].
D. The import statement is incorrect.
Solution
Step 1: Check pipeline argument names
The QA pipeline expects 'question' and 'context' as arguments, not 'text'.
Step 2: Verify other parts of the code
Pipeline name and import are correct; accessing result['answer'] is valid.
Final Answer:
The argument 'text' should be 'context'. -> Option A
Quick Check:
Use 'context' argument for QA pipeline [OK]
Hint: Use 'context' not 'text' for QA input [OK]
Common Mistakes:
Using 'text' instead of 'context'
Changing pipeline name incorrectly
Wrong result access syntax
5. You want to build a QA system that answers questions from multiple documents. Which approach using Hugging Face pipelines is best?
hard
A. Run the QA pipeline separately on each document and pick the answer with highest score.
B. Concatenate all documents into one string and run the QA pipeline once.
C. Use the QA pipeline only on the first document and ignore others.
D. Train a new model from scratch for multiple documents.
Solution
Step 1: Understand pipeline input limits
QA pipelines work best on one context at a time; long concatenated text may reduce accuracy.
Step 2: Evaluate options for multiple documents
Running QA on each document separately and selecting the best answer is effective and practical.
Final Answer:
Run the QA pipeline separately on each document and pick the answer with highest score. -> Option A
Quick Check:
Separate runs + best score = best multi-doc QA [OK]
Hint: Run QA on each doc, choose best answer [OK]
Common Mistakes:
Concatenating all documents causing context overflow