Uso de LLMs para transformação de dados (ETL) para projetos de Data Lake
- Lipie Souza
- 12 de fev. de 2024
- 3 min de leitura
Atualizado: 14 de fev. de 2024
Mais um caso de uso interessante que concilia processamento de linguagem natural (com inferência cognitiva) à processos para anÔlise de dados estruturados

Em fevereiro de 2024, completo 10 meses de estudos e experimentações acerca da IA Generativa. Troquei com muitas pessoas, lancei um produto-experimento, entendi certas limitações da tecnologia - em que muitas delas acredito serem temporÔrias, e com o tempo chegando a uma perspectiva mais embasada e realista sobre como se darÔ a sua adoção.
Agora me deparo com mais um caso de uso, que parecia óbvio pelas caracterĆsticas intrĆnsecas dos LLMs, mas passara despercebido. Large Language Models sĆ£o excelentes ao analisar dados estruturados a partir de uma perspectiva linguĆstica, assim como nós seres humanos fazemos ao pensar - no caso dos LLMs, obviamente ainda de forma muito rudimentar, com pouquĆssima capacidade de encadear hipóteses para racionalizaƧƵes mais complexas. Contudo, hĆ” uma atividade que se encaixa perfeitamente nesse escopo limitado: o ato (ou posso dizer o cornojob? š¢) de interpretar tabelas de dados relacionais sobre determinados processos de negócio e transformĆ”-los, em dados multidimensionais com os devidos chaveamentos e seus respectivos fatos e eventos associados. Obviamente, existem ferramentas que realizam a transformação em si, mas requerem necessariamente que um ser humano analista entenda quais sĆ£o as relaƧƵes/contextos entre cada tabela, campo, tipo de dado, etc. Este texto Ć© justamente uma anĆ”lise do quĆ£o factĆvel Ć© botarmos um modelo de linguagem para fazer isso por nós, e o ponto de partida Ć© esteĀ artigo de Setembro de 2023 da IEEE.
Um estudo liderado por universidades renomadas como a Universidade do Arizona e a Universidade de Tianjin, com o apoio da Microsoft, demonstra que Ć© possĆvel para um LLM (Large Language Model) compreender um domĆnio complexo de conhecimento envolvendo bases de dados e transformĆ”-las de forma eficiente para projetos de Big Data/Data Lakes. O estudo foca em bases de conhecimento sobre eficiĆŖncia energĆ©tica predial, com o objetivo de unificar, normalizar e centralizar dados de diferentes fontes para criar um banco de dados global para estudos de monitoramento energĆ©tico. A iniciativa Ć© daĀ Institute of Electrical and Electronics Engineers (IEEE). O estudo Ć© relevante no sentido em que jĆ” sabemos das limitaƧƵes de LLMs para cĆ”lculos matemĆ”ticos complexos, contudo, por se tratarem de transformaƧƵes numĆ©ricas simplificadas e repetitivas, o resultado demonstrado foi de 96% de acurĆ”cia a acerca de 105 problemas de transformação de diferentes esquemas de dados. Abaixo, trĆŖs exemplos de transformaƧƵes que seriam demandadas ao algoritmo construĆdo, o SQLMorpher.

O algoritmo em questĆ£o foi treinado com tĆ©cnicas jĆ” exploradas neste blog. A base de treinamento consiste em transformaƧƵes SQL passadas, contextualizadas por prompts que explicam a tarefa desejada, as modificaƧƵes SQL entre os esquemas, o domĆnio de conhecimento utilizado e o resultado correto avaliado com sua justificativa. Utilizando a tĆ©cnica de embeddings jĆ” explicada neste blog, foi criada uma Vector Database (Faiss). Essa base de treinamento possibilitou um processo interativo em que o prompt era modificado gradualmente atĆ© que o resultado esperado da transformação fosse obtido. A grande novidade deste artigo, em relação aos estudos com LLMs, Ć© a utilização de loops de interação para otimização de prompts. Essa estratĆ©gia parece interessante quando os resultados esperados sĆ£o mapeados corretamente e parece facilmente replicĆ”vel para aplicaƧƵes que envolvem produção de código. Com essa tĆ©cnica, foi possĆvel alcanƧar uma acurĆ”cia de quase 100%:

Estes experimentos abrem novas questƵes sobre o uso de LLMs, mas tambĆ©m indicam possĆveis aplicaƧƵes em curto e mĆ©dio prazo. A partir dos resultados deste estudo, podemos fazer algumas afirmaƧƵes:
1. LLMs precisam de refinamento e contexto para ter um bom desempenho em anĆ”lises de problemas especĆficos. Isso significa que, para a maioria dos domĆnios de trabalho operacional atualmente executados por analistas de TI, FinanƧas, Marketing e outras Ć”reas, serĆ£o necessĆ”rios LLMs especialmente treinados.2. Tarefas que envolvam anĆ”lise linguĆstica intercalada com problemas matemĆ”ticos simples sĆ£o excelentes candidatas para automação por LLMs.3. Estes experimentos sĆ£o um prenĆŗncio do que jĆ” estĆ” em andamento nas equipes de produtos de grandes corporaƧƵes como Google, Amazon e Microsoft. Ć apenas uma questĆ£o de tempo atĆ© que as aplicaƧƵes "powered by LLMs" comecem a ganhar espaƧo nos próximos meses e anos.AtĆ© lĆ”, conviveremos com um misto de aplicaƧƵes tradicionais com uma pitada de "IA Generativa". Essas aplicaƧƵes otimizarĆ£o em parte os fluxos processuais presentes nas empresas hoje. No entanto, apenas com LLMs especialmente treinados Ć© que teremos um salto exponencial de produtividade no arranjo do trabalho operacional. Acompanhemos! E continuemos a experimentar. š