Este documento descreve uma arquitetura de referência para empresas de planos de saúde que querem automatizar o processamento de solicitações de autorização prévia (PA, na sigla em inglês) e melhorar os processos de análise de utilização (UR, na sigla em inglês) usando o Google Cloud. Ele é destinado a desenvolvedores de software e administradores de programas nessas organizações. Essa arquitetura ajuda os provedores de planos de saúde a reduzir a sobrecarga administrativa, aumentar a eficiência e melhorar a tomada de decisões automatizando a ingestão de dados e a extração de insights de formulários clínicos. Também permite que eles usem modelos de IA para geração de comandos e recomendações.
Arquitetura
O diagrama a seguir descreve uma arquitetura e uma abordagem para automatizar o fluxo de trabalho de ingestão de dados e otimizar o processo de análise de gerenciamento de utilização (UM, na sigla em inglês). Essa abordagem usa serviços de dados e IA no Google Cloud.
A arquitetura anterior contém dois fluxos de dados, que são compatíveis com os seguintes subsistemas:
- Ativador de dados de reivindicações (CDA), que extrai dados de fontes não estruturadas, como formulários e documentos, e os ingere em um banco de dados em um formato estruturado e legível por máquina. O CDA implementa o fluxo de dados para ingerir formulários de solicitação de PA.
- Serviço de análise de utilização (UR service), que integra dados de solicitação de PA, documentos de política e outras diretrizes de atendimento para gerar recomendações. O serviço de UR implementa o fluxo de dados para analisar solicitações de PA usando a IA generativa.
As seções a seguir descrevem esses fluxos de dados.
Fluxo de dados da CDA
O diagrama a seguir mostra o fluxo de dados para usar o CDA e ingerir formulários de solicitação de PA.
Conforme mostrado no diagrama anterior, o gerente de caso de PA interage com os componentes do sistema para ingerir, validar e processar as solicitações de PA. Os gerentes de caso de PA são as pessoas da equipe de operações comerciais responsáveis pelo recebimento das solicitações de PA. O fluxo de eventos é o seguinte:
- Os gerentes de caso de PA recebem os formulários de solicitação de PA
(
pa_forms
) do profissional de saúde e fazem upload deles para o bucket do Cloud Storagepa_forms_bkt
. - O serviço
ingestion_service
detecta mudanças no bucketpa_forms_bkt
. O serviçoingestion_service
coleta formuláriospa_forms
do bucketpa_forms_bkt
. O serviço identifica os processadores de IA de documentos pré-configurados, chamados deform_processors
. Esses processadores são definidos para processar os formuláriospa_forms
. O serviçoingestion_service
extrai informações dos formulários usando os processadoresform_processors
. Os dados extraídos dos formulários estão no formato JSON. - O serviço
ingestion_service
grava as informações extraídas com pontuações de confiança no nível do campo na coleção do banco de dados do Firestore, chamadapa_form_collection
. - O aplicativo
hitl_app
busca as informações (JSON) com pontuações de confiança do banco de dadospa_form_collection
. O aplicativo calcula a pontuação de confiança no nível do documento com base nas pontuações de confiança no nível do campo disponibilizadas na saída pelos modelos de machine learning (ML) doform_processors
. - O aplicativo
hitl_app
mostra as informações extraídas com os níveis de confiança de campo e documento para os gerentes de caso da PA, que podem revisar e corrigir as informações se os valores extraídos estiverem incorretos. Os gerentes de caso de PA podem atualizar os valores incorretos e salvar o documento no banco de dadospa_form_collection
.
Fluxo de dados do serviço UR
O diagrama a seguir mostra o fluxo de dados do serviço UR.
Como mostrado no diagrama anterior, os especialistas em UR interagem com os componentes do sistema para realizar uma análise clínica das solicitações de PA. Os especialistas em UR geralmente são enfermeiros ou médicos com experiência em uma área clínica específica e que trabalham para seguradoras de saúde. O fluxo de trabalho de gerenciamento de casos e encaminhamento para solicitações de PA está fora do escopo do fluxo de trabalho descrito nesta seção.
O fluxo de eventos é o seguinte:
- O aplicativo
ur_app
mostra uma lista de solicitações de PA e o status de revisão delas para os especialistas em UR. O status aparece comoin_queue
,in_progress
oucompleted
. - A lista é criada buscando os dados de
pa_form information
no banco de dadospa_form_collection
. O especialista em UR abre uma solicitação clicando em um item da lista exibida no aplicativour_app
. O aplicativo
ur_app
envia os dadospa_form information
para o modeloprompt_model
. Ela usa a API Gemini da Vertex AI para gerar um comando semelhante a este:Review a PA request for {medication|device|medical service} for our member, {Patient Name}, who is {age} old, {gender} with {medical condition}. The patient is on {current medication|treatment list}, has {symptoms}, and has been diagnosed with {diagnosis}.
O aplicativo
ur_app
mostra o comando gerado aos especialistas em UR para revisão e feedback. Os especialistas em UR podem atualizar o comando na interface e enviá-lo para o aplicativo.O aplicativo
ur_app
envia o comando ao modelour_model
com uma solicitação para gerar uma recomendação. O modelo gera uma resposta e retorna ao aplicativo. O aplicativo mostra o resultado recomendado aos especialistas em UR.Os especialistas em UR podem usar o aplicativo
ur_search_app
para pesquisarclinical documents
,care guidelines
eplan policy documents
. Osclinical documents
,care guidelines
eplan policy documents
são pré-indexados e acessíveis ao aplicativour_search_app
.
Componentes
A arquitetura contém os seguintes componentes:
Buckets do Cloud Storage. Os serviços de aplicativos do UM exigem os seguintes buckets do Cloud Storage no projeto Google Cloud :
pa_forms_bkt
: um bucket para ingerir os formulários de PA que precisam de aprovação.training_forms
: um bucket para armazenar formulários históricos de PA para treinar os processadores de formulários da DocAI.eval_forms
: um bucket para armazenar formulários de PA para avaliar a acurácia dos processadores de formulários da DocAI.tuning_dataset
: um bucket para armazenar os dados necessários para ajustar o modelo de linguagem grande (LLM).eval_dataset
: um bucket para armazenar os dados necessários para a avaliação do LLM.clinical_docs
: um bucket para armazenar os documentos clínicos que os provedores enviam como anexos aos formulários de PA ou depois para apoiar o caso de PA. Esses documentos são indexados pelo aplicativo de pesquisa no serviço de aplicativos de IA.um_policies
: um bucket para armazenar diretrizes de necessidade médica e de cuidados, documentos de política do plano de saúde e diretrizes de cobertura. Esses documentos são indexados pelo aplicativo de pesquisa no serviço AI Applications.
form_processors
: esses processadores são treinados para extrair informações dos formuláriospa_forms
.pa_form_collection
: um armazenamento de dados do Firestore para armazenar as informações extraídas como documentos JSON na coleção de banco de dados NoSQL.ingestion_service
: um microsserviço que lê os documentos do bucket, os transmite aos endpoints da DocAI para análise e armazena os dados extraídos na coleção do banco de dados do Firestore.hitl_app
: um microsserviço (aplicativo da Web) que busca e mostra valores de dados extraídos dopa_forms
. Ele também renderiza a pontuação de confiança informada pelos processadores de formulários (modelos de ML) para o gerente de caso da PA, para que ele possa revisar, corrigir e salvar as informações no armazenamento de dados.ur_app
: um microsserviço (aplicativo da Web) que os especialistas em UR podem usar para analisar as solicitações de PA com a IA generativa. Ele usa o modelo chamadoprompt_model
para gerar um comando. O microsserviço transmite os dados extraídos dos formuláriospa_forms
para o modeloprompt_model
para gerar um comando. Em seguida, ele transmite o comando gerado para o modelour_model
para receber a recomendação de um caso.LLMs ajustados para medicina da Vertex AI: a Vertex AI tem vários modelos de fundação de IA generativa que podem ser ajustados para reduzir o custo e a latência. Os modelos usados nesta arquitetura são os seguintes:
prompt_model
: um adaptador no LLM ajustado para gerar comandos com base nos dados extraídos dopa_forms
.ur_model
: um adaptador no LLM ajustado para gerar uma recomendação de rascunho com base no comando de entrada.
ur_search_app
: um aplicativo de pesquisa criado com o AI Applications para encontrar informações personalizadas e relevantes para especialistas em UR de documentos clínicos, políticas de UM e diretrizes de cobertura.
Produtos usados
Esta arquitetura de referência usa os seguintes produtos do Google Cloud :
- Vertex AI: uma plataforma de ML que permite treinar e implantar modelos de ML e aplicativos de IA, além de personalizar LLMs para uso em aplicativos com tecnologia de IA.
- Aplicativos de IA: uma plataforma que permite aos desenvolvedores criar e implantar agentes e aplicativos com tecnologia de IA de nível empresarial.
- Document AI: uma plataforma de processamento de documentos que transforma dados não estruturados de documentos em dados estruturados.
- Firestore: um banco de dados de documentos NoSQL criado para escalonamento automático, alto desempenho e facilidade no desenvolvimento de aplicativos.
- Cloud Run: uma plataforma de computação sem servidor que permite executar contêineres diretamente na infraestrutura escalonável do Google.
- Cloud Storage: um armazenamento de objetos de baixo custo e sem limite para diversos tipos de dados. Os dados podem ser acessados de dentro e fora Google Cloude são replicados entre locais para redundância.
- Cloud Logging: um sistema de gerenciamento de registros em tempo real com armazenamento, pesquisa, análise e alertas.
- Cloud Monitoring: um serviço que fornece visibilidade do desempenho, da disponibilidade e da integridade dos aplicativos e da infraestrutura.
Caso de uso
A UM é um processo usado por seguradoras de saúde principalmente nos Estados Unidos, mas processos semelhantes (com algumas modificações) são usados globalmente no mercado de seguros de saúde. O objetivo da UM é ajudar a garantir que os pacientes recebam o tratamento adequado no ambiente correto, no momento ideal e com o menor custo possível. A UM também ajuda a garantir que o atendimento médico seja eficaz, eficiente e alinhado aos padrões de atendimento baseados em evidências. A PA é uma ferramenta de UM que exige aprovação da seguradora antes que um paciente receba atendimento médico.
O processo de UM usado por muitas empresas é uma barreira para oferecer e receber atendimento em tempo hábil. É caro, demorado e muito administrativo. Além disso, é complexo, manual e lento. Esse processo afeta significativamente a capacidade do plano de saúde de gerenciar a qualidade do atendimento e melhorar a experiência do provedor e do membro. No entanto, se essas empresas modificassem o processo de UM, elas poderiam ajudar a garantir que os pacientes recebam tratamento de alta qualidade e econômico. Ao otimizar o processo de UR, os planos de saúde podem reduzir custos e negativas com o processamento acelerado de solicitações de PA, o que, por sua vez, pode melhorar a experiência do paciente e do provedor. Essa abordagem ajuda a reduzir a carga administrativa dos profissionais de saúde.
Quando os planos de saúde recebem solicitações de PA, os gerentes de caso criam casos no sistema de gerenciamento de casos para rastrear, gerenciar e processar as solicitações. Uma quantidade significativa dessas solicitações é recebida por fax e correio, com documentos clínicos anexados. No entanto, as informações nesses formulários e documentos não são facilmente acessíveis para empresas de planos de saúde para análise de dados e inteligência de negócios. O processo atual de inserir manualmente informações desses documentos nos sistemas de gerenciamento de casos é ineficiente, demorado e pode levar a erros.
Ao automatizar o processo de ingestão de dados, os planos de saúde podem reduzir custos, erros de entrada de dados e a carga administrativa da equipe. A extração de informações valiosas dos formulários e documentos clínicos permite que as empresas de planos de saúde agilizem o processo de UR.
Considerações sobre o design
Nesta seção, fornecemos orientações para ajudar você a usar essa arquitetura de referência para desenvolver uma ou mais arquiteturas que atendam aos seus requisitos específicos de segurança, confiabilidade, eficiência operacional, custo e desempenho.
segurança, privacidade e conformidade
Nesta seção, descrevemos os fatores que você precisa considerar ao usar essa arquitetura de referência para projetar e criar uma arquitetura emGoogle Cloud que ajuda você a atender aos requisitos de segurança, privacidade e compliance.
Nos Estados Unidos, a Lei de Portabilidade e Responsabilidade de Seguros de Saúde (HIPAA, na sigla em inglês) exige conformidade com a Regra de segurança, a Regra de privacidade e a Regra de notificação de violação da HIPAA. A HIPAA foi retificada para incluir a Lei de Tecnologia da Informação em Integridade Econômica e Clínica (HITECH, na sigla em inglês). O Google Cloud possibilita a conformidade com a HIPAA, mas, em última instância, você é responsável por avaliar sua própria conformidade com a HIPAA. A conformidade com a HIPAA é uma responsabilidade compartilhada entre você e o Google. Se sua organização estiver sujeita à HIPAA e você quiser usar produtos do Google Cloudem conexão com Informações protegidas de saúde (PHI), revise e aceite o Contrato de parceria comercial (BAA) do Google. Os produtos do Google cobertos pelo BAA atendem às exigências da Lei HIPAA e estão alinhados às nossas certificações ISO/IEC 27001, 27017 e 27018 e ao relatório SOC 2.
Nem todos os LLMs hospedados no Model Garden da Vertex AI são compatíveis com a HIPAA. Avalie e use os LLMs que oferecem suporte à HIPAA.
Para avaliar como os produtos do Google podem atender às suas necessidades de conformidade com a HIPAA, consulte os relatórios de auditoria de terceiros no Centro de recursos de compliance.
Recomendamos que os clientes considerem o seguinte ao selecionar casos de uso de IA e projetar com essas considerações em mente:
- Privacidade de dados: a plataforma Google Cloud Vertex AI e a Document AI não usam dados, uso de dados, conteúdo ou documentos do cliente para melhorar ou treinar os modelos de fundação. É possível ajustar os modelos de fundação com seus dados e documentos no locatário seguro no Google Cloud.
- As bibliotecas de cliente do servidor do Firestore usam o Identity and Access Management (IAM) para gerenciar o acesso ao banco de dados. Para saber mais sobre as informações de segurança e privacidade do Firebase, consulte Privacidade e segurança no Firebase.
- Para ajudar você a armazenar dados sensíveis, as imagens de serviço do
ingestion_service
, dohitl_app
e dour_app
podem ser criptografadas usando chaves de criptografia gerenciadas pelo cliente (CMEKs) ou integradas ao Secret Manager. - A Vertex AI implementa Google Cloud controles de segurança para ajudar a proteger seus modelos e dados de treinamento. Alguns controles de segurança não são compatíveis com os recursos de IA generativa na Vertex AI. Para mais informações, consulte Controles de segurança para a Vertex AI e Controles de segurança para IA generativa.
- Recomendamos usar o IAM para implementar os princípios de privilégio mínimo e separação de responsabilidades com recursos da nuvem. Esse controle pode limitar o acesso nos níveis de projeto, pasta ou conjunto de dados.
- O Cloud Storage armazena automaticamente os dados em um estado criptografado. Para saber mais sobre outros métodos de criptografia de dados, consulte Opções de criptografia de dados.
Os produtos do Google seguem os princípios de IA responsável.
Para princípios e recomendações de segurança específicos para cargas de trabalho de IA e ML, consulte Perspectiva de IA e ML: segurança no framework bem arquitetado.
Confiabilidade
Nesta seção, descrevemos os fatores de design que você precisa considerar ao criar e operar uma infraestrutura confiável para automatizar o processamento de solicitações de PA.
A Document AI form_processors
é um serviço regional. Os dados são armazenados de forma síncrona em várias zonas dentro de uma região. É feito o balanceamento de carga automático no tráfego entre as zonas. Se ocorrer uma interrupção do serviço na zona, os dados não serão perdidos1. Se ocorrer uma interrupção do serviço na região, o serviço ficará indisponível até que o Google resolva essa interrupção.
É possível criar buckets do Cloud Storage em um destes três locais: regional, birregional ou multirregional, usando buckets pa_forms_bkt
, training_forms
, eval_forms
, tuning_dataset
, eval_dataset
, clinical_docs
ou um_policies
. Os dados armazenados em buckets regionais são replicados de forma síncrona em várias zonas dentro de uma região. Para maior disponibilidade, use buckets birregionais ou multirregionais, em que os dados são replicados de forma assíncrona entre regiões.
No Firestore,
as informações extraídas do banco de dados pa_form_collection
podem ficar em
vários data centers para ajudar a garantir escalonabilidade e confiabilidade globais.
Os serviços do Cloud Run, ingestion_service
, hitl_app
e ur_app
, são regionais. Os dados são armazenados de forma síncrona em várias zonas dentro de uma região. O tráfego tem a carga balanceada automaticamente entre as zonas. Em caso de interrupção do serviço na zona, os jobs do Cloud Run continuam em execução e os dados não são perdidos. Se ocorrer uma interrupção do serviço na região, os jobs do Cloud Run deixarão de ser executados até que o Google resolva essa interrupção. Jobs ou tarefas individuais do Cloud Run podem falhar. Para lidar com essas falhas, use novas tentativas de tarefa e checkpoints. Para mais informações, consulte Práticas recomendadas de novas tentativas de jobs e checkpoints.
As dicas gerais de desenvolvimento do Cloud Run
descrevem algumas práticas recomendadas para usar o Cloud Run.
A Vertex AI é uma plataforma de machine learning abrangente e fácil de usar que oferece um ambiente unificado para o ciclo de vida do machine learning, desde a preparação de dados até a implantação e o monitoramento de modelos.
Para princípios e recomendações de confiabilidade específicos para cargas de trabalho de IA e ML, consulte Perspectiva de IA e ML: confiabilidade no framework bem arquitetado.
Otimização de custos
Esta seção fornece orientações para otimizar o custo de criação e execução de uma arquitetura para automatizar o processamento de solicitações de PA e melhorar os processos de UR. Gerenciar com cuidado o uso de recursos e selecionar os níveis de serviço adequados pode afetar significativamente o custo geral.
Classes de armazenamento do Cloud Storage: use as diferentes classes de armazenamento (Standard, Nearline, Coldline ou Archive) com base na frequência de acesso aos dados. Nearline, Coldline e Archive são mais econômicos para dados acessados com menos frequência.
Políticas de ciclo de vida do Cloud Storage: implemente políticas de ciclo de vida para fazer a transição automática de objetos para classes de armazenamento de custo menor ou excluí-los com base na idade e nos padrões de acesso.
O preço da Document AI é baseado no número de processadores implantados e no número de páginas processadas por eles. Considere o seguinte:
- Otimização de processadores: analise padrões de carga de trabalho para determinar o número ideal de processadores da Document AI a serem implantados. Evite o provisionamento excessivo de recursos.
- Gerenciamento de volume de páginas: o pré-processamento de documentos para remover páginas desnecessárias ou otimizar a resolução pode ajudar a reduzir os custos de processamento.
O Firestore tem preços baseados na atividade relacionada a documentos, entradas de índice, armazenamento usado pelo banco de dados e quantidade de largura de banda da rede. Considere o seguinte:
- Modelagem de dados: crie seu modelo de dados para minimizar o número de entradas de índice e otimizar os padrões de consulta para eficiência.
- Largura de banda da rede: monitore e otimize o uso da rede para evitar cobranças excessivas. Considere armazenar em cache os dados acessados com frequência.
As cobranças do Cloud Run são calculadas com base no uso de CPU, memória e número de solicitações sob demanda. Pense com cuidado na alocação de recursos. Alocar recursos de CPU e memória com base nas características da carga de trabalho. Use o escalonamento automático para ajustar os recursos de acordo com a demanda.
Os LLMs da Vertex AI geralmente são cobrados com base na entrada e saída de texto ou mídia. As contagens de tokens de entrada e saída afetam diretamente os custos de LLM. Otimize comandos e a geração de respostas para ter eficiência.
As cobranças do mecanismo de pesquisa dos aplicativos de IA dependem dos recursos que você usa. Para ajudar a gerenciar seus custos, escolha entre as três opções a seguir:
- A Search Standard Edition, que oferece recursos de pesquisa não estruturada.
- A Pesquisa Enterprise Edition, que oferece recursos de pesquisa não estruturada e de sites.
- Complemento LLM de pesquisa, que oferece recursos de resumo e pesquisa com várias interações.
Você também pode considerar as seguintes opções para ajudar a otimizar os custos:
- Monitoramento e alertas: configure o Cloud Monitoring e os alertas de faturamento para acompanhar os custos e receber notificações quando o uso exceder os limites.
- Relatórios de custos: analise regularmente os relatórios de custos no Google Cloud console para identificar tendências e otimizar o uso de recursos.
- Considere os descontos por uso contínuo: se você tiver cargas de trabalho previsíveis, considere se comprometer a usar esses recursos por um período especificado para receber preços com desconto.
Considerar esses fatores e implementar as estratégias recomendadas pode ajudar você a gerenciar e otimizar de maneira eficaz o custo de execução da sua arquitetura de automação de PA e UR no Google Cloud.
Para princípios e recomendações de otimização de custos específicos para cargas de trabalho de IA e ML, consulte Perspectiva de IA e ML: otimização de custos no Framework bem arquitetado.
Implantação
O código de implementação de referência para essa arquitetura está disponível sob licenciamento de código aberto. A arquitetura implementada por esse código é um protótipo e pode não incluir todos os recursos e a proteção necessários para uma implantação de produção. Para implementar e expandir essa arquitetura de referência e atender melhor aos seus requisitos, recomendamos que você entre em contato com a Consultoria do Google Cloud.
O código inicial dessa arquitetura de referência está disponível nos seguintes repositórios git:
- Repositório git do CDA: contém scripts de implantação do Terraform para provisionamento de infraestrutura e implantação de código de aplicativo.
- Repositório git do serviço UR: contém exemplos de código para o serviço UR.
Você pode escolher uma das duas opções a seguir para implementar suporte e serviços para essa arquitetura de referência:
- Contrate a Consultoria do Google Cloud.
- Envolva um parceiro que criou uma oferta de pacote usando os produtos e componentes de solução descritos nesta arquitetura.
A seguir
- Saiba como criar uma infraestrutura para um aplicativo de IA generativa compatível com RAG usando a Vertex AI e a Pesquisa de vetor.
- Saiba como criar uma infraestrutura para um aplicativo de IA generativa compatível com RAG usando a Vertex AI e o AlloyDB para PostgreSQL.
- Infraestrutura para um aplicativo de IA generativa com capacidade para RAG usando o GKE e o Cloud SQL
- Consulte as Google Cloud opções para embasar respostas de IA generativa.
- Saiba como otimizar aplicativos Python para o Cloud Run.
- Para uma visão geral dos princípios e recomendações de arquitetura específicos para cargas de trabalho de IA e ML no Google Cloud, consulte a perspectiva de IA e ML no framework bem arquitetado.
- Para mais arquiteturas de referência, diagramas e práticas recomendadas, confira a Central de arquitetura do Cloud.
Colaboradores
Autor: Dharmesh Patel | Arquiteto de soluções do setor de saúde
Outros colaboradores:
- Ben Swenka | Arquiteto corporativo principal
- Emily Qiao | Engenheira de clientes de IA/ML
- Luis Urena | Engenheiro de relações com desenvolvedores
- Praney Mittal | Gerente de produtos do grupo
- Lakshmanan Sethu | Gerente técnico de contas
-
Para mais informações sobre considerações específicas de cada região, consulte Geografia e regiões. ↩