For Demo Please visit: https://youtu.be/WYPCLE6CHS8
CustSatMLOps is a project aimed at predicting customer satisfaction using machine learning algorithms. It integrates MLOps practices using ZenML and MLflow for streamlined deployment and management.
- Data Processing: Includes scripts for data cleaning and preprocessing.
- Model Training: Implements various ML algorithms for training models.
- MLOps Integration: Utilizes ZenML for pipeline orchestration and MLflow for experiment tracking and model management.
- Deployment: Provides tools for deploying models into production.
- Clone the repository:
git clone https://github.com/mirsaidl/CustSatMLOps.git
- Navigate to the project directory:
cd CustSatMLOps
- Install the required packages:
pip install -r requirements.txt
- Starting with ZenML 0.20.0, ZenML comes bundled with a React-based dashboard. This dashboard allows you to observe your stacks, stack components and pipeline DAGs in a dashboard interface. To access this, you need to launch the ZenML Server and Dashboard locally, but first you must install the optional dependencies for the ZenML server:
pip install zenml["server"]
zenml up
If you are running the run_deployment.py
script, you will also need to install some integrations using ZenML:
zenml integration install mlflow -y
The project can only be executed with a ZenML stack that has an MLflow experiment tracker and model deployer as a component. Configuring a new stack with the two components are as follows:
zenml integration install mlflow -y
zenml experiment-tracker register mlflow_tracker --flavor=mlflow
zenml model-deployer register mlflow --flavor=mlflow
zenml stack register mlflow_stack -a default -o default -d mlflow -e mlflow_tracker --set
- Run the pipeline:
python run_pipeline.py
- Deploy the model:
python run_deployment.py --config deploy python run_deployment.py --config predict
- Run Streamlit on local:
streamlit run app.py
data/
: Contains the dataset.pipelines/
: Defines the ML pipelines.steps/
: Contains steps for data processing, training, and evaluation.src/
: Source code for the project.requirements.txt
: List of dependencies.
This project utilizes ZenML and MLflow for implementing MLOps.