A capacidade única do modelo 15B ultrapassou o GPT3.5 e o SQLCoder de código aberto foi empregado

A família Coder adicionou um novo membro e seu código é aberto!

Quais grandes ferramentas de modelo você conhece sobre edição de código?

O usuário do Twitter @lvwerra criou a imagem abaixo para classificar a maioria dos membros da família de códigos.

Apenas duas semanas depois de divulgar esta foto, três novos membros se juntaram à família: DeciCoder, OctoCoder e o último membro SQLCoder.

Entre eles, o membro mais recente SQLCoder não só tem excelente desempenho, mas também é de código aberto!

SQLCoder

Como modelo de linguagem SOTA em larga escala, o SQLCoder converte questões de linguagem natural em consultas SQL. No SQL, a estrutura de avaliação de código aberto do desenvolvedor, o SQLCoder supera significativamente todos os principais modelos de código aberto e supera o GPT-3.5 da OpenAI.

SQLCoder é um parâmetro LLM de 15B e também uma implementação ajustada de StarCoder. SQLCoder é ajustado em consultas SQL feitas à mão de dificuldade crescente. Quando ajustado para um único esquema de banco de dados, seu desempenho é comparável ou até melhor que o GPT-4.

*endereço do projeto: *Endereço de demonstração:

  • Peso do modelo:

Nos últimos três meses, o SQLCoder foi implantado em empresas médicas, financeiras e outras. Essas empresas geralmente têm dados confidenciais que não desejam fora de seus próprios servidores; portanto, utilizar um modelo auto-hospedado é a única maneira de usar o LLM.

metodo

criar conjunto de dados

Os autores criaram um conjunto de dados de par de conclusão editado manualmente, com foco em tarefas de texto para SQL. O conjunto de dados foi criado a partir de 10 padrões diferentes, com questões de dificuldade variada. Além disso, eles criaram um conjunto de dados de avaliação de 175 questões de 7 novos padrões.

Eles garantiram que esquemas complexos com 4 a 20 tabelas fossem selecionados nos conjuntos de dados de treinamento e avaliação, uma vez que esquemas com apenas 1 ou 2 tabelas tendiam a permitir consultas simples e diretas devido a relacionamentos limitados.

categoria de pergunta

Após a criação do conjunto de dados, o autor classificou cada questão do conjunto de dados em quatro categorias: fácil, médio, difícil e extremamente difícil. Essa categorização é feita adaptando os critérios utilizados pelo conjunto de dados Spider para medir a dificuldade do SQL. Finalmente, eles dividiram o conjunto de dados em duas subseções distintas, fácil e moderada, e difícil e superdifícil.

afinação

Os autores ajustaram o modelo nas duas etapas seguintes.

Primeiro, o modelo básico do StarCoder foi ajustado apenas em problemas de dificuldade fácil e moderada.

Em segundo lugar, o modelo obtido (codificado como defog-easy) é ajustado em problemas difíceis e superdifíceis para obter o SQLcoder.

Avalie

Os autores avaliaram o modelo em um conjunto de dados personalizado que eles mesmos criaram. Avaliar a exatidão das consultas SQL é muito difícil, eles consideraram usar o GPT-4 como padrão de avaliação, mas encontraram muitos problemas. Ao longo do caminho, eles também perceberam que duas consultas SQL diferentes poderiam estar corretas.

Para a pergunta "quem são os últimos 10 usuários de Toronto", ambos os formulários de consulta a seguir estão corretos.

Diante disso, os autores construíram uma estrutura customizada para avaliar a correção da consulta. Eles não apenas abriram o código-fonte dos pesos do modelo, mas também abriram o código-fonte da estrutura de avaliação e do conjunto de dados de avaliação.

O objetivo de liberar o conjunto de dados é enriquecer os benchmarks disponíveis e ajudar pesquisadores e engenheiros a entender melhor o desempenho dos modelos generativos de texto para SQL, especialmente a resposta do modelo a alterações inócuas nos resultados retornados, como renomeação de colunas, acréscimo de colunas e reordenação) robustez.

Mais detalhes sobre a avaliação podem ser encontrados no conteúdo do blog:

desempenho

Na estrutura de avaliação, o Defog SQLCoder supera todos os modelos principais, exceto GPT-4. Em particular, ele supera o gpt-3.5-turbo e o text-davinci-003, que têm mais de 10 vezes o tamanho dos dois modelos.

Esses resultados são para um banco de dados SQL genérico e não refletem o desempenho do SQLCoder em um único esquema de banco de dados. Ao ajustar um único esquema de banco de dados, o SQLCoder tem desempenho igual ou melhor que o GPT-4 da OpenAI com menor latência (no A100 80 GB).

*Divide cada questão gerada em 5 categorias e mostra a porcentagem de questões respondidas corretamente por cada modelo por categoria. *

Requisitos de Hardware do SQLCoder

O SQLCoder foi testado em uma GPU A100 de 40 GB com pesos. Você também pode carregar versões quantizadas de 8 e 4 bits do modelo em GPUs de consumo com 20 GB ou mais de memória, como RTX 4090, RTX 3090 e chips M2 Pro, M2 Max ou M2 Ultra da Apple com 20 GB ou mais de memória.

O próximo trabalho

Nas próximas semanas, o autor fará as seguintes atualizações no SQLCoder:

  • Treine o modelo com mais dados coletados por humanos e uma gama mais ampla de perguntas;
  • Ajustar ainda mais o modelo usando modelagem de recompensa e RLHF;
  • Pré-treinar um modelo (SQL + Python) especializado em análise de dados do zero.
Ver original
Esta página pode conter conteúdo de terceiros, que é fornecido apenas para fins informativos (não para representações/garantias) e não deve ser considerada como um endosso de suas opiniões pela Gate nem como aconselhamento financeiro ou profissional. Consulte a Isenção de responsabilidade para obter detalhes.
  • Recompensa
  • Comentário
  • Compartilhar
Comentário
0/400
Sem comentários
  • Marcar
Faça trade de criptomoedas em qualquer lugar e a qualquer hora
qrCode
Escaneie o código para baixar o app da Gate
Comunidade
Português (Brasil)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)