Bird
Raised Fist0
MLOpsdevops~20 mins

Batch prediction vs real-time serving in MLOps - Practice Questions

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
Challenge - 5 Problems
🎖️
Batch vs Real-Time Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Key difference between batch prediction and real-time serving

Which statement best describes the main difference between batch prediction and real-time serving in machine learning?

ABatch prediction processes many data points at once periodically, while real-time serving predicts instantly for individual requests.
BReal-time serving only works with small datasets, batch prediction only works with large datasets.
CBatch prediction is always more accurate than real-time serving because it uses more data.
DBatch prediction requires manual input for each prediction, real-time serving automates all predictions.
Attempts:
2 left
💡 Hint

Think about how often predictions are made and how many data points are handled at once.

Model Choice
intermediate
2:00remaining
Choosing prediction method for fraud detection

You are building a fraud detection system that must flag suspicious transactions immediately as they happen. Which prediction method is best?

ABatch prediction, running once a day on all transactions.
BReal-time serving, predicting only after collecting 100 transactions.
CBatch prediction, running once a week on all transactions.
DReal-time serving, predicting on each transaction as it occurs.
Attempts:
2 left
💡 Hint

Consider how fast the system needs to respond to new data.

Metrics
advanced
2:00remaining
Evaluating latency in batch vs real-time prediction

You measure the average latency (time to get prediction) for batch prediction and real-time serving. Which is true?

ABatch prediction has higher latency per data point than real-time serving.
BBoth have the same latency per data point.
CReal-time serving has higher latency per data point than batch prediction.
DLatency cannot be measured for batch prediction.
Attempts:
2 left
💡 Hint

Think about how predictions are processed individually or in groups.

🔧 Debug
advanced
2:00remaining
Identifying issue in real-time serving system

A real-time serving system is suddenly slow and sometimes fails to respond. Which is the most likely cause?

AThe model used is too simple and cannot handle the data volume.
BThe real-time serving system is overloaded with too many simultaneous requests.
CThe batch prediction job is running too frequently and blocking resources.
DThe data used for batch prediction is outdated.
Attempts:
2 left
💡 Hint

Consider what happens when many users request predictions at once.

Predict Output
expert
2:00remaining
Output of batch vs real-time prediction code snippet

Given the code below, what is the output?

MLOps
def batch_predict(model, data):
    return [model(x) for x in data]

def real_time_predict(model, x):
    return model(x)

model = lambda x: x * 2
batch_data = [1, 2, 3]

batch_result = batch_predict(model, batch_data)
real_time_result = real_time_predict(model, 4)

print(batch_result, real_time_result)
A[2, 4, 6] 8
B[1, 2, 3] 4
C[2, 4, 6] [8]
DError: model is not callable
Attempts:
2 left
💡 Hint

Look at how the model function is applied to data in batch and real-time.

Practice

(1/5)
1. What is the main difference between batch prediction and real-time serving in machine learning?
easy
A. Batch prediction is faster than real-time serving for single inputs.
B. Real-time serving is used only for training models.
C. Batch prediction processes many inputs at once, while real-time serving processes one input at a time.
D. Batch prediction requires internet connection, real-time serving does not.

Solution

  1. Step 1: Understand batch prediction

    Batch prediction processes a large number of inputs together, usually offline or in scheduled jobs.
  2. Step 2: Understand real-time serving

    Real-time serving handles one input at a time to provide instant predictions.
  3. Final Answer:

    Batch prediction processes many inputs at once, while real-time serving processes one input at a time. -> Option C
  4. Quick Check:

    Batch = many inputs, Real-time = one input [OK]
Hint: Batch = many inputs; real-time = one input fast [OK]
Common Mistakes:
  • Confusing batch with real-time speed
  • Thinking real-time is for training
  • Assuming batch needs internet
2. Which of the following is the correct way to describe real-time serving in a sentence?
easy
A. Real-time serving provides predictions instantly for each individual input.
B. Real-time serving delays predictions until batch processing is complete.
C. Real-time serving is only used for model training.
D. Real-time serving processes data in large groups at scheduled times.

