Bird
Raised Fist0
Prompt Engineering / GenAIml~20 mins

API-based deployment in Prompt Engineering / GenAI - Practice Problems & Coding Challenges

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
🎖️
API Deployment Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Understanding API-based deployment benefits

Which of the following is the primary advantage of deploying a machine learning model via an API?

AIt eliminates the need for any server or cloud infrastructure.
BIt automatically improves the model's accuracy over time without retraining.
CIt allows real-time access to the model from different applications without sharing the model code.
DIt stores the entire training dataset within the API for faster predictions.
Attempts:
2 left
💡 Hint

Think about how APIs let different programs talk to each other.

Predict Output
intermediate
2:00remaining
Output of a simple API call to a deployed model

Given the following Python code snippet calling a deployed ML model API, what is the printed output?

Prompt Engineering / GenAI
import requests
response = requests.post('https://api.example.com/predict', json={'input': [1, 2, 3]})
print(response.json())
A{"prediction": [0.1, 0.5, 0.4]}
B{'error': 'Invalid input format'}
C{'prediction': [1, 0, 1]}
Drequests.exceptions.ConnectionError
Attempts:
2 left
💡 Hint

Assume the API is working correctly and returns prediction probabilities.

Hyperparameter
advanced
2:00remaining
Choosing timeout settings for API deployment

When deploying a machine learning model via an API, which timeout setting is most important to ensure good user experience without overloading the server?

ASet timeout to zero to prioritize requests in the order they arrive.
BSet a very high timeout so the server never cancels requests, even if slow.
CDisable timeout settings to allow unlimited request processing time.
DSet a low timeout to quickly reject requests that take too long, preventing server overload.
Attempts:
2 left
💡 Hint

Think about balancing responsiveness and server health.

Metrics
advanced
2:00remaining
Evaluating API latency metrics

You deployed a model via API and collected these latency times (in milliseconds) for 5 requests: [120, 150, 130, 200, 170]. What is the average latency?

A154 ms
B170 ms
C150 ms
D1540 ms
Attempts:
2 left
💡 Hint

Calculate the sum of all latencies and divide by the number of requests.

🔧 Debug
expert
3:00remaining
Identifying cause of API deployment failure

After deploying your ML model as an API, clients report a 500 Internal Server Error when sending valid requests. Which of the following is the most likely cause?

AThe client is sending requests with wrong input data types.
BThe model file path is incorrect or missing on the server.
CThe API endpoint URL is misspelled in the client code.
DThe server has no internet connection.
Attempts:
2 left
💡 Hint

500 errors usually mean server-side problems, not client mistakes.

Practice

(1/5)
1. What is the main purpose of API-based deployment in AI?
easy
A. To train AI models faster on local machines
B. To share AI models as easy-to-use services over the internet
C. To store large datasets securely
D. To visualize AI model results on graphs

Solution

  1. Step 1: Understand API-based deployment

    API-based deployment allows AI models to be accessed remotely as services.
  2. Step 2: Identify the main purpose

    This means apps can get predictions without running the model themselves, making sharing easy.
  3. Final Answer:

    To share AI models as easy-to-use services over the internet -> Option B
  4. Quick Check:

    API deployment = share models online [OK]
Hint: API deployment means sharing models as services online [OK]
Common Mistakes:
  • Confusing deployment with training
  • Thinking API stores data
  • Assuming API is for visualization only
2. Which Python library is commonly used to create a simple API server for deploying AI models?
easy
A. NumPy
B. Matplotlib
C. Flask
D. Pandas

Solution

  1. Step 1: Recall common Python libraries

    NumPy is for math, Pandas for data, Matplotlib for plots, Flask for web servers.
  2. Step 2: Identify the API server library

    Flask is a lightweight web framework used to create APIs easily.
  3. Final Answer:

    Flask -> Option C
  4. Quick Check:

    Flask = simple API server [OK]
Hint: Flask is the go-to for simple Python APIs [OK]
Common Mistakes:
  • Choosing data libraries instead of web frameworks
  • Confusing Flask with data processing tools
  • Thinking Matplotlib creates APIs
3. Given this Flask API code snippet, what will be the output when sending a POST request with JSON {"input": 5}?
from flask import Flask, request, jsonify
app = Flask(__name__)

@app.route('/predict', methods=['POST'])
def predict():
    data = request.get_json()
    x = data['input']
    result = x * 2
    return jsonify({'output': result})

if __name__ == '__main__':
    app.run()
medium
A. {"output": 10}
B. {"output": 5}
C. {"output": 25}
D. Error: Missing input key

Solution

  1. Step 1: Understand the input and processing

    The API receives JSON with key 'input' and value 5, then multiplies it by 2.
  2. Step 2: Calculate the output

    5 * 2 = 10, so the output JSON will have 'output': 10.
  3. Final Answer:

    {"output": 10} -> Option A
  4. Quick Check:

    Input 5 doubled = 10 [OK]
Hint: Multiply input by 2 as per code logic [OK]
Common Mistakes:
  • Confusing input and output values
  • Assuming output equals input
  • Missing JSON key causes error
4. Identify the error in this Flask API code for deploying a model:
from flask import Flask, request, jsonify
app = Flask(__name__)

@app.route('/predict', methods=['POST'])
def predict():
    data = request.json()
    x = data['input']
    result = x + 1
    return jsonify({'output': result})

if __name__ == '__main__':
    app.run()
medium
A. Incorrect HTTP method, should be GET
B. Missing route decorator
C. Returning plain string instead of JSON
D. Using request.json() instead of request.get_json()

Solution

  1. Step 1: Check how JSON is accessed in Flask

    Flask's request object uses get_json() method, not json() function.
  2. Step 2: Identify the error

    Using request.json() will cause an AttributeError; correct is request.get_json().
  3. Final Answer:

    Using request.json() instead of request.get_json() -> Option D
  4. Quick Check:

    Use get_json() to parse JSON [OK]
Hint: Use request.get_json(), not request.json() [OK]
Common Mistakes:
  • Confusing request.json with get_json()
  • Changing HTTP method unnecessarily
  • Forgetting route decorator
5. You want to deploy a machine learning model via an API that predicts house prices. The model expects a JSON with features like 'size' and 'bedrooms'. Which approach best ensures your API handles missing features gracefully?
hard
A. Fill missing features with default values before prediction
B. Return an error if any feature is missing without processing
C. Ignore missing features and predict with available data only
D. Restart the server to reset missing data

Solution

  1. Step 1: Understand missing feature handling

    Missing features can cause prediction errors if not handled properly.
  2. Step 2: Choose a robust approach

    Filling missing features with default or average values allows prediction to continue safely.
  3. Final Answer:

    Fill missing features with default values before prediction -> Option A
  4. Quick Check:

    Use defaults for missing inputs [OK]
Hint: Use default values to handle missing features [OK]
Common Mistakes:
  • Stopping API on missing data
  • Ignoring missing features causing errors
  • Restarting server unrelated to missing data