Show HN: Natural-SQL-7B, um forte modelo de text-to-SQL

Um novo modelo text-to-SQL de 7 bilhões de parâmetros, o Natural-SQL-7B, busca permitir que usuários não técnicos consultem bancos de dados em linguagem natural enquanto roda localmente, levantando esperanças de análises mais baratas e privadas do que soluções baseadas em GPT‑4. Comentadores questionam sua licença personalizada “source available”, seu foco atual em PostgreSQL e se uma taxa de acerto de ~75% é suficiente para uso em produção, especialmente onde a lógica de negócio e os KPIs são sutis ou específicos do domínio. Muitos veem valor em usar esses modelos como ferramentas de rascunho ou em combinação com camadas semânticas, RAG e governança forte de dados, em vez de como substitutos independentes para analistas experientes.

Capacidades e escopo do modelo

  • Modelo text-to-SQL de 7B, ajustado em ~20 mil pares sintéticos PostgreSQL texto→SQL em várias categorias de SQL e tipos de perguntas.
  • Avaliado em ~76,5% no SQL-Eval, ligeiramente abaixo de GPT‑4 e sqlcoder‑15B.
  • Atualmente focado em Postgres; há desejo e parte do planejamento para suporte mais amplo a dialectos (MySQL, DuckDB, MSSQL, BigQuery, Trino).
  • Lida com perguntas de multi-join, agregação e subconsulta que são “difíceis” para usuários não técnicos, mas não há garantia em esquemas muito complexos ou consultas com muita lógica de negócio.

Licenciamento e debate sobre “open source”

  • A licença inclui restrições de uso (por exemplo, não militar), herdadas do modelo base.
  • Vários comentaristas argumentam que isso não é “open source”, mas sim “source/weights available”.
  • Há preocupação de que licenças não padronizadas exijam revisão jurídica, em contraste com as conhecidas MIT/Apache/GPL.
  • Alguns também observam que apenas os pesos do modelo são fornecidos, não o código/dados de treinamento.

Casos de uso, precisão e confiabilidade

  • É visto como útil para:
    • Redigir SQL para desenvolvedores/analistas que possam revisar e corrigir.
    • Alimentar ferramentas locais/cli em que os esquemas não deveriam ser enviados para LLMs na nuvem.
  • Os céticos questionam o que pode ser automatizado com segurança com ~75% de acurácia, especialmente para análises e KPIs críticos para o negócio.
  • Outros observam que humanos também cometem erros; o valor está em acelerar etapas “simples”, com humanos validando os resultados.
  • Ideias levantadas: ensembles/consenso, validação via restrições fortes do banco, uso principalmente onde a correção é fácil de verificar.

Esquema, contexto e semântica

  • Contexto de 4k é pequeno demais para muitos esquemas reais; discute-se usar RAG sobre DDL ou querer contexto de 32k+.
  • Padrão típico: passar o DDL de CREATE TABLE (com comentários) como prompt; alguns usam RAG em documentação/wiki/dbt para ensinar semântica.
  • Vários argumentam que o problema real não é a sintaxe SQL, mas entender o significado dos dados (“o que realmente significa este campo ‘price’ ou ‘active’?”).
  • Há forte apoio a camadas semânticas / grafos de conhecimento / ORMs que codificam a lógica de negócio, com SQL gerado deterministicamente a partir dessa camada em vez de diretamente por LLMs.

Cloud vs local, privacidade e confiança

  • Alguns se recusam a enviar esquemas ou dados para a OpenAI, citando termos que mudam, preocupações regulatórias ou possível acesso governamental.
  • O Azure OpenAI é visto por alguns como mais seguro, mas ficando atrás em recursos/modelos.
  • A configuração local, com pesos disponíveis, deste modelo é atraente para quem tem restrições de privacidade ou governança.

Reflexões mais amplas sobre SQL e ferramentas

  • Debate sobre aprender SQL versus depender de ORMs ou LLMs; muitos enfatizam o valor duradouro do SQL e seus benefícios de desempenho.
  • Outros destacam problemas de ergonomia do SQL e preferem abstrações.
  • Vários observam que LLMs já são úteis para explicar SQL complexo, depurar erros e gerar consultas difíceis com window functions/percentis.