Editar

Partilhar via


Analise gravações de call center usando análise de texto para integridade e o Serviço OpenAI do Azure

Linguagem de IA do Azure
Azure Synapse Analytics
Azure AI services
Azure Blob Storage

Nos últimos anos, muitas empresas de saúde migraram para a nuvem, optando por fornecer serviços on-line por meio de soluções de telessaúde. Essa mudança levou a um aumento na quantidade de dados de áudio centrados na saúde que estão disponíveis para as empresas que fornecem esses serviços. A análise manual desses dados pode produzir insights úteis, como os tratamentos que são prescritos. Mas a escala desses dados torna a análise manual uma tarefa demorada.

É possível automatizar a análise de dados confidenciais de saúde usando ferramentas baseadas no Azure. Especificamente, este artigo descreve uma solução que você pode usar para as seguintes tarefas:

  • Automatizando a transcrição de dados de áudio
  • Executar uma análise específica de cuidados de saúde desses dados que inclua ligação terminológica médica
  • Fornecer os dados aos utilizadores finais

Apache® e Apache Spark são marcas registadas ou marcas comerciais da Apache Software Foundation nos Estados Unidos e/ou noutros países. Nenhum endosso da Apache Software Foundation está implícito no uso dessas marcas.

Arquitetura

A solução consiste em dois pipelines:

  • Um pipeline de transcrição que converte áudio em texto
  • Um pipeline de análise e visualização que enriquece e analisa o texto transcrito

Pipeline de transcrição

Diagrama de arquitetura de um pipeline que automatiza o processo de transcrição de gravações de call center carregadas.

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de dados

  1. Os arquivos de áudio são carregados em uma conta de Armazenamento do Azure. Os métodos de carregamento suportados incluem o uso de um SDK de armazenamento, uma API de armazenamento e ferramentas baseadas em interface do usuário, como o Gerenciador de Armazenamento do Azure.

  2. O carregamento para o Armazenamento aciona um aplicativo lógico do Azure. O aplicativo lógico acessa todas as credenciais necessárias no Azure Key Vault e faz uma solicitação à API de transcrição em lote do Azure AI Speech.

  3. O aplicativo lógico envia os arquivos de áudio para o Azure AI Speech para uma transcrição. A chamada para o serviço especifica configurações opcionais para diarização do alto-falante.

  4. O Azure AI Speech conclui a transcrição em lote e carrega os resultados da transcrição em uma conta de armazenamento.

Pipeline de análise e visualização para análise de cuidados de saúde

Diagrama de arquitetura de um pipeline que automatiza o processo de resumir e extrair informações de gravações de call center.

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de dados

  1. Um pipeline do Azure Synapse Analytics é executado para recuperar e processar o texto de áudio transcrito.

  2. Um aplicativo de função do Azure no pipeline usa uma chamada de API para enviar o texto processado para o recurso de análise de texto para integridade da Linguagem de IA do Azure. Este recurso executa uma análise centrada na saúde do texto. A análise extrai as seguintes informações:

    • Entidades como medicamentos e diagnósticos
    • Metadados relacionados, como códigos da Nomenclatura Sistematizada de Medicina (SNOMED) e códigos da Classificação Internacional de Doenças (CID)-10
    • Relações entre as entidades que o recurso identifica
  3. Um aplicativo de função do Azure no pipeline do Azure Synapse Analytics chama a API do Serviço OpenAI do Azure. Essa chamada usa GPT para gerar um resumo legível por humanos do conteúdo da chamada.

    • Se necessário, o conteúdo extraído pelo recurso de análise de texto para integridade na etapa anterior é passado para o serviço Open AI e incluído no resumo.
    • Se o conteúdo da chamada for necessário para o aprendizado de máquina, a GPT será usada para extrair uma representação dos dados amigável à linguagem de máquina. A API de incorporação do Azure OpenAI é usada para essa extração.
  4. Os dados processados são armazenados em uma conta de armazenamento.

  5. O Azure Synapse Analytics é usado para analisar os dados em escala.

  6. O conteúdo resultante é servido para ferramentas de visualização como o Power BI por meio de uma camada de serviço como um pool dedicado SQL.

