🔗 Try FairCart AI here:
https://faircart-ai-2djleyssiqbm6q9kgvib5f.streamlit.app/
FairCart AI is a fairness-aware product ranking system that detects and reduces demographic bias in e-commerce recommendations while preserving ranking relevance.
This project demonstrates how algorithmic fairness techniques can be applied to real-world ranking systems such as online marketplaces.
- 📊 Compares baseline ranking vs fairness-aware ranking
- ⚖️ Detects demographic bias (Men vs Women representation)
- 📉 Computes fairness gap and bias reduction
- 🧠 Preserves relevance when no bias is detected
- 🖥️ Interactive Streamlit UI
- 🔄 Accepts dynamic JSON product input
- Frontend: Streamlit
- Backend Logic: Python
- Data Handling: Pandas
- Fairness Metrics: Statistical Parity Difference
- Deployment: Streamlit Cloud
faircart-ai/
│
├── src/
│ ├── fair_ranking.py # Fairness-aware ranking logic
│ ├── metrics.py # Fairness metrics
│
├── data/ # Sample datasets
├── notebooks/ # Data exploration notebooks
├── outputs/ # Saved outputs (JSON)
│
├── streamlit_app.py # Main Streamlit app
├── requirements.txt # Dependencies
├── README.md # Project documentation
pip install -r requirements.txt
streamlit run streamlit_app.py
🧪 Sample Input (JSON)
{
"products": [
{"title": "Women Casual Shoes", "maincateg": "Women", "baseline_score": 0.92},
{"title": "Men Formal Shoes", "maincateg": "Men", "baseline_score": 0.95},
{"title": "Women Sports Shoes", "maincateg": "Women", "baseline_score": 0.85}
]
}
Fairness Gap (%) Absolute difference between men and women representation
Statistical Parity Difference (SPD) Measures bias reduction after applying fair ranking
Lower values indicate better fairness.
Pragati Gupta
-Mathematics & Computing Student
-Project built for learning and showcasing fairness-aware AI systems.
-Support for multiple protected attributes
-Real-world datasets integration
-Advanced fairness constraints
-Model-based ranking
This project is open-source and free to use for learning and research.