Informații administrative
Titlu | Servirea modelelor de producție |
Durată | 60 de minute |
Modulul | B |
Tipul lecției | Tutorial |
Focalizare | Practică – IA organizațională |
Subiect | Modelul de producție a clădirilor API |
Cuvinte cheie
operații de învățare automată, containere,
Obiective de învățare
- Familiarizarea cu containerizarea
- Învățare TFX Servirea
- Capacitatea de a aplica serviciul local și pe Azure Container instances
Pregătirea preconizată
Evenimente de învățare care urmează să fie finalizate înainte
Nici unul.
Obligatoriu pentru studenți
- Instalați WSL 2 înainte de a instala Docker
- Puteți utiliza opțiunea Windows Hyper-V, dar acest lucru nu acceptă GPU-urile
- Va trebui să instalați Ubuntu (sau alte variante adecvate), cu comanda WSL CLI wsl -install -d ubuntu
- Pentru unele mașini, WSL va trebui, de asemenea, să fie actualizat cu comanda wsl -update (Mai multe informații despre această actualizare)
- Va trebui să aveți cele mai recente drivere NVIDIA/CUDA instalate
- Instalați Docker pentru Windows: https://docs.docker.com/desktop/install/windows-install/
- Creați un cont Azure cu acces pentru a crea Azure Container Instances (ACI)
Opțional pentru studenți
Referințe și context pentru studenți
- Aditya Khosla, Nityananda Jayadevaprakash, Bangpeng Yao și Li Fei-Fei. Set de date nou pentru clasificarea imaginilor cu granulație fină. Primul atelier privind categorizarea vizuală cu granulație fină (FGVC), Conferința IEEE privind viziunea computerizată și recunoașterea modelelor (CVPR), 2011.
Recomandat pentru profesori
- Efectuați sarcinile enumerate ca obligatorii și opționale pentru studenți.
Materiale de lecție
Instrucțiuni pentru profesori
Modele de producție folosind TFX Serving
- Acest tutorial va introduce elevii să ia un model instruit dezvoltat, care a fost dezvoltat într-un caiet Jupyter (folosind Tensorflow 2.x și Keras) și de a salva modelul în format Tensorflow. Tutorialul va începe prin dezvoltarea unui CNN de bază pentru a identifica pâinea unui câine. Apoi vom salva modelul ca model Tensorflow. Tutorialul va utiliza apoi abordarea TFX (Tensorflow Extended https://www.tensorflow.org/tfx/serving/docker ) pentruMLOps, unde ne vom concentra în acest tutorial pe componenta de servire TRX, care este construirea de API-uri odihnitoare pentru a utiliza/interoga în mediile de producție. Pentru a face acest lucru, vom construi o imagine Docker TFX de servire, și implementa această imagine:
- Local (localhost)
- Prin intermediul Azure Container Instances (ACI), în cazul în care o adresă IP publică poate fi interogat
- Sunt necesare instalări anterioare, vă rugăm să consultați pregătirile obligatorii pentru studenți de mai jos.
- Setul de date este setul de date pentru câini Stanford, în care folosim două clase de câini, Jack Russel și Rhodesian Ridgeback, setul complet de date poate fi găsit aici, Am furnizat, de asemenea, subsetul utilizat în acest tutorial în secțiunea set de date de mai jos.
- Am furnizat, de asemenea, toate comenzile Docker CLI în partea de jos a acestei pagini de tutorial WIKI.
Schiță/program de timp
Durată (min) | Descriere |
---|---|
20 | Problema 1: Construirea unui model CNN folosind un subset de date despre câini Stanford, salvând acest model ca model Tensorflow |
10 | Problema 2: Implementarea modelului Tensorflow la un API Rest local (folosind Docker) și interogarea modelului |
20 | Problema 3: Implementarea modelului Tensorflow la un API Rest folosind Azure Container Instances (ACI) (folosind Docker) și interogarea modelului |
10 | Recapitularea procesului de trecere înainte |
Comenzi Docker CLI
Următoarele comenzi de interfață de linie de comandă sunt utilizate în acest tutorial pentru a rula modelele.
Rulați la nivel local
Etapa 1: Trageți fluxul de tensor
Docker pull tensorflow/serving: cel mai recent-gpu
Etapa 2: Rulați imaginea
Docker run --gpus all -p 8501:8501 -name tfserving_classifier --mount type=bind,source=c:\producție\,target=/modele/img_classifier -e MODEL_NAME=img_classifier -t tensorflow/serving: cel mai recent-gpu
sau fără GPU
Docker run -p 8501:8501 -name tfserving_classifier --mount type=bind,source=c:\production\,target=/models/img_classifier -e MODEL_NAME=img_classifier -t tensorflow/serving: cel mai recent-gpu
Rulați pe Azure folosind ACI
Etapa 1: Modificarea imaginii locale pentru a avea modelul inclus
Docker run -d -name serving_base tensorflow/serving: Ultimul-gpu Docker cp c:\producție\ Servire_base:/modele/img_classifier Docker ps -aн -# pentru a obține id Docker comite --change „ENV MODEL_NAME img_classifier” &id merge aici> tensorflow_dogs_gpu Docker ucide servire_base
Etapa 2: Implementați imaginea la Azure ACI
Docker login azure contextul Docker creează aci ștergeme contextul Docker utilizează ștergere Docker run -p 8501:8501 kquille/tensorflow_dogs_gpu:kq
Step3 Accesați jurnalele ACI, adresa IP, apoi opriți și eliminați serviciul ACI =====
bușteni Docker vesel-ride Docker ps Docker stop jolly-ride Docker rm jolly-ride
Confirmări
Keith Quille (TU Dublin, Tallaght Campus)
Programul de masterat AI centrat pe om a fost cofinantat de Mecanismul pentru interconectarea Europei al Uniunii Europene sub Grantul CEF-TC-2020-1 Digital Skills 2020-EU-IA-0068.