This is the backend for the TinyMLaaS project.
Start by cloning this repository. Then setup and run the app with the following steps.
Setup venv with:
python -m venv venv
Activate the virtual environment with:
source venv/bin/activate
Install project dependencies by running the following command inside the virtual environment:
pip install -r requirements.txt
In a new terminal window, run the following commands to set up an sqlite database:
sqlite3
.open tiny_mlaas.db
.read schema.sql
.read populate.sql
To connect the backend to the database, create a .env file (in the project's root directory) with the following line:
DATABASE_URL="sqlite:///./tiny_mlaas.db"
The projects main repository contains the machine learning modules. Download the modules by running the following command in the backend root directory:
svn checkout https://github.com/TinyMLaas/TinyMLaaS/trunk/TinyMLaaS_main
Optionally clone the main repository and copy or symlink the TinyMLaaS_main folder into the backend's root directory.
With the virtual environment activated in the project's root directory, run the app with:
uvicorn main:app --reload
Use the application with the project frontend here, or explore the API by browsing to: BACKEND_URL/docs.
Run unit tests in the backend root folder with:
pytest