Instalowanie i uruchamianie kontenerów platformy Docker dla interfejsu API Narzędzie do wykrywania anomalii

Ważne

Od 20 września 2023 r. nie będzie można tworzyć nowych zasobów Narzędzie do wykrywania anomalii. Usługa Narzędzie do wykrywania anomalii jest wycofywana 1 października 2026 r.

Uwaga

Lokalizacja obrazu kontenera została ostatnio zmieniona. Przeczytaj ten artykuł, aby wyświetlić zaktualizowaną lokalizację dla tego kontenera.

Kontenery umożliwiają korzystanie z interfejsu API Narzędzie do wykrywania anomalii własnego środowiska. Kontenery doskonale nadają się do określonych wymagań w zakresie zabezpieczeń i zarządzania danymi. W tym artykule dowiesz się, jak pobrać, zainstalować i uruchomić kontener Narzędzie do wykrywania anomalii.

Narzędzie do wykrywania anomalii oferuje pojedynczy kontener platformy Docker do używania lokalnego interfejsu API. Użyj kontenera, aby:

  • Używanie algorytmów Narzędzie do wykrywania anomalii na danych
  • Monitorowanie danych przesyłanych strumieniowo i wykrywanie anomalii występujących w czasie rzeczywistym.
  • Wykrywanie anomalii w całym zestawie danych jako partii.
  • Wykrywanie punktów zmian trendu w zestawie danych jako partii.
  • Dostosuj czułość algorytmu wykrywania anomalii, aby lepiej dopasować dane.

Aby uzyskać szczegółowe informacje na temat interfejsu API, zobacz:

Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.

Wymagania wstępne

Przed użyciem kontenerów Narzędzie do wykrywania anomalii należy spełnić następujące wymagania wstępne:

Wymagania Przeznaczenie
Aparat platformy Docker Aparat platformy Docker jest zainstalowany na komputerze hosta. Platforma Docker udostępnia pakiety, które konfigurują środowisko platformy Docker w systemach macOS, Windows i Linux. Aby uzyskać podstawowe informacje na temat platformy Docker i kontenerów, zapoznaj się z artykułem Docker overview (Przegląd platformy Docker).

Platforma Docker musi być skonfigurowana tak, aby umożliwić kontenerom łączenie się z platformą Azure i wysyłanie danych rozliczeniowych do platformy Azure.

W systemie Windows platforma Docker musi być również skonfigurowana do obsługi kontenerów systemu Linux.

Znajomość platformy Docker Musisz mieć podstawową wiedzę na temat pojęć platformy Docker, takich jak rejestry, repozytoria, kontenery i obrazy kontenerów, a także znajomość podstawowych docker poleceń.
zasób Narzędzie do wykrywania anomalii Aby można było używać tych kontenerów, musisz mieć następujące elementy:

Zasób usługi Azure Narzędzie do wykrywania anomalii umożliwiający uzyskanie skojarzonego klucza interfejsu API i identyfikatora URI punktu końcowego. Obie wartości są dostępne na stronach Narzędzie do wykrywania anomalii Przegląd i Klucze w witrynie Azure Portal i są wymagane do uruchomienia kontenera.

{API_KEY}: jeden z dwóch dostępnych kluczy zasobów na stronie Klucze

{ENDPOINT_URI}: punkt końcowy podany na stronie Przegląd

Zbieranie wymaganych parametrów

Wymagane są trzy podstawowe parametry dla wszystkich kontenerów sztucznej inteligencji platformy Azure. Postanowienia licencyjne dotyczące oprogramowania firmy Microsoft muszą być obecne z wartością akceptacji. Wymagany jest również identyfikator URI punktu końcowego i klucz interfejsu API.

Identyfikator URI punktu końcowego

Wartość {ENDPOINT_URI} jest dostępna na stronie Przegląd witryny Azure Portal odpowiedniego zasobu usług Azure AI. Przejdź do strony Przegląd , umieść kursor nad punktem końcowym, a zostanie wyświetlona ikona Kopiuj do schowka . Skopiuj i użyj punktu końcowego w razie potrzeby.

Screenshot that shows gathering the endpoint URI for later use.

Klucze

Wartość {API_KEY} jest używana do uruchamiania kontenera i jest dostępna na stronie Klucze witryny Azure Portal odpowiedniego zasobu usług Azure AI. Przejdź do strony Klucze i wybierz ikonę Kopiuj do schowka .

Screenshot that shows getting one of the two keys for later use.

