O modelo de destilação de instruções parte de um pequeno conjunto de instruções iniciais e cria um conjunto de dados SFT de alta qualidade para seguimento de instruções. O processo inclui expansão e refinamento de instruções, geração pelo modelo professor, pontuação em quatro dimensões e filtragem.
Visão geral do modelo
O modelo de destilação de instruções atende a cenários em que você possui um pequeno conjunto de instruções de alta qualidade e deseja aumentar o volume de dados de treinamento em larga escala. A partir de algumas instruções iniciais, o modelo as expande para gerar mais instruções no mesmo estilo. Em seguida, refina cada instrução para corresponder melhor às consultas reais dos usuários e gera respostas com o modelo professor. Por fim, pontua e filtra os resultados em quatro dimensões (informatividade, utilidade, generalização e correção) para produzir um conjunto de dados SFT pronto para ajuste fino.
Este modelo oferece suporte a um fluxo de trabalho opcional de dois estágios: o Estágio 1 é a geração de dados de destilação e o Estágio 2 é o treinamento do modelo aluno (opcional). Execute apenas a geração de dados ou ambos os estágios em sequência.
O pipeline de destilação de instruções consiste nas seguintes etapas:
-
Expansão de instruções: usa as instruções iniciais como exemplos para gerar novas instruções do mesmo cenário e estilo, aumentando o volume de dados.
Input example: {"instruction": "Create a two-day travel itinerary for Hangzhou."} Output examples: {"instruction": "Create a three-day travel itinerary for Beijing."} {"instruction": "I want to visit Shanghai. Recommend a travel itinerary."} -
Refinamento de instruções: reescreve cada instrução para remover ambiguidades e redundâncias, aproximando-a da forma como os usuários reais formulam suas consultas.
Input example: {"instruction": "Create a two-day travel itinerary for Hangzhou."} Output example: {"instruction": "Please create a two-day Hangzhou travel plan covering itinerary, food recommendations, accommodation, and best times to visit."} Geração pelo professor: chama o modelo professor para gerar uma resposta para cada instrução. Essa resposta serve como saída-alvo para o aprendizado do modelo aluno.
Pontuação de qualidade: avalia cada par de perguntas e respostas em quatro dimensões (informatividade, utilidade, generalização e correção) para fornecer uma base para a filtragem.
Filtragem de qualidade: remove amostras de baixa qualidade com base nos limiares de pontuação de cada dimensão e retém a parte com as maiores pontuações.
Construção do conjunto de dados SFT: remove amostras vazias e muito longas, e gera um conjunto de dados de treinamento SFT padronizado.
Procedimento
Acesse o PAI console. No painel de navegação à esquerda, escolha Model Application > Model Distillation (ModelDistill).
Clique em Create task para acessar a aba Distillation Template ou acesse a aba Distillation Template diretamente.
Selecione Instruction Distillation, clique em Use Template e acesse a página Create Distillation Task. Configure os principais parâmetros descritos abaixo e mantenha os valores padrão para as outras configurações.
-
Preencha a Basic Configuration:
Task name: pré-preenchido pelo sistema.
-
Output Path: especifique um caminho do OSS ao qual você tenha acesso, como
oss://mybucket.oss-cn-hangzhou-internal.aliyuncs.com/instruct-distill/.NotaCrie um diretório de saída separado para cada tarefa de destilação para evitar a sobrescrita de arquivos. O bucket do OSS deve estar na mesma região do serviço do PAI.
-
Clique em Next para acessar a etapa Build distillation data:
Teacher model: Teacher Model Source — selecione Token Service e escolha um modelo na lista suspensa, como
qwen3.8-max.Dataset: selecione um diretório ou arquivo do OSS ao qual você tenha acesso. Baixe e use o conjunto de dados de amostra diretamente.
-
Distillation Configuration: valores padrão estão disponíveis. Modifique-os conforme necessário.
dataset.input_path: se você selecionou um arquivo específico para o conjunto de dados, o sistema ignora o nome do arquivo configurado aqui.
pipeline: no estágio de expansão de instruções (
stage: instruction_expansion),num_output_sampledetermina o número total de itens de dados de destilação gerados. Ajuste esse valor conforme necessário.Para obter mais parâmetros específicos do modelo de destilação de instruções (como temperature, max_workers e limiares de pontuação para cada estágio), consulte Configuration reference abaixo.
Configure Computing Resource: defina Resource Type como General Computing e Source como Public Resources. Em seguida, selecione um Instance Type adequado em Job Resource, como
ecs.c6.large.
-
Clique em Next: Student Model Training para continuar a configuração (ou selecione Run Only Distillation Data Build):
Student model: selecione Public Model e escolha um modelo menor na lista suspensa, como
Qwen3-4B.Training Mode: selecione LoRA.
Compute Resource: defina Resource Type como General Computing e Source como Public Resources. Em seguida, selecione um Instance Type adequado em Job Resource.
Clique em Create e, em seguida, clique em OK no aviso de faturamento. A página redireciona para a página de detalhes da tarefa para acompanhar o status da tarefa.
Referência de configuração
Esta seção descreve os principais parâmetros de configuração específicos do modelo de destilação de instruções. A configuração básica e a configuração de recursos são iguais às da destilação de uso geral. Esta seção lista apenas as diferenças de parâmetros específicos do modelo.
Configuração básica
A configuração básica inclui o nome da tarefa e o caminho de saída. O caminho de saída é o diretório raiz para todos os artefatos da tarefa. O sistema também grava o conjunto de dados de destilação neste diretório, portanto, não é necessário um caminho de saída separado para o conjunto de dados.
Geração de dados de destilação
Modelo professor
O modelo de destilação de instruções requer apenas um modelo professor, que gera respostas para cada instrução. A fonte do modelo professor oferece suporte apenas ao PAI Token Service.
Conjunto de dados
Selecione um diretório ou arquivo de entrada. Os requisitos de formato de dados são os seguintes:
Formato: JSONL, uma instrução inicial por linha.
Cada registro deve conter o campo
instruction.Algumas dezenas de instruções iniciais são suficientes para começar, pois o modelo expande o volume de dados automaticamente.
Dados de amostra:
{"instruction": "Explain what machine learning is."}
{"instruction": "How to prevent the common cold?"}
Configuração de destilação
A configuração de destilação está disponível no formato YAML com os padrões recomendados pela equipe de algoritmos. Ajuste os parâmetros conforme necessário. A tabela a seguir lista os principais parâmetros e suas descrições.
|
Seção |
Descrição |
|
dataset |
|
|
backend |
|
|
generation |
|
|
sft |
|
|
eval |
|
|
pipeline |
|