Administrative oplysninger
Titel | Betjener produktionsmodeller |
Varighed | 60 minutter |
Modul | B |
Lektionstype | Tutorial |
Fokus | Praktisk — Organisationel kunstig intelligens |
Emne | Byggeproduktionsmodel API |
Nøgleord
maskinindlæring, beholdere,
Læringsmål
- At blive fortrolig med containerisering
- At lære TFX-servering
- Mulighed for at anvende servering lokalt og på Azure Container Instances
Forventet forberedelse
Læringsbegivenheder, der skal fuldføres før
Ingen.
Obligatorisk for studerende
- Installer WSL 2 før du installerer Docker
- Du kan bruge Windows Hyper-V-indstillingen, men dette understøtter ikke GPU'er
- Du bliver nødt til at installere Ubuntu (eller andre egnede varianter), med WSL CLI kommando wsl --install -d ubuntu
- For nogle maskiner skal WSL også opdateres med kommandoen wsl-opdatering ( Yderligere oplysninger om denne opdatering)
- Du skal have de nyeste NVIDIA/CUDA drivere installeret
- Installer Docker til Windows: https://docs.docker.com/desktop/install/windows-install/
- Opret en Azure-konto med adgang til at oprette Azure Container Instances (ACI)
Valgfrit for studerende
Referencer og baggrund for studerende
- Aditya Khosla, Nityananda Jayadevaprakash, Bangpeng Yao og Li Fei-Fei. Nyt datasæt til finmasket billedkategorisering. Første workshop om Fin-Grained Visual Categorization (FGVC), IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2011.
Anbefalet til lærerne
- Gør de opgaver, der er angivet som obligatoriske og valgfrie for de studerende.
Undervisningsmaterialer
Instruktioner til lærerne
Produktionsmodeller ved hjælp af TFX Servering
- Denne tutorial vil introducere eleverne til at tage en udviklet uddannet model, der blev udviklet i en Jupyter Notebook (ved hjælp af Tensorflow 2.x og Keras) og gemme modellen i Tensorflow format. Tutorial vil starte med at udvikle en grundlæggende CNN til at identificere brød af en hund. Vi vil derefter gemme modellen som en Tensorflow-model. Tutorial vil derefter bruge TFX (Tensorflow Extended https://www.tensorflow.org/tfx/serving/docker ) tilgangtil MLOps, hvor vi vil fokusere i denne tutorial på TRX servering komponent, der er at opbygge afslappende API'er til brug/forespørgsel i produktionsmiljøer. For at gøre dette vil vi bygge et Docker TFX-visningsbillede og implementere dette billede:
- Lokalt (lokalvært)
- Via Azure Container Instances (ACI), hvor en offentlig IP-adresse kan forespørges
- Der er behov for forudgående installationer, se venligst de obligatoriske forberedelser for studerende nedenfor.
- Datasættet er Stanford hunde datasættet, hvor vi bruger to klasser af hunde, Jack Russel og Rhodesian Ridgeback s, det komplette datasæt kan findes her, Vi har også givet den delmængde, der anvendes i denne tutorial i datasættet afsnittet nedenfor.
- Vi har også givet alle Docker CLI kommandoer nederst på denne tutorial WIKI side.
Oversigt/tidsplan
Varighed (min.) | Beskrivelse |
---|---|
20 | Problem 1: Opbygning af en CNN-model ved hjælp af en delmængde af Stanford-hundedatasættet, der gemmer denne model som en Tensorflow-model |
10 | Problem 2: Implementering af Tensorflow-modellen til en Rest API lokalt (ved hjælp af Docker) og forespørgsel på modellen |
20 | Problem 3: Udrulning af Tensorflow-modellen til en Rest-API ved hjælp af Azure Container Instances (ACI) (ved hjælp af Docker) og forespørgsel i modellen |
10 | Opsummering af forward pass-processen |
Docker CLI-kommandoer
Følgende kommandoer til kommandolinjegrænseflade bruges i denne tutorial til at køre modellerne.
Kør lokalt
Trin 1: Træk tensorflow
Docker trækker tensorflow/serving:seneste-gpu
Trin 2: Kør billedet
Docker kører --gpus alle -p 8501:8501 --name tfserving_classifier --mount type=bind,source=c:\produktion\,target=/modeller/img_classifier -e MODEL_NAME=img_classifier -t tensorflow/serving: seneste-gpu
eller uden GPU
Docker run -p 8501:8501 --name tfserving_classifier --mount type=bind,source=c:\produktion\,target=/modeller/img_classifier -e MODEL_NAME=img_classifier -t tensorflow/serving: seneste-gpu
Kør på Azure ved hjælp af ACI
Trin 1: Ændre det lokale billede for at få modellen inkluderet
Docker løb -d --name serving_base tensorflow/serving:seneste-gpu Docker cp c:\produktion\ serving_base:/modeller/img_classifier Docker-ps -a-a"# for at få id Docker commit --change "ENV MODEL_NAME img_classifier" &id går her> tensorflow_dogs_gpu Docker dræber serving_base
Trin 2: Udrul billede til Azure ACI
Docker login azure Docker-kontekst skaber aci deleteme Docker-kontekstbrug Sletme Docker løb -p 8501:8501 kquille/tensorflow_dogs_gpu:kq
Trin 3 Få adgang til ACI-logfilerne, IP-adressen og derefter stoppe og fjerne ACI-tjenesten =====
Docker logfiler jolly-ride Docker ps Docker stop jolly-ride Docker rm jolly-ride
Anerkendelser
Hoteller i nærheden af Keith Quille (TU Dublin, Tallaght Campus)
Programmet Human-Centered AI Masters blev samfinansieret af Connecting Europe-faciliteten i Den Europæiske Union under tilskud CEF-TC-2020-1 Digital Skills 2020-EU-IA-0068.