Instalar e executar contêineres do Docker para LUIS

Importante

O LUIS será aposentado em 1º de outubro de 2025 e a partir de 1º de abril de 2023 você não poderá criar novos recursos do LUIS. Recomendamos migrar seus aplicativos LUIS para o entendimento de linguagem conversacional para se beneficiar do suporte contínuo ao produto e dos recursos multilíngues.

Nota

O local da imagem do contêiner foi alterado recentemente. Leia este artigo para ver o local atualizado para este contêiner.

Os contentores permitem-lhe utilizar o LUIS no seu próprio ambiente. Os contentores são ótimos para requisitos específicos de governação de dados e segurança. Neste artigo, você aprenderá como baixar, instalar e executar um contêiner LUIS.

O contêiner Language Understanding (LUIS) carrega seu modelo de Language Understanding treinado ou publicado. Como um aplicativo LUIS, o contêiner docker fornece acesso às previsões de consulta dos pontos de extremidade da API do contêiner. Você pode coletar logs de consulta do contêiner e carregá-los de volta para o aplicativo Language Understanding para melhorar a precisão da previsão do aplicativo.

O vídeo a seguir demonstra o uso desse contêiner.

Demonstração de contêiner para serviços de IA do Azure

Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.

Pré-requisitos

Para executar o contêiner LUIS, observe os seguintes pré-requisitos:

  • Docker instalado em um computador host. O Docker deve ser configurado para permitir que os contêineres se conectem e enviem dados de cobrança para o Azure.
    • No Windows, o Docker também deve ser configurado para suportar contêineres Linux.
    • Você deve ter uma compreensão básica dos conceitos do Docker.
  • Um recurso LUIS com o nível de preço gratuito (F0) ou padrão (S).
  • Um aplicativo treinado ou publicado empacotado como uma entrada montada no contêiner com sua ID de aplicativo associada. Você pode obter o arquivo empacotado no portal LUIS ou nas APIs de criação. Se você estiver recebendo o aplicativo empacotado LUIS das APIs de criação, também precisará da sua Chave de Criação.

Reúna os parâmetros necessários

Três parâmetros principais para todos os contêineres de IA do Azure são necessários. Os Termos de Licença para Software Microsoft devem estar presentes com um valor de aceitação. Um URI do ponto de extremidade e uma chave de API também são necessários.

URI do ponto de extremidade

O {ENDPOINT_URI} valor está disponível na página Visão geral do portal do Azure do recurso de serviços de IA do Azure correspondente. Vá para a página Visão geral , passe o mouse sobre o ponto de extremidade e um ícone Copiar para área de transferência será exibido. Copie e use o ponto de extremidade onde necessário.

Captura de tela que mostra a coleta do URI do ponto de extremidade para uso posterior.

Chaves

O {API_KEY} valor é usado para iniciar o contêiner e está disponível na página Chaves do portal do Azure do recurso de serviços de IA do Azure correspondente. Vá para a página Teclas e selecione o ícone Copiar para área de transferência .

Captura de ecrã que mostra a obtenção de uma das duas teclas para utilização posterior.

Importante

Essas chaves de assinatura são usadas para acessar sua API de serviços de IA do Azure. Não partilhe as suas chaves. Armazene-os de forma segura. Por exemplo, use o Azure Key Vault. Também recomendamos que regenere essas chaves regularmente. Só é necessária uma chave para fazer uma chamada à API. Ao regenerar a primeira chave, você pode usar a segunda chave para acesso contínuo ao serviço.

ID do aplicativo {APP_ID}

Esse ID é usado para selecionar o aplicativo. Pode encontrar o ID da aplicação no portal LUIS clicando em Gerir na parte superior do ecrã da sua aplicação e, em seguida, em Definições.

A tela para encontrar o ID do aplicativo.

Chave de criação {AUTHORING_KEY}

Essa chave é usada para obter o aplicativo empacotado do serviço LUIS na nuvem e carregar os logs de consulta de volta para a nuvem. Você precisará de sua chave de criação se exportar seu aplicativo usando a API REST, descrita mais adiante no artigo.

