Instalowanie i uruchamianie kontenerów analizy tonacji

Kontenery umożliwiają hostowanie interfejsu API analizy tonacji we własnej infrastrukturze. Jeśli masz wymagania dotyczące zabezpieczeń lub ładu danych, których nie można spełnić, zdalnie wywołując analizę tonacji, kontenery mogą być dobrym rozwiązaniem.

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

Wymagania wstępne

Przed użyciem kontenerów analizy tonacji należy spełnić następujące wymagania wstępne. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.

  • Platforma Docker zainstalowana na komputerze hosta. Platforma Docker musi być skonfigurowana tak, aby umożliwić kontenerom łączenie się z danymi rozliczeniowymi i wysyłanie ich na platformę Azure.
  • z warstwą cenową Bezpłatna (F0) lub Standardowa (S).

Zbieranie wymaganych parametrów

Wymagane są trzy podstawowe parametry dla wszystkich kontenerów usługi Azure AI. 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 Azure Portal Przegląd 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.

Zrzut ekranu przedstawiający zbieranie identyfikatora URI punktu końcowego do późniejszego użycia.

Klucze

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

Zrzut ekranu przedstawiający pobranie jednego z dwóch kluczy do późniejszego użycia.

Ważne

Te klucze subskrypcji są używane do uzyskiwania dostępu do interfejsu API usług AI platformy Azure. 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. Wywołanie interfejsu API jest konieczne tylko jednym kluczem. Podczas ponownego generowania pierwszego klucza można użyć drugiego klucza w celu dalszego dostępu do usługi.

Wymagania i zalecenia dotyczące komputera hosta

Host jest komputerem opartym na architekturze x64, na który działa kontener platformy Docker. Może to być komputer w środowisku lokalnym lub usługa hostingu platformy Docker na platformie Azure, taka jak:

W poniższej tabeli opisano minimalne i zalecane specyfikacje dostępnego kontenera. Każdy rdzeń procesora CPU musi być co najmniej 2,6 gigahertz (GHz) lub szybszy. Wyświetlane są również dozwolone transakcje na sekundę (TPS).

Minimalna specyfikacja hosta Zalecane specyfikacje hosta Minimalny moduł TPS Maksymalna liczba modułów TPS
Analiza tonacji 1 rdzeń, 2 GB pamięci 4 rdzenie, 8 GB pamięci 15 30

Rdzenie procesora CPU 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 Analizy tonacji można znaleźć w syndykacie mcr.microsoft.com rejestru kontenerów. Znajduje się on w azure-cognitive-services/textanalytics/ repozytorium i ma nazwę sentiment. W pełni kwalifikowana nazwa obrazu kontenera to: mcr.microsoft.com/azure-cognitive-services/textanalytics/sentiment

Aby użyć najnowszej wersji kontenera, możesz użyć tagu latest , który jest przeznaczony dla języka angielskiego. Pełną listę kontenerów dla obsługiwanych języków można również znaleźć przy użyciu tagów w mcr.

Kontener analizy tonacji w wersji 3 jest dostępny w kilku językach. Aby pobrać kontener dla kontenera w języku angielskim, użyj poniższego polecenia.

docker pull mcr.microsoft.com/azure-cognitive-services/textanalytics/sentiment:3.0-en

Porada

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

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

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

Uruchamianie kontenera za pomocą polecenia docker run

Gdy kontener znajduje się na komputerze-hoście, użyj polecenia docker run , aby uruchomić kontenery. Kontener będzie nadal działać do momentu jego zatrzymania.

Ważne

  • Polecenia platformy Docker w poniższych sekcjach używają ukośnika odwrotnego , \jako znaku kontynuacji wiersza. Zastąp lub usuń to na podstawie wymagań systemu operacyjnego hosta.
  • Aby Eulauruchomić kontener, należy określić opcje , Billingi ApiKey . W przeciwnym razie kontener nie zostanie uruchomiony. Aby uzyskać więcej informacji, zobacz Rozliczenia.

