View a markdown version of this page

SFT - SageMaker IA da Amazon

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

SFT

O Supervisioned Fine-Tuning treina um modelo em pares de entrada-saída rotulados para alinhar seu comportamento com exemplos específicos. O modelo aprende a produzir respostas que correspondam aos seus dados de treinamento.

Quando usar

  • Você tem pares de resposta rápida de alta qualidade para sua tarefa alvo

  • Você quer que o modelo aprenda um estilo, formato ou conhecimento de domínio específico

  • Você precisa de um comportamento consistente em tarefas bem definidas (resumo, classificação, perguntas e respostas)

O que ela alcança

O modelo aprende a imitar os padrões em seus exemplos de treinamento, produzindo resultados que correspondem ao estilo, formato e conteúdo dos dados rotulados.

Formato do conjunto de dados

O SFT oferece suporte a dois formatos de conjunto de dados. Todos os conjuntos de dados devem estar no formato JSONL (um objeto JSON por linha). Uma system mensagem é opcional em ambos os formatos.

Formato 1: mensagens

Represente a conversa como uma lista de mensagens marcadas por função. Se incluída, a system mensagem deve ser o primeiro elemento.

{ "messages": [ {"role": "system", "content": "..."}, {"role": "user", "content": "..."}, {"role": "assistant", "content": "..."} ] }

Formato 2: prompt/conclusão

Forneça a entrada e a saída esperada como campos separados, com um system campo opcional de nível superior.

{ "system": "...", "prompt": "...", "completion": "..." }
nota

A system mensagem é opcional. Garanta a diversidade nas solicitações e nos estilos de resposta.

Hiperparâmetros

nota

As tabelas abaixo mostram os hiperparâmetros disponíveis quando você usa a personalização do modelo sem servidor. Outros hiperparâmetros são predefinidos pela Amazon SageMaker AI usando padrões otimizados. Ao usar o SageMaker AI Training Jobs ou HyperPod, você pode acessar a lista completa de hiperparâmetros disponíveis nas receitas. Consulte o repositório SageMaker AI Recipes para obter uma receita e acessar todos os hiperparâmetros.

SFT LoRa

Parâmetro Tipo Obrigatório? Intervalo/Valores Description
max_epochsintegerObrigatório1–100Número de passagens completas pelo conjunto de dados de treinamento.
global_batch_sizeintegerObrigatório8, 16, 32, 64, 128, 256, 512, 1024Total de amostras processadas por etapa do otimizador em todas as instâncias.
learning_rateflutuaçãoObrigatório5e-07—1e-04Tamanho da etapa para atualizações de peso durante a otimização.
lr_schedulerstringObrigatóriocosseno, constanteCronograma de declínio da taxa de aprendizado durante o treinamento.
lr_warmup_steps_ratioflutuaçãoObrigatório0—1Fração do total de etapas gastas aumentando a taxa de aprendizado de 0.
weight_decayflutuaçãoObrigatório0, 0 a 1,0Coeficiente de regularização L2. Ajuda a evitar o sobreajuste.
gradient_clippingbooleanoObrigatóriotrue, falseReduza os gradientes se a norma exceder o limite.
gradient_clipping_thresholdflutuaçãoObrigatório0,0—5,0Norma de gradiente máxima permitida.
dataset_max_lenintegerObrigatório256—131072Tamanho máximo de sequência em tokens. As sequências mais longas são truncadas.
seedintegerObrigatório0–2147483647Semente aleatória para reprodutibilidade.
logging_stepsintegerObrigatório1–100Frequência do registro de métricas nas etapas do otimizador.
lora_rankintegerObrigatório8, 16, 32, 64, 128Dimensionalidade de matrizes de baixa classificação. Menor = menos parâmetros treináveis.
lora_dropoutflutuaçãoObrigatório0, 0 a 1,0Probabilidade de abandono para camadas LoRA adaptadoras.
lora_alphaintegerObrigatório16, 32, 64, 128, 256LoRAfator de escala. O LR eficaz é escalado como alpha/rank.
merge_weightsbooleanoObrigatóriotrue, falseCombine LoRA pesos no modelo básico após o treinamento.
train_val_split_ratioflutuaçãoOpcional0, 0 a 1,0Fração alocada para treinamento versus validação.
temperatureflutuaçãoObrigatório0,0—2,0Temperatura de amostragem para avaliação.

PÉS MACIOS

Parâmetro Tipo Obrigatório? Intervalo/Valores Description
max_epochsintegerObrigatório1–100Número de passagens completas pelo conjunto de dados de treinamento.
global_batch_sizeintegerObrigatório8, 16, 32, 64, 128, 256, 512, 1024Total de amostras processadas por etapa do otimizador.
learning_rateflutuaçãoObrigatório5e-07—1e-04Tamanho da etapa para atualizações de peso.
lr_schedulerstringObrigatóriocosseno, constanteCronograma de decaimento da taxa de aprendizado.
lr_warmup_steps_ratioflutuaçãoObrigatório0—1Fração de etapas para aquecimento do LR.
weight_decayflutuaçãoObrigatório0, 0 a 1,0Coeficiente de regularização L2.
gradient_clippingbooleanoObrigatóriotrue, falseReduza os gradientes se a norma exceder o limite.
gradient_clipping_thresholdflutuaçãoObrigatório0,0—5,0Norma de gradiente máxima permitida.
dataset_max_lenintegerObrigatório256—131072Tamanho máximo de sequência em tokens.
max_response_lengthintegerObrigatório100—200000Máximo de tokens para resposta gerada.
seedintegerObrigatório0–2147483647Semente aleatória para reprodutibilidade.
logging_stepsintegerObrigatório1–100Frequência do registro métrico.
train_val_split_ratioflutuaçãoOpcional0, 0 a 1,0Fração alocada para treinamento versus validação.
temperatureflutuaçãoObrigatório0,0—2,0Temperatura de amostragem para avaliação.