Pode obter a sua chave de criação a partir do portal LUIS clicando em Gerir na parte superior do ecrã da sua aplicação e, em seguida, em Recursos do Azure.

A tela para encontrar sua chave de recurso de criação.

APIs de criação para arquivo de pacote

Criação de APIs para aplicativos empacotados:

O computador host

O host é um computador baseado em x64 que executa o contêiner do Docker. Pode ser um computador em suas instalações ou um serviço de hospedagem do Docker no Azure, como:

Requisitos e recomendações de contêineres

A tabela abaixo lista os valores mínimos e recomendados para o host do contêiner. Os seus requisitos podem mudar dependendo do volume de tráfego.

Contentor Mínimo Recomendado TPS
(Mínimo, Máximo)
LUIS 1 núcleo, 2 GB de memória 1 núcleo, 4 GB de memória 20, 40
  • Cada núcleo deve ter pelo menos 2,6 gigahertz (GHz) ou mais rápido.
  • TPS - transações por segundo

O núcleo e a memória correspondem às --cpus configurações e --memory , que são usadas como parte do docker run comando.

Obtenha a imagem do contêiner com docker pull

A imagem do contêiner LUIS pode ser encontrada no sindicato do registro do mcr.microsoft.com contêiner. Ele reside dentro do azure-cognitive-services/language repositório e é chamado luisde . O nome da imagem de contêiner totalmente qualificada é, mcr.microsoft.com/azure-cognitive-services/language/luis.

Para usar a versão mais recente do contêiner, você pode usar a latest tag . Você também pode encontrar uma lista completa de tags no MCR.

Use o docker pull comando para baixar uma imagem de contêiner do mcr.microsoft.com/azure-cognitive-services/language/luis repositório:

docker pull mcr.microsoft.com/azure-cognitive-services/language/luis:latest

Para obter uma descrição completa das tags disponíveis, como latest as usadas no comando anterior, consulte LUIS no Docker Hub.

Gorjeta

Você pode usar o comando docker images para listar as imagens de contêiner baixadas. Por exemplo, o comando a seguir lista o ID, o repositório e a tag de cada imagem de contêiner baixada, formatada como uma tabela:

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

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

Como utilizar o recipiente

Quando o contêiner estiver no computador host, use o seguinte processo para trabalhar com o contêiner.

Processo para usar o contêiner Language Understanding (LUIS)

  1. Pacote de exportação para contêiner do portal LUIS ou APIs LUIS.
  2. Mova o arquivo do pacote para o diretório de entrada necessário no computador host. Não renomeie, altere, substitua ou descompacte o arquivo de pacote LUIS.
  3. Execute o contêiner, com as configurações de montagem e faturamento de entrada necessárias. Mais exemplos do docker run comando estão disponíveis.
  4. Consultando o ponto de extremidade de previsão do contêiner.
  5. Quando terminar de usar o contêiner, importe os logs de ponto de extremidade da montagem de saída no portal LUIS e pare o contêiner.
  6. Use o aprendizado ativo do portal LUIS na página Revisar declarações do ponto final para melhorar o aplicativo.

O aplicativo em execução no contêiner não pode ser alterado. Para alterar o aplicativo no contêiner, você precisa alterar o aplicativo no serviço LUIS usando o portal LUIS ou usar as APIs de criação do LUIS. Em seguida, treine e/ou publique, baixe um novo pacote e execute o contêiner novamente.

O aplicativo LUIS dentro do contêiner não pode ser exportado de volta para o serviço LUIS. Apenas os logs de consulta podem ser carregados.

Exportar aplicativo empacotado do LUIS

O contêiner LUIS requer um aplicativo LUIS treinado ou publicado para responder a consultas de previsão de declarações do usuário. Para obter o aplicativo LUIS, use a API do pacote treinado ou publicado.

O local padrão é o input subdiretório em relação ao local onde você executa o docker run comando.

Coloque o arquivo de pacote em um diretório e faça referência a esse diretório como a montagem de entrada quando você executar o contêiner do docker.

