Tutorial: criar e implantar uma execução do Mosaic AI Model Training

Importante

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

Este artigo descreve como criar e configurar uma execução usando a API do Mosaic AI Model Training (antigo Foundation Model Training) e, em seguida, revisar os resultados e implantar o modelo usando a IU do Databricks e o Mosaic AI Model Serving.

Requisitos

Etapa 1: prepare seus dados para treinamento

Consulte Preparar dados para o Mosaic AI Model Training.

Etapa 2: instale o SDK databricks_genai

Use o seguinte para instalar o SDK databricks_genai.

%pip install databricks_genai

Depois, importe a biblioteca foundation_model:

dbutils.library.restartPython()
from databricks.model_training import foundation_model as fm

Etapa 3: criar uma execução de treinamento

Crie uma execução de treinamento usando a função create() do Mosaic AI Model Training. Os seguintes parâmetros são necessários:

  • model: o modelo que você deseja treinar.

  • train_data_path: a localização do dataset de treinamento.

  • register_to: o catálogo e o esquema do Unity Catalog em que você deseja que os pontos de verificação sejam salvos.

Por exemplo:

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

run

Etapa 4: ver o status de uma execução

O tempo necessário para conclusão da execução de treinamento depende do número de tokens, do modelo e da disponibilidade da GPU. Para agilizar o treinamento, o Databricks recomenda usar computação reservada. Entre em contato com a equipe do Databricks responsável pela sua conta para saber os detalhes.

Quando tiver iniciado sua execução, você pode monitorar o status dela usando get_events().

run.get_events()

Etapa 5: ver métricas e resultados

Siga estas etapas para ver os resultados na interface do usuário do Databricks:

  1. No workspace do Databricks, clique em Experimentos na barra de navegação esquerda.

  2. Selecione seu experimento na lista.

  3. Analise os gráficos métricos em Charts tab. As métricas de treinamento são geradas para cada execução de treinamento e as métricas de avaliação são geradas somente se for fornecido um caminho de dados de avaliação.

    1. A principal métrica de treinamento que mostra o progresso é a perda. A perda de avaliação pode ser usada para ver se há sobreajuste do modelo aos dados de treinamento. No entanto, a perda não deve ser totalmente considerada porque, em tarefas de treinamento supervisionado, a perda de avaliação pode parecer sobreajustada enquanto o modelo continua sendo aperfeiçoado.

    2. Quanto maior a precisão, melhor será o modelo, mas lembre-se de que uma precisão próxima a 100% pode demonstrar excesso de ajuste.

    3. As métricas a seguir são exibidas no MLflow após sua execução:

      • LanguageCrossEntropy calcular a entropia cruzada nos resultados de modelagem de linguagem. Uma pontuação mais baixa é melhor.

      • LanguagePerplexity mede a capacidade de um modelo de linguagem de prever a próxima palavra ou caractere em um bloco de texto com base nas palavras ou caracteres anteriores. Uma pontuação mais baixa é melhor.

      • TokenAccuracy calcular a precisão em nível de tokens para modelagem de linguagem. Uma pontuação mais alta é melhor.

    4. Nessa tab, aparece também o resultado das suas instruções de avaliação, caso as tenha especificado.

Etapa 6: avalie vários modelos personalizados com o MLflow LLM Evaluate antes da implantação

Consulte Avaliar grandes modelos de linguagem com MLflow.

Etapa 7: implantar seu modelo

A execução do treinamento registra automaticamente o modelo no Unity Catalog após a conclusão. O modelo é registrado com base no que você especificou no campo register_to no método de de execução create().

Para implantar o modelo para servir, siga essas etapas:

  1. Navegue até o modelo no Unity Catalog.

  2. Clique em Servir este modelo.

  3. Clique em Criar endpoint de serviço.

  4. No campo Nome, informe um nome para o seu endpoint.

  5. Clique em Criar.

Mais recursos