Aby uruchomić kontener Analizy tonacji, wykonaj następujące docker run polecenie. Zastąp symbole zastępcze poniżej własnymi wartościami:

Symbol zastępczy Wartość Formatowanie lub przykład
{API_KEY} Klucz zasobu language. Możesz go znaleźć na stronie Klucz i punkt końcowy zasobu na Azure Portal. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{ENDPOINT_URI} Punkt końcowy umożliwiający uzyskiwanie dostępu do interfejsu API. Możesz go znaleźć na stronie Klucz i punkt końcowy zasobu na Azure Portal. https://<your-custom-subdomain>.cognitiveservices.azure.com
{IMAGE_TAG} Tag obrazu reprezentujący język kontenera, który chcesz uruchomić. Upewnij się, że jest to zgodne z użytym poleceniem docker pull . 3.0-en
docker run --rm -it -p 5000:5000 --memory 8g --cpus 1 \
mcr.microsoft.com/azure-cognitive-services/textanalytics/sentiment:{IMAGE_TAG} \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

To polecenie:

  • Uruchamia kontener Analizy tonacji z obrazu kontenera
  • Przydziela jeden rdzeń procesora CPU i 8 gigabajtów 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.

Uruchamianie wielu kontenerów na tym samym hoście

Jeśli zamierzasz uruchomić wiele kontenerów z uwidocznionych portów, upewnij się, że każdy kontener ma inny uwidoczniony port. Na przykład uruchom pierwszy kontener na porcie 5000 i drugi kontener na porcie 5001.

Możesz mieć ten kontener i inny kontener usług Azure AI działający razem na hoście. Można również mieć wiele kontenerów tego samego kontenera usług Azure AI, na których działa.

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 używasz zewnętrznego adresu IP kontenera i uwidoczniogo portu.

Adres URL żądania 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. Tego żądania można użyć na potrzeby sond gotowości i gotowości platformy Kubernetes.
http://localhost:5000/status Żądany również przy użyciu polecenia GET ten adres URL sprawdza, czy klucz api-key użyty do uruchomienia kontenera jest prawidłowy bez powodowania zapytania punktu końcowego. Tego żądania można użyć na potrzeby 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 internecie i utworzyć zapytanie bez konieczności pisania kodu. Po powrocie zapytania zostanie udostępnione przykładowe polecenie CURL w celu zademonstrowania wymaganych nagłówków HTTP i formatu treści.

Strona główna kontenera

Uruchamianie kontenera odłączonego od Internetu

Aby korzystać z tego kontenera odłączonego od Internetu, musisz najpierw zażądać dostępu, wypełniając aplikację i kupując plan zobowiązania. Aby uzyskać więcej informacji, zobacz Use Docker containers in disconnected environments (Używanie kontenerów platformy Docker w środowiskach bez połączenia ).

Jeśli kontener został zatwierdzony do uruchomienia kontenera odłączonego od Internetu, użyj poniższego przykładu pokazującego formatowanie używanego docker run polecenia z wartościami zastępczymi. Zastąp te wartości zastępcze własnymi wartościami.

DownloadLicense=True Parametr w poleceniu docker run pobierze plik licencji, który umożliwi uruchomienie kontenera platformy Docker, gdy nie jest połączony z Internetem. Zawiera również datę wygaśnięcia, po której plik licencji będzie nieprawidłowy do uruchomienia kontenera. Możesz użyć pliku licencji tylko z odpowiednim kontenerem, dla którego został zatwierdzony. Na przykład nie można użyć pliku licencji dla kontenera zamiany mowy na tekst z kontenerem analizy dokumentów.

