Geração de dados a partir de uma taxonomia para Inferência de IA da Red Hat

A geração de dados é o processo de gerar automaticamente perguntas e respostas sintéticas com base nas perguntas e respostas que você incluiu nos arquivos QNA. O processo que o site Red Hat AI Inference utiliza para gerar dados se concentra na qualidade e na relevância do conteúdo.

Saiba mais sobre o processo de geração de dados em Red Hat.

Red Hat AI Inference Os recursos de alinhamento de modelos, geração de dados sintéticos e gerenciamento de taxonomia estão obsoletos e serão removidos em 25 de setembro de 2026. Para dar continuidade aos fluxos de trabalho de personalização e alinhamento de modelos, migre para o Red Hat® OpenShift® AI On OpenShift. Saiba mais sobre a IA d Red Hat® OpenShift®.

Pré-requisitos

  1. Instale o plug-in da CLI do ilab.
  2. Prepare sua taxonomia.
  3. Adicione a taxonomia tar.gz ao seu bucket Object Storage.

Geração de dados por meio do console

  1. No console, abra o serviço “ Red Hat AI Inference ”.

  2. Clique em Inferência de IA da Red Hat Projetos > seu projeto > Dados de treinamento > Gerar.

  3. Digite um nome alfanumérico para os dados de treinamento e selecione a taxonomia a ser utilizada.

  4. Opcional: Verifique o custo estimado fornecido antes de iniciar o processo de geração de dados.

  5. Clique em Gerar. O estado é queued e, em seguida, running.

  6. Aguarde até que o estado seja “ completed ”. Quando a geração de dados for concluída, será criado um diretório synthetic_data, que contém arquivos de log, no bucket Object Storage. Você pode consultar esses registros para solucionar problemas ou para verificação.

Importando seus próprios dados de treinamento no console

Você pode importar seus próprios dados gerados anteriormente para complementar a geração de dados no Inferência de IA da Red Hat. Talvez você queira importar seus próprios dados caso precise realizar uma ou mais das seguintes ações.

  • Importe um ou vários documentos de conhecimentos e habilidades ao gerar dados.
  • Combine várias séries de dados de treinamento em uma única.
  • Gere os dados, faça o download deles, em seguida, manipule uma subseção dos seus dados e gere-os novamente.
  • Combine os dados gerados anteriormente com os dados recém-importados.
  • Importe dados, gere dados de treinamento e, em seguida, combine esses dados com outra execução de geração de dados.
  • Combine o buffer de reprodução com os dados importados da sua taxonomia. Esse recurso está disponível apenas por meio da API ou da CLI.
  • Importe dados e gere dados de treinamento a partir da sua taxonomia. Esse recurso está disponível apenas por meio da API ou da CLI.

Para importar seus próprios dados, você pode usar como referência execuções anteriores de geração de dados, importar arquivos do seu bucket do Object Storage ou fazer upload de arquivos do seu computador local.

Siga as etapas a seguir para importar seus próprios dados de treinamento.

  1. No console, abra o serviço “ Red Hat AI Inference ”.

  2. Clique em Inferência de IA da Red Hat Projetos > seu projeto > Dados de treinamento > Importar.

  3. Digite um nome alfanumérico para seus dados.

  4. Selecione uma das opções a seguir.

    • Object Storage: Selecione os arquivos existentes no seu bucket do Object Storage.

      1. Selecione a instância e o bucket onde seus dados existentes estão armazenados.
      2. Clique em Avançar.
      3. Selecione os arquivos que você deseja importar.
    • Carregar arquivos: Selecione arquivos do seu computador. Observe que há um limite de 40 Mb para o envio de arquivos.

      1. Selecione uma instância do Object Storage e um bucket ou crie uma nova instância e um novo bucket para armazenar seus dados.
      2. Conceda permissões de “ Inferência de IA da Red Hat Writer” para o bucket.
      3. Opcional: Configurações de armazenamento. Especifique os seguintes detalhes adicionais sobre como armazenar seus dados.
        • Caminho do arquivo do bucket.
        • Diretório dentro do bucket.
        • Object Storage nome da instância.
        • Grupo de recursos.
        • Object Storage nome do balde.
        • Resiliência do bucket.
      4. Clique em Avançar.
      5. Selecione os arquivos de conhecimentos e habilidades que você deseja enviar a partir do seu computador.
  5. Clique em Importar.

Inserção de dados de treinamento no console

Você pode gerar dados em blocos menores e mais fáceis de gerenciar, para evitar tempos limite ou restrições do sistema. Em seguida, você pode mesclar esses conjuntos de dados menores em um único conjunto de dados para treinamento.

