Skip to content

This repo contains a full fledged ML based microservice. Utilizes the FastAPI framework for end point mapping. Deployed using AWS ECR and ECS.

License

Notifications You must be signed in to change notification settings

henrii1/ML-FastAPI-Microservice

Repository files navigation

FastAPI ML Microservice

Build Status Python Version License

Overview

This repository contains a fully-fledged machine learning-based microservice built with the FastAPI framework. The microservice exposes endpoints for seamless integration with machine learning models, making it easy to deploy and scale.

Features

  • FastAPI Framework: Utilizes FastAPI, a modern, fast, and web-based framework for building APIs with Python 3.7+.

  • AWS ECR and ECS Deployment: The microservice is designed to be easily deployed on Amazon Elastic Container Registry (ECR) and Elastic Container Service (ECS), providing a scalable and reliable cloud infrastructure.

Getting Started

  1. Clone the repository:

    git clone https://github.com/henrii1/fastapi-ml-microservice.git
    cd fastapi-ml-microservice
  2. Set up your Python environment (Python 3.8 or higher recommended):

    python -m venv venv
    source venv/bin/activate  # On Windows, use `venv\Scripts\activate`
  3. Install dependencies:

    pip install -r requirements.txt
  4. Run the streamlit app:

    streamlit run webapp/app_streamlit.py
    
  5. Run the FastAPI application:

    uvicorn main:app --reload
  6. Access the API at http://127.0.0.1:8000 and explore the available endpoints.

Deployment

For deployment on AWS ECR and ECS, follow the provided deployment scripts and configuration files. Ensure that your AWS credentials are properly configured.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

This repo contains a full fledged ML based microservice. Utilizes the FastAPI framework for end point mapping. Deployed using AWS ECR and ECS.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published