A production-ready Dynamic Pricing System that recommends optimal product prices using market demand, competitor pricing, and time trends. It demonstrates end-to-end ML engineering: data ingestion, feature engineering, model training, deployment, and interactive demo.
- Data Ingestion – Load sales & competitor data.
- Feature Engineering – Create rolling averages & store in PostgreSQL.
- Model Training – Train & track experiments with MLflow.
- Model Serving – Deploy best model with FastAPI.
- Containerization – Dockerize for consistency.
- Python 3.9+, Pandas, NumPy, Scikit-learn, XGBoost
- Experiment Tracking: MLflow
- Database: PostgreSQL / SQLite
- API Framework: FastAPI
- Containerization: Docker
dynamic-pricing-ml-pipeline/
├── data/ (raw, processed)
├── notebooks/
├── src/ (data_processing, modeling, api, demo)
├── models/
├── docker/
├── requirements.txt
└── README.md
# Clone repo & install dependencies
git clone https://github.com/your-username/dynamic-pricing-ml-pipeline.git
cd dynamic-pricing-ml-pipeline
pip install -r requirements.txt
# Run data pipeline
python src/data_processing/clean_data.py
python src/data_processing/feature_engineering.py
# Train model
python src/modeling/train_model.py
mlflow ui # view results
# Run API with Docker
docker build -t price-api -f docker/Dockerfile .
docker run -p 8000:80 price-api
# Streamlit demo
streamlit run src/demo/app.py-
XGBoost Model Performance
- MAE: ~$1.20
- RMSE: ~$1.85
- R²: 0.89
- Real-time data ingestion (Kafka/AWS Kinesis)
- Orchestration with Airflow/Prefect
- Model monitoring (Evidently AI / WhyLabs)
- Additional features (inventory, weather, campaigns)
👨💻 Developer: [Mohd Fardeen Khan] 🔗 GitHub: [Fardeen-785] |