Criar um treinamento execução usando o Mosaic AI Model treinamento API
Importante
Esse recurso está em Public Preview. Entre em contato com a equipe do Databricks account para se inscrever no Public Preview.
Esta página descreve como criar e configurar uma execução de treinamento usando o Mosaic AI Model treinamento (anteriormente Foundation Model treinamento) API, e descreve todos os parâmetros usados na chamada API. O senhor também pode criar uma execução usando a interface do usuário. Para obter instruções, consulte Criar uma execução de treinamento usando a UI de treinamento do modelo Mosaic AI .
Requisitos
Veja os requisitos.
Criar um treinamento execução
Para criar treinamento execução de forma programática, use a função create()
. Essa função ensina um modelo no site dataset fornecido e converte o ponto de verificação final do Composer em um ponto de verificação formatado em Hugging Face para inferência.
As entradas necessárias são o modelo que o senhor deseja ensinar, o local do seu treinamento dataset e onde registrar seu modelo. Há também campos opcionais que permitem que o senhor faça avaliações e altere os hiperparâmetros da sua execução.
Após a conclusão da execução, a execução concluída e o ponto de verificação final são salvos, o modelo é clonado e esse clone é registrado no Unity Catalog como uma versão do modelo para inferência.
O modelo da execução concluída, não a versão clonada do modelo no Unity Catalog, e seus pontos de verificação do Composer e do Hugging Face são salvos no MLflow. Os pontos de verificação do Composer podem ser usados para a tarefa de ajuste fino contínuo.
Consulte Configurar uma execução de treinamento para obter detalhes sobre os argumentos da função create()
.
from databricks.model_training import foundation_model as fm
run = fm.create(
model='meta-llama/Llama-2-7b-chat-hf',
train_data_path='dbfs:/Volumes/main/mydirectory/ift/train.jsonl', # UC Volume with JSONL formatted data
# Public HF dataset is also supported
# train_data_path='mosaicml/dolly_hhrlhf/train'
register_to='main.mydirectory', # UC catalog and schema to register the model to
)
Configurar uma execução de treinamento
A tabela a seguir resume os campos da função create()
.
campo |
Obrigatório |
Tipo |
Descrição |
---|---|---|---|
|
x |
str |
O nome do modelo a ser usado. Consulte Modelos compatíveis. |
|
x |
str |
A localização de seus dados de treinamento. Pode ser um local em Unity Catalog ( Para Para |
|
x |
str |
O catálogo e o esquema do Unity Catalog ( |
|
str |
A ID de cluster do cluster a ser usado para o processamento de dados do Spark. Isso é necessário para a tarefa de treinamento supervisionado em que os dados de treinamento estão em uma tabela Delta. Para obter informações sobre como encontrar o cluster ID, consulte Get cluster ID. |
|
|
str |
O caminho para o experimento do MLflow onde a saída da execução de treinamento (métricas e pontos de verificação) é salva. padrão para o nome da execução no site pessoal do usuário workspace (ou seja, o |
|
|
str |
O tipo de tarefa a ser executada. Pode ser |
|
|
str |
O local remoto de seus dados de avaliação (se houver). Deve seguir o mesmo formato de |
|
|
str |
Uma lista de sugestões strings para gerar respostas durante a avaliação. default é |
|
|
str |
A localização remota de um ponto de verificação de modelo personalizado para treinamento. default é |
|
|
str |
A duração total de sua execução. default é uma época ou |
|
|
str |
A taxa de aprendizado para o treinamento do modelo. default é |
|
|
str |
O comprimento máximo da sequência de uma amostra de dados. Isso é usado para truncar dados muito longos e para agrupar sequências mais curtas para aumentar a eficiência. O endereço default é 8192 tokens ou o comprimento máximo do contexto para o modelo fornecido, o que for menor. O senhor pode usar esse parâmetro para configurar o comprimento do contexto, mas não há suporte para configuração além do comprimento máximo de contexto de cada modelo. Consulte Modelos suportados para saber o comprimento máximo de contexto suportado de cada modelo. |
|
|
Boolean |
Se o senhor deve validar o acesso aos caminhos de entrada antes de enviar o treinamento Job. default é |
Construir sobre pesos de modelos personalizados
Mosaic AI O treinamento de modelos oferece suporte ao treinamento de qualquer um dos modelos compatíveis, começando com pesos personalizados, usando o parâmetro opcional custom_weights_path.
Por exemplo, o senhor pode criar um modelo específico de domínio com seus dados personalizados e, em seguida, passar o ponto de verificação desejado como uma entrada para treinamento adicional.
O senhor pode fornecer o local remoto para o ponto de verificação do Composer de sua execução anterior para treinamento. Os caminhos do ponto de verificação podem ser encontrados em Artifacts tab de uma execução anterior do MLflow e têm o formato: dbfs:/databricks/mlflow-tracking/<experiment_id>/<run_id>/artifacts/<run_name>/checkpoints/<checkpoint_folder>[.symlink]
, em que a extensão do link simbólico é opcional. Esse nome de pasta de ponto de verificação corresponde aos lotes e à época de um determinado Snapshot, como ep29-ba30/
. O site final Snapshot pode ser acessado com o link simbólico latest-sharded-rank0.symlink
.
![Artefatos tab para uma execução anterior MLflow](../../_images/checkpoint-path.png)
O caminho pode então ser passado para o parâmetro custom_weights_path
em sua configuração.
model = 'meta-llama/Llama-2-7b-chat-hf'
custom_weights_path = 'your/checkpoint/path'
Obter ID do cluster
Para recuperar o ID do cluster:
Na barra de navegação esquerda do site Databricks workspace, clique em compute.
Na tabela, clique no nome de seu cluster.
Clique em
no canto superior direito e selecione view JSON no menu suspenso.
O arquivo JSON do cluster é exibido. Copie o ID do cluster, que é a primeira linha do arquivo.
Obter o status de uma execução
O senhor pode acompanhar o progresso de uma execução usando a página Experiment na interface do usuário do Databricks ou usando o comando get_events()
da API. Para obter detalhes, consulte view, gerenciar e analisar Mosaic AI Model treinamento execução.
Exemplo de saída de get_events()
:
![Use a API para obter o status de execução](../../_images/get-events-output.png)
Detalhes da execução da amostra na página Experimento:
![Obter o status da execução na interface do usuário dos experimentos](../../_images/run-details.png)
Próximos passos
Após a conclusão da execução do treinamento, o senhor pode revisar as métricas em MLflow e implantar seu modelo para inferência. Veja os passos 5 a 7 de tutorial: Criar e implantar o Mosaic AI Model treinamento execução.
Consulte a demonstração de ajuste fino de instruções: Named Entity Recognition demo Notebook para obter um exemplo de ajuste fino de instruções que percorre a preparação de dados, a configuração e a implementação do treinamento de ajuste fino.