Introdução ao Mosaic AI Model Training

Importante

Este recurso está em prévia pública em us-east-1 e us-west-2.

Com o Mosaic AI Model treinamento (anteriormente Foundation Model treinamento), o senhor pode usar seus próprios dados para personalizar um modelo de fundação e otimizar seu desempenho para sua aplicação específica. Ao realizar o ajuste fino completo dos parâmetros ou o treinamento contínuo de um modelo básico, o senhor pode ensinar seu próprio modelo usando significativamente menos dados, tempo e compute recurso do que treinar um modelo do zero.

O Databricks engloba tudo em uma única plataforma: seus próprios dados para usar no treinamento, o modelo base para treinar, pontos de verificação salvos no MLflow e o modelo registrado no Unity Catalog e pronto para implantação.

O que é o Mosaic AI Model Training?

O Mosaic AI Model Training permite usar a API ou a IU do Databricks para fazer ajustes finos ou treinar ainda mais um modelo de base.

Com o Mosaic AI Model Training, você pode:

  • Treine um modelo com seus dados personalizados, com os pontos de verificação salvos no MLflow. Você tem o controle total do modelo treinado.

  • Registre automaticamente o modelo no Unity Catalog para fácil implantação com o serviço do modelo.

  • Treine ainda mais um modelo proprietário completo carregando os pesos de um modelo treinado anteriormente.

A Databricks recomenda que você experimente o Mosaic AI Model Training se:

  • Você experimentou o aprendizado com uma quantidade muito pequena de exemplos e deseja melhores resultados.

  • Você experimentou a engenharia de instrução em um modelo que já existe e deseja melhores resultados.

  • Você deseja ter propriedade total sobre um modelo personalizado para privacidade de dados.

  • A latência ou o custo são fatores críticos e você deseja usar um modelo menor e mais barato com os dados específicos para a sua tarefa.

Tarefa compatíveis

O Mosaic AI Model Training oferece suporte aos seguintes casos de uso:

  • Conclusão de conversa: tarefa recomendada. Treine seu modelo em logs de bate-papo entre um usuário e um assistente de IA. Esse formato pode ser usado tanto para logs de bate-papo reais quanto como um formato padrão para respostas a perguntas e textos de conversas. O texto é formatado automaticamente no formato apropriado para o modelo específico. Consulte o exemplo de padrão de bate-papo na documentação do HuggingFace para saber mais sobre modelos.

  • Ajuste fino supervisionado: treine seu modelo com dados estruturados de resposta rápida. Use isso para adaptar seu modelo a uma nova tarefa, alterar seu estilo de resposta ou adicionar recursos de acompanhamento de instruções. Essa tarefa não aplica automaticamente nenhuma formatação aos seus dados e só é recomendada quando a formatação de dados personalizada é necessária.

  • Pré-treinamento contínuo: treine seu modelo com mais dados de texto. Use isso para adicionar novos conhecimentos a um modelo ou concentrar um modelo em um domínio específico.

Requisitos

  • Um workspace do Databricks em uma das seguintes regiões da AWS: us-east-1 e us-west-2.

  • APIs do Mosaic AI Model Training instaladas usando pip install databricks_genai.

  • Seu workspace não deve usar políticas de acesso S3.

  • Databricks Runtime 12.2 LTS ML ou superior se os dados estiverem em uma tabela Delta.

Consulte Preparação de dados para o Mosaic AI Model Training para obter informações sobre os formatos de dados de entrada obrigatórios.

Modelos compatíveis

Para os modelos compatíveis mais recentes e seus comprimentos de contexto associados, use a função get_models().

Importante

O Meta Llama 3.1 está licenciado sob a Licença da comunidade LLAMA 3.1, Copyright © Meta Platforms, Inc. Todos os direitos reservados. Os clientes são responsáveis por garantir o compliance com as licenças de modelo aplicáveis.

O Llama 3 está licenciado com a LLAMA 3 Community License, Copyright © Meta Platforms, Inc. Todos os direitos reservados. Os clientes são responsáveis por garantir a conformidade com os modelos de licença aplicáveis.

Os modelos Llama 2 e Code Llama estão licenciados com a LLAMA 2 Community License, Copyright © Meta Platforms, Inc. Todos os direitos reservados. Os clientes são responsáveis por garantir a conformidade com os modelos de licença aplicáveis.

