Protótipo SafeQL da KAIST corrige erros de SQL gerado por IA
Um pedido banal — «Encontrar o produto mais vendido do ano passado» — pode morrer à porta da base de dados se um assistente de IA fizer referência a um único item que não existe. Na KAIST, o estudante de doutoramento Geonho Lee e o professor Min-Soo Kim desenvolveram o SafeQL, um protótipo que repara a parte defeituosa de uma consulta gerada por IA, em vez de deitar tudo fora. Os resultados foram apresentados na conferência VLDB, em Boston, nos EUA.
O problema está no centro do text-to-SQL, o processo de transformar perguntas do dia a dia em SQL, a linguagem utilizada pelas bases de dados para obter informação. Uma IA pode indicar uma tabela ou coluna inexistente, ou juntar tabelas de forma incorreta. A correção convencional envia o erro da base de dados de volta para um LLM — modelo de linguagem de grande dimensão — e pede uma reescrita completa. Isso pode alterar secções que já estavam corretas, introduzir novos erros e consumir tempo de processamento adicional.
O SafeQL lê o feedback do sistema de gestão de bases de dados para localizar precisamente a falha: uma relação, ou seja, uma tabela; um atributo, ou seja, uma coluna; uma função; ou um valor. Em seguida, procura num «espaço de consultas seguras» composto por correções que podem efetivamente ser executadas na base de dados, dando preferência à candidata mais próxima da consulta original gerada pela IA. As opções inadequadas são filtradas antes de consumirem mais tempo de pesquisa. Quando o refinamento baseado em pesquisa não consegue resolver o erro dentro de um limiar predefinido, o SafeQL volta a chamar o LLM.
A equipa testou o sistema no BIRD e no Spider, dois testes de referência para consultas de bases de dados por IA. No BIRD, o SafeQL resolveu erros de execução em até 87,4% das consultas SQL inicialmente erradas e melhorou a precisão de execução em até 5,8 pontos percentuais face à linha de base sem refinamento. Comparado com a regeneração da consulta completa, reduziu o uso de tokens por um fator de até 15,1 e a latência de refinamento por um fator de até 29,6.
Para as empresas que processam grandes volumes de pedidos relativos a vendas, clientes ou inventário, a mudança concreta é simples: um assistente pode manter a parte de uma consulta que funciona e reparar a parte que falha. A equipa afirma que isso poderia reduzir o custo e o tempo de processamento dos sistemas empresariais de IA e permitir uma automatização do trabalho mais fiável. O estudo descreve uma implementação em PostgreSQL e resultados de testes de referência, enquanto a utilização empresarial continua a ser uma aplicação esperada, e não uma implementação já reportada; o sistema pode ainda recorrer ao LLM quando a sua pesquisa não consegue concluir a reparação.
Comentários
A carregar a conversa…
Inicie sessão para escrever um comentário. Iniciar sessão