Tipos de embalagem

O diretório de montagem de entrada pode conter os modelos de produção, preparo e versionamento do aplicativo simultaneamente. Todos os pacotes são montados.

Tipo de embalagem API de ponto de extremidade de consulta Disponibilidade da consulta Formato do nome do arquivo do pacote
Versionado GET, POST Apenas contentor {APP_ID}_v{APP_VERSION}.gz
Processo de teste GET, POST Azure e contêiner {APP_ID}_STAGING.gz
Produção GET, POST Azure e contêiner {APP_ID}_PRODUCTION.gz

Importante

Não renomeie, altere, substitua ou descompacte os arquivos do pacote LUIS.

Pré-requisitos de embalagem

Antes de embalar um aplicativo LUIS, você deve ter o seguinte:

Requisitos de embalagem Detalhes
Instância de recurso dos serviços Azure AI do Azure As regiões suportadas incluem

Oeste dos EUA (westus)
Europa Ocidental (westeurope)
Leste da Austrália (australiaeast)
Aplicação LUIS treinada ou publicada Sem dependências sem suporte.
Acesso ao sistema de arquivos do computador host O computador host deve permitir uma montagem de entrada.

Exportar pacote de aplicativos do portal LUIS

O portal LUIS oferece a capacidade de exportar o pacote do aplicativo treinado ou publicado.

Exportar o pacote do aplicativo publicado do portal LUIS

O pacote do aplicativo publicado está disponível na página de listagem Meus Aplicativos .

  1. Inicie sessão no portal LUIS.
  2. Marque a caixa de seleção à esquerda do nome do aplicativo na lista.
  3. Selecione o item Exportar na barra de ferramentas contextual acima da lista.
  4. Selecione Exportar para contêiner (GZIP).
  5. Selecione o ambiente do slot de produção ou do slot de preparação.
  6. O pacote é baixado do navegador.

Exporte o pacote publicado para o contêiner no menu Exportar da página Aplicativo

Exportar o pacote do aplicativo versionado do portal LUIS

O pacote do aplicativo versionado está disponível na página de listagem Versões .

  1. Inicie sessão no portal LUIS.
  2. Selecione o aplicativo na lista.
  3. Selecione Gerenciar na barra de navegação do aplicativo.
  4. Selecione Versões na barra de navegação esquerda.
  5. Marque a caixa de seleção à esquerda do nome da versão na lista.
  6. Selecione o item Exportar na barra de ferramentas contextual acima da lista.
  7. Selecione Exportar para contêiner (GZIP).
  8. O pacote é baixado do navegador.

Exporte o pacote treinado para o contêiner no menu Exportar da página Versões

Exportar o pacote do aplicativo publicado da API

Use o seguinte método de API REST para empacotar um aplicativo LUIS que você já publicou. Substituindo seus próprios valores apropriados para os espaços reservados na chamada de API, usando a tabela abaixo da especificação HTTP.

GET /luis/api/v2.0/package/{APP_ID}/slot/{SLOT_NAME}/gzip HTTP/1.1
Host: {AZURE_REGION}.api.cognitive.microsoft.com
Ocp-Apim-Subscription-Key: {AUTHORING_KEY}
Marcador de Posição Value
{APP_ID} O ID do aplicativo LUIS publicado.
{SLOT_NAME} O ambiente da aplicação LUIS publicada. Use um dos seguintes valores:
PRODUCTION
STAGING
{AUTHORING_KEY} A chave de criação da conta LUIS para o aplicativo LUIS publicado.
Você pode obter sua chave de criação na página Configurações do usuário no portal LUIS.
{AZURE_REGION} A região apropriada do Azure:

westus - Oeste dos EUA
westeurope - Europa Ocidental
australiaeast - Leste da Austrália

Para baixar o pacote publicado, consulte a documentação da API aqui. Se baixado com sucesso, a resposta é um arquivo de pacote LUIS. Salve o arquivo no local de armazenamento especificado para a montagem de entrada do contêiner.

