IA de cidadãos com o Power Platform

Azure Machine Learning
Microsoft Power Platform
Power Apps
Power Automate
Power BI

A arquitetura a seguir estende o cenário de análise de ponta a ponta com o Azure Synapse Analytics. Ela permite que um modelo de ML (machine learning) personalizado seja treinado no Azure Machine Learning e implementado com um aplicativo personalizado criado com o Microsoft Power Platform.

Arquitetura

Diagram that shows the architecture for citizen AI with Microsoft Power Platform.

Baixe um Arquivo Visio dessa arquitetura.

Workflow

O fluxo de trabalho consiste nas seguintes etapas:

  • Ingerir
  • Repositório
  • Treinar e implantar um modelo
  • Consumir

Ingerir

Use os Pipelines do Azure Synapse para extrair dados em lote de várias fontes, tanto no local quanto na nuvem. Essa arquitetura lambda tem dois fluxos de ingestão de dados: streaming e lote. Eles são descritos aqui:

  • Streaming: na metade superior do diagrama de arquitetura anterior estão os fluxos de dados de streaming (por exemplo, fluxos de Big Data e dispositivos IoT).
    • Você pode usar os Hubs de Eventos do Azure ou o Hub IoT do Azure para ingerir fluxos de dados gerados por aplicativos cliente ou dispositivos IoT. Em seguida, os Hubs de Eventos ou o Hub IoT ingerem e armazenam os dados de streaming, preservando a sequência de eventos recebidos. Os consumidores podem se conectar aos pontos de extremidade do hub para recuperar mensagens para processamento.
  • Lote: na metade inferior do diagrama de arquitetura, os dados são ingeridos e processados em lotes como:
    • Dados não estruturados (por exemplo, vídeos, imagens, áudios e textos livres)

    • Dados semiestruturados (por exemplo, JSON, XML, CSV e logs)

    • Dados estruturados (por exemplo, bancos de dados relacionais e Serviços de Dados do Azure)

      O Link do Azure Synapse cria uma integração perfeita entre o Azure Cosmos DB e o Azure Synapse Analytics. Os Pipelines do Azure Synapse podem ser disparados com base em um agendamento predefinido ou em resposta a um evento. Eles também podem ser invocados chamando APIs REST.

Repositório

Os dados ingeridos podem chegar diretamente em formato bruto e depois serem transformados no Azure Data Lake. Os dados, depois de coletados e transformados em estruturas relacionais, podem ser apresentados para consumo no Azure Synapse Analytics.

Treinar e implantar um modelo

O Machine Learning oferece um serviço de ML em nível empresarial para criar e implantar modelos rapidamente. Ele fornece a usuários com todos os níveis de habilidade um designer de pouco código, ML automatizado e um ambiente de Jupyter Notebook hospedado. Os modelos podem ser implantados como pontos de extremidade em tempo real no Serviço de Kubernetes do Azure ou como um ponto de extremidade gerenciado do Machine Learning. Para inferência em lotes de modelos de ML, você pode usar os pipelines de Machine Learning.

Consumir

Um modelo em lote ou em tempo real publicado no Machine Learning pode gerar um ponto de extremidade REST capaz de ser consumido em um aplicativo personalizado criado usando a plataforma de pouco código Power Apps. Você também pode chamar um ponto de extremidade de Machine Learning em tempo real de um relatório do Power BI para apresentar previsões em relatórios de negócios.

Observação

Tanto a pilha de Machine Learning quanto a da Power Platform têm uma variedade de conectores integrados para ajudar a ingerir dados diretamente. Esses conectores podem ser úteis para um MVP (produto mínimo viável) único. No entanto, as seções "Ingerir" e "Armazenar" da arquitetura orientam quanto à função dos pipelines de dados padronizados para a obtenção e o armazenamento de dados de fontes diferentes em escala. Geralmente, esses padrões são implementados e mantidos pelas equipes das plataformas de dados empresariais.

Componentes

Você pode usar os seguintes componentes.

Serviços da Power Platform

  • Power Platform: um conjunto de ferramentas para analisar dados, criar soluções, automatizar processos e criar agentes virtuais. Inclui o Power Apps, o Power Automate, o Power BI e o Power Virtual Agents.
  • Power Apps: um conjunto de aplicativos, serviços, conectores e plataforma de dados. Fornece um ambiente de RAD para criar aplicativos personalizados de acordo com suas necessidades de negócios.
  • Power Automate: um serviço que ajuda você a criar fluxos de trabalho automatizados entre seus aplicativos e serviços favoritos. Use-o para sincronizar arquivos, obter notificações, coletar dados e assim por diante.
  • Power BI: uma coleção de serviços de software, aplicativos e conectores que trabalham juntos para transformar suas fontes de dados não relacionadas em insights coerentes, visualmente envolventes e interativos.

Serviços do Azure

  • Machine Learning: um serviço de ML de nível empresarial para criar e implantar modelos rapidamente. Ele fornece a usuários com todos os níveis de habilidade um designer de pouco código, ML automatizado e um ambiente de Jupyter Notebook hospedado para dar suporte ao IDE de sua escolha.
  • Pontos de extremidade gerenciados de Machine Learning: pontos de extremidade online que permitem implantar seu modelo sem precisar criar e gerenciar a infraestrutura subjacente.
  • Serviço de Kubernetes do Azure: o ML tem suporte variado nos diferentes destinos de computação. O Serviço de Kubernetes do Azure é um desses destinos, sendo uma ótima alternativa para pontos de extremidade de modelo em tempo real de nível empresarial.
  • Azure Data Lake: um sistema de arquivos compatível com o Hadoop. Tem um namespace hierárquico integrado e a grande escala e economia do Armazenamento de Blobs do Azure.
  • Azure Synapse Analytics: um serviço de análise ilimitado que reúne integração de dados, data warehouse empresarial e análise de Big Data.
  • Hubs de Eventos e Hub IoT: os dois serviços ingerem fluxos de dados gerados por aplicativos cliente ou dispositivos IoT. Depois, eles ingerem e armazenam os dados de streaming preservando a sequência de eventos recebidos. Os consumidores podem se conectar aos pontos de extremidade do hub para recuperar mensagens para processamento.

Serviços de plataforma

Para aprimorar a qualidade de suas soluções do Azure, siga as recomendações e diretrizes na Azure Well-Architected Framework. A estrutura consiste em cinco pilares de excelência em arquitetura:

  • Otimização de custos
  • Excelência operacional
  • Eficiência do desempenho
  • Confiabilidade
  • Segurança

Para criar um design que respeite essas recomendações, considere os seguintes serviços:

  • Microsoft Entra ID: serviços de identidade, logon único e autenticação multifator entre cargas de trabalho do Azure.
  • Gerenciamento de Custos e Cobrança do Azure: governança financeira sobre suas cargas de trabalho do Azure.
  • Azure Key Vault: gerenciamento seguro de credenciais e certificados.
  • Azure Monitor: coleta, análise e exibição de telemetria de seus recursos do Azure. Use o Monitor para identificar proativamente problemas e maximizar o desempenho e a confiabilidade.
  • Microsoft Defender para Nuvem: fortaleça e monitore a postura de segurança de suas cargas de trabalho do Azure.
  • Azure DevOps & GitHub: implemente práticas de DevOps para impor a automação e a conformidade aos pipelines de desenvolvimento e implantação de carga de trabalho para o Azure Synapse Analytics e o Machine Learning.
  • Azure Policy: implemente padrões organizacionais e governança para consistência de recursos, conformidade regulatória, segurança, custo e gerenciamento.

Alternativas

Um MVP de machine learning se beneficia da velocidade do resultado. Em alguns casos, as necessidades de um modelo personalizado podem ser atendidas por Serviços Cognitivos do Azure ou Serviços de IA Aplicada do Azure pré-treinados. Em outros casos, o Power Apps AI Builder pode fornecer um modelo adequado à finalidade.

Detalhes do cenário

Uma tendência geral de tecnologia é a crescente popularidade das funções de IA de cidadão. Essas funções são adotadas por profissionais de negócios que buscam aprimorar processos de negócios por meio da aplicação de tecnologias de ML e IA. Um colaborador significativo para essa tendência é a crescente maturidade e disponibilidade de ferramentas de pouco código para desenvolver modelos de ML.

Devido à conhecida alta taxa de falhas para essas iniciativas, a capacidade de criar protótipos e validar rapidamente um aplicativo de IA em um contexto do mundo real se torna um fator fundamental para habilitar uma abordagem fail-fast. Há duas ferramentas principais para desenvolver modelos que modernizam processos e geram resultados transformadores:

  • Um kit de ferramentas de ML para todos os níveis de habilidade
    • Dá suporte ao desenvolvimento de ML, seja sem código ou com código completo
    • Tem uma GUI flexível e com pouco código
    • Permite que os usuários obtenham e preparem os dados rapidamente
    • Permite que os usuários criem e implantem modelos rapidamente
    • Tem recursos avançados de ML automatizado para desenvolvimento do algoritmo de ML
  • Um kit de ferramentas de desenvolvimento de aplicativos com pouco código
    • Permite que os usuários criem aplicativos e fluxos de trabalho de automação personalizados
    • Cria fluxos de trabalho para que consumidores e processos empresariais possam interagir com um modelo de ML

O Machine Learning atende à função de uma GUI de pouco código para desenvolvimento de ML. Ele tem ML automatizado e implantação em pontos de extremidade em tempo real ou em lotes. O Power Platform, que inclui o Power Apps e o Power Automate, fornece kits de ferramentas para criar rapidamente um aplicativo e um fluxo de trabalho personalizados que implementas seu algoritmo de ML. Agora, os usuários empresariais podem criar aplicativos de ML com nível de produção para transformar processos de negócios herdados.

Possíveis casos de uso

Esses kits de ferramentas minimizam o tempo e o esforço necessários para criar protótipos dos benefícios de um modelo de ML em um processo empresarial. Você pode estender facilmente um protótipo para um aplicativo de nível de produção. Os usos dessas técnicas incluem:

  • Operações de fabricação com aplicativos herdados que usam previsões determinísticas desatualizadas. Essas situações podem se beneficiar da precisão aprimorada de um modelo de ML. Para provar uma precisão aprimorada, são necessários um modelo e um esforço de desenvolvimento para a integração aos sistemas herdados locais.
  • Operações de call center com aplicativos herdados que não são ajustados quando hádescompasso de dados. Modelos que repetem o treinamento automaticamente podem fornecer um aumento significativo na eficácia da previsão de rotatividade ou da criação de perfil de risco. A validação requer a integração com o gerenciamento de relacionamentos com o cliente e o sistema de gerenciamento de tíquetes. A integração pode ser cara.

Considerações

Ao usar esses serviços para criar uma prova de conceito ou MVP, você ainda não terminou. Há mais trabalho a ser feito para criar uma solução de produção. Estruturas como o Well-Architected Framework fornecem diretrizes de referência e melhores práticas para aplicar à sua arquitetura.

Disponibilidade

A maioria dos componentes usados neste cenário de exemplo são serviços gerenciados que serão escalados automaticamente. A disponibilidade dos serviços usados neste exemplo varia segundo a região.

Aplicativos baseados em ML normalmente exigem um conjunto de recursos para treinamento e outro para atendimento. Os recursos necessários para treinamento geralmente não precisam de alta disponibilidade, já que as solicitações de produção ao vivo não os atingem diretamente. Os recursos necessários para atender às solicitações precisam de alta disponibilidade.

DevOps

Práticas de DevOps são usadas para orquestrar a abordagem de ponta a ponta usada neste exemplo. Se sua organização é nova no DevOps, a Lista de verificação de DevOps poderá ajudar você a começar.

