fleuryc / OC_AI-Engineer_P9_Books-recommandation-mobile-app

Repository of OpenClassrooms' AI Engineer path, project #9 : create a books recommandation system, integrate and deploy it as a mobile app

Home Page:https://fleuryc.github.io/OC_AI-Engineer_P9_Books-recommandation-mobile-app/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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'

About

Repository of OpenClassrooms' AI Engineer path, project #9 : create a books recommandation system, integrate and deploy it as a mobile app

https://fleuryc.github.io/OC_AI-Engineer_P9_Books-recommandation-mobile-app/

License:GNU General Public License v3.0


Languages

Language:Jupyter Notebook 99.6%Language:Python 0.4%Language:Makefile 0.0%Language:Shell 0.0%