Exportar o pacote do aplicativo versionado da API

Use o seguinte método REST API para empacotar um aplicativo LUIS que você já treinou. Substituindo seus próprios valores apropriados para os espaços reservados na chamada de API, usando a tabela abaixo da especificação HTTP.

GET /luis/api/v2.0/package/{APP_ID}/versions/{APP_VERSION}/gzip HTTP/1.1
Host: {AZURE_REGION}.api.cognitive.microsoft.com
Ocp-Apim-Subscription-Key: {AUTHORING_KEY}
Marcador de Posição Value
{APP_ID} O ID do aplicativo LUIS treinado.
{APP_VERSION} A versão do aplicativo LUIS treinado.
{AUTHORING_KEY} A chave de criação da conta LUIS para o aplicativo LUIS publicado.
Você pode obter sua chave de criação na página Configurações do usuário no portal LUIS.
{AZURE_REGION} A região apropriada do Azure:

westus - Oeste dos EUA
westeurope - Europa Ocidental
australiaeast - Leste da Austrália

Para baixar o pacote versionado, consulte a documentação da API aqui. Se baixado com sucesso, a resposta é um arquivo de pacote LUIS. Salve o arquivo no local de armazenamento especificado para a montagem de entrada do contêiner.

Execute o contêiner com docker run

Use o comando docker run para executar o contêiner. Consulte reunir os parâmetros necessários para obter detalhes sobre como obter os {ENDPOINT_URI} valores e {API_KEY} .

Exemplos do docker run comando estão disponíveis.

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/language/luis ^
Eula=accept ^
Billing={ENDPOINT_URI} ^
ApiKey={API_KEY}
  • Este exemplo usa o diretório fora da C: unidade para evitar conflitos de permissão no Windows. Se você precisar usar um diretório específico como o diretório de entrada, talvez seja necessário conceder a permissão do serviço docker.
  • Não altere a ordem dos argumentos, a menos que esteja familiarizado com contêineres docker.
  • Se você estiver usando um sistema operacional diferente, use o console/terminal correto, a sintaxe da pasta para montagens e o caractere de continuação de linha para o seu sistema. Estes exemplos pressupõem uma consola Windows com um carácter ^de continuação de linha . Como o contêiner é um sistema operacional Linux, a montagem de destino usa uma sintaxe de pasta no estilo Linux.

Este comando:

  • Executa um contêiner a partir da imagem do contêiner LUIS
  • Carrega o aplicativo LUIS da montagem de entrada em C:\input, localizada no host do contêiner
  • Aloca dois núcleos de CPU e 4 gigabytes (GB) de memória
  • Expõe a porta TCP 5000 e aloca um pseudo-TTY para o contêiner
  • Salva os logs do contêiner e do LUIS na montagem de saída em C:\output, localizada no host do contêiner
  • Remove automaticamente o recipiente depois que ele sai. A imagem do contêiner ainda está disponível no computador host.

Mais exemplos do docker run comando estão disponíveis.

Importante

As Eulaopções , Billinge devem ApiKey ser especificadas para executar o contêiner, caso contrário, o contêiner não será iniciado. Para obter mais informações, consulte Faturamento. O valor ApiKey é a Chave da página Recursos do Azure no portal LUIS e também está disponível na página de chaves de recursos do AzureAzure AI services.

Executar vários contêineres no mesmo host

Se você pretende executar vários contêineres com portas expostas, certifique-se de executar cada contêiner com uma porta exposta diferente. Por exemplo, execute o primeiro contêiner na porta 5000 e o segundo contêiner na porta 5001.

Você pode ter esse contêiner e um contêiner de serviços de IA do Azure diferente em execução no HOST juntos. Você também pode ter vários contêineres do mesmo contêiner de serviços de IA do Azure em execução.

APIs de ponto de extremidade suportadas pelo contêiner

As versões V2 e V3 da API estão disponíveis com o contêiner.

Consultar o ponto final de predição do contentor

