WSL2 como entorno para desarrollo MLOps


El ciclo de vida del machine learning moderno no solo involucra entrenar modelos, sino también automatizar, versionar y desplegar esos modelos en producción. Esto es lo que define el enfoque de MLOps. Gracias a su compatibilidad con herramientas de Linux, contenedores, aceleración GPU y pipelines reproducibles, WSL2 es ideal para este tipo de desarrollo desde Windows.

🎯 Objetivo

  • Crear un entorno de desarrollo MLOps usando WSL2
  • Integrar herramientas como DVC, MLflow, Docker y Python
  • Automatizar pipelines de entrenamiento y evaluación
  • Ejecutar tareas reproducibles y escalables localmente

⚙️ Paso 1: Preparar entorno base en WSL2

Instalar Python y herramientas básicas:

sudo apt update
sudo apt install -y python3-pip python3-venv git
pip install --upgrade pip

Clonar un proyecto de ejemplo o iniciar uno nuevo:

git clone https://github.com/iterative/example-get-started-mlops.git
cd example-get-started-mlops

🔁 Paso 2: Instalar DVC para control de datos y pipelines

DVC es una herramienta fundamental en MLOps para manejar datos y etapas de procesamiento.

pip install dvc[gs] dvc[ssh]
dvc init

Agregar un pipeline:

dvc run -n preprocess   -d src/preprocess.py -o data/processed   python src/preprocess.py data/raw data/processed

🧪 Paso 3: Automatizar experimentos con MLflow

Instalar MLflow:

pip install mlflow

Ejecutar un experimento:

mlflow run .

Lanzar la interfaz de MLflow:

mlflow ui

Ver resultados desde el navegador en http://localhost:5000

🐳 Paso 4: Contenerizar el flujo con Docker

FROM python:3.10-slim

WORKDIR /app
COPY . /app
RUN pip install -r requirements.txt

ENTRYPOINT ["python", "src/train.py"]

Construir y correr el contenedor:

docker build -t mlops-model .
docker run --rm mlops-model

🛠️ Buenas prácticas MLOps en WSL2

  • Usar make para correr pipelines: make train, make evaluate
  • Controlar recursos con .wslconfig
  • Versionar modelos con dvc push y git tag
  • Integrar act para correr GitHub Actions localmente
  • Usar conda o pip-tools para entornos reproducibles

✅ Conclusión

WSL2 permite construir un entorno completo de MLOps directamente sobre Windows, integrando control de versiones, contenedores, entrenamiento y despliegue en pipelines reproducibles. Es una solución ideal para equipos que necesitan compatibilidad con Linux pero prefieren trabajar desde Windows.


Ver también

comments powered by Disqus