How donivishal/mlops-core-project works
Loksai is a sentiment-analysis application: feedback entered in the Streamlit UI is sent to a FastAPI prediction endpoint, which returns a sentiment predicted by a trained model. A Kubeflow pipeline separately downloads review data, validates and preprocesses it, then trains and uploads a model artifact. The graph reflects the sampled pipeline and runtime code; the README is empty, and deployment manifests and other unsampled subsystems are not expanded.
Main entry points: train.py Model training · preprocessing.py Text preprocessing · main.py Prediction API · pipeline.py Kubeflow pipeline
Components 14
Pipeline orchestration
- Kubeflow pipeline
pipeline.py
Model training
- Data validation
src/data_validation.py - Text preprocessing
src/preprocessing.py - Model training
src/train.py - Review data
data/raw - Clean reviews
data/processed - Model artifact
models
Prediction serving
- Feedback UI
ui/app.py - Prediction API
api/main.py - Loaded model
api/main.py - Sentiment result
api/main.py
Other components
- Feedback user
- S3 bucket
- MLflow tracking
Connections 20
- Feedback user → Feedback UI: enters feedback
- Feedback UI → Prediction API: requests prediction
- Prediction API → Loaded model: transforms and predicts
- Loaded model → Sentiment result: returns sentiment
- Sentiment result → Feedback UI: displays result
- Kubeflow pipeline → Data validation: dispatches validation
- Kubeflow pipeline → Text preprocessing: dispatches after validation
- Kubeflow pipeline → Model training: dispatches after preprocessing
- Data validation → S3 bucket: downloads reviews
- Text preprocessing → S3 bucket: downloads reviews
- Model training → S3 bucket: downloads reviews
- Data validation → Review data: reads reviews
- Text preprocessing → Review data: reads reviews
- Text preprocessing → Clean reviews: writes cleaned data
- Model training → Clean reviews: reads training data
- Model training → Model artifact: saves model
- Model training → S3 bucket: uploads model
- Model training → MLflow tracking: logs metric
- Prediction API → S3 bucket: downloads model at startup
- Prediction API → Loaded model: loads model and vectorizer