Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Important
Os itens marcados como pré-visualização neste artigo estão atualmente em pré-visualização. Esta pré-visualização é fornecida sem um acordo de nível de serviço, e a Microsoft não a recomenda para cargas de trabalho de produção. Certas funcionalidades podem não ser suportadas ou podem ter capacidades limitadas. Para mais informações, consulte Termos Suplementares de Utilização para Microsoft Azure Previews.
Important
A formação interativa requer aprovação explícita de acesso. Solicite acesso através do formulário de inscrição para pré-visualização e aguarde aprovação antes de criar uma sessão de formação.
O treino interativo (pré-visualização) é uma API para construir o seu próprio ciclo pós-treino sobre modelos de peso aberto no Microsoft Foundry. Controlas o experimento em Python. A Foundry executa amostragem de modelos e atualizações de adaptação de baixa classificação (LoRA) em GPUs serverless.
Para aprendizagem por reforço (RL), o seu código controla a recolha de trajetórias, recompensas, vantagens e agendamento de atualizações. As mesmas primitivas suportam aprendizagem supervisionada, aprendizagem por preferências, destilação e fluxos de trabalho de perda personalizada.
Quando utilizá-lo
Utilize formação interativa quando o próprio ciclo de treino faz parte da sua investigação:
- Precisas de um sinal de aprendizagem personalizado. Forneça demonstrações, calcule recompensas e vantagens, ou formule uma função de perda local para aprendizagem de preferências ou outros objetivos.
- O seu modelo interage com um ambiente. Coordena respostas de modelos, chamadas de ferramentas, observações e recompensas no teu controlador.
- Precisa de controlo das atualizações individuais. Selecione lotes, máscaras de token, definições de perda e parâmetros do otimizador. Decida quando acumular gradientes e aplique uma atualização.
- Queres inspecionar e adaptar um experimento. Amostra do adaptador atual, avalie os prompts reservados e escolha os próximos prompts com base nos resultados observados.
- Precisas de preservar e continuar a progredir. Guardar o estado do adaptador e do otimizador, depois retomar numa sessão compatível. Mantenha a posição do conjunto de dados e outros estados da experiência no seu controlador.
O ajuste fino gerido também suporta avaliadores para ajuste fino por reforço. Escolha formação interativa quando precisar de controlo sobre o loop, não apenas sobre o avaliador ou as definições do trabalho. Veja Escolha a sua abordagem de treino.
Quem faz o quê
O teu programa de Python é o controlador de treino. Prepara os inputs e coordena a experiência. A Foundry mantém o estado do modelo e do adaptador e executa as operações solicitadas.
O seu controlador pode ser executado num processador, incluindo na sua própria máquina ou num ambiente de computação. Um modelo de recompensa ou ambiente que adicionas pode ter os seus próprios requisitos de computação. Mantém o driver a funcionar enquanto gere o loop.
Conceitos centrais e primitivas
Uma sessão mantém estado: cálculo de gradiente, atualizações de otimizadores e amostragem são operações separadas no modelo e adaptador selecionados. Esta separação permite-lhe escolher quando recolher dados, acumular gradientes, atualizar e avaliar.
| Bloco de construção | O que faz |
|---|---|
| Sessão de treino e adaptador LoRA |
FineTuningSession.create Inicializa um modelo base suportado com a configuração do teu adaptador. A sessão contém o estado utilizado pelas operações subsequentes. |
| Lote tokenizado e máscaras |
Datum contém entradas de modelo e entradas da função de perda. As máscaras selecionam quais os tokens que contribuem para a aprendizagem, como tokens do assistente em vez de prompts ou observações de ferramentas. |
| Amostragem |
sample Gera respostas a partir de um checkpoint selecionado do sampler. Os inputs RL emparelham tokens amostrados com as suas probabilidades logarítmicas do rollout e vantagens derivadas da recompensa. |
| Passos para a frente e para trás |
forward retorna resultados por cada exemplo da função de perda sem acumular gradientes.
forward_backward calcula o objetivo selecionado e acumula gradientes. Não aplica uma atualização do otimizador. |
| Atualização do otimizador |
optim_step aplica gradientes acumulados com os teus parâmetros de Adam. Escolhes quando atualizar e qual a taxa de aprendizagem a usar. |
| Checkpoint do sampler |
save_weights_for_sampler Prepara os pesos do adapter para a geração. Atualize novamente estes pesos após uma atualização antes de amostrar a partir do adaptador atualizado. |
| Ponto de verificação de formação |
save_weights persiste os pesos dos adaptadores e o estado do otimizador.
FineTuningSession.create_from_checkpoint Retoma o treino numa sessão compatível. |
O SDK inclui cross_entropy para atualizações supervisionadas e perdas de RL como importance_sampling e ppo. Estas perdas são primitivas de perda, não algoritmos de ponta a ponta pré-definidos. Para contratos input e composição de perdas personalizadas, consulte Conceitos-chave.
Como funciona um loop RL
Considere um experimento de raciocínio matemático: o seu modelo gera várias respostas para cada problema e o seu programa avalia a sua correção. Para um exemplo prático, siga Introdução.
Estabeleça uma baseline de validação e teste a sua função de recompensa antes da primeira atualização. Depois repita:
- Prepare a política atual para amostragem. Guarde os pesos do sampler do adaptador de treino e depois recolha várias respostas, ou rollouts, para cada prompt.
- Pontuar e comparar respostas. A tua função de recompensa atribui uma pontuação a cada rollout. Subtraia a recompensa média do grupo de prompts para obter a vantagem de cada rollout.
- Preparar o sinal de aprendizagem. Alinhe os tokens do assistente amostrados com as probabilidades log do rollout e vantagens. Exclua os prompts e as observações do ambiente do sinal de aprendizagem.
- Calcular gradientes. Submeta o lote em
forward_backwardcomimportance_sampling. Complete o cálculo do gradiente antes da atualização que o consome. - Atualize o adaptador. Ligue para
optim_step, depois atualize os pesos do sampler antes de recolher respostas da política atualizada. - Avalie e preserve o progresso. Compare a correção no conjunto de validação com o valor de referência e guarde os pontos de controlo de treino com a frequência escolhida.
Introdução
Escolha o ponto de partida que se adequa à sua tarefa:
- Início rápido: Siga o exemplo de início rápido para clonar o repositório e execute uma receita curta de aprendizagem por reforço.
- Experimente outras receitas: Explore o repositório de amostras de ajuste fino para mais exemplos de treino.
- Procura uma operação: Usa a folha de dicas do SDK (pré-visualização) para funções e parâmetros-chave.
- Compreenda o ciclo de treino: Leia conceitos-chave para recompensas, vantagens, máscaras de tokens e pontos de controlo.
Modelos e regiões suportados
Consulte a visão geral de ajuste fino para modelos suportados e regiões suportadas.