Implantar uma solução de detecção de clientela baseada em IA usando o Azure e o Azure Stack Hub

Este artigo descreve como implantar uma solução baseada em IA que gera insights de ações do mundo real usando o Azure, o Azure Stack Hub e o Kit de desenvolvimento de IA da Visão Personalizada.

Nesta solução, você aprenderá a:

  • Implantar CNABs (Pacotes de aplicativos nativos de nuvem) na borda.
  • Implantar um aplicativo que abranja os limites da nuvem.
  • Use o Kit de desenvolvimento de IA da Visão Personalizada para inferência na borda.

Dica

Diagrama dos pilares híbridos O Microsoft Azure Stack Hub é uma extensão do Azure. O Azure Stack Hub traz a agilidade e a inovação da computação em nuvem para seu ambiente local, fornecendo a única nuvem híbrida que permite criar e implantar aplicativos híbridos em qualquer lugar.

O artigo Considerações de design de aplicativos híbridos examina os pilares da qualidade de software (posicionamento, escalabilidade, disponibilidade, resiliência, capacidade de gerenciamento e segurança) relativos ao design, à implantação e à operação de aplicativos híbridos. As considerações de design ajudam na otimização do design de aplicativos híbridos, reduzindo os desafios nos ambientes de produção.

Pré-requisitos

Antes de começar a usar este guia de implantação, você deve:

Implantar o aplicativo de nuvem híbrida

Primeiro, você usará a CLI do Porter para gerar um conjunto de credenciais e, em seguida, implantar o aplicativo de nuvem.

  1. Clonar ou fazer download do repositório que contém o código de exemplo da solução.

  2. O Porter gerará um conjunto de credenciais que automatizará a implantação do aplicativo. Antes de executar o comando de geração de credenciais, você deve ter:

    • Uma entidade de serviço para acessar recursos do Azure, inclusive a ID da entidade de serviço, a chave, e o DNS do locatário.
    • A ID de sua assinatura do Azure.
    • Uma entidade de serviço para acessar recursos do Azure Stack Hub, inclusive a ID da entidade de serviço, a chave, e o DNS do locatário.
    • A ID de sua assinatura do Azure Stack Hub.
    • Sua chave e seu URL de ponto de extremidade de recurso da API de Detecção Facial dos Serviços Cognitivos do Azure.
  3. Execute o processo de geração de credencial do Porter e siga as solicitações:

    porter creds generate --tag intelligentedge/footfall-cloud-deployment:0.1.0
    
  4. O Porter também requer um conjunto de parâmetros para ser executado. Crie um arquivo de texto de parâmetros e insira os seguintes pares de nome/valor. Entre em contato com o administrador do Azure Stack Hub caso precise de assistência a respeito de algum dos valores necessários.

    Observação

    O valor resource suffix é usado para garantir que os recursos da implantação tenham nomes exclusivos no Azure. Ele deve ser uma cadeia de caracteres exclusiva com letras e números e ter até 8 caracteres.

    azure_stack_tenant_arm="Your Azure Stack Hub tenant endpoint"
    azure_stack_storage_suffix="Your Azure Stack Hub storage suffix"
    azure_stack_keyvault_suffix="Your Azure Stack Hub keyVault suffix"
    resource_suffix="A unique string to identify your deployment"
    azure_location="A valid Azure region"
    azure_stack_location="Your Azure Stack Hub location identifier"
    powerbi_display_name="Your first and last name"
    powerbi_principal_name="Your Power BI account email address"
    

    Salve o arquivo de texto e anote o caminho.

  5. Agora você já pode implantar o aplicativo de nuvem híbrida usando o Porter. Execute o comando de instalação e veja os recursos sendo implantados no Azure e no Azure Stack Hub:

    porter install footfall-cloud –tag intelligentedge/footfall-cloud-deployment:0.1.0 –creds footfall-cloud-deployment –param-file "path-to-cloud-parameters-file.txt"
    
  6. Assim que a implantação for concluída, anote os seguintes valores:

    • A cadeia de conexão da câmera.
    • A cadeia de conexão da conta de armazenamento de imagens.
    • Os nomes do grupo de recursos.

Preparar o DevKit de IA da Visão Personalizada

Depois, configure o DevKit de IA da Visão Personalizada conforme mostrado no Guia de início rápido do DevKit de IA da Visão. Configure e teste também sua câmera usando a cadeia de conexão fornecida na etapa anterior.

Implantar o aplicativo da câmera