Siga as etapas a seguir para mesclar dados no console.

  1. No console, abra o serviço “ Red Hat AI Inference ”.

  2. Clique em Inferência de IA da Red Hat Projetos > seu projeto > Dados de treinamento.

  3. Selecione até 20 entradas de dados de treinamento da lista e clique em “Mesclar ”.

  4. Digite um nome alfanumérico para seus dados.

  5. Selecione a instância do Object Storage e o bucket onde deseja armazenar os dados mesclados.

  6. Clique em Criar.

Geração de dados por meio da CLI

  1. Liste suas taxonomias e anote aquela que você deseja utilizar.

    ibmcloud ilab taxonomy list
    

    Exemplo de saída.

    id                         name       taxonomy_path
    669a88c9488ee7b95ce8fe05   test-tax   taxonomy.tar.gz
    
  2. Gere dados a partir da sua taxonomia. Anote o ID dos dados para usar na próxima etapa. Use caracteres alfanuméricos no nome.

    ibmcloud ilab data generate [--name NAME] [--taxonomy-id TAXONOMY-ID]
    

    Exemplo de comando.

    ibmcloud ilab data generate --name testdata --taxonomy-id 669a88c9488ee7b95ce8fe05
    

    Exemplo de saída.

    id            66a268c170dcb21150050e8e
    name          test-data
    state         queued
    status
    created_at    2024-07-19T15:40:29.000Z
    taxonomy_id   669a88c9488ee7b95ce8fe05
    
  3. Verifique os detalhes da geração de seus dados. Inclua o ID dos dados. O estado é queued e, em seguida, running. Aguarde até que o estado seja “ completed ”. Quando o estado é “ completed ”, no bucket “ Object Storage ”, é criado um diretório “ synthetic_data contendo os logs para solução de problemas.

    ibmcloud ilab data get --id DATA_ID
    

    Exemplo de comando data get.

    ibmcloud ilab data get --id 66a268c170dcb21150050e8e
    

    Exemplo de saída.

    id            66a268c170dcb21150050e8e
    name          test-data
    state         running
    status        Generating data for taxonomy path compositional_skills->STEM->math->area: 12% 12/100 (total qna processed 1/147)
    created_at    2024-07-19T15:40:29.000Z
    taxonomy_id   669a88c9488ee7b95ce8fe05
    
  4. Opcional: Quando o estado é “ completed ”, é possível analisar métricas, como estimativas de tokens, para calcular o custo estimado.

    Exemplo de comando data get com a opção --output json

    ibmcloud ilab data get --id 66a268c170dcb21150050e8e --output json
    

    Exemplo de saída em JSON

    {
      "created_at": "2026-08-04T15:40:29.000Z",
      "data_metrics": {
        "samples": {
          "knowledge": 30,
          "skills": 70,
          "total": 100
        },
        "tokens": {
          "data_leaf_nodes": {
            "compositional_<taxonomy_path>": 26196,
            "knowledge_<taxonomy_path>": 1228930,
            },
          "data_tokens_total": 5993486,
          "training_estimated": 411435913,
          "training_phases": {
            "phase_1_knowledge": 1389992,
            "phase_2_skills": 410045921
            }
        }
      },
      "id": "66a268c170dcb21150050e8e",
      "last_signal_at": "2026-08-04T17:20:32.000Z",
      "name": "test-data",
      "state": "completed",
      "status": "completed",
      "taxonomy_id": "669a88c9488ee7b95ce8fe05"
    }
    

Importando seus próprios dados de treinamento usando a CLI

Talvez você queira importar seus próprios dados por um ou mais dos motivos a seguir.

  • Importe um ou vários documentos de conhecimentos e habilidades ao gerar dados.
  • Combine várias séries de dados de treinamento em uma única.
  • Gere os dados, faça o download deles, em seguida, manipule uma subseção dos seus dados e gere-os novamente.
  • Combine os dados gerados anteriormente com os dados recém-importados.
  • Importe dados, gere dados de treinamento e, em seguida, combine esses dados com outra execução de geração de dados.
  • Combine o buffer de reprodução com os dados importados da sua taxonomia. Esse recurso está disponível apenas por meio da API ou da CLI.
  • Importe dados e gere dados de treinamento a partir da sua taxonomia. Esse recurso está disponível apenas por meio da API ou da CLI.

Você pode importar seus próprios dados de treinamento para complementar a geração de dados no Inferência de IA da Red Hat. Para importar seus próprios dados gerados anteriormente, especifique um ou mais dos seguintes itens:

  • Os IDs de geração de dados das execuções anteriores.
  • Um conjunto de recursos do Object Storage que contém arquivos sobre conhecimentos e habilidades d .jsonl.

