Compartilhar via


Visualizar, gerenciar e analisar execuções de ajuste fino do Modelo de Fundação

Importante

Esse recurso está em Visualização Pública nas seguintes regiões: centralus, eastus, eastus2, northcentralus e westus.

Este artigo descreve como exibir, gerenciar e analisar o ajuste fino do modelo básico (agora parte do treinamento do modelo de IA do Mosaic) é executado usando APIs ou usando a interface do usuário.

Para obter informações sobre como criar execuções, consulte Criar uma execução de treinamento usando a API de ajuste fino do modelo básico e Criar uma execução de treinamento usando a interface do usuário de ajuste fino do modelo básico.

Usar APIs de ajuste fino do modelo de base para exibir e gerenciar execuções de treinamento

As APIs de ajuste fino do modelo básico fornecem as seguintes funções para gerenciar suas execuções de treinamento.

Obter uma execução

Use a função get() para retornar uma execução por nome ou objeto de execução que você iniciou.

from databricks.model_training import foundation_model as fm

fm.get('<your-run-name>')

Listar execuções

Use a função list() para ver as execuções que você lançou. A tabela a seguir lista os filtros opcionais que você pode especificar.

Filtro opcional Definição
finetuning_runs Uma lista de corridas a serem obtidas. O padrão é selecionar todas as execuções.
user_emails Se as corridas partilhadas estiverem habilitadas para o seu espaço de trabalho, pode filtrar os resultados pelo utilizador que enviou a corrida de treino. O padrão é nenhum filtro de usuário.
before Uma cadeia de caracteres de data e hora para filtrar é executada antes. O padrão é todas as execuções.
after Uma cadeia de caracteres de data e hora para filtrar é executada posteriormente. O padrão é todas as execuções.
from databricks.model_training import foundation_model as fm

fm.list()

# filtering example
fm.list(before='2023-01-01', limit=50)

Cancelar treinos

Para cancelar uma única execução de treinamento, use a função cancel() e passe o nome da execução.

from databricks.model_training import foundation_model as fm

run_to_cancel = '<name-of-run-to-cancel>'
fm.cancel(run_to_cancel)

Para cancelar várias execuções de treinamento, passe os nomes de execução específicos como uma lista.

from databricks.model_training import foundation_model as fm

runs_to_cancel = ['<run_1>, <run_2>, <run_3>']
fm.cancel(runs=runs_to_cancel)

Para cancelar todas as execuções de treinamento em um experimento, passe a ID do experimento.

from databricks.model_training import foundation_model as fm

experiment_to_cancel = '<experiment-id-to-cancel>'
fm.cancel(experiment_id=experiment_to_cancel)

Revise o status das execuções de treinamento

A tabela a seguir lista os eventos criados por uma execução de treinamento. Use a função get_events() a qualquer momento durante a corrida para ver o progresso da corrida.

Observação

O ajuste fino do modelo de fundação impõe um limite de 10 execuções ativas. Essas execuções estão na fila, em execução ou terminando. Execuções não são mais consideradas ativas após estarem nos estados COMPLETADO, FALHOU ou PARADO.

Tipo de evento Exemplo de mensagem de evento Definição
CREATED Corrida criada. A corrida de treinamento foi criada. Se houver recursos disponíveis, a execução será iniciada. Caso contrário, ele entra no estado Pending.
STARTED A corrida começou. Os recursos foram alocados e a execução foi iniciada.
DATA_VALIDATED Dados de treinamento validados. Validado que os dados de treinamento estão formatados corretamente.
MODEL_INITIALIZED Dados do modelo baixados e inicializados para o modelo base meta-llama/Llama-2-7b-chat-hf. Os pesos do modelo básico foram baixados e o treinamento está pronto para começar.
TRAIN_UPDATED [epoch=1/1][batch=50/56][ETA=5min] Perda de treino: 1.71 Relata o lote, época ou token de treinamento atual, o tempo estimado para a conclusão do treinamento (sem incluir o tempo de upload do ponto de verificação) e a perda do trem. Esse evento é atualizado quando cada lote termina. Se a configuração de execução especificar max_duration em tok unidades, o progresso será relatado em tokens.
TRAIN_FINISHED Treinamento concluído. O treinamento terminou. O upload do ponto de verificação começa.
COMPLETED Execução concluída. Pesos finais carregados. O ponto de verificação foi carregado e a execução foi concluída.
CANCELED Execução cancelada. A execução é cancelada se fm.cancel() for chamado nela.
FAILED Uma ou mais amostras de conjunto de dados de treino possuem chaves desconhecidas. Verifique a documentação para formatos de dados suportados. A corrida falhou. Verifique event_message para obter detalhes acionáveis ou entre em contato com o suporte.
from databricks.model_training import foundation_model as fm

fm.get_events()

Use a IU para visualizar e gerenciar execuções

Para visualizar execuções na IU:

  1. Clique em Experimentos na barra de navegação esquerda para exibir a página Experimentos.

  2. Na tabela, clique no nome da sua experiência para exibir a página da experiência. A página do experimento lista todas as execuções associadas ao experimento.

    página do experimento

  3. Para exibir informações ou métricas adicionais na tabela, clique em sinal de adição e selecione os itens a serem exibidos no menu:

    adicionar métricas ao gráfico

  4. Informações adicionais sobre a execução estão disponíveis na guia Gráfico:

    guia gráfico

  5. Você também pode clicar no nome da execução para exibir a tela de execução. Essa tela dá acesso a detalhes adicionais sobre a execução.

    página de execução

Pontos de verificação

Para acessar a pasta do ponto de verificação, clique na guia Artefatos na tela de execução. Abra o nome do experimento e, em seguida, abra a pasta checkpoints. Esses pontos de verificação de artefato não são os mesmos que o modelo registrado no final de uma execução de treinamento.

pasta checkpoint na guia artefatos

Há alguns diretórios nesta pasta:

  • As pastas de época (chamadas de ep<n>-xxx) contêm os pesos e os estados de modelo em cada ponto de verificação do Composer. Os pontos de verificação do Composer são salvos periodicamente durante o treinamento, e são usados para retomar uma execução de treinamento de ajuste fino e ajustes finos contínuos. Esse ponto de verificação é aquele que você passa como o custom_weights_path para iniciar outra execução de treinamento com base nesses pesos; consulte Criar com base em pesos de modelo personalizados.
  • Na pasta huggingface, os pontos de verificação do Hugging Face também são salvos periodicamente durante o treinamento. Depois de baixar o conteúdo nesta pasta, você poderá carregar esses pontos de verificação como faria com qualquer outro ponto de verificação do Hugging Face usando AutoModelForCausalLM.from_pretrained(<downloaded folder>).
  • O checkpoints/latest-sharded-rank0.symlink é um arquivo que contém o caminho para o ponto de verificação mais recente, que você pode usar para retomar o treinamento.

Você também pode obter os pontos de verificação do Composer para uma execução depois que eles são salvos usando get_checkpoints(run). Essa função usa o objeto de execução como entrada. Se os pontos de verificação ainda não existirem, você será solicitado a tentar novamente depois que os pontos de verificação forem salvos.