O contentor fornece APIs de ponto final de predição de consulta com base em REST. Os pontos de extremidade para aplicativos publicados (preparo ou produção) têm uma rota diferente dos pontos de extremidade para aplicativos com controle de versão.

Utilize o anfitrião, http://localhost:5000, para APIs de contentor.

Tipo de embalagem Verbo HTTP Rota Parâmetros de consultas
Publicado GET, POST /luis/v3.0/apps/{appId}/slots/{slotName}/predict? /luis/prediction/v3.0/apps/{appId}/slots/{slotName}/predict? query={query}
[&verbose]
[&log]
[&show-all-intents]
Versionado GET, POST /luis/v3.0/apps/{appId}/versions/{versionId}/predict? /luis/prediction/v3.0/apps/{appId}/versions/{versionId}/predict query={query}
[&verbose]
[&log]
[&show-all-intents]

Os parâmetros de consulta configuram como e o que é retornado na resposta da consulta:

Parâmetro de consulta Tipo Finalidade
query string O enunciado do usuário.
verbose boolean Um valor booleano que indica se todos os metadados devem ser retornados para os modelos previstos. A predefinição é falsa.
log boolean Registra consultas, que podem ser usadas posteriormente para aprendizagem ativa. A predefinição é falsa.
show-all-intents boolean Um valor booleano que indica se todas as intenções devem ser retornadas ou apenas a intenção de pontuação máxima. A predefinição é falsa.

Consultar a aplicação LUIS

Um exemplo de comando CURL para consultar o contêiner de um aplicativo publicado é:

Para consultar um modelo em um slot, use a seguinte API:

curl -G \
-d verbose=false \
-d log=true \
--data-urlencode "query=turn the lights on" \
"http://localhost:5000/luis/v3.0/apps/{APP_ID}/slots/production/predict"

Para fazer consultas ao ambiente de preparação , substitua production na rota por staging:

http://localhost:5000/luis/v3.0/apps/{APP_ID}/slots/staging/predict

Para consultar um modelo versionado, use a seguinte API:

curl -G \
-d verbose=false \
-d log=false \
--data-urlencode "query=turn the lights on" \
"http://localhost:5000/luis/v3.0/apps/{APP_ID}/versions/{APP_VERSION}/predict"

Importar os logs de ponto de extremidade para aprendizagem ativa

Se uma montagem de saída for especificada para o contêiner LUIS, os arquivos de log de consulta do aplicativo serão salvos no diretório de saída, onde {INSTANCE_ID} é o ID do contêiner. O log de consultas do aplicativo contém a consulta, a resposta e os carimbos de data/hora para cada consulta de previsão enviada ao contêiner LUIS.

O local a seguir mostra a estrutura de diretórios aninhada para os arquivos de log do contêiner.

/output/luis/{INSTANCE_ID}/

No portal LUIS, selecione seu aplicativo e, em seguida, selecione Importar logs de ponto de extremidade para carregar esses logs.

Importar arquivos de log do contêiner para aprendizado ativo

Depois que o log for carregado, revise as declarações do ponto final no portal LUIS.

Validar se um contêiner está em execução

Há várias maneiras de validar se o contêiner está em execução. Localize o endereço IP externo e a porta exposta do contêiner em questão e abra seu navegador da Web favorito. Use as várias URLs de solicitação a seguir para validar que o contêiner está em execução. Os URLs de solicitação de exemplo listados aqui são http://localhost:5000, mas seu contêiner específico pode variar. Certifique-se de confiar no endereço IP externo e na porta exposta do contêiner.

URL do Pedido Propósito
http://localhost:5000/ O contentor fornece uma home page.
http://localhost:5000/ready Solicitada com GET, essa URL fornece uma verificação de que o contêiner está pronto para aceitar uma consulta no modelo. Essa solicitação pode ser usada para sondas de vivacidade e prontidão do Kubernetes.
http://localhost:5000/status Também solicitada com GET, essa URL verifica se a chave de api usada para iniciar o contêiner é válida sem causar uma consulta de ponto de extremidade. Essa solicitação pode ser usada para sondas de vivacidade e prontidão do Kubernetes.
http://localhost:5000/swagger O contentor fornece um conjunto completo de documentação para os pontos finais e uma funcionalidade Experimentar. Com esse recurso, você pode inserir suas configurações em um formulário HTML baseado na Web e fazer a consulta sem ter que escrever nenhum código. Depois que a consulta retorna, um comando CURL de exemplo é fornecido para demonstrar os cabeçalhos HTTP e o formato de corpo necessários.

