AI/ML · Sep 2026 · ABB Hackathon
ReliabilityOS
I built a local maintenance studio that trains a model on factory telemetry and will not replace the champion until a person says so.
ReliabilityOS media, 2 items. Use the arrow keys to move.
A local run on the bundled factory file. Without XGBoost, the page falls back to gradient boosting.
A model that quietly swaps itself in after a sensor drifts is how a factory gets a bad prediction with no one to blame. I built a local maintenance studio where a person still has to say yes.
The problem
The train, the drift check, and the promotion usually live in three tools. The model looks better on one number, the swap happens, and the person who would have asked about false alarms finds out from the floor. The person it frustrates is the one who owns the line and did not get a vote.
I wanted those steps on one screen, with a person on the last step. It was worth it because a champion that replaces itself is not a maintenance practice. It is a script.
How I built it
This was for the ABB Hackathon. Streamlit runs profile, train, critic, drift, and challenger in one action, so the path is a sequence you can see and not five notebooks you have to remember the order of. pandas holds the telemetry. scikit-learn and XGBoost train. Plotly draws the checks. NetworkX is in the stack for the structure around the models.
The champion is chosen on recall, false alarms, calibration, and latency, not accuracy alone. Accuracy was the obvious crown and the wrong one. A model can be accurate and still cry wolf, or arrive too late to be useful on the line. The critic can pass, warn, or fail. A warn is not a pass with softer language. It is a state the promotion has to get past.
The telemetry in the demo is simulated. Promotion stays behind a button. The button is the product. Without it, the challenger view is a suggestion the screen has already acted on.
Challenges and what I learned
A challenger can look better on one number and still fail the critic. That is the situation the four-part score is there to catch. The button is there so the swap does not happen by itself. The demo telemetry is simulated, so the screen is the studio, not a live plant, and I will not describe it as one.
Highlights
- ABB Hackathon, Agentic Predictive Maintenance Studio

Let's talk ↗