Solution

  1. Step 1: Identify real-time serving purpose

    Real-time serving is designed to give instant predictions for each input as it arrives.
  2. Step 2: Eliminate incorrect options

    Options A, B, and C describe batch or training, not real-time serving.
  3. Final Answer:

    Real-time serving provides predictions instantly for each individual input. -> Option A
  4. Quick Check:

    Instant prediction per input = real-time serving [OK]
Hint: Real-time = instant single input prediction [OK]
Common Mistakes:
  • Mixing batch processing with real-time
  • Thinking real-time is for training
  • Confusing delay with instant response
3. Consider this Python pseudocode for batch prediction and real-time serving:
def batch_predict(data_list):
    return [model.predict(x) for x in data_list]

def real_time_predict(single_input):
    return model.predict(single_input)

batch_result = batch_predict([1, 2, 3])
real_time_result = real_time_predict(4)
print(batch_result, real_time_result)
What will be printed?
medium
A. pred1 pred2 pred3 pred4
B. [pred1, pred2, pred3] pred4
C. [pred1, pred2, pred3, pred4] None
D. Error because batch_predict expects a single input

Solution

  1. Step 1: Understand batch_predict output

    batch_predict returns a list of predictions for each input in data_list, so batch_result is a list [pred1, pred2, pred3].
  2. Step 2: Understand real_time_predict output

    real_time_predict returns a single prediction for the single input 4, so real_time_result is pred4.
  3. Final Answer:

    [pred1, pred2, pred3] pred4 -> Option B
  4. Quick Check:

    Batch returns list, real-time returns single prediction [OK]
Hint: Batch returns list; real-time returns single value [OK]
Common Mistakes:
  • Thinking batch returns single prediction
  • Confusing print output format
  • Assuming error due to input type
4. You have this code snippet for real-time serving:
def real_time_predict(input):
    predictions = []
    for x in input:
        predictions.append(model.predict(x))
    return predictions

result = real_time_predict(5)
print(result)
What is the error and how to fix it?
medium
A. Error: input is not iterable; fix by passing a list like [5].
B. Error: model.predict is undefined; fix by importing model.
C. No error; code runs correctly.
D. Error: predictions list is not returned; fix by adding return statement.

Solution

  1. Step 1: Identify input type issue

    The function expects input to be iterable (like a list), but 5 is an integer and not iterable.
  2. Step 2: Fix by passing iterable

    Passing [5] (a list with one element) makes the loop work correctly.
  3. Final Answer:

    Error: input is not iterable; fix by passing a list like [5]. -> Option A
  4. Quick Check:

    Non-iterable input causes error [OK]
Hint: Check if input is iterable for loops [OK]
Common Mistakes:
  • Passing single value instead of list
  • Ignoring error message about iteration
  • Assuming model.predict missing
5. A company wants to predict customer churn. They have 1 million customers and want to update predictions once a day. They also want to offer instant offers to customers calling support. Which approach fits best?
hard
A. Use batch prediction for support calls and real-time serving for daily updates.
B. Use only real-time serving for all predictions to keep data fresh.
C. Use batch prediction only and ignore real-time serving.
D. Use batch prediction once a day for all customers, and real-time serving for support calls.

Solution

  1. Step 1: Analyze batch prediction use case

    Predicting churn for 1 million customers once a day fits batch prediction well because it handles large data offline.
  2. Step 2: Analyze real-time serving use case

    Instant offers during support calls require quick predictions, so real-time serving is best.
  3. Final Answer:

    Use batch prediction once a day for all customers, and real-time serving for support calls. -> Option D
  4. Quick Check:

    Batch for bulk daily, real-time for instant [OK]
Hint: Batch for bulk jobs; real-time for instant needs [OK]
Common Mistakes:
  • Using real-time for all large data
  • Ignoring instant prediction needs
  • Mixing batch and real-time roles