You have trained a machine learning model and want to deploy it so that external mobile apps and third-party web services can query it to receive real-time predictions. Which technology is best suited for exposing this model as a service?
Select an answer to reveal the explanation.
Short Explanation
If your mobile developers need to send customer data to your model and get predictions back instantly, you wrap the model in web service technology using RESTful API endpoints. That gives you URL endpoints where apps send JSON requests and get JSON responses back. It's clean, standard, and it's how production systems communicate.
Full Explanation
To make machine learning models accessible to external applications, models must be deployed as web services. RESTful API (Representational State Transfer Application Programming Interface) is the standard technology for this task. It allows client applications, such as mobile apps, front-end websites, or other microservices, to communicate with model servers over HTTP. Clients send requests containing input features, often formatted as JSON, and API endpoints route this data to models, trigger inference, and return predictions back to clients. Frameworks like FastAPI, Flask, or cloud-based model hosting services, such as AWS SageMaker, Azure ML, Google Vertex AI, are commonly used to build and expose these REST APIs.
The other choices are not suitable for web service deployment. Jupyter Notebook is an interactive development environment used for prototyping, exploratory data analysis, and model training, not for serving high-performance, real-time production requests. Static CSV files are static data formats; they cannot process live inputs or dynamically execute model code. Standalone Python scripts running locally lack web routing, concurrency management, and protocol handling required to accept and respond to external network requests.