Ambalare și containerizare

Machine Learning End-to-End

Joshua Stapleton

Machine Learning Engineer

Deployment și containerizare

Deployment

  • Ambalarea modelului și a dependențelor în unități
  • Pentru rulare în medii diferite
  • Framework standard pentru containerizare și deployment: Docker

Faza de deployment în ciclul de viață al machine learning

Machine Learning End-to-End

Docker

  • Platformă pentru simplificarea dezvoltării cu containere

Containere:

  • Ambalează aplicația în unități independente
  • Concepute ca independente de platformă
  • Obțineți Docker

 

Curs DataCamp Docker

Logo Docker

Machine Learning End-to-End

Utilizarea Docker - partea 1

Dockerfile: instrucțiuni pentru construirea containerului

# Use an official Python runtime as a parent image
FROM Python:3.7

# Set the working directory in the container to /app WORKDIR /ML_pipeline
# Copy the current directory contents into the container at /app ADD . /ML_pipeline
# Install any needed packages specified in requirements.txt RUN pip install --no-cache-dir -r requirements.txt
Machine Learning End-to-End

Utilizarea Docker - partea 2

# ... continued
# Make port 80 available to the world outside this container
EXPOSE 80
# Define environment variable
ENV NAME World
# Run app.py when the container launches
CMD ["Python", "ML_pipeline.py"]

Construiți imaginea definită:

docker build -t heart_disease_model .
Machine Learning End-to-End

Etichetarea containerelor

Etichetare:

docker tag heart_disease_model:latest heart_disease_model:1.0
  • Facilitează identificarea și gestionarea imaginilor/containerelor.
  • Ajută la menținerea unui registru de modele detaliat și robust.
  • După etichetare, suntem pregătiți pentru deployment!

Deployment vizualizat ca o săgeată

Machine Learning End-to-End

Bune practici

Docker simplifică ambalarea modelelor, dar...

  • Gândiți-vă la securitate
  • Nu includeți date sensibile
  • Folosiți imagini de încredere (de la dezvoltatori verificați)

Dacă aplicația conține informații sensibile...

  • Utilizați variabile de mediu
  • Ex: pentru șiruri de conexiune/parole

Lacăt de securitate

Machine Learning End-to-End

Să exersăm!

Machine Learning End-to-End

Preparing Video For Download...