A Databricks apresentou recentemente o DBRX, seu modelo de linguagem grande (LLM) aberto e de uso geral, desenvolvido em uma arquitetura de mistura de especialistas (MoE) com uma abordagem de granulação fina. Em vez de usar uma única rede neural para todas as tarefas, o sistema compreende várias redes "especializadas" especializadas, cada uma otimizada para diferentes tipos de tarefas ou dados.
Esse modelo teve um desempenho melhor do que os LLMs tradicionais, como o GPT-3.5 e o Llama 2, porque é mais rápido e econômico. De acordo com os testes, o DBRX obteve uma pontuação de 73,7%, que é maior do que o LLaMa2 (69,8%) em tarefas de compreensão de idiomas.
Neste artigo, discutiremos mais detalhadamente seus recursos e como você pode começar a usar o Databricsk DBRX.
O que é o Databricks DBRX?
O DBRX usa uma arquitetura de decodificador baseada em transformador treinada usando a previsão do próximo token. Ele emprega uma arquitetura de mistura de especialistas (MoE) de granulação fina. Esses "especialistas" referem-se a agentes especializados baseados em LLMs, aprimorados com conhecimento específico do domínio e habilidades de raciocínio.
O DBRX tem um grande número de especialistas menores (16 especialistas no total) e escolhe um subconjunto deles (4 especialistas) para qualquer entrada.
Simplificando, essa abordagem refinada com 65 vezes mais combinações possíveis de especialistas melhora a qualidade do modelo em comparação com outros modelos abertos de MoE, como Mixtral e Grok-1, que têm menos especialistas e escolhem menos especialistas por entrada.
Aqui estão alguns detalhes importantes sobre a DBRX:
Tamanho do parâmetro: O DBRX tem um total de 132 bilhões de parâmetros, dos quais 36 bilhões estão ativos em qualquer entrada.
Dados de pré-treinamento: Ele foi pré-treinado com 12 trilhões de tokens de dados cuidadosamente selecionados e um comprimento de contexto de 32.000 tokens, o que é pelo menos duas vezes melhor token por token do que os dados usados para pré-treinar a família de modelos MPT.
Como o DBRX foi treinado?
O modelo foi pré-treinado em um conjunto de dados impressionantemente grande, estimado como duas vezes mais eficaz do que os conjuntos de dados anteriores usados pela Databricks. Um conjunto de ferramentas da Databricks, como o Apache Spark e os notebooks da Databricks para processamento de dados e o Unity Catalog para governança de dados, foi usado para treinar o modelo.
Durante o treinamento, o aprendizado curricular foi empregado e a combinação de dados foi alterada para melhorar substancialmente a qualidade do modelo. Essas alterações estratégicas na combinação de dados de treinamento otimizaram a capacidade do modelo de lidar com diversas entradas de forma eficaz.
Algumas das principais tecnologias usadas no pré-treinamento da DBRX incluem:
Codificações de posição rotativa (RoPE): Um método em transformadores que codifica posições de tokens por transformações rotacionais em um espaço de alta dimensão, aprimorando a compreensão da sequência.
Unidades lineares fechadas (Gated Linear Units, GLU): Uma camada de rede neural que usa um mecanismo de porta para controlar o fluxo de informações, auxiliando na captura de padrões complexos.
Atenção à consulta agrupada (GQA): Um mecanismo de atenção que calcula pesos dentro de grupos de consultas para reduzir o custo computacional e melhorar o foco.
tokenizador GPT-4 do repositório tiktoken: Uma implementação específica de tokenizador para o GPT-4, convertendo texto em tokens prontos para o modelo, otimizados para as necessidades de processamento do GPT-4.
Como o DBRX se compara a modelos similares?
A Databricks afirma que seu modelo DBRX é superior a vários dos principais modelos de código aberto em termos de eficiência e desempenho de tarefas.
Aqui você encontra uma comparação detalhada de como o DBRX se compara aos seus concorrentes:
1) DBRX vs. LLaMA2-70B
Conhecimento geral (MMLU): A DBRX Instruct tem uma pontuação 9,8% maior do que a LLaMA2-70B.
Raciocínio de senso comum (conjunto de dados HellaSwag): A DBRX Instruct continua a liderar com uma pontuação 3,1% maior.
Databricks gauntlet (um modelo que avalia os recursos de LLMs pré-treinados com base em diferentes tarefas): O DBRX Instruct tem uma forte liderança - uma pontuação 14% maior do que o LLaMA2-70B.
Programação e raciocínio matemático: A DBRX Instruct se destaca com 37,9% em programação e 40,2% em raciocínio matemático.
2) DBRX Instruct vs. DBRX Instruct. Instrução Mixtral
Conhecimento geral: A DBRX Instruct está à frente da Mixtral Instruct com uma pontuação 2,3% maior.
Raciocínio de senso comum (conjunto de dados HellaSwag): O DBRX Instruct tem um desempenho melhor, com uma pontuação 1,4% maior.
Desafio do Databricks: A DBRX Instruct supera a Mixtral Instruct por uma margem notável de 6,1%.
Programação e raciocínio matemático: O DBRX Instruct superou o Mixtral Instruct em 15,3% em programação e 5,8% em raciocínio matemático.
3) DBRX vs Grok-1
Conhecimento geral: O desempenho é, de certa forma, semelhante, com o DBRX Instruct mantendo uma leve vantagem de 0,7% sobre o Grok-1.
Programação e raciocínio matemático: O DBRX Instruct superou o Grok-1 com uma vantagem de 6,9% em programação e 4% em raciocínio matemático.
4) DBRX vs Base Mixtral
Conhecimento geral: O DBRX Instruct lidera ligeiramente com uma pontuação 1,8% maior do que o Mixtral Base.
Raciocínio de senso comum (conjunto de dados HellaSwag): O DBRX tem uma pontuação mais alta, com uma diferença de 2,5%.
Desafio do Databricks: A DBRX lidera com 10% sobre a Base Mixtral.
Programação e raciocínio matemático: O DBRX Instruct mostra uma notável liderança de desempenho com uma pontuação 29,9% maior do que o Mixtral Base.
Tabela de comparação
Abaixo, reunimos as comparações em uma tabela e mostramos um gráfico com base em alguns dos resultados:
Comparação de modelos
Conhecimento geral
Raciocínio de senso comum
Databricks Gauntlet
Raciocínio de programação
Raciocínio matemático
DBRX vs LLaMA2-70B
+9.8%
+3.1%
+14%
+37.9%
+40.2%
DBRX vs. Mixtral Instruct
+2.3%
+1.4%
+6.1%
+15.3%
+5.8%
DBRX vs Grok-1
+0.7%
Não disponível
Não disponível
+6.9%
+4%
DBRX vs Base Mixtral
+1.8%
+2.5%
+10%
+29.9%
Não disponível
Comparando a qualidade do DBRX com outros LLMs de código aberto - fonte
Como usar o DBRX: Um guia passo a passo
Antes de acessar o DBRX, certifique-se de que seu sistema tenha pelo menos 320 GB de memória. Em seguida, siga estas etapas para acessar o DBRX:
Em seguida, solicite um token de acesso com permissões de leitura do Hugging Face (isso é necessário para que você possa fazer o download do modelo).
Quando você tiver acesso, importe e carregue o modelo usando o código a seguir.
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
tokenizer = AutoTokenizer.from_pretrained("databricks/dbrx-base", token="hf_YOUR_TOKEN")
model = AutoModelForCausalLM.from_pretrained("databricks/dbrx-base", device_map="auto", torch_dtype=torch.bfloat16, token="hf_YOUR_TOKEN")# Directing tensors to "cuda" (GPU) for faster computation as GPUs are better at handling parallel tasks.
input_text ="Databricks was founded in "
input_ids = tokenizer(input_text, return_tensors="pt").to("cuda")# DBRX accepts a context length of up to 32768 tokens. Here`max_new_tokens` specifies the maximum number of tokens to generate.
outputs = model.generate(**input_ids, max_new_tokens=100)print(tokenizer.decode(outputs[0]))Tecnologia
A DRBX pode ajudar você com a criação de conteúdo básico e tarefas de resposta imediata, como qualquer LLM. Veja o que você pode fazer com o DBRX:
Preenchimento de texto: O DBRX pode gerar respostas baseadas em texto com base em suas solicitações.
Compreensão do idioma: Ele pode executar tarefas como analisar entradas de linguagem natural, resumir documentos longos ou traduzir textos entre linguagens de codificação ou estilos de script.
Otimização de consultas: O DBRX também pode otimizar as consultas ao banco de dados para minimizar o tempo de execução e ajudar os engenheiros de dados a se concentrarem em outras tarefas essenciais sem comprometer o desempenho.
Tarefas de codificação com DBRX
O DBRX também pode executar tarefas avançadas relacionadas à codificação para ajudar os profissionais de dados ou codificadores:
Código e explicação: Ele pode gerar código para várias tarefas de programação e explicar as funções existentes ou sugerir algoritmos para problemas específicos para que você entenda e otimize o código.
Depuração com DBRX: Ele fornece sugestões de correções de código para melhorar a produtividade do desenvolvedor e acelerar o processo de depuração.
Identificação de vulnerabilidade: Ele também pode identificar problemas no código e propor soluções para atenuá-los.
Como fazer o ajuste fino do DBRX
Você pode ajustar o DBRX com o LLM foundry de código aberto do Github. No entanto, o ajuste fino exige que os exemplos de treinamento sejam formatados como dicionários:
Se nenhuma função de pré-processamento for definida, use preprocessing_fn para especificar uma função de pré-processamento personalizada para o carregador de dados.
O Databricks DBRX usa várias redes especializadas para aumentar a velocidade do modelo e a relação custo-benefício. Essa abordagem refinada permite que ele supere outros LLMs no tratamento de tarefas complexas.
Você quer saber mais sobre modelos de linguagem grandes e como ajustá-los? Dê uma olhada nestes recursos:
Descubra como conseguir as certificações Databricks, veja os benefícios para a sua carreira e aprenda a escolher a certificação certa para os seus objetivos em 2026.
Explore o DuckDB, o banco de dados analítico rápido e fácil de usar para Python e R. Conheça seus principais recursos, casos de uso e como ele otimiza as tarefas de análise de dados.
Este guia do AWS Redshift abrange a configuração e o gerenciamento de um data warehouse na nuvem, o carregamento de dados, a execução de consultas complexas, a otimização do desempenho, a integração com ferramentas de BI e fornece práticas recomendadas e dicas de solução de problemas para que você tenha sucesso.
Descubra como usar o DALL-E 3 para criar imagens. Descubra o que é o DALL-E 3, seus principais recursos e como usar os prompts para obter os melhores resultados.
Descubra os fundamentos da IA, aprenda a usar a IA de forma eficaz no trabalho e mergulhe em modelos como o chatGPT para navegar pelo cenário dinâmico da IA.
A Databricks apresentou recentemente o DBRX, seu modelo de linguagem grande (LLM) aberto e de uso geral, desenvolvido em uma arquitetura de mistura de especialistas (MoE) com uma abordagem de granulação fina. Em vez de usar uma única rede neural para todas as tarefas, o sistema compreende várias redes "especializadas" especializadas, cada uma otimizada para diferentes tipos de tarefas ou dados.
Esse modelo teve um desempenho melhor do que os LLMs tradicionais, como o GPT-3.5 e o Llama 2, porque é mais rápido e econômico. De acordo com os testes, o DBRX obteve uma pontuação de 73,7%, que é maior do que o LLaMa2 (69,8%) em tarefas de compreensão de idiomas.
Neste artigo, discutiremos mais detalhadamente seus recursos e como você pode começar a usar o Databricsk DBRX.
O que é o Databricks DBRX?
O DBRX usa uma arquitetura de decodificador baseada em transformador treinada usando a previsão do próximo token. Ele emprega uma arquitetura de mistura de especialistas (MoE) de granulação fina. Esses "especialistas" referem-se a agentes especializados baseados em LLMs, aprimorados com conhecimento específico do domínio e habilidades de raciocínio.
O DBRX tem um grande número de especialistas menores (16 especialistas no total) e escolhe um subconjunto deles (4 especialistas) para qualquer entrada.
Simplificando, essa abordagem refinada com 65 vezes mais combinações possíveis de especialistas melhora a qualidade do modelo em comparação com outros modelos abertos de MoE, como Mixtral e Grok-1, que têm menos especialistas e escolhem menos especialistas por entrada.
Aqui estão alguns detalhes importantes sobre a DBRX:
Como o DBRX foi treinado?
O modelo foi pré-treinado em um conjunto de dados impressionantemente grande, estimado como duas vezes mais eficaz do que os conjuntos de dados anteriores usados pela Databricks. Um conjunto de ferramentas da Databricks, como o Apache Spark e os notebooks da Databricks para processamento de dados e o Unity Catalog para governança de dados, foi usado para treinar o modelo.
Durante o treinamento, o aprendizado curricular foi empregado e a combinação de dados foi alterada para melhorar substancialmente a qualidade do modelo. Essas alterações estratégicas na combinação de dados de treinamento otimizaram a capacidade do modelo de lidar com diversas entradas de forma eficaz.
Algumas das principais tecnologias usadas no pré-treinamento da DBRX incluem:
Como o DBRX se compara a modelos similares?
A Databricks afirma que seu modelo DBRX é superior a vários dos principais modelos de código aberto em termos de eficiência e desempenho de tarefas.
Aqui você encontra uma comparação detalhada de como o DBRX se compara aos seus concorrentes:
1) DBRX vs. LLaMA2-70B
2) DBRX Instruct vs. DBRX Instruct. Instrução Mixtral
3) DBRX vs Grok-1
4) DBRX vs Base Mixtral
Tabela de comparação
Abaixo, reunimos as comparações em uma tabela e mostramos um gráfico com base em alguns dos resultados:
Comparação de modelos
Conhecimento geral
Raciocínio de senso comum
Databricks Gauntlet
Raciocínio de programação
Raciocínio matemático
DBRX vs LLaMA2-70B
+9.8%
+3.1%
+14%
+37.9%
+40.2%
DBRX vs. Mixtral Instruct
+2.3%
+1.4%
+6.1%
+15.3%
+5.8%
DBRX vs Grok-1
+0.7%
Não disponível
Não disponível
+6.9%
+4%
DBRX vs Base Mixtral
+1.8%
+2.5%
+10%
+29.9%
Não disponível
Comparando a qualidade do DBRX com outros LLMs de código aberto - fonte
Como usar o DBRX: Um guia passo a passo
Antes de acessar o DBRX, certifique-se de que seu sistema tenha pelo menos 320 GB de memória. Em seguida, siga estas etapas para acessar o DBRX:
Acesso ao DBRX
transformersVocê quer aprender a usar o Transformers e o Hugging Face? Leia nosso tutorial sobre como usar Transformers e Hugging Face.
Tarefas básicas com o DBRX
A DRBX pode ajudar você com a criação de conteúdo básico e tarefas de resposta imediata, como qualquer LLM. Veja o que você pode fazer com o DBRX:
Tarefas de codificação com DBRX
O DBRX também pode executar tarefas avançadas relacionadas à codificação para ajudar os profissionais de dados ou codificadores:
DBRX respondendo a comandos simples - fonte
Como fazer o ajuste fino do DBRX
Você pode ajustar o DBRX com o LLM foundry de código aberto do Github. No entanto, o ajuste fino exige que os exemplos de treinamento sejam formatados como dicionários:
Sugestão: Essa é a pergunta ou instrução inicial que você dá ao modelo.
Resposta: Essa é a resposta que o modelo foi treinado para gerar.
Você pode usar três conjuntos de dados diferentes para fazer o ajuste fino de qualquer LLM:
1) Usando o Hugging Face Hub
Se você quiser fazer o ajuste fino usando um conjunto de dados do HuggingFace Hub, e o
O conjunto de dados tem uma função de pré-processamento pré-definida ou já segue o padrão
"prompt"/"response", você pode simplesmente apontar o dataloader para esse conjunto de dados.
Se nenhuma função de pré-processamento for definida, use
preprocessing_fnpara especificar uma função de pré-processamento personalizada para o carregador de dados.2) Usando um conjunto de dados local
Se você já tiver um conjunto de dados de ajuste fino em seu dispositivo, defina os arquivos JSONL locais em
A configuração YAML
yamls/finetune/1b_local_data_sft.yaml.Ignore
preprocessing_fnse seus dados locais já estiverem no formato "prompt"/"response".3) Usando StreamingDataset
Converta seu conjunto de dados do HuggingFace para o formato MDS usando o
convert_finetuning_dataset.pyroteiro.Depois de converter o conjunto de dados HuggingFace em um formato de streaming, basta ajustar a configuração YAML da seguinte forma.
Se você quiser ver o ajuste fino completo dos parâmetros, consulte a configuração YAML em
dbrx-full-ft.yaml
Conclusão
O Databricks DBRX usa várias redes especializadas para aumentar a velocidade do modelo e a relação custo-benefício. Essa abordagem refinada permite que ele supere outros LLMs no tratamento de tarefas complexas.
Você quer saber mais sobre modelos de linguagem grandes e como ajustá-los? Dê uma olhada nestes recursos: