Udostępnij za pośrednictwem


Konfigurowanie kontenerów platformy Docker usługi Language Understanding

Ważne

Usługa LUIS zostanie wycofana 1 października 2025 r. i od 1 kwietnia 2023 r. nie będzie można utworzyć nowych zasobów usługi LUIS. Zalecamy migrację aplikacji LUIS do interpretacji języka konwersacyjnego, aby korzystać z ciągłej pomocy technicznej i wielojęzycznych możliwości produktów.

Środowisko uruchomieniowe kontenera usługi Language Understanding (LUIS) jest konfigurowane przy użyciu docker run argumentów poleceń. Usługa LUIS ma kilka wymaganych ustawień wraz z kilkoma ustawieniami opcjonalnymi. Dostępnych jest kilka przykładów polecenia. Ustawienia specyficzne dla kontenera to ustawienia instalacji wejściowej i ustawienia rozliczeń.

Ustawienia konfiguracji

Ten kontener ma następujące ustawienia konfiguracji:

Wymagania Ustawienie Purpose
Tak ApiKey Służy do śledzenia informacji rozliczeniowych.
Nie. ApplicationInsights Umożliwia dodanie obsługi telemetrii usługi aplikacja systemu Azure Insights do kontenera.
Tak Rozliczenia Określa identyfikator URI punktu końcowego zasobu usługi na platformie Azure.
Tak Eula Wskazuje, że zaakceptowano licencję dla kontenera.
Nie. Biegle Zapisz dziennik i, opcjonalnie, dane metryk na serwerze Fluentd.
Nie. Http Proxy Skonfiguruj serwer proxy HTTP na potrzeby tworzenia żądań wychodzących.
Nie. Rejestrowanie Zapewnia obsługę rejestrowania ASP.NET Core dla kontenera.
Tak Wierzchowce Odczytywanie i zapisywanie danych z komputera hosta do kontenera i z kontenera z powrotem do komputera hosta.

Ważne

Ustawienia ApiKey, Billingi są Eula używane razem i należy podać prawidłowe wartości dla wszystkich trzech z nich; w przeciwnym razie kontener nie zostanie uruchomiony. Aby uzyskać więcej informacji na temat używania tych ustawień konfiguracji do tworzenia wystąpienia kontenera, zobacz Rozliczenia.

Ustawienie apiKey

Ustawienie ApiKey określa klucz zasobu platformy Azure używany do śledzenia informacji rozliczeniowych dla kontenera. Musisz określić wartość elementu ApiKey, a wartość musi być prawidłowym kluczem zasobu usług Azure AI określonym dla Billing ustawienia konfiguracji.

To ustawienie można znaleźć w następujących miejscach:

  • Azure Portal: Zarządzanie zasobami usług Azure AI w obszarze Klucze
  • Portal usługi LUIS: strona Ustawienia kluczy i punktu końcowego.

Nie należy używać klucza początkowego ani klucza tworzenia.

Ustawienie applicationInsights

Ustawienie ApplicationInsights umożliwia dodanie obsługi telemetrii usługi aplikacja systemu Azure Insights do kontenera. Usługa Application Insights zapewnia szczegółowe monitorowanie kontenera. Kontener można łatwo monitorować pod kątem dostępności, wydajności i użycia. Możesz również szybko identyfikować i diagnozować błędy w kontenerze.

W poniższej tabeli opisano ustawienia konfiguracji obsługiwane w ApplicationInsights sekcji .

Wymagania Nazwisko Typ danych opis
Nie. InstrumentationKey String Klucz instrumentacji wystąpienia usługi Application Insights, do którego są wysyłane dane telemetryczne dla kontenera. Aby uzyskać więcej informacji, zobacz Application Insights for ASP.NET Core.

Przykład:
InstrumentationKey=123456789

Ustawienie rozliczeń