O DBRX é conforme e sujeito à Licença de Modelo Aberto do Databricks, Copyright © Databricks, Inc. Todos os direitos reservados. Os clientes são responsáveis por garantir a conformidade com as licenças de modelo aplicáveis, incluindo a política de uso aceitável do Databricks.


from databricks.model_training import foundation_model

foundation_model.get_models()

A tabela a seguir é um exemplo de saída e não se destina a ser uma lista exaustiva de modelos compatíveis.

Modelo

Comprimento máximo do contexto

databricks/dbrx-base

32768

databricks/dbrx-instruct

32768

meta-llama/Meta-Llama-3.1-8B *

131072

meta-llama/Meta-Llama-3.1-8B-Instruct *

131072

meta-llama/Meta-Llama-3.1-70B *

131072

meta-llama/Meta-Llama-3.1-70B-Instruct *

131072

meta-llama/Meta-Llama-3.1-405B *

131072

meta-llama/Meta-Llama-3.1-405B-Instruct *

131072

meta-llama/Meta-Llama-3-70B

8192

meta-llama/Meta-Llama-3-70B-Instruct

8192

meta-llama/Meta-Llama-3-8B

8192

meta-llama/Meta-Llama-3-8B-Instruct

8192

meta-llama/Llama-2-7b-hf

4096

meta-llama/Llama-2-13b-hf

4096

meta-llama/Llama-2-70b-hf

4096

meta-llama/Llama-2-7b-chat-hf

4096

meta-llama/Llama-2-13b-chat-hf

4096

meta-llama/Llama-2-70b-chat-hf

4096

codellama/CodeLlama-7b-hf

16384

codellama/CodeLlama-13b-hf

16384

codellama/CodeLlama-34b-hf

16384

codellama/CodeLlama-7b-Instruct-hf

16384

codellama/CodeLlama-13b-Instruct-hf

16384

codellama/CodeLlama-34b-Instruct-hf

16384

codellama/CodeLlama-7b-Python-hf

16384

codellama/CodeLlama-13b-Python-hf

16384

codellama/CodeLlama-34b-Python-hf

16384

mistralai/Mistral-7B-v0.1

32768

mistralai/Mistral-7B-Instruct-v0.2

32768

mistralai/Mixtral-8x7B-v0.1

32768

* O suporte para esse modelo é baseado na disponibilidade regional do site compute.

Uso do Mosaic AI Model Training

O Mosaic AI Model Training pode ser acessado usando o SDK databricks_genai . O exemplo a seguir cria e inicia uma execução de treinamento usando dados de volumes do Unity Catalog. Consulte Criação de uma execução de treinamento usando a API do Mosaic AI Model Training para obter detalhes de configuração.

from databricks.model_training import foundation_model as fm

model = 'meta-llama/Llama-2-7b-chat-hf'
# UC Volume with JSONL formatted data
train_data_path = 'dbfs:/Volumes/main/mydirectory/ift/train.jsonl'
register_to = 'main.mydirectory'
run = fm.create(
  model=model,
  train_data_path=train_data_path,
  register_to=register_to,
)

Consulte o notebook de demonstração Ajuste fino de instruções: reconhecimento de entidade nomeada para ver um exemplo de ajuste fino de instruções que descreve a preparação de dados, a configuração e a implantação da execução de treinamento de ajuste fino.

Limitações

  • Não são aceitos grandes conjuntos de dados (mais de 10 bilhões de tokens) devido à disponibilidade de computação.

  • Para pré-treinamento contínuo, as cargas de trabalho são limitadas a arquivos de 60 a 256 MB. Arquivos maiores que 1 GB podem aumentar os tempos de processamento.

  • A Databricks se esforça para disponibilizar os modelos mais recentes e de última geração para personalização usando o Mosaic AI Model Training. À medida que disponibilizamos novos modelos, podemos remover a capacidade de acessar modelos mais antigos da API e/ou da interface do usuário, descontinuar modelos mais antigos ou atualizar modelos compatíveis. Se um modelo de base for removido da API e/ou da interface do usuário ou for descontinuado, a Databricks tomará as seguintes medidas para notificar os clientes com pelo menos três meses de antecedência da data de remoção e/ou descontinuação:

    • Exibir uma mensagem de aviso no cartão do modelo na página Experimentos > Mosaic AI Model Training do workspace do Databricks, indicando que o modelo está programado para ser descontinuado.

    • Atualize nossa documentação para incluir um aviso indicando que o modelo está programado para descontinuação.