O Guia de DevOps de Machine Learning apresenta as melhores práticas e lições sobre a adoção de MLOps (operações de ML) na empresa com Machine Learning.

A automação de DevOps pode ser aplicada à solução Power Platform fornecida neste exemplo. Para obter mais informações sobre DevOps na Power Platform, confira Power Platform Build Tools para Azure DevOps: Power Platform.

Otimização de custo

A otimização de custos é a análise de maneiras de reduzir as despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, confira Visão geral do pilar de otimização de custo.

Preços do Azure: os serviços próprios de IaaS (infraestrutura como serviço) e PaaS (plataforma como serviço) no Azure usam um modelo de preços baseado em consumo. Eles não exigem licenças nem taxas de assinatura. Em geral, use a calculadora de preços do Azure para estimar os custos. Para saber mais sobre outras considerações, confira Otimização de custos ni Well-Architected Framework.

Preços do Power Platform: o Power Apps, o Power Automate e o Power BI são aplicativos SaaS e têm os próprios modelos de preços, incluindo o plano por aplicativo e por usuário.

Implantar este cenário

Considere este cenário empresarial. Um agente de campo usa um aplicativo que estima o preço de mercado de um carro. Você pode usar Machine Learning para criar rapidamente um protótipo de um modelo de ML desse aplicativo. Use um designer de pouco código e recursos de ML para criar o modelo e, em seguida, implante-o como um ponto de extremidade REST em tempo real.

O modelo pode provar o conceito, mas um usuário não tem uma maneira fácil de consumir um modelo implementado como uma API REST. O Power Platform pode ajudar a fechar esta lacuna, conforme representado aqui.

Screenshot that shows an ML model that's created in Machine Learning. The model obtains car data from Azure Data Lake, and it provides inferences to an endpoint.

Aqui está uma interface do usuário para o aplicativo, criada no Power Apps usando a interface de pouco código que o Power Apps fornece.

Screenshot that shows buttons and dropdown lists for the user to enter car data. The app predicts a price and displays it when the user selects the Predict button.

Você pode usar o Power Automate para criar um fluxo de trabalho de pouco código para analisar a entrada do usuário, passá-la para o ponto de extremidade de Machine Learning e recuperar a previsão. Você também pode usar o Power BI para interagir com o modelo de Machine Learning e criar painéis e relatórios de negócios personalizados.

Diagram that shows architecture showing the schematic of the workflow.

Para implantar esse exemplo de ponta a ponta, siga as instruções passo a passo em Car Price Predictor - Azure ML + Power App Solution.

Cenários estendidos

Considere os seguintes cenários.

Implantar no Teams

O aplicativo de exemplo fornecido anteriormente também pode ser implantado no Microsoft Teams. O Teams proporciona um excelente canal de distribuição para seus aplicativos e fornece aos usuários uma experiência de aplicativo colaborativa. Para obter mais informações sobre como implantar um aplicativo no Teams usando o Power Apps, confira como Publicar seu aplicativo usando o Power Apps no Teams: Power Apps.

Consumir a API de vários aplicativos e automações

Neste exemplo, configuramos um fluxo da nuvem do Power Automate para consumir o ponto de extremidade REST como uma ação HTTP. Em vez disso, podemos configurar um conector personalizado para o ponto de extremidade REST e consumi-lo diretamente do Power Apps ou do Power Automate. Essa abordagem é útil quando queremos que vários aplicativos consumam o mesmo ponto de extremidade. Ela também fornece governança usando a política DLP (prevenção contra perda de dados) do conector no Centro de administração do Power Platform. Para criar um conector personalizado, confira como Usar um conector personalizado a partir de um aplicativo do Power Apps. Para obter mais informações sobre o DLP do conector do Power Platform, confira as Políticas de prevenção contra perda de dados: Power Platform.

Colaboradores

Esse artigo é mantido pela Microsoft. Foi escrito originalmente por:

Próximas etapas