top of page
Foto do escritorLipie Souza

Arquitetura para análise de dados com grafos multi-fontes para IA Generativa

Atualizado: 5 de set. de 2023

Clássico problema pós-moderno das organizações onde amontoados de dados não geram Insights.


Pessoas de todas as especialidades, de analistas a CEOs lutam para serem criativos em suas decisões estando ao mesmo tempo amparados por fatos e dados. Painéis que não geram Insights, engenharias reversas para já se chegar a conclusões previamente dadas, rotinas de extração (ETL) que sobrecarregam sistemas críticos, há problemas de todos os tipos quando se trata em análise de dados. Indicadores e métricas apenas com a finalidade de controle e acompanhamento, nada mais. Informações esparsas e avolumadas, pouca ação criativa. Bom, a IA Generativa pode nos ajudar exatamente a desatar este nó de excesso informacional! Aqui abre-se uma possibilidade, é parte desta tecnologia a capacidade de “raciocinar” sobre informações, apresentando conclusões não enviesadas para nosso consumo criativo e mais abrangente, reduzindo a carga cognitiva. Minha proposta com esta análise é justamente apresentar uma arquitetura que nos ajude a chegar a conclusões, com máquinas semânticas postas neste intermédio tão necessário, resumindo vastas quantidades de dados, eliminando excessos.


Algumas perguntas precisam ser respondidas ao propormos tal arquitetura de análise de dados em tempo real que são provenientes das mais diversas fontes. Uma delas é como um LLM entende e absorve dados estruturados como planilhas, gráficos e tabelas, já que seu foco são os textos, portanto dados não estruturados? Spoiler: Há produtos intermediários que nos ajudam com isso. Outras perguntas passam por: Como organizar rotinas de ETL para IA Generativa, quais são as diferenças para a arquitetura atual? E acredito que a pergunta mais relevante seja como combinar dados de diferentes naturezas e dimensões que desembocam em um lugar onde realmente sejam gerados Insights? E Ah, iremos consumir tradicionalmente como em painéis ou iremos conversar com o modelo? Ao que tudo indica serão conversas! Bom, vamos então explorar um a um destes pontos:


IA Generativa e a incorporação de dados estruturados (não textuais)


LLMs são treinados com vastíssimas quantidades de dados, boa parte das suas fundações são textos (dados não estruturados, de correlação semântica). Mas como proceder no caso de um modelo que irá incorporar informações de dados estruturados de diversos tipos, sem correlação semântica entre si, mas com ligações relacionais? Como incluir dados brutos diretamente de bases SQL , planilhas e grafos em um modelo de linguagem natural, por exemplo? A resposta é que provavelmente precisaremos de diferentes técnicas para cada tipo de inclusão. No caso de planilhas e outros dados do tipo relacionais. uma das táticas a serem utilizadas são os chamados Grafos de Conhecimento e neste campo há frameworks OpenSource despontando na frente como o Neo4J que foi recentemente incorporado ao LangChain 🐦. O que o Neo4J faz é nada mais nada menos que descobrir a relação inferencial entre diferentes informações que estão dispostas em N bases relacionais e com diferentes estruturas. Paradoxalmente e justamente o problema que muitas corporações enfrentam: cruzar vastíssimas inferências espalhadas em X zilhões de tabelas e painéis.






Em outras palavras o Neo4J e/ou genéricos como gerenciadores de grafos de conhecimento, “plugam” suas diferentes fontes de conhecimento como planilhas, painéis, extrações de SQL e por aí vai, e faz um compilado a ser incorporado em qualquer LLM que utilizam o framework LangChain. Em outras palavras, um modelo de linguagem entende tabelas através de grafos. Assim como o Vector Database amplamente explanado neste blog, os Grafos de Conhecimento vem ganhando espaço justamente por serem diferenciais ao não trabalharem com texto puro e por conseguirem compilar dados de diferentes tipos de bases e encontrar inferências ocultas entre elas. Há também outras soluções fora do contexto OpenSource, como por exemplo o Microsoft Graph que são opções viáveis para grandes empresas, apesar das limitações claras. Estão aqui possíveis soluções para as empresas que querem criar uma central realmente inteligente de dados. :)



Extração, transformação and carregamento (ETL) para IA Generativa



Assim como as rotinas de ETL atuais, para os novos produtos de consumo de dados estratégicos com IA Generativa também iremos precisar de processos de transformação e estes custam caro! Contudo há uma diferença palpável e vantajosa aqui, eu já explico. A primeira delas é que você pode acabar com os “puxadinhos” e redundâncias e construir grafos de conhecimento a partir da base bruta dos sistemas core como CRMs, sistemas de venda, etc, eliminando toda e qualquer base intermediária de micro serviços e réplicas que existam apenas para gerar relatórios. Com isso já há uma economia de processamento enorme. Outra vantagem é que estes frameworks nos ajudam a descobrir relação inferencial entre as entidades de forma autônoma, com pouquíssima engenharia de dados, isso mesmo, você não precisa ensiná-lo que o “empreendimento X” que consta na tabela “Y” se refere a linha na tabela de vendas do mesmo “empreendimento X” que teve “Z” vendas, o próprio modelo faz estas inferências. Aqui teremos muita economia de tempo dos cientistas de dados que são empregados para modelar estas relações em modelos de machine learning tradicionais. É excelente para otimizações de rota, detecções de fraude e determinação de padrões de compra e comportamentos do cliente, por exemplo. O dinheiro gasto em SaaS para treinamento dos grafos será compensado ao dispensar analistas de dados de seu trabalho repetitivo. Ainda está em negação que a IA Generativa não irá transformar a nossa arquitetura de TI como um todo? Pois é hora de sair da casinha!


Consumo de dados: Conversas em detrimento de painéis estruturados


Por fim, aqui temos possivelmente a maior quebra de paradigma que provavelmente iremos experimentar com a IA Generativa como um todo. Passaremos a consumir menos informações compiladas em painéis e iremos passar a fazer perguntas para modelos de linguagem incorporando dados transacionais em tempo real. Ao invés de abrirmos um relatório cheio de gráficos e explicações textuais compiladas a duras penas como fazemos há décadas no dia a dia de uma empresa, em apresentações e em pesquisas e descobertas, iremos conversar com o modelo que resumirá tudo isso e passaremos através de perguntas a realizar inferências potencializadas por Insights gerados pelo próprio modelo! Estamos preparados para isso? Creio que não, mas estamos no caminho, irá requerer uma mudança cultural que é deixar de esperar resultados passados e passar a imaginar possibilidades de cenários futuros. Saber fazer as perguntas certas! Alienados ao monólogo corporativo, precisamos voltar a praticar algo que temos deixado de lado, conversar! 🍻


Observação: Estes artigos não são redigidos pelo ChatGPT. Modelos de linguagem ainda são pouco criativos, contudo são poderosos aliados no trabalho técnico e na redução do esforço cognitivo. 😎








63 visualizações0 comentário

Comments

Rated 0 out of 5 stars.
No ratings yet

Add a rating
bottom of page