Use a CLI do Porter para gerar um conjunto de credenciais, depois implante o aplicativo da câmera.

  1. O Porter gerará um conjunto de credenciais que automatizará a implantação do aplicativo. Antes de executar o comando de geração de credenciais, você deve ter:

    • Uma entidade de serviço para acessar recursos do Azure, inclusive a ID da entidade de serviço, a chave, e o DNS do locatário.
    • A ID de sua assinatura do Azure.
    • A cadeia de conexão da conta de armazenamento de imagens fornecida quando você implantou o aplicativo de nuvem.
  2. Execute o processo de geração de credencial do Porter e siga as solicitações:

    porter creds generate --tag intelligentedge/footfall-camera-deployment:0.1.0
    
  3. O Porter também requer um conjunto de parâmetros para ser executado. Crie um arquivo de texto de parâmetros e insira o texto a seguir. Entre em contato com o administrador do Azure Stack Hub caso desconheça algum dos valores exigidos.

    Observação

    O valor deployment suffix é usado para garantir que os recursos da implantação tenham nomes exclusivos no Azure. Ele deve ser uma cadeia de caracteres exclusiva com letras e números e ter até 8 caracteres.

    iot_hub_name="Name of the IoT Hub deployed"
    deployment_suffix="Unique string here"
    

    Salve o arquivo de texto e anote o caminho.

  4. Agora você já pode implantar o aplicativo da câmera usando o Porter. Execute o comando install e veja a implantação do IoT Edge ser criada.

    porter install footfall-camera –tag intelligentedge/footfall-camera-deployment:0.1.0 –creds footfall-camera-deployment –param-file "path-to-camera-parameters-file.txt"
    
  5. Para verificar se a implantação foi concluída, exiba o feed da câmera em https://<camera-ip>:3000/, onde <camara-ip> é o endereço IP da câmera. Essa etapa pode levar até 10 minutos.

Configurar o Azure Stream Analytics

Agora que os dados estão fluindo para o Azure Stream Analytics a partir da câmera, precisamos autorizá-los manualmente para se comunicarem com o Power BI.

  1. No portal do Azure, abra Todos os Recursos e o trabalho process-footfall[yoursuffix].

  2. Na seção Topologia do Trabalho do painel do trabalho do Stream Analytics, selecione a opção Saídas.

  3. Selecione o coletor de saída traffic-output.

  4. Selecione Renovar autorização e entre em sua conta do Power BI.

    Captura de tela que mostra o prompt de autorização de renovação no Power BI.

  5. Salve as configurações de saída.

  6. Acesse o painel Visão geral e selecione Iniciar para começar a enviar dados ao Power BI.

  7. Selecione Agora para a hora de início da saída do trabalho e selecione Iniciar. Você pode exibir o status do trabalho na barra de notificação.

Criar um Painel do Power BI

  1. Depois que o trabalho for concluído com êxito, acesse o Power BI e entre com sua conta corporativa ou de estudante. Se a consulta do trabalho do Stream Analytics estiver gerando resultados, o conjunto de dados footfall-dataset criado estará presente na guia Conjuntos de Dados.

  2. No espaço de trabalho do Power BI, escolha + Criar para criar um painel novo chamado Análise de Clientela.

  3. Na parte superior da janela, escolha Adicionar bloco. Em seguida, escolha Fluxo de Dados Personalizado e Avançar. Escolha o footfall-dataset em Seus Conjuntos de Dados. Escolha Cartão na lista suspensa Tipo de visualização e adicione período em Campos. Escolha Avançar para inserir um nome para o bloco e escolha Aplicar para criar o bloco.

  4. Você pode adicionar campos e cartões conforme desejado.

Testar sua solução

Observe como os dados nos cartões criados no Power BI mudam conforme pessoas diferentes se movimentam na frente da câmera. Depois de registradas, as inferências podem levar até 20 segundos para aparecer.

Remover sua solução

Caso queira remover sua solução, execute os comandos a seguir usando o Porter, empregando os mesmos arquivos de parâmetro que você criou para a implantação:

porter uninstall footfall-cloud –tag intelligentedge/footfall-cloud-deployment:0.1.0 –creds footfall-cloud-deployment –param-file "path-to-cloud-parameters-file.txt"

porter uninstall footfall-camera –tag intelligentedge/footfall-camera-deployment:0.1.0 –creds footfall-camera-deployment –param-file "path-to-camera-parameters-file.txt"

Próximas etapas