Symbol zastępczy Wartość Formatowanie lub przykład
{IMAGE} Obraz kontenera, którego chcesz użyć. mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice
{LICENSE_MOUNT} Ścieżka, w której zostanie pobrana licencja, i zainstalowana. /host/license:/path/to/license/directory
{ENDPOINT_URI} Punkt końcowy uwierzytelniania żądania obsługi. Możesz go znaleźć na stronie Klucz i punkt końcowy zasobu na Azure Portal. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API_KEY} Klucz zasobu analiza tekstu. Możesz go znaleźć na stronie Klucz i punkt końcowy zasobu na Azure Portal. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{CONTAINER_LICENSE_DIRECTORY} Lokalizacja folderu licencji w lokalnym systemie plików kontenera. /path/to/license/directory
docker run --rm -it -p 5000:5000 \ 
-v {LICENSE_MOUNT} \
{IMAGE} \
eula=accept \
billing={ENDPOINT_URI} \
apikey={API_KEY} \
DownloadLicense=True \
Mounts:License={CONTAINER_LICENSE_DIRECTORY} 

Po pobraniu pliku licencji można uruchomić kontener w środowisku odłączonym. W poniższym przykładzie pokazano formatowanie używanego docker run polecenia z wartościami zastępczymi. Zastąp te wartości zastępcze własnymi wartościami.

Wszędzie tam, gdzie jest uruchamiany kontener, plik licencji musi zostać zainstalowany w kontenerze, a lokalizacja folderu licencji w lokalnym systemie plików kontenera musi być określona za pomocą Mounts:License=polecenia . Należy również określić instalację wyjściową, aby można było zapisywać rekordy użycia rozliczeń.

Symbol zastępczy Wartość Formatowanie lub przykład
{IMAGE} Obraz kontenera, którego chcesz użyć. mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice
{MEMORY_SIZE} Odpowiedni rozmiar pamięci do przydzielenia dla kontenera. 4g
{NUMBER_CPUS} Odpowiednia liczba procesorów DO przydzielenia dla kontenera. 4
{LICENSE_MOUNT} Ścieżka, w której zostanie zlokalizowana i zamontowana licencja. /host/license:/path/to/license/directory
{OUTPUT_PATH} Ścieżka wyjściowa rejestrowania rekordów użycia. /host/output:/path/to/output/directory
{CONTAINER_LICENSE_DIRECTORY} Lokalizacja folderu licencji w lokalnym systemie plików kontenera. /path/to/license/directory
{CONTAINER_OUTPUT_DIRECTORY} Lokalizacja folderu wyjściowego w lokalnym systemie plików kontenera. /path/to/output/directory
docker run --rm -it -p 5000:5000 --memory {MEMORY_SIZE} --cpus {NUMBER_CPUS} \ 
-v {LICENSE_MOUNT} \ 
-v {OUTPUT_PATH} \
{IMAGE} \
eula=accept \
Mounts:License={CONTAINER_LICENSE_DIRECTORY}
Mounts:Output={CONTAINER_OUTPUT_DIRECTORY}

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 włączoną funkcją rejestrowania, kontener generuje pliki dziennika, które są pomocne w rozwiązywaniu problemów występujących podczas uruchamiania lub uruchamiania kontenera.

Porada

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.

Rozliczenia

Kontenery Analizy tonacji wysyłają informacje rozliczeniowe na platformę Azure przy użyciu zasobu języka na koncie platformy Azure.

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

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

Nawiązywanie połączenia z usługą 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 będzie obsługiwał 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. Zapoznaj się z często zadawanymi pytaniami dotyczącymi kontenera usług Azure AI, aby zapoznać się z przykładem informacji wysyłanych do firmy Microsoft na potrzeby rozliczeń.

Argumenty rozliczeń

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, który jest 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, który jest 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 musi być ustawiona 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 analizy tonacji. Podsumowanie:

  • Analiza tonacji udostępnia kontenery systemu Linux dla platformy Docker
  • Obrazy kontenerów są pobierane z rejestru Microsoft Container Registry (MCR).
  • Obrazy kontenerów są uruchamiane na platformie Docker.
  • Podczas tworzenia wystąpienia kontenera należy określić informacje rozliczeniowe.

Ważne

Kontenery usługi Azure AI nie są licencjonowane do uruchamiania bez nawiązywania połączenia z platformą Azure na potrzeby pomiarów. 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 klienta (np. tekstu analizowanego) do firmy Microsoft.

Następne kroki