Skip to content
This repository has been archived by the owner on May 13, 2022. It is now read-only.

fleuryc/OC_AI-Engineer_P9_Books-recommandation-mobile-app

Python application CodeQL Codacy Badge Codacy Badge


My Content : Books recommandation mobile app

Repository of OpenClassrooms' AI Engineer path, project #9

Goal : use Azure Machine Learning and Azure Functions services, a Recommander system embedded in a React-Native mobile app to produce the MVP of a books recommandation mobile app.

You can see the results here :

This repository is part of a 3-repos project :

Current MVP architecture

Goals

Installation

Prerequisites

Virtual environment

# python -m venv env
# > or just :
make venv
source env/bin/activate

Dependencies

# pip install kaggle jupyterlab ipykernel ipywidgets widgetsnbextension graphviz python-dotenv requests matplotlib seaborn plotly numpy statsmodels pandas sklearn transformers tensorflow
# > or :
# pip install -r requirements.txt
# > or just :
make install

Environment variables

Azure resources

The app will query an Azure CosmosDB database and an Azure Function that will return a list of relevant articles.

Usage

Download data

Download, extract and upload to Azure Cityscape zip files.

make dataset

Run Notebook

jupyter-lab notebooks/main.ipynb

Quality Assurance

# make isort
# make format
# make lint
# make bandit
# make mypy
# make test
# > or just :
make qa

Troubleshooting

  • Fix Plotly issues with JupyterLab

cf. Plotly troubleshooting

jupyter labextension install jupyterlab-plotly
  • If using Jupyter Notebook instead of JupyterLab, uncomment the following lines in the notebook
import plotly.io as pio
pio.renderers.default='notebook'