OpenShift AI e Skupper: prevenção de fraude em seguros

Publicado em 17 de jun. de 2024
Tabela de conteúdos

Descrição

Este workshop mostra como usar Skupper para conectar serviços de dados locais a ambientes de AI/ML na nuvem. Inclui uma aplicação Go em um container podman que expõe dados internos para conexão via Skupper. O treinamento do modelo AI/ML roda em um cluster OpenShift AI na AWS, usando os serviços de OpenShift AI/ML.

Aviso

Este lab usa o exemplo do AI/ML Workshop criado pelo time Red Hat AI Services. O workshop original está no GitHub e traz tudo o que é preciso para rodar o lab. A adaptação aqui usa Skupper para ligar os serviços de dados locais ao ambiente de AI/ML na nuvem.

Para facilitar a execução, quem tem acesso ao ambiente demo.redhat.com pode iniciar o lab por aqui. Sem acesso ao demo, siga os passos no repositório do GitHub citado acima.

Referências

Visão geral do workshop

Solution

Este lab mostra como tecnologias de AI/ML podem resolver um problema de negócio. As informações, o código e as técnicas ilustram uma solução protótipo. Os passos principais:

  1. Guardar dados brutos de sinistros dentro da empresa.
  2. Usar uma aplicação Go em um container podman para expor dados internos à conexão Skupper.
  3. Configurar o treinamento do modelo AI/ML em um cluster OpenShift AI na AWS.
  4. Conectar dados locais aos serviços de AI/ML na nuvem com Skupper.

Papel do Skupper

Skupper

Skupper oferece conexões seguras e eficientes entre ambientes diferentes. Neste workshop, ele liga serviços locais com informações sensíveis de sinistros a um ambiente de AI/ML na nuvem. Essa conexão permite acesso e processamento remotos sem abrir mão de integridade e segurança dos dados.

Estrutura do processo

  • Contexto
  • Conexão e setup
  • LLM para sumarização de texto
  • LLM para extração de informação
  • LLM para análise de sentimento

Cenário

Somos uma seguradora multinacional em transformação digital. Um time pequeno analisou o processo de sinistros e propôs melhorias. O objetivo é integrar a solução de processamento de sinistros com análise de texto usando nossa API em um cluster Kubernetes na AWS.

Desafios

Usando Skupper para garantir segurança e integridade dos dados

  1. Manter integridade e segurança: o Skupper criptografa todo o tráfego, protegendo dados sensíveis em trânsito.
  2. Processar e-mails com OpenShift AI no datacenter on-premises.
  3. Manter aplicações com dados sensíveis dentro da empresa.
  4. Garantir conexões seguras entre serviços de dados e datacenters.

Exemplos do trabalho de prototipagem

Usando um LLM para sumarização de texto

Um LLM pode resumir e-mails longos, ajudando o regulador a entender rápido os pontos principais.

text-summarization

Usando um LLM para extração de informação

information-extraction

Um LLM extrai informações-chave dos e-mails e preenche formulários estruturados automaticamente.

Usando um LLM para análise de sentimento

Um LLM identifica o sentimento do cliente, permitindo ação rápida conforme o tom do texto.

sentiment-analysis

Como usar LLMs?

Parte 2: Hands-on

Atividades

  1. Instalar o binário do Skupper
  2. Instalar o Skupper localmente
  3. Instalar o Skupper no cluster OpenShift
  4. Linkar os sites
  5. Rodar a aplicação no site podman e expor o serviço
  6. Executar o workshop com os exemplos modificados

Passos

  1. Instalando o binário do Skupper

    curl https://skupper.io/install.sh | sh
    
  2. Instalando Skupper no site podman

    export SKUPPER_PLATFORM=podman
    podman network create skupper
    skupper init --ingress none
    
  3. Instalar Skupper no cluster OpenShift

    skupper init --enable-console --enable-flow-collector --console-user admin --console-password admin
    
  4. Linkando os sites

    • Criando o token no cluster mais exposto
      skupper token create /tmp/insurance-claim
      
    • Linkando o site podman ao cluster mais exposto
      skupper link create /tmp/insurance-claim --name ai
      
  5. Rodando a aplicação no site podman e expondo o serviço

    podman run -d --network skupper -p 8080:8080 -v /home/rzago/Code/go-flp/data:/app/data --name insurance-claim-data quay.io/rzago/insurance-claim-data:latest
    skupper service create backend 8080
    skupper service bind backend host insurance-claim-data --target-port 8080
    skupper service create backend 8080
    

Conexão bem-sucedida

Console

Topologia final

Topology

Testando a conexão com o serviço do site podman a partir do cluster OpenShift

oc exec deploy/skupper-router -c router -- curl http://backend:8080/claim/claim1.json

Próximos passos

Agora você pode seguir com o workshop até gerar os sentimentos dos e-mails.

Conclusão

Este workshop mostra como usar Skupper para conectar serviços de dados locais a ambientes de AI/ML na nuvem. Inclui uma aplicação Go em um container podman que expõe dados internos para conexão via Skupper. O treinamento do modelo AI/ML roda em um cluster OpenShift AI na AWS, usando os serviços de OpenShift AI/ML.