How dudavskyi-dev/anomaly-detection-in-production-lstm works
PdM-Sentinel takes industrial telemetry from dataset ingestion or replay through preprocessing, RUL and anomaly-model training, evaluation, and model-bundle creation. Bundles are served through an API for RUL prediction and anomaly detection; drift checks compare traffic with frozen training references and can trigger candidate retraining, while promotion remains a separate gated registry action. The graph follows README-documented capabilities and sampled orchestration; some subsystem paths are directories because their internal wiring was not sampled.
Main entry points: cli.py CLI orchestration · preprocessing Preprocessing · torch PyTorch models · tf TensorFlow models
Components 19
Telemetry preparation
- Ingestion and replay
pdm/ingestion - Preprocessing
pdm/preprocessing
Model development
- Classical models
pdm/models/baseline - PyTorch models
pdm/models/torch - TensorFlow models
pdm/models/tf - Evaluation
pdm/evaluation - Model bundles
pdm/models/bundle.py
Inference service
- Inference API
pdm/serving/app.py
Tracking and operations
- CLI orchestration
pdm/cli.py - MLflow tracking
pdm/tracking/mlflow_client.py - Model registry
pdm/tracking/registry.py - Promotion gates
pdm/tracking/promotion.py - Drift analysis
pdm/monitoring/drift.py - Drift reports
pdm/monitoring/reports.py - Retraining trigger
pdm/monitoring/trigger.py
Other components
- Operator
- Telemetry datasets
- API client
- Prometheus
Connections 34
- Operator → CLI orchestration: runs commands
- Telemetry datasets → Ingestion and replay: supplies data
- CLI orchestration → Ingestion and replay: downloads or replays
- CLI orchestration → Preprocessing: prepares windows
- Ingestion and replay → Preprocessing: provides telemetry
- Preprocessing → Classical models: provides windows
- Preprocessing → PyTorch models: provides windows
- Preprocessing → TensorFlow models: provides windows
- CLI orchestration → Classical models: runs training
- CLI orchestration → PyTorch models: runs training
- CLI orchestration → TensorFlow models: runs benchmarks
- Classical models → Evaluation: scores predictions
- PyTorch models → Evaluation: scores predictions
- TensorFlow models → Evaluation: scores predictions
- CLI orchestration → MLflow tracking: logs training
- Classical models → MLflow tracking: logs runs
- PyTorch models → MLflow tracking: logs runs
- TensorFlow models → MLflow tracking: logs runs
- PyTorch models → Model bundles: writes artifacts
- TensorFlow models → Model bundles: writes artifacts
- CLI orchestration → Model bundles: loads bundles
- API client → Inference API: sends requests
- Inference API → Model bundles: loads model
- Inference API → API client: returns predictions
- Prometheus → Inference API: scrapes metrics
- CLI orchestration → Drift analysis: runs drift checks
- Drift analysis → Model bundles: reads reference stats
- CLI orchestration → Preprocessing: loads replay windows
- Drift analysis → Drift reports: provides drift results
- Drift analysis → Retraining trigger: checks thresholds
- Retraining trigger → CLI orchestration: requests retraining
- CLI orchestration → Model registry: administers versions
- Model registry → Promotion gates: evaluates candidates
- Promotion gates → Model registry: promotes candidate