Ustawienie Billing określa identyfikator URI punktu końcowego zasobu usług azure AI na platformie Azure używany do pomiaru informacji rozliczeniowych dla kontenera. Musisz określić wartość dla tego ustawienia konfiguracji, a wartość musi być prawidłowym identyfikatorem URI punktu końcowego dla zasobu usług Azure AI na platformie Azure. Kontener raportuje użycie co około 10 do 15 minut.

To ustawienie można znaleźć w następujących miejscach:

  • Azure Portal: Omówienie usług AI platformy Azure z etykietą Endpoint
  • Portal usługi LUIS: strona Klucze i ustawienia punktu końcowego w ramach identyfikatora URI punktu końcowego.
Wymagania Nazwisko Typ danych opis
Tak Billing string Identyfikator URI punktu końcowego rozliczeń. Aby uzyskać więcej informacji na temat uzyskiwania identyfikatora URI rozliczeń, zobacz Zbieranie wymaganych parametrów. Aby uzyskać więcej informacji i pełną listę regionalnych punktów końcowych, zobacz Niestandardowe nazwy poddomeny dla usług Azure AI.

Ustawienie Eula

Ustawienie Eula wskazuje, że zaakceptowano licencję dla kontenera. Musisz określić wartość dla tego ustawienia konfiguracji, a wartość musi być ustawiona na acceptwartość .

Wymagania Nazwisko Typ danych opis
Tak Eula String Akceptacja licencji

Przykład:
Eula=accept

Kontenery usług AI platformy Azure są licencjonowane zgodnie z umową regulującą korzystanie z platformy Azure. Jeśli nie masz istniejącej umowy dotyczącej korzystania z platformy Azure, zgadzasz się, że Umowa rządząca korzystaniem z platformy Azure jest umową subskrypcji online firmy Microsoft, która obejmuje postanowienia dotyczące usług online. W przypadku wersji zapoznawczych zgadzasz się również na dodatkowe warunki użytkowania dla wersji zapoznawczych platformy Microsoft Azure. Korzystając z kontenera, akceptujesz te warunki.

Ustawienia fluentd

Fluentd to moduł zbierający dane typu open source do ujednoliconego rejestrowania. Ustawienia Fluentd zarządzają połączeniem kontenera z serwerem Fluentd . Kontener zawiera dostawcę rejestrowania Fluentd, który umożliwia kontenerowi zapisywanie dzienników i opcjonalnie danych metryk na serwerze Fluentd.

W poniższej tabeli opisano ustawienia konfiguracji obsługiwane w Fluentd sekcji .

Nazwisko Typ danych opis
Host String Adres IP lub nazwa hosta DNS serwera Fluentd.
Port Integer Port serwera Fluentd.
Wartość domyślna to 24224.
HeartbeatMs Integer Interwał pulsu w milisekundach. Jeśli żaden ruch zdarzeń nie został wysłany przed wygaśnięciem tego interwału, puls jest wysyłany do serwera Fluentd. Wartość domyślna to 60000 milisekund (1 minuta).
SendBufferSize Integer Miejsce buforu sieci w bajtach przydzielone do operacji wysyłania. Wartość domyślna to 32768 bajtów (32 kilobajty).
TlsConnectionEstablishmentTimeoutMs Integer Limit czasu ( w milisekundach) w celu nawiązania połączenia SSL/TLS z serwerem Fluentd. Wartość domyślna to 10000 milisekund (10 sekund).
Jeśli UseTLS ustawiono wartość false, ta wartość jest ignorowana.
UseTLS Wartość logiczna Wskazuje, czy kontener powinien używać protokołu SSL/TLS do komunikacji z serwerem Fluentd. Wartość domyślna to false.

Ustawienia poświadczeń serwera proxy HTTP

Jeśli musisz skonfigurować serwer proxy HTTP do tworzenia żądań wychodzących, użyj następujących dwóch argumentów:

Nazwisko Typ danych opis
HTTP_PROXY string Serwer proxy do użycia, na przykład http://proxy:8888
<proxy-url>
HTTP_PROXY_CREDS string Wszelkie poświadczenia wymagane do uwierzytelnienia na serwerze proxy, na przykład username:password. Ta wartość musi być w małych literach.
<proxy-user> string Użytkownik serwera proxy.
<proxy-password> string Hasło skojarzone z <proxy-user> serwerem proxy.
docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type=bind,src=/home/azureuser/output,target=/output \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
HTTP_PROXY=<proxy-url> \
HTTP_PROXY_CREDS=<proxy-user>:<proxy-password> \

Ustawienia rejestrowania

Ustawienia Logging zarządzają obsługą rejestrowania ASP.NET Core dla kontenera. Możesz użyć tych samych ustawień konfiguracji i wartości dla kontenera, który jest używany dla aplikacji ASP.NET Core.

Następujący dostawcy rejestrowania są obsługiwani przez kontener:

Dostawca Purpose
Konsola Dostawca rejestrowania ASP.NET Core Console . Obsługiwane są wszystkie ustawienia konfiguracji ASP.NET Core i wartości domyślne dla tego dostawcy rejestrowania.
Debug Dostawca rejestrowania ASP.NET Core Debug . Obsługiwane są wszystkie ustawienia konfiguracji ASP.NET Core i wartości domyślne dla tego dostawcy rejestrowania.
Disk Dostawca rejestrowania JSON. Ten dostawca rejestrowania zapisuje dane dziennika w instalacji wyjściowej.

To polecenie kontenera przechowuje informacje rejestrowania w formacie JSON do instalacji wyjściowej:

docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
--mount type=bind,src=/home/azureuser/output,target=/output \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
Logging:Disk:Format=json \
Mounts:Output=/output

To polecenie kontenera wyświetla informacje debugowania z prefiksem dbug, gdy kontener jest uruchomiony:

docker run --rm -it -p 5000:5000 \
--memory 2g --cpus 1 \
<registry-location>/<image-name> \
Eula=accept \
Billing=<endpoint> \
ApiKey=<api-key> \
Logging:Console:LogLevel:Default=Debug

Rejestrowanie dysku

Dostawca rejestrowania Disk obsługuje następujące ustawienia konfiguracji:

Nazwisko Typ danych opis
Format String Format danych wyjściowych dla plików dziennika.
Uwaga: ta wartość musi być ustawiona na wartość , aby json włączyć dostawcę rejestrowania. Jeśli ta wartość jest określona bez określania również instalacji wyjściowej podczas tworzenia wystąpienia kontenera, wystąpi błąd.
MaxFileSize Integer Maksymalny rozmiar w megabajtach (MB) pliku dziennika. Gdy rozmiar bieżącego pliku dziennika spełnia lub przekracza tę wartość, nowy plik dziennika jest uruchamiany przez dostawcę rejestrowania. Jeśli określono -1, rozmiar pliku dziennika jest ograniczony tylko przez maksymalny rozmiar pliku, jeśli istnieje, dla instalacji wyjściowej. Domyślna wartość wynosi 1.

Aby uzyskać więcej informacji na temat konfigurowania obsługi rejestrowania ASP.NET Core, zobacz Konfiguracja pliku ustawień.

Ustawienia instalacji

Użyj instalacji powiązania, aby odczytywać i zapisywać dane z i z kontenera. Możesz określić instalację wejściową lub instalację wyjściową, określając --mount opcję w poleceniu docker run .

Kontener usługi LUIS nie używa instalacji wejściowych ani wyjściowych do przechowywania danych szkoleniowych lub usług.

Dokładna składnia lokalizacji instalacji hosta różni się w zależności od systemu operacyjnego hosta. Ponadto lokalizacja instalacji komputera hosta może być niedostępna z powodu konfliktu między uprawnieniami używanymi przez konto usługi platformy Docker i uprawnieniami lokalizacji instalacji hosta.

W poniższej tabeli opisano obsługiwane ustawienia.

Wymagania Nazwisko Typ danych opis
Tak Input String Element docelowy instalacji wejściowej. Domyślna wartość to /input. Jest to lokalizacja plików pakietu usługi LUIS.

