diff --git a/model.gitlab-ci.yml b/model.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..92d54646882947526a2706e4d7ece0e1ccf5c5bf
--- /dev/null
+++ b/model.gitlab-ci.yml
@@ -0,0 +1,25 @@
+stages:
+  - train
+
+variables:
+  # Define the virtual environment or base image
+  VENV: venv
+  MLFLOW_TRACKING_URI: $MLFLOW_TRACKING_URI
+  MLFLOW_EXPERIMENT_NAME: $MLFLOW_EXPERIMENT_NAME
+
+train_model:
+  stage: train
+  image: python:3.11
+  script:
+    # Install dependencies
+    - python -m venv $VENV
+    - source $VENV/bin/activate
+    - pip install --upgrade pip
+    - pip install -r requirements.txt
+    
+    # Train the model and log to MLflow
+    - python train_model.py
+
+  only:
+    - main
+
diff --git a/model/README.MD b/model/README.MD
new file mode 100644
index 0000000000000000000000000000000000000000..4cf36eafd67f4f038d3889eed3340286513db67a
--- /dev/null
+++ b/model/README.MD
@@ -0,0 +1,7 @@
+# HOW TO LOAD MODEL (EXAMPLE)
+import mlflow.sklearn
+
+model_uri = "runs:/<run_id>/ensemble_model"  # Replace <run_id> with your run ID
+loaded_ensemble_model = mlflow.sklearn.load_model(model_uri)
+
+predictions = loaded_ensemble_model.predict(X_test)