OZONE-AID
An integrated platform built on 8 years of a car workshop's real history — management, a diagnostic copilot, predictive maintenance and customer relations.
- LangGraph
- RAG
- Survival analysis
- BI
- FastAPI
- React Native
- MLflow

Context
OZONE-AID is my final-year engineering project (Big Data & BI, iTeam University), built during an internship at Ouerkema Innovation for Ozone Garage, a car workshop in Djerba. The goal: an integrated platform that puts 8 years of the workshop’s real history to work for management, diagnostic support, appointments, maintenance forecasting and customer relations. Method: CRISP-DM with iterative development.
Problem
Diagnosis relied on each mechanic’s individual experience, the workshop’s activity wasn’t consolidated, and there was no way to anticipate when customers would come back for servicing. With one hard constraint: the garage’s data (customers, vehicles) never leaves the machine — LLM, embeddings and transcription all run locally.
Architecture
One platform, three entry points:
- Data foundation: a 19-table relational schema, a reproducible loading pipeline, and a DuckDB star-schema warehouse (3 facts, 6 dimensions).
- FastAPI backend: 71 routes in three layers (schemas, services, routes), covered by 212 tests.
- Diagnostic copilot: a LangGraph agent that starts from the code read by the workshop’s scan tool, maps it to the SAE standard (Mistral, running locally, only translates) and suggests leads retrieved from ChromaDB (e5-base embeddings) over the workshop’s own reports. Local voice dictation with faster-whisper.
- Predictive maintenance: with no sensors and no reliable mileage, the question was reframed as return for an oil change and handled with survival analysis (Kaplan-Meier, Cox model with lifelines), generating customer alerts.
- Management (BI): 10 indicators in the back-office dashboard, with a period filter.
- Public website (FR/EN): appointment booking, cars for sale, and a tool-using LangGraph assistant.
- Customer mobile app (React Native, Expo): single-use activation codes, the customer’s own history, polled notifications, from alert to appointment.
- Industrialisation and security: Docker Compose (4 services), GitHub Actions CI, an MLflow model registry, 3 roles, Argon2 passwords, JWT in an httpOnly cookie, rate limits, and on-demand erasure with HMAC fingerprints.
Stack
Python, FastAPI, SQLAlchemy, PostgreSQL, DuckDB, LangGraph, Mistral via Ollama, ChromaDB, e5-base, faster-whisper, lifelines, MLflow, React + TypeScript (Vite), React Native + Expo, Docker Compose, GitHub Actions.
Results
- Predictive maintenance: concordance of 0.693 and 12-month AUC of 0.741 on real data, with a time-based split.
- Copilot: the right lead appears in the top 5 for 41% of the 581 real descriptions tested.
- Website assistant: 35 correct answers out of 41 test questions.
- Triage at check-in: explored, then closed with a negative result — the data couldn’t predict cost on arrival. Documented rather than forced.
- Mobile app tested on iPhone and approved; thesis defence scheduled for November 2026.