Siga as etapas a seguir para importar seus dados.

  1. Liste suas taxonomias e anote aquela que você deseja utilizar.
    ibmcloud ilab taxonomy list
    
    Exemplo de saída.
    id                         name       taxonomy_path
    669a88c9488ee7b95ce8fe05   test-tax   taxonomy.tar.gz
    
  2. Se você já tiver gerado dados que deseja utilizar, liste-os e anote os UUIDs que deseja usar. É possível incluir até 20 fontes de dados.
    ibmcloud ilab data list
    
  3. Gere dados a partir da sua taxonomia. Anote o ID dos dados para usar na próxima etapa. Use caracteres alfanuméricos no nome.
    ibmcloud ilab data generate [--name NAME] [--taxonomy-id TAXONOMY-ID] [--internal-ids INTERNAL-IDs]
    
    Exemplo de comando para incluir vários IDs internos (fontes de dados) para geração de dados.
    ibmcloud ilab data generate --name testdata --taxonomy-id 65005b67-7de4-4216-b23c-ed4342f99c88 --internal-ids 8c6b9224-a4f1-4649-907c-0f11d14cfc59,299ee20c-0b04-4d8e-ad12-a3d98feece40
    

Para ver mais exemplos, consulte a próxima seção: Exemplos de comandos para importar seus próprios dados de treinamento.

Exemplos de comandos para importar seus próprios dados de treinamento

Analise os exemplos de comandos a seguir para importar seus próprios dados de treinamento ou adicionar arquivos de conhecimento e habilidades a uma tarefa de geração de dados.

Exemplo de comando para incluir vários IDs internos.

ibmcloud ilab data generate --name testdata --taxonomy-id 65005b67-7de4-4216-b23c-ed4342f99c88 --internal-ids 8c6b9224-a4f1-4649-907c-0f11d14cfc59,299ee20c-0b04-4d8e-ad12-a3d98feece40

Exemplo de comando para combinar várias fontes de dados geradas anteriormente (IDs internas), bem como arquivos do tipo “ .jsonl ” de um bucket do Object Storage.

ibmcloud ilab data generate \
  --name testdata \
  --taxonomy-id 669a88c9488ee7b95ce8fe05 \
  --internal-ids 8c6b9224-a4f1-4649-907c-0f11d14cfc59,299ee20c-0b04-4d8e-ad12-a3d98feece40 \
  --knowledge-paths PATH \
  --skills-paths PATH \
  --skills-knowledge-cos-bucket STRING \
  --skills-knowledge-cos-bucket-endpoint ENDPOINT

Exemplo de comando para combinar dados gerados anteriormente com os arquivos de conhecimentos e competências d .jsonl, armazenados em um bucket do Object Storage. Você também pode, opcionalmente, especificar um bucket do Object Storage de saída para armazenar os dados gerados (SDG).

ibmcloud ilab data generate \
  --name testdata \
  --taxonomy-id 669a88c9488ee7b95ce8fe05 \
  --internal-ids 8c6b9224-a4f1-4649-907c-0f11d14cfc59 \
  --knowledge-paths PATH \
  --skills-paths PATH \
  --skills-knowledge-cos-bucket STRING \
  --skills-knowledge-cos-bucket-endpoint ENDPOINT
  --output-cos-bucket-string STRING \
  --output-cos-bucket-endpoint ENDPOINT

Exemplo de comando para mesclar dados especificando seus IDs internos.

ibmcloud ilab data generate \
  --name testdata \
  --internal-ids 8c6b9224-a4f1-4649-907c-0f11d14cfc59,299ee20c-0b04-4d8e-ad12-a3d98feece40 \
  --output-cos-bucket-string STRING \
  --output-cos-bucket-endpoint ENDPOINT

Exemplo de comando para mesclar dados gerados anteriormente, especificando seus IDs internos, bem como incluir habilidades e conhecimentos de um bucket do Object Storage.

ibmcloud ilab data generate \
  --name testdata \
  --internal-ids 8c6b9224-a4f1-4649-907c-0f11d14cfc59 \
  --knowledge-paths PATH \
  --skills-paths PATH \
  --skills-knowledge-cos-bucket STRING \
  --skills-knowledge-cos-bucket-endpoint ENDPOINT
  --output-cos-bucket-string STRING \
  --output-cos-bucket-endpoint ENDPOINT

Exemplo de comando para mesclar habilidades e conhecimentos de um bucket do Object Storage.