Ważne

Te klucze subskrypcji są używane do uzyskiwania dostępu do interfejsu API usług Azure AI. Nie udostępniaj kluczy. Przechowuj je bezpiecznie. Na przykład użyj usługi Azure Key Vault. Zalecamy również regularne ponowne generowanie tych kluczy. Tylko jeden klucz jest wymagany do wykonania wywołania interfejsu API. Podczas ponownego generowania pierwszego klucza można użyć drugiego klucza w celu dalszego dostępu do usługi.

Komputer-host

Host to komputer oparty na architekturze x64 z uruchomionym kontenerem platformy Docker. Może to być komputer lokalny lub usługa hostingu platformy Docker na platformie Azure, taka jak:

Wymagania i zalecenia dotyczące kontenerów

W poniższej tabeli opisano minimalne i zalecane rdzenie procesora CPU oraz pamięć do przydzielenia dla kontenera Narzędzie do wykrywania anomalii.

QPS(Zapytania na sekundę) Minimalne Zalecane
10 QPS 4 rdzenie, 1 GB pamięci 8-rdzeniowa pamięć 2 GB
20 QPS 8 rdzeni, 2 GB pamięci 16-rdzeniowa pamięć 4 GB

Każdy rdzeń musi być co najmniej 2,6 gigahertz (GHz) lub szybszy.

Rdzeń i pamięć odpowiadają --cpus ustawieniu i --memory , które są używane w ramach docker run polecenia .

Pobieranie obrazu kontenera za pomocą polecenia docker pull

Obraz kontenera Narzędzie do wykrywania anomalii można znaleźć w syndykacie mcr.microsoft.com rejestru kontenerów. Znajduje się on w azure-cognitive-services/decision repozytorium i ma nazwę anomaly-detector. W pełni kwalifikowana nazwa obrazu kontenera to mcr.microsoft.com/azure-cognitive-services/decision/anomaly-detector.

Aby użyć najnowszej wersji kontenera, możesz użyć tagu latest . Pełną listę tagów obrazów można również znaleźć w mcR.

Użyj polecenia , docker pull aby pobrać obraz kontenera.

Kontener Repozytorium
cognitive-services-anomaly-detector mcr.microsoft.com/azure-cognitive-services/decision/anomaly-detector:latest

Napiwek

W przypadku korzystania z programu docker pullnależy zwrócić szczególną uwagę na wielkość liter rejestru kontenerów, repozytorium, nazwę obrazu kontenera i odpowiedni tag. Uwzględniana jest wielkość liter.

Napiwek

Możesz użyć polecenia docker images , aby wyświetlić listę pobranych obrazów kontenerów. Na przykład następujące polecenie wyświetla identyfikator, repozytorium i tag każdego pobranego obrazu kontenera sformatowane jako tabela:

docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"

IMAGE ID         REPOSITORY                TAG
<image-id>       <repository-path/name>    <tag-name>

Ściąganie platformy Docker dla kontenera Narzędzie do wykrywania anomalii

docker pull mcr.microsoft.com/azure-cognitive-services/anomaly-detector:latest

Jak używać kontenera

Gdy kontener znajduje się na komputerze hosta, użyj następującego procesu, aby pracować z kontenerem.

  1. Uruchom kontener z wymaganymi ustawieniami rozliczeń. Dostępnych jest więcej przykładówdocker run polecenia.
  2. Wykonaj zapytanie względem punktu końcowego przewidywania kontenera.

Uruchamianie kontenera za pomocą polecenia docker run

Użyj polecenia docker run, aby uruchomić kontener. Aby uzyskać szczegółowe informacje na temat pobierania {ENDPOINT_URI} wartości i{API_KEY}, zobacz zbieranie wymaganych parametrów.

docker run Dostępne są przykłady polecenia.

docker run --rm -it -p 5000:5000 --memory 4g --cpus 1 \
mcr.microsoft.com/azure-cognitive-services/decision/anomaly-detector:latest \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

To polecenie:

  • Uruchamia kontener Narzędzie do wykrywania anomalii z obrazu kontenera
  • Przydziela jeden rdzeń procesora CPU i 4 gigabajty pamięci (GB)
  • Uwidacznia port TCP 5000 i przydziela pseudo-TTY dla kontenera
  • Automatycznie usuwa kontener po jego zakończeniu. Obraz kontenera jest nadal dostępny na komputerze hosta.

Ważne

