O Text to SQL utiliza LLMs para converter linguagem natural em comandos SQL executáveis. No entanto, sua confiabilidade frequentemente fica aquém das expectativas. Movemos este blip para Evite, a fim de desencorajar seu uso em workflows não supervisionados — por exemplo, na conversão dinâmica de consultas geradas por pessoas usuárias quando a saída é oculta ou automatizada.
Nesses casos, os LLMs costumam alucinar devido à compreensão limitada do schema ou do domínio, o que pode resultar na recuperação incorreta ou na modificação não intencional de dados. Além disso, a natureza não determinística das saídas dos LLMs torna a depuração e a auditoria de erros ainda mais desafiadoras.
Recomendamos tratar o uso de Text to SQL com cautela e sempre exigir revisão humana das consultas geradas. Para cenários de business intelligence agêntico, evite o acesso direto ao banco de dados e prefira uma camada semântica de abstração de dados governada — como a camada semântica do Cube ou do dbt — ou uma camada de acesso semanticamente rica, como o GraphQL ou o MCP.
Text to SQL é uma técnica que converte as consultas feitas em linguagem natural para consultas e SQL executáveis por um banco de dados. Embora os modelos de linguagem de grande porte (LLMs) consigam entender e transformar linguagem natural, criar um SQL preciso para o seu próprio esquema pode ser desafiador. É neste ponto que entra o Vanna, um framework de código aberto em geração aumentada por recuperação (RAG) em Python para geração de SQL. O Vanna funciona em duas etapas: primeiro você cria embeddings com as instruções da linguagem de definição de dados (DDLs) e amostras de SQL para o seu esquema, e depois formula perguntas em linguagem natural. Ainda que o o Vanna funcione com qualquer LLM, incentivamos a avaliação do NSQL, um LLM específico de domínio para tarefas de texto para SQL.