Página inicial do Container

Execute o contêiner desconectado da Internet

Para usar este recipiente desconectado da internet, você deve primeiro solicitar o acesso preenchendo um requerimento e adquirindo um plano de compromisso. Consulte Usar contêineres do Docker em ambientes desconectados para obter mais informações.

Se você tiver sido aprovado para executar o contêiner desconectado da Internet, use o exemplo a seguir mostra a formatação do comando que você usará, com valores de docker run espaço reservado. Substitua esses valores de espaço reservado por seus próprios valores.

O DownloadLicense=True parâmetro em seu docker run comando baixará um arquivo de licença que permitirá que seu contêiner do Docker seja executado quando não estiver conectado à Internet. Ele também contém uma data de validade, após a qual o arquivo de licença será inválido para executar o contêiner. Você só pode usar um arquivo de licença com o contêiner apropriado para o qual foi aprovado. Por exemplo, você não pode usar um arquivo de licença para um contêiner de fala para texto com um contêiner de Inteligência de Documento.

Marcador de Posição Value Formato ou exemplo
{IMAGE} A imagem de contêiner que você deseja usar. mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice
{LICENSE_MOUNT} O caminho onde a licença será baixada e montada. /host/license:/path/to/license/directory
{ENDPOINT_URI} O ponto de extremidade para autenticar sua solicitação de serviço. Você pode encontrá-lo na página Chave e ponto de extremidade do seu recurso, no portal do Azure. https://<your-custom-subdomain>.cognitiveservices.azure.com
{API_KEY} A chave para o seu recurso de Análise de Texto. Você pode encontrá-lo na página Chave e ponto de extremidade do seu recurso, no portal do Azure. xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
{CONTAINER_LICENSE_DIRECTORY} Localização da pasta de licença no sistema de arquivos local do contêiner. /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} 

Depois que o arquivo de licença for baixado, você poderá executar o contêiner em um ambiente desconectado. O exemplo a seguir mostra a docker run formatação do comando que você usará, com valores de espaço reservado. Substitua esses valores de espaço reservado por seus próprios valores.

Onde quer que o contêiner seja executado, o arquivo de licença deve ser montado no contêiner e o local da pasta de licença no sistema de arquivos local do contêiner deve ser especificado com Mounts:License=. Uma montagem de saída também deve ser especificada para que os registros de uso de faturamento possam ser gravados.

Marcador de Posição Value Formato ou exemplo
{IMAGE} A imagem de contêiner que você deseja usar. mcr.microsoft.com/azure-cognitive-services/form-recognizer/invoice
{MEMORY_SIZE} O tamanho apropriado da memória a ser alocada para seu contêiner. 4g
{NUMBER_CPUS} O número apropriado de CPUs a serem alocadas para seu contêiner. 4
{LICENSE_MOUNT} O caminho onde a licença será localizada e montada. /host/license:/path/to/license/directory
{OUTPUT_PATH} O caminho de saída para registrar registros de uso. /host/output:/path/to/output/directory
{CONTAINER_LICENSE_DIRECTORY} Localização da pasta de licença no sistema de arquivos local do contêiner. /path/to/license/directory
{CONTAINER_OUTPUT_DIRECTORY} Localização da pasta de saída no sistema de arquivos local do contêiner. /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}

Parar o contentor

Para desligar o contêiner, no ambiente de linha de comando em que o contêiner está sendo executado, pressione Ctrl+C.

Resolução de Problemas

Se você executar o contêiner com uma montagem de saída e registro em log habilitados, o contêiner gerará arquivos de log que serão úteis para solucionar problemas que acontecem ao iniciar ou executar o contêiner.