Componentes

  • O Armazenamento Azure Data Lake fornece armazenamento de objetos nativo da nuvem massivamente escalável. Como um data lake criado sobre o Armazenamento de Blobs do Azure, o Armazenamento Data Lake oferece custo e desempenho otimizados para dados usados em análises, aprendizado de máquina e outros aplicativos.
  • O Azure Functions é uma solução sem servidor nativa do Azure que hospeda código leve usado em pipelines de análise. O Functions suporta várias linguagens e frameworks, incluindo .NET, Java e Python. Usando uma tecnologia de virtualização leve, o Functions pode ser expandido rapidamente para dar suporte a um grande número de solicitações simultâneas, mantendo SLAs (Service Level Agreements, contratos de nível de serviço) de nível empresarial.
  • O Cofre de Chaves armazena segredos como tokens, senhas e chaves de cliente. Para ajudar a controlar o acesso a segredos, o Key Vault fornece autorização e autenticação refinadas baseadas na ID do Microsoft Entra. O Key Vault também oferece suporte a integrações nativas para muitos serviços do Azure.
  • O Azure AI Speech fornece recursos de fala, como conversão de fala em texto, conversão de texto em fala, tradução de fala e serviços de reconhecimento de orador. Como parte dos Serviços de IA do Azure, esse serviço de fala ajuda você a criar aplicativos oferecendo APIs e modelos prontos para uso, pré-criados e personalizáveis.
  • A análise de texto para integridade é um recurso da Linguagem de IA do Azure que você pode usar para extrair, classificar e entender texto em documentos de saúde. Você pode usar a análise de texto para saúde para extrair entidades médicas, metadados de entidades médicas, como códigos SNOMED, e relacionamentos de entidades médicas de linguagem natural complexa que envolve medicina, como anotações médicas.
  • O Azure OpenAI é um serviço baseado na nuvem que oferece IA de linguagem avançada, fornecendo acesso à API REST a modelos OpenAI como GPT-3, Codex e DALL-E. As APIs do Azure OpenAI são desenvolvidas com o OpenAI para ajudar a garantir a compatibilidade com o OpenAI. Com o Azure OpenAI, você se beneficia dos recursos de segurança do Azure durante as execuções de modelos. O Azure OpenAI oferece rede privada, disponibilidade regional e filtragem responsável de conteúdo de IA. O ponto de extremidade de conclusão é o componente principal do serviço de API. Esta API fornece acesso à interface text-in, text-out do modelo. Quando você fornece um prompt de entrada que contém um comando de texto em inglês, o modelo gera uma conclusão de texto.
  • O Azure Synapse Analytics é uma plataforma de análise empresarial completa que fornece recursos de ingestão, orquestração, processamento e veiculação de dados em escala.
  • O Power BI é um painel de negócios e uma ferramenta de visualização com recursos integrados de modelagem semântica.

Alternativas

  • Você pode usar os Aplicativos Lógicos do Azure em vez de Funções. Em particular, você pode usar aplicativos lógicos se agendar trabalhos e processar gravações em lotes em vez de processar cada gravação à medida que a recebe.
  • Em vez do Azure Synapse Analytics, você pode usar o Azure Databricks para análise.
  • Você pode usar o Azure Data Factory em vez de um pipeline do Azure Synapse Analytics.
  • Para processar lotes agendados, você pode usar o Data Factory ou um pipeline do Azure Synapse Analytics em vez de uma abordagem baseada em gatilho.
  • Algumas análises requerem dados de Registos de Saúde Eletrónicos (EHR), dados FHIR (Fast Healthcare Interoperability Resources) armazenados na API do Azure para FHIR ou outros dados. Nesses cenários, você pode extrair esses dados e ingeri-los na conta de armazenamento ou contêiner que você usa para análise. No pipeline de análise e visualização para diagrama de análise de assistência médica, essa conta ou contêiner é retratado entre as etapas quatro e cinco. Em seguida, você pode usar os dados como parte de sua análise.
  • Você pode aplicar métodos de aprendizado de máquina aos dados como parte da análise. No pipeline de análise e visualização para o diagrama de análise de cuidados de saúde, a análise é apresentada como o quinto passo. Você pode usar o Azure Synapse Analytics para aplicar diretamente os métodos ou pode usar um serviço externo, como o Azure Machine Learning.

Detalhes do cenário

Esta solução baseia-se num caso de utilização real do cliente. Os usuários primeiro carregam seus dados de áudio para uma conta de armazenamento para análise. Um gatilho automatizado inicia um aplicativo de função do Azure para usar o Azure AI Speech para transcrever os dados. Esta etapa usa chaves armazenadas no Cofre de Chaves. Depois que os dados são transcritos, um pipeline de análise extrai as principais informações de integridade dos dados. O pipeline é baseado em um pipeline do Azure Synapse Analytics. Ele usa análise de texto para saúde e Azure OpenAI para resumir o conteúdo geral e extrair informações, como diagnóstico e medicamentos para pacientes. Em seguida, o Azure Synapse Analytics agrega e transforma esses dados conforme necessário para o consumo do usuário final por meio dos painéis do Power BI.

A solução baseia-se em vários pressupostos. Como os dados são altamente confidenciais, presume-se que você implante com segurança todas as contas e serviços de armazenamento seguindo as práticas recomendadas disponíveis para trabalhar com dados confidenciais na nuvem. Por exemplo, você deve criptografar todos os dados em repouso e armazenar chaves de conta com segurança. Também é assumido que você consulte a equipe de segurança de informações apropriada sobre as práticas recomendadas de segurança corporativa.

Potenciais casos de utilização

Pode utilizar esta solução para vários fins, incluindo:

  • Análise inteligente de dados de telessaúde. Você pode extrair insights do áudio coletado de sessões de telessaúde nas quais os pacientes interagem com os provedores remotamente para discutir os resultados.
  • Análise inteligente de dados de call center centrados na área da saúde. A solução pode analisar dados de call center de prestadores de cuidados de saúde que prestam cuidados em casa ou remotos aos pacientes. Como parte da análise, você pode extrair informações valiosas sobre produtos, como resultados adversos, sobre os quais os clientes recorrem.
  • Análise inteligente de dados de ensaios clínicos. Você pode coletar informações valiosas de pontos de contato externos de ensaios clínicos. A solução pode extrair e correlacionar automaticamente a terminologia médica para produzir os insights desejados para análise em larga escala.

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios orientadores que podem ser usados para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Microsoft Azure Well-Architected Framework.

Fiabilidade

A confiabilidade garante que seu aplicativo possa atender aos compromissos que você assume com seus clientes. Para obter mais informações, consulte Visão geral do pilar de confiabilidade.

Considere os seguintes pontos se o seu cenário exigir uma solução para alta disponibilidade e recuperação de desastres:

  • O SLA do Azure Synapse Analytics garante o sucesso de uma determinada percentagem das operações do cliente. Para obter o SLA deste serviço, consulte Contratos de Nível de Serviço (SLA) para Serviços Online.
  • Para obter a garantia de disponibilidade dos Aplicativos Lógicos, consulte Contratos de Nível de Serviço (SLA) para Serviços Online.
  • Você pode configurar o Armazenamento de Blob como armazenamento com redundância geográfica (GRS) ou como armazenamento com redundância geográfica de acesso de leitura (RA-GRS) que permite leituras diretamente de uma região alternativa. Sua seleção depende do seu requisito de objetivo de tempo de recuperação (RTO). Para obter mais informações, veja Redundância do Armazenamento do Microsoft Azure.
  • Várias camadas de disponibilidade e redundância são incorporadas ao serviço Cofre de Chaves. Para obter mais informações, consulte Disponibilidade e redundância do Azure Key Vault.

Segurança

A segurança oferece garantias contra ataques deliberados e o abuso de seus valiosos dados e sistemas. Para obter mais informações, consulte Visão geral do pilar de segurança.

O tipo de dados de chamada do cliente que esta solução usa é altamente sensível. Para ajudar a garantir que esses dados confidenciais permaneçam seguros, habilite os controles de segurança em toda a solução. Use também o Cofre da Chave como um serviço escalável que ajuda os usuários finais a armazenar com segurança as chaves e os segredos de que precisam para a solução. Como a solução usa OpenAI para extrair insights de dados não estruturados, certifique-se de que os insights gerais que você deriva sigam os princípios da Microsoft para IA responsável. Para obter mais informações sobre IA responsável, consulte Capacitando práticas de IA responsáveis.

Otimização de custos

A otimização de custos consiste em procurar formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Visão geral do pilar de otimização de custos.

Você pode otimizar a solução para o custo de várias maneiras:

  • Ao desenvolver análises ou adicionar novos resultados analíticos ao conteúdo, execute pipelines que concluam a transcrição de fala para texto do áudio apenas uma vez. Outros serviços podem processar o conteúdo armazenado como parte de outros pipelines.
  • Execute informações extraídas da análise de texto para integridade apenas uma vez. Armazene os resultados e reutilize-os para desenvolvimento. Essa abordagem fornece uma maneira de você fazer engenharia rápida e econômica do OpenAI.
  • Use recursos de computação efêmeros, como clusters Spark efêmeros, para análises. Normalmente, você executa esses tipos de cargas de trabalho baseadas em lote periodicamente. Desligar o cluster entre execuções pode reduzir significativamente o custo geral da solução.

Contribuidores

Este artigo é mantido pela Microsoft. Foi originalmente escrito pelos seguintes contribuidores.

Principais autores:

  • Sumit Butão - Brasil | Arquiteto de Soluções Cloud Sênior
  • DJ Dean - Brasil | Arquiteto Principal de Soluções na Nuvem

Para ver perfis não públicos do LinkedIn, inicie sessão no LinkedIn.

Próximos passos