visualizar, gerenciar e analisar o Foundation Model Fine-tuning execução

Prévia

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

Este artigo descreve como view, gerenciar e analisar a execução do Foundation Model Fine-tuning (agora parte do Mosaic AI Model treinamento) usando APIs ou usando a UI.

Para obter informações sobre a criação de execução, consulte Criar um treinamento execução usando o Foundation Model Fine-tuning API e Criar um treinamento execução usando o Foundation Model Fine-tuning UI.

Use o ajuste fino do modelo da fundação APIs para view e gerenciar a execução do treinamento

O Foundation Model Fine-tuning APIs oferece as seguintes funções para gerenciar seu treinamento execution.

Faça uma execução

Use a função get() para retornar uma execução por nome ou um 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ê iniciou. A tabela a seguir lista os filtros opcionais que você pode especificar.

Filtro opcional

Definição

finetuning_runs

Uma lista de execuções a usar. O padrão é selecionar todas as execuções.

user_emails

Se as execuções compartilhadas estiverem ativadas para o seu workspace, você poderá filtrar os resultados pelo usuário que enviou a execução de treinamento. O default é nenhum filtro de usuário.

before

Uma data e hora ou string de data e hora para filtrar execuções anteriores. O default é todas as execuções.

after

Uma data e hora ou string de data e hora para filtrar execuções posteriores. O default é 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 execuções de treinamento

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 das execuções específicas 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 o 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)

Ver 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 execução para ver o progresso da sua execução.

Observação

O ajuste fino do Foundation Model impõe um limite de 10 execuções ativas. Essas execuções estão na fila, em execução ou terminando. execução não são mais considerados ativos depois de estarem no estado COMPLETED, FAILED ou STOPPED.

Tipo de evento

Exemplo de mensagem de evento

Definição

CREATED

Execução criada.

A execução de treinamento foi criada. Se houver recursos disponíveis, a execução é iniciada. Caso contrário, ela entrará no estado Pending.

STARTED

A execução começou.

Os recursos foram alocados e a execução começou.

DATA_VALIDATED

Dados de treinamento validados.

Foi 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 para o modelo base foram baixados e o treinamento está pronto para começar.

TRAIN_UPDATED

[epoch=1/1][batch=50/56][ETA=5min] Perda de treinamento loss: 1,71

Relata o lote, a época ou o token do 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 de treinamento. Esse evento é atualizado quando cada lote termina. Se a configuração de execução especificar max_duration em unidades tok , o progresso será relatado em tokens.

TRAIN_FINISHED

Treinamento concluído.

O treinamento terminou. O upload do ponto de verificação é iniciado.

COMPLETED

Execução concluída. Os pesos finais foram carregados.

O ponto de verificação foi carregado e a execução foi concluída.

CANCELED

Execução cancelada.

A execução será cancelada se ela chamar fm.cancel().

FAILED

Uma ou mais amostras de conjuntos de dados de treinamento têm chaves desconhecidas. Consulte a documentação para saber os formatos de dados compatíveis.

A execução falhou. Consulte event_message para ver os detalhes práticos ou entre em contato com o suporte.

from databricks.model_training import foundation_model as fm

fm.get_events()

Use a interface do usuário para ver e gerenciar execuções

Para ver execuções na interface do usuário:

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

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

    página do experimento
  3. Para exibir mais informações ou métricas na tabela, clique em sinal de mais e selecione os itens a serem exibidos no menu:

    adicionar métricas ao gráfico
  4. Há mais informações sobre a execução disponíveis na tab Gráfico:

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

    executar página

Pontos de verificação

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

pasta de pontos de verificação na tab de artefatos

Existem alguns diretórios nesta pasta:

  • As pastas de época (denominadas ep<n>-xxx) contêm os pesos e os estados do 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 para continuar o ajuste fino. Esse ponto de verificação é o que o você passa como custom_weights_path para iniciar outra execução de treinamento com base nesses pesos. Consulte Construir sobre os pesos dos modelos personalizados.

  • Na pasta huggingface, os pontos de verificação do Hugging Face também são salvos periodicamente por meio de treinamento. Após baixar o conteúdo dessa pasta, você pode 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 último ponto de verificação, que você pode usar para retomar o treinamento.

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