Gorjeta

Para obter mais informações e orientações sobre solução de problemas, consulte Perguntas frequentes (FAQ) sobre contêineres de IA do Azure.

Se você estiver tendo problemas para executar um contêiner de serviços de IA do Azure, tente usar o contêiner de diagnóstico da Microsoft. Use esse contêiner para diagnosticar erros comuns em seu ambiente de implantação que podem impedir que os contêineres de IA do Azure funcionem conforme o esperado.

Para obter o contêiner, use o seguinte docker pull comando:

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

Em seguida, execute o contêiner. Substitua {ENDPOINT_URI} pelo ponto de extremidade e substitua {API_KEY} pela chave do recurso:

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

O contêiner testará a conectividade de rede com o ponto de extremidade de faturamento.

Faturação

O contêiner LUIS envia informações de cobrança para o Azure, usando um recurso de serviços de IA do Azure em sua conta do Azure.

As consultas ao contêiner são cobradas na camada de preço do recurso do Azure usado para o ApiKey parâmetro.

Os contêineres de serviços de IA do Azure não são licenciados para serem executados sem estarem conectados ao ponto de extremidade de medição ou cobrança. Você deve habilitar os contêineres para comunicar informações de faturamento com o ponto de extremidade de faturamento em todos os momentos. Os contêineres de serviços de IA do Azure não enviam dados do cliente, como a imagem ou o texto que está sendo analisado, para a Microsoft.

Ligar ao Azure

O contêiner precisa dos valores do argumento de faturamento para ser executado. Esses valores permitem que o contêiner se conecte ao ponto de extremidade de faturamento. O contêiner relata o uso a cada 10 a 15 minutos. Se o contêiner não se conectar ao Azure dentro da janela de tempo permitida, o contêiner continuará a ser executado, mas não atenderá consultas até que o ponto de extremidade de cobrança seja restaurado. A conexão é tentada 10 vezes no mesmo intervalo de tempo de 10 a 15 minutos. Se ele não puder se conectar ao ponto de extremidade de faturamento dentro das 10 tentativas, o contêiner interromperá o atendimento de solicitações. Consulte as Perguntas frequentes sobre o contêiner de serviços de IA do Azure para obter um exemplo das informações enviadas à Microsoft para cobrança.

Argumentos de faturação

O docker run comando iniciará o contêiner quando todas as três opções a seguir forem fornecidas com valores válidos:

Opção Description
ApiKey A chave de API do recurso de serviços de IA do Azure que é usada para rastrear informações de cobrança.
O valor dessa opção deve ser definido como uma chave de API para o recurso provisionado especificado em Billing.
Billing O ponto de extremidade do recurso de serviços de IA do Azure usado para rastrear informações de cobrança.
O valor dessa opção deve ser definido como o URI do ponto de extremidade de um recurso provisionado do Azure.
Eula Indica que você aceitou a licença para o contêiner.
O valor desta opção deve ser definido como accept.

Para obter mais informações sobre essas opções, consulte Configurar contêineres.

Resumo

Neste artigo, você aprendeu conceitos e fluxo de trabalho para baixar, instalar e executar contêineres LUIS (Language Understanding). Em resumo:

  • Language Understanding (LUIS) fornece um contêiner Linux para Docker fornecendo previsões de consulta de ponto final de enunciados.
  • As imagens de contêiner são baixadas do Microsoft Container Registry (MCR).
  • As imagens de contêiner são executadas no Docker.
  • Você pode usar a API REST para consultar os pontos de extremidade do contêiner especificando o URI do host do contêiner.
  • Você deve especificar informações de faturamento ao instanciar um contêiner.

Importante

Os contêineres de IA do Azure não são licenciados para serem executados sem estarem conectados ao Azure para medição. Os clientes precisam permitir que os contêineres comuniquem informações de faturamento com o serviço de medição em todos os momentos. Os contêineres de IA do Azure não enviam dados do cliente (por exemplo, a imagem ou o texto que está sendo analisado) para a Microsoft.

Próximos passos