Aby Eulauruchomić kontener, należy określić opcje , Billingi ApiKey . W przeciwnym razie kontener nie zostanie uruchomiony. Aby uzyskać więcej informacji, zobacz Rozliczenia.

Uruchamianie wielu kontenerów na tym samym hoście

Jeśli zamierzasz uruchomić wiele kontenerów z uwidocznionych portów, pamiętaj, aby uruchomić każdy kontener z innym portem. Na przykład uruchom pierwszy kontener na porcie 5000 i drugi kontener na porcie 5001.

Zastąp wartości <container-registry> i <container-name> wartościami używanych kontenerów. Nie muszą one być tym samym kontenerem. Możesz mieć kontener Narzędzie do wykrywania anomalii i kontener usługi LUIS uruchomiony razem na hoście lub mieć wiele kontenerów Narzędzie do wykrywania anomalii uruchomionych.

Uruchom pierwszy kontener na porcie hosta 5000.

docker run --rm -it -p 5000:5000 --memory 4g --cpus 1 \
<container-registry>/microsoft/<container-name> \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Uruchom drugi kontener na porcie hosta 5001.

docker run --rm -it -p 5001:5000 --memory 4g --cpus 1 \
<container-registry>/microsoft/<container-name> \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Każdy kolejny kontener powinien znajdować się na innym porcie.

Wykonywanie zapytania dotyczącego punktu końcowego przewidywania kontenera

Kontener udostępnia oparte na interfejsie REST interfejsy API punktu końcowego przewidywania zapytań.

Użyj hosta http://localhost:5000 dla interfejsów API kontenera.

Sprawdzanie, czy kontener jest uruchomiony

Istnieje kilka sposobów sprawdzania, czy kontener jest uruchomiony. Znajdź zewnętrzny adres IP i uwidoczniony port danego kontenera i otwórz ulubioną przeglądarkę internetową. Użyj różnych adresów URL żądań, które są zgodne z instrukcjami, aby sprawdzić, czy kontener jest uruchomiony. Przykładowe adresy URL żądań wymienione w tym miejscu to http://localhost:5000, ale określony kontener może się różnić. Upewnij się, że korzystasz z zewnętrznego adresu IP kontenera i uwidocznij port.

Zażądaj URL Przeznaczenie
http://localhost:5000/ Kontener zawiera stronę główną.
http://localhost:5000/ready Żądany przy użyciu polecenia GET ten adres URL zapewnia weryfikację, że kontener jest gotowy do akceptowania zapytania względem modelu. To żądanie może służyć do sond gotowości i gotowości platformy Kubernetes.
http://localhost:5000/status Ten adres URL sprawdza również, czy klucz api-key używany do uruchamiania kontenera jest prawidłowy bez powodowania zapytania punktu końcowego. To żądanie może służyć do sond gotowości i gotowości platformy Kubernetes.
http://localhost:5000/swagger Kontener zawiera pełen zestaw dokumentacji dla punktów końcowych oraz funkcję Wypróbuj. Dzięki tej funkcji możesz wprowadzić ustawienia w formularzu HTML opartym na sieci Web i utworzyć zapytanie bez konieczności pisania kodu. Po powrocie zapytania zostanie udostępnione przykładowe polecenie CURL, aby zademonstrować wymagane nagłówki HTTP i format treści.

Container's home page

Zatrzymywanie kontenera

Aby zamknąć kontener, w środowisku wiersza polecenia, w którym jest uruchomiony kontener, wybierz klawisze Ctrl+C.

Rozwiązywanie problemów

Jeśli uruchamiasz kontener z włączoną instalacją danych wyjściowych i rejestrowaniem, kontener generuje pliki dziennika, które są pomocne w rozwiązywaniu problemów występujących podczas uruchamiania lub uruchamiania kontenera.

Napiwek

Aby uzyskać więcej informacji na temat rozwiązywania problemów i wskazówek, zobacz Często zadawane pytania dotyczące kontenerów usługi Azure AI.

Jeśli masz problem z uruchomieniem kontenera usług Azure AI, możesz spróbować użyć kontenera diagnostyki firmy Microsoft. Ten kontener służy do diagnozowania typowych błędów w środowisku wdrażania, które mogą uniemożliwić działanie kontenerów usługi Azure AI zgodnie z oczekiwaniami.

Aby uzyskać kontener, użyj następującego docker pull polecenia:

docker pull mcr.microsoft.com/azure-cognitive-services/diagnostic