Przykład:
--mount type=bind,src=c:\input,target=/input
Nie. Output String Element docelowy instalacji wyjściowej. Domyślna wartość to /output. Jest to lokalizacja dzienników. Obejmuje to dzienniki zapytań usługi LUIS i dzienniki kontenera.

Przykład:
--mount type=bind,src=c:\output,target=/output

Przykładowe polecenia uruchamiania platformy Docker

W poniższych przykładach użyto ustawień konfiguracji, aby zilustrować sposób pisania i używania docker run poleceń. Po uruchomieniu kontener będzie działać do momentu jego zatrzymania .

  • Te przykłady używają katalogu poza dyskiem C: , aby uniknąć konfliktów uprawnień w systemie Windows. Jeśli musisz użyć określonego katalogu jako katalogu wejściowego, może być konieczne przyznanie uprawnień usługi docker.
  • Nie zmieniaj kolejności argumentów, chyba że znasz kontenery platformy Docker.
  • Jeśli używasz innego systemu operacyjnego, użyj poprawnej konsoli/terminalu, składni folderu dla instalacji i znaku kontynuacji wiersza dla systemu. W tych przykładach przyjęto założenie, że konsola systemu Windows ma znak ^kontynuacji wiersza . Ponieważ kontener jest systemem operacyjnym Linux, instalacja docelowa używa składni folderu w stylu systemu Linux.

Zastąp element {argument_name} własnymi wartościami:

Symbol zastępczy Wartość Formatowanie lub przykład
{API_KEY} Klucz punktu końcowego LUIS zasobu na stronie Klucze platformy Azure LUIS . xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{ENDPOINT_URI} Wartość punktu końcowego rozliczeń jest dostępna na stronie Przegląd platformy Azure LUIS . Zobacz Zbieranie wymaganych parametrów, aby zapoznać się z jawnymi przykładami.

Uwaga

Nowe zasoby utworzone po 1 lipca 2019 r. będą używać niestandardowych nazw domen podrzędnych. Aby uzyskać więcej informacji i pełną listę regionalnych punktów końcowych, zobacz Niestandardowe nazwy poddomeny dla usług Azure AI.

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. Wartość ApiKey to klucz ze strony Klucze i punkty końcowe w portalu usługi LUIS i jest również dostępna na stronie Kluczy zasobów platformy Azure Azure AI services .

Przykład podstawowy

Poniższy przykład zawiera najmniej argumentów możliwych do uruchomienia kontenera:

docker run --rm -it -p 5000:5000 --memory 4g --cpus 2 ^
--mount type=bind,src=c:\input,target=/input ^
--mount type=bind,src=c:\output,target=/output ^
mcr.microsoft.com/azure-cognitive-services/luis:latest ^
Eula=accept ^
Billing={ENDPOINT_URL} ^
ApiKey={API_KEY}

Przykład usługi ApplicationInsights

Poniższy przykład ustawia argument ApplicationInsights na wysyłanie danych telemetrycznych do usługi Application Insights, gdy kontener jest uruchomiony:

docker run --rm -it -p 5000:5000 --memory 6g --cpus 2 ^
--mount type=bind,src=c:\input,target=/input ^
--mount type=bind,src=c:\output,target=/output ^
mcr.microsoft.com/azure-cognitive-services/luis:latest ^
Eula=accept ^
Billing={ENDPOINT_URL} ^
ApiKey={API_KEY} ^
InstrumentationKey={INSTRUMENTATION_KEY}

Przykład rejestrowania

Następujące polecenie ustawia poziom rejestrowania, Logging:Console:LogLevel, aby skonfigurować poziom rejestrowania na wartość Information.

docker run --rm -it -p 5000:5000 --memory 6g --cpus 2 ^
--mount type=bind,src=c:\input,target=/input ^
--mount type=bind,src=c:\output,target=/output ^
mcr.microsoft.com/azure-cognitive-services/luis:latest ^
Eula=accept ^
Billing={ENDPOINT_URL} ^
ApiKey={API_KEY} ^
Logging:Console:LogLevel:Default=Information

Następne kroki