Todos os produtos
Search
Central de documentação

Platform For AI:Instruction distillation

Última atualização: Sep 29, 2026

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.

Nota

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:

  1. 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."}
  2. 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."}
  3. 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.

  4. 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.

  5. 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.

  6. Construção do conjunto de dados SFT: remove amostras vazias e muito longas, e gera um conjunto de dados de treinamento SFT padronizado.

Procedimento

  1. Acesse o PAI console. No painel de navegação à esquerda, escolha Model Application > Model Distillation (ModelDistill).

  2. Clique em Create task para acessar a aba Distillation Template ou acesse a aba Distillation Template diretamente.

  3. 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.

  4. 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/.

      Nota

      Crie 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.

  5. 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_sample determina 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.

  6. 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.

  7. 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

  • output_path (padrão: distillation_dataset.json): caminho de saída para os artefatos de destilação. Você pode alterá-lo para outro arquivo .json em um caminho relativo ou colocá-lo em um subdiretório (como sft_dataset.json ou output/sft_dataset.json).

backend

  • timeout (padrão: 1200.0): tempo máximo de espera por requisição em segundos. Respostas que preenchem max_tokens (16384) exigem mais de 400 segundos com um throughput medido de 38 a 58 tokens/s.

  • max_retries (padrão: 3): contagem de tentativas em nível de rede por requisição. As tentativas por estágio têm configuração separada (retry_attempts na configuração de cada estágio).

generation

  • system_prompt (padrão: "You are a helpful assistant. Provide concise and accurate answers."): prompt do sistema para a geração de respostas do modelo professor.

  • temperature (padrão: 0.7): controla a diversidade da geração.

  • max_tokens (padrão: 16384): número máximo de tokens por geração.

sft

  • skip_empty (padrão: true): ignora amostras vazias.

  • min_length (padrão: 10): filtra amostras muito curtas.

  • max_length (padrão: 131072): filtra amostras muito longas.

eval

  • Dimensões de pontuação (metrics): informatividade, utilidade, generalização e correção.

  • temperature (padrão: 0.0): pontuação determinística.

  • max_workers (padrão: 4): threads de pontuação simultâneas.

pipeline

  • Estágio de expansão de instruções (instruction_expansion):

    • num_in_context_samples tem como padrão 2 (número de instruções iniciais incluídas em cada prompt como exemplos de referência).

    • num_output_samples tem como padrão 3 (total de novas instruções geradas neste estágio, não aumenta proporcionalmente ao número de instruções iniciais).

  • Estágio de refinamento de instruções (instruction_refinement): temperature tem como padrão 0,7 e max_tokens tem como padrão 16384.