Następnie uruchom kontener. Zastąp {ENDPOINT_URI} ciąg swoim punktem końcowym i zastąp {API_KEY} ciąg kluczem do zasobu:

docker run --rm mcr.microsoft.com/azure-cognitive-services/diagnostic \
eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Kontener będzie testować łączność sieciową z punktem końcowym rozliczeń.

Rozliczenia

Kontenery Narzędzie do wykrywania anomalii wysyłają informacje rozliczeniowe na platformę Azure przy użyciu zasobu Narzędzie do wykrywania anomalii na koncie platformy Azure.

Zapytania do kontenera są rozliczane w warstwie cenowej zasobu platformy Azure używanego dla parametru ApiKey .

Kontenery usług AI platformy Azure nie są licencjonowane do uruchamiania bez połączenia z punktem końcowym pomiaru użytkowania ani rozliczeń. Należy zezwolić kontenerom na komunikowanie informacji rozliczeniowych z punktem końcowym rozliczeń przez cały czas. Kontenery usług AI platformy Azure nie wysyłają do firmy Microsoft danych klientów, takich jak obraz lub tekst analizowany.

Łączenie się z platformą Azure

Do uruchomienia kontenera potrzebne są wartości argumentów rozliczeniowych. Te wartości umożliwiają kontenerowi łączenie się z punktem końcowym rozliczeń. Kontener raportuje użycie co około 10 do 15 minut. Jeśli kontener nie łączy się z platformą Azure w dozwolonym przedziale czasu, kontener będzie nadal działać, ale nie obsługuje zapytań, dopóki punkt końcowy rozliczeń nie zostanie przywrócony. Próba nawiązania połączenia jest podejmowana 10 razy w tym samym przedziale czasu od 10 do 15 minut. Jeśli nie może nawiązać połączenia z punktem końcowym rozliczeń w ciągu 10 prób, kontener przestanie obsługiwać żądania. Zobacz często zadawane pytania dotyczące kontenera usług AI platformy Azure, aby uzyskać przykład informacji wysyłanych do firmy Microsoft na potrzeby rozliczeń.

Argumenty rozliczeniowe

Polecenie docker run uruchomi kontener, gdy wszystkie trzy z następujących opcji są dostarczane z prawidłowymi wartościami:

Opcja Opis
ApiKey Klucz interfejsu API zasobu usług Azure AI używany do śledzenia informacji rozliczeniowych.
Wartość tej opcji musi być ustawiona na klucz interfejsu API dla zaaprowizowanego zasobu określonego w pliku Billing.
Billing Punkt końcowy zasobu usług Azure AI używany do śledzenia informacji rozliczeniowych.
Wartość tej opcji musi być ustawiona na identyfikator URI punktu końcowego aprowizowanego zasobu platformy Azure.
Eula Wskazuje, że zaakceptowano licencję dla kontenera.
Wartość tej opcji należy ustawić tak, aby akceptowała.

Aby uzyskać więcej informacji na temat tych opcji, zobacz Konfigurowanie kontenerów.

Podsumowanie

W tym artykule przedstawiono pojęcia i przepływ pracy dotyczące pobierania, instalowania i uruchamiania kontenerów Narzędzie do wykrywania anomalii. Podsumowanie:

  • Narzędzie do wykrywania anomalii zapewnia jeden kontener systemu Linux dla platformy Docker, hermetyzując wykrywanie anomalii przy użyciu funkcji batch vs streaming, oczekiwanego wnioskowania zakresu i dostrajania poufności.
  • Obrazy kontenerów są pobierane z prywatnej usługi Azure Container Registry dedykowanej dla kontenerów.
  • Obrazy kontenerów są uruchamiane na platformie Docker.
  • Za pomocą interfejsu API REST lub zestawu SDK można wywoływać operacje w kontenerach Narzędzie do wykrywania anomalii, określając identyfikator URI hosta kontenera.
  • Podczas tworzenia wystąpienia kontenera należy określić informacje o rozliczeniach.

Ważne

Kontenery sztucznej inteligencji platformy Azure nie mają licencji na uruchamianie bez nawiązywania połączenia z platformą Azure na potrzeby pomiaru użytkowania. Klienci muszą umożliwić kontenerom komunikowanie informacji rozliczeniowych z usługą pomiarów przez cały czas. Kontenery sztucznej inteligencji platformy Azure nie wysyłają danych klientów (np. danych szeregów czasowych analizowanych) do firmy Microsoft.

Następne kroki