Informacje administracyjne
Tytuł | Obsługa modeli produkcyjnych |
Czas trwania | 60 minut |
Moduł | B |
Rodzaj lekcji | Tutorial |
Skupienie | Praktyczna – organizacyjna sztuczna inteligencja |
Temat | Model produkcji budynku API |
Słowa kluczowe
obsługa uczenia maszynowego, pojemniki,
Cele w zakresie uczenia się
- Zapoznanie się z konteneryzacją
- Nauka TFX Serving
- Możliwość aplikacji lokalnie i na platformie Azure Container Instances
Oczekiwane przygotowanie
Wydarzenia edukacyjne, które należy ukończyć przed
Brak.
Obowiązkowe dla studentów
- Zainstaluj WSL 2 przed zainstalowaniem Dockera
- Możesz użyć opcji Windows Hyper-V, ale to nie obsługuje GPU
- Będziesz musiał zainstalować Ubuntu (lub inne odpowiednie warianty), za pomocą polecenia WSL CLI wsl --install -d ubuntu
- W przypadku niektórych maszyn WSL będzie również musiał zostać zaktualizowany za pomocą polecenia wsl --update ( więcej informacji na temat tej aktualizacji)
- Musisz mieć zainstalowane najnowsze sterowniki NVIDIA/CUDA
- Zainstaluj Docker dla systemu Windows: https://docs.docker.com/desktop/install/windows-install/
- Utwórz konto platformy Azure z dostępem do tworzenia instancji programu Azure Container (ACI)
Opcjonalne dla studentów
Referencje i tło dla studentów
- Aditya Khosla, Nityananda Jayadevaprakash, Bangpeng Yao i Li Fei-Fei. Nowatorski zestaw danych do kategoryzacji obrazów. First Workshop on Fine-Grained Visual Categorization (FGVC), IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2011 r.
Zalecane dla nauczycieli
- Wykonaj zadania wymienione jako obowiązkowe i opcjonalne dla uczniów.
Materiały do lekcji
Instrukcje dla nauczycieli
Modele produkcyjne przy użyciu TFX Serving
- Ten poradnik wprowadzi uczniów do podjęcia opracowanego wyszkolonego modelu, który został opracowany w notatniku Jupyter (przy użyciu Tensorflow 2.x i Keras) i zapisuje model w formacie Tensorflow. Poradnik rozpocznie się od opracowania podstawowego CNN do identyfikacji chleba psa. Następnie zapiszemy model jako model Tensorflow. Poradnik użyje TFX (Tensorflow Extended https://www.tensorflow.org/tfx/serving/docker) podejścia doMLOPS, gdzie skupimy się w tym samouczku na temat komponentu obsługi TRX, czyli budowania spokojnych interfejsów API do wykorzystania/zapytania w środowiskach produkcyjnych. Aby to zrobić, zbudujemy obraz obsługujący Docker TFX i wdrożymy ten obraz:
- Lokalnie (lokalhost)
- Za pośrednictwem Azure Container Instances (ACI), gdzie można kwestionować publiczny adres IP
- Potrzebne są wcześniejsze instalacje, zapoznaj się z obowiązkowymi przygotowaniami dla studentów poniżej.
- Zestaw danych to zbiór danych psów Stanford, w którym używamy dwóch klas psów, Jacka Russela i Rhodesian Ridgeback’s, kompletny zestaw danych można znaleźć tutaj, Poddaliśmy również podzbiór użyty w tym samouczku w sekcji zbioru danych poniżej.
- Dostarczyliśmy również wszystkie polecenia Docker CLI na dole tej strony tutorialu WIKI.
Zarys/harmonogram czasu
Czas trwania (min) | Opis |
---|---|
20 | Problem 1: Budowanie modelu CNN przy użyciu podzbioru zbioru danych psów Stanforda, zapisując ten model jako model Tensorflow |
10 | Problem 2: Wdrożenie modelu Tensorflow do interfejsu API Rest lokalnie (przy użyciu Dockera) i przeszukiwanie modelu |
20 | Problem 3: Wdrożenie modelu Tensorflow do interfejsu API spoczynku przy użyciu usługi Azure Container Instances (ACI) (przy użyciu Dockera) i przeszukiwanie modelu |
10 | Podsumowanie procesu przejścia do przodu |
Polecenia Docker CLI
Poniższe polecenia interfejsu wiersza poleceń są używane w tym samouczku do uruchamiania modeli.
Działa lokalnie
Krok 1: Ciągnij tensorflow
Docker pull tensorflow/serwowanie: Najnowsze-gpu
Krok 2: Uruchom obraz
Docker uruchomić --gpus all -p 8501:8501 --name tfserving_classifier --mount type=bind,source=c:\production\,target=/models/img_classifier -e MODEL_NAME=img_classifier -t tensorflow/serving:latest-gpu
lub bez 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:latest-gpu
Uruchom na platformie Azure za pomocą ACI
Krok 1: Zmodyfikuj obraz lokalny tak, aby zawierał on model
Docker run -d --name service_base tensorflow/serving: Ostatnie-gpu Docker cp cp:\produkcja\ service_base:/models/img_classifier Docker ps -a pobierz identyfikator Docker commit --change „ENV MODEL_NAME img_classifier” <id idzie tutaj> tensorflow_dogs_gpu Docker kill service_base
Krok 2: Wdrażanie obrazu do platformy Azure ACI
Docker login azure Docker kontekst utworzyć aci deleteme Docker kontekst użyj deleteme Docker run -p 8501:8501 kquille/tensorflow_dogs_gpu:kq
Krok3 Uzyskaj dostęp do dzienników ACI, adresu IP, a następnie zatrzymaj i usuń usługę ACI =====
Docker kłody jolly-ride Docker ps Docker stop jolly-ride Docker rm jolly-ride
Potwierdzenia
Keith Quille (TU Dublin, kampus Tallaght)
Program Masters zorientowany na człowieka został współfinansowany przez instrument „Łącząc Europę” Unii Europejskiej w ramach grantu CEF-TC-2020-1 Umiejętności cyfrowe 2020-EU-IA-0068.