ibmcloud ilab data generate \
  --name testdata \
  --knowledge-paths PATH \
  --skills-paths PATH \
  --skills-knowledge-cos-bucket STRING \
  --skills-knowledge-cos-bucket-endpoint ENDPOINT
  --output-cos-bucket-string STRING \
  --output-cos-bucket-endpoint ENDPOINT

Geração de dados por meio da API

  1. Liste suas taxonomias e anote aquela que você deseja utilizar.

    Exemplo de comando.

    curl -X 'GET' \
    'https://us-east.instructlab.ibm.com/v1/taxonomies' \
    -H 'accept: application/json`
    

    Exemplo de saída.

    {
      "taxonomies": [
        {
          "id": "202a03c4-dcf1-432a-82b7-abecb2e019f7",
          "name": "example-taxonomy-name-1",
          "taxonomy_path_cos": "taxonomies/taxonomy.tar.gz",
          "created_at": "2024-10-23T02:58:50.000Z"
        }
      ]
    }
    
  2. Gere dados a partir da sua taxonomia. Anote o ID dos dados para usar na próxima etapa. Use caracteres alfanuméricos no nome.

    Exemplo de comando.

    curl -X 'POST' \
      'https://us-east.instructlab.ibm.com/v1/data' \
      -H 'accept: application/json' \
      -H 'Content-Type: application/json' \
      -d '{
      "name": "example-data-1",
      "taxonomy_id": "202a03c4-dcf1-432a-82b7-abecb2e019f7"
    }'
    

    Exemplo de saída.

    {
      "id": "add785e6-a8c3-4f5f-ab89-c506a3f115da",
      "name": "example-data-1",
      "state": "",
      "status": "queued",
      "created_at": "2024-10-23T02:58:50.000Z",
      "last_signal_at": "2026-08-04T17:20:32.000Z",
      "taxonomy_id": "202a03c4-dcf1-432a-82b7-abecb2e019f7",
      "data_metrics": {
        "samples": {
          "additionalProp1": 1,
          "additionalProp2": 2,
          "additionalProp3": 3
        }
      }
    }
    
  3. Verifique os detalhes da geração de seus dados. Inclua o ID dos dados. O estado é queued e, em seguida, running. Aguarde até que o estado seja “ completed ”.

    Exemplo de comando.

    curl -X 'GET' \
      'https://us-east.instructlab.ibm.com/v1/data/add785e6-a8c3-4f5f-ab89-c506a3f115da' \
      -H 'accept: application/json'
    

    Exemplo de saída.

    {
      "id": "add785e6-a8c3-4f5f-ab89-c506a3f115da",
      "name": "example-data-1",
      "state": "",
      "status": "queued",
      "created_at": "2024-10-23T02:58:50.000Z",
      "last_signal_at": "2026-08-04T17:20:32.000Z",
      "taxonomy_id": "202a03c4-dcf1-432a-82b7-abecb2e019f7",
      "data_metrics": {
        "samples": {
          "additionalProp1": 1,
          "additionalProp2": 2,
          "additionalProp3": 3
        }
      }
    }
    

Quando o estado é “ completed ”, no bucket “ Object Storage ”, é criado um diretório “ synthetic_data contendo os logs para solução de problemas.

O que há no meu bucket do Object Storage após a geração dos dados?

Após gerar os dados, seu bucket Object Storage conterá um diretório synthetic_data com os seguintes arquivos.

Artifacts
Esses arquivos contêm as amostras em cada nó folha. Esses dados não são utilizados para treinar o modelo, mas são fornecidos para facilitar a compreensão e podem ser usados para verificar se um QNA está gerando o número esperado de amostras.
Logs
Esses arquivos contêm os registros de execução do Red Hat AI Inference e detalhes do sistema.
knowledge_train_msgs.jsonl e skills_train_msgs.jsonl
Estes são os arquivos de treinamento da Fase 1 e da Fase 2 e contêm exemplos utilizados para treinar o modelo.

Para entender por que e como seus dados são gerados, consulte o documento da comunidade “Perguntas frequentes sobre o SDG ”.

Exemplo do formato “ .jsonl

Analise o exemplo a seguir da estrutura “ .jsonl ” para habilidades e conhecimentos.

{
  "messages": [
    {
      "content": "string",   // The text of the message
      "role": "string"       // The role of the sender (e.g., "system", "user", "assistant")
    }
  ],
  "metadata": "string",      // A JSON-encoded string containing additional info (e.g., num_turns, group, dataset)
  "id": "string"             // A unique identifier for the conversation
}

Próximas etapas

Depois de gerar dados a partir da sua taxonomia, você pode começar a treinar seu modelo.