Modelos de treinamento para Inferência de IA da Red Hat
Treine seu modelo com dados gerados e, em seguida, teste-o para verificar os resultados. Saiba mais sobre o que é treinamento.
Não é possível passar informações ou arquivos de configuração ao modelo para ajuste fino.
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
- Prepare sua taxonomia
- Adicione a taxonomia
tar.gzao seu bucket Object Storage. Você pode usar a CLI ou a interface do usuário. - Gere dados a partir da sua taxonomia.
Alinhamento de modelos usando o console
-
Na página “ Red Hat AI Inference ” (Projetos ), clique no seu projeto > Modelos alinhados > Alinhar.
-
Digite um nome alfanumérico para o modelo e selecione os dados de treinamento a serem utilizados.
-
Opcional: Verifique o custo estimado fornecido antes de iniciar o processo de alinhamento.
-
Clique em “Alinhar ”. O estado é
queuede, em seguida,running. Aguarde até que o estado seja “completed”. Esse processo pode levar alguns minutos ou algumas horas. Quando o alinhamento estiver concluído, na pastaObject Storage, será criado um diretóriotrained_modelscontendo os logs para solução de problemas.
Treinamento de modelos usando a CLI
-
Obtenha o ID dos dados a serem utilizados.
ibmcloud ilab data list -
Execute o comando para iniciar o treinamento do modelo com os dados gerados. Anote o ID.
ibmcloud ilab model train --name testmodel --data-id DATA_ID -
Verifique os detalhes da geração de seus dados. Inclua o ID do modelo. O estado é
queuede, em seguida,running. Aguarde até que o estado seja “completed”. Esse processo pode levar alguns minutos ou algumas horas. Quando o estado é “completed”, no bucket “ Object Storage ”, é criado um diretório “trained_models” contendo os logs para diagnóstico de problemas.ibmcloud ilab model get --id MODEL_ID -
Opcional: Quando o estado é “
completed”, é possível analisar métricas, como estimativas de tokens, para calcular o custo estimado.Exemplo de comando
model getcom a opção--output json.ibmcloud ilab model get --id daef9836-631f-4686-ad18-e0e6a0910f5d --output jsonExemplo de saída em JSON
{ "base_model": "granite-3.1-8b-starter-v2.1", "created_at": "2026-08-04T16:06:05.000Z", "data_id": "8b1433c0-e375-4b00-b36d-2ad00697014e", "id": "daef9836-631f-4686-ad18-e0e6a0910f5d", "last_signal_at": "2026-08-04T17:20:32.000Z", "model_metrics": { "mmlu": { "overall_average": 0.51, "scores": { "mmlu_abstract_algebra": 0.3, "mmlu_anatomy": 0.43, "mmlu_astronomy": 0.49 } }, "mt_bench": { "error_rate": 0.01, "overall_average": 6.86, "scores": { "turn_one": 7.25, "turn_two": 6.47 } }, "mt_bench_branch": { "error_rate": 0.01, "improvements": { "compositional_skills/STEM/math/time_series/qna.yaml": 8.67, "compositional_skills/extraction/invoice/csv/qna.yaml": 8.4 }, "no_change": { "compositional_skills/roleplay/explain_like_i_am/primary_schooler/qna.yaml": 0, "compositional_skills/writing/freeform/technical/proposal/qna.yaml": 0 }, "regressions": { "compositional_skills/extraction/inference/qualitative/sentiment/qna.yaml": -9, "compositional_skills/extraction/information/named_entities/places/qna.yaml": -9 } }, "tokens": { "training_phases": {} } }, "name": "test", "state": "completed", "status": "completed", "taxonomy_id": "e62ccea5-97e6-4568-86bf-2f359987b115" }
Treinamento de modelos usando a API
-
Obtenha o ID dos dados a serem utilizados.
Exemplo de comando.
curl -X 'GET' \ 'https://us-east.instructlab.ibm.com/v1/data' \ -H 'accept: application/json'Exemplo de saída.
{ "data": [ { "id": "add785e6-a8c3-4f5f-ab89-c506a3f115da", "name": "example-data-1", "state": "", "status": "queued", "created_at": "2024-10-23T02:58:50.000Z", "taxonomy_id": "202a03c4-dcf1-432a-82b7-abecb2e019f7", "last_signal_at": "2026-08-04T17:20:32.000Z" } ] } -
Execute o comando para iniciar o treinamento do modelo com os dados gerados. Anote o ID.
Exemplo de comando.
curl -X 'POST' \ 'https://us-east.instructlab.ibm.com/v1/models' \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -d '{ "name": "example-model-1", "data_id": "add785e6-a8c3-4f5f-ab89-c506a3f115da" }'Exemplo de saída.
{ "id": "baa8cfb5-e306-4e15-869d-735b74b1919d", "name": "example-model-1", "state": "", "status": "queued", "created_at": "2024-10-23T02:58:50.000Z", "last_signal_at": "2026-08-04T17:20:32.000Z", "data_id": "add785e6-a8c3-4f5f-ab89-c506a3f115da", "base_model": "granite-7b", "taxonomy_id": "202a03c4-dcf1-432a-82b7-abecb2e019f7", "model_metrics": { "mmlu": { "overall_average": 0.3, "scores": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 } }, "mmlu_branch": { "error_rate": 0.4, "improvements": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 }, "regressions": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 }, "no_change": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 } }, "mt_bench": { "overall_average": 0.8, "error_rate": 0.6, "scores": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 } }, "mt_bench_branch": { "error_rate": 0.4, "improvements": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 }, "regressions": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 }, "no_change": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 } } } } -
Verifique os detalhes da geração de seus dados. Inclua o ID do modelo. O estado é
queuede, em seguida,running. Aguarde até que o estado seja “completed”. Esse processo pode levar alguns minutos ou algumas horas.Exemplo de comando.
curl -X 'GET' \ 'https://us-east.instructlab.ibm.com/v1/models/baa8cfb5-e306-4e15-869d-735b74b1919d' \ -H 'accept: application/json'Exemplo de saída.
{ "id": "baa8cfb5-e306-4e15-869d-735b74b1919d", "name": "example-model-1", "state": "", "status": "queued", "created_at": "2024-10-23T02:58:50.000Z", "last_signal_at": "2026-08-04T17:20:32.000Z", "data_id": "add785e6-a8c3-4f5f-ab89-c506a3f115da", "base_model": "granite-7b", "taxonomy_id": "202a03c4-dcf1-432a-82b7-abecb2e019f7", "model_metrics": { "mmlu": { "overall_average": 0.3, "scores": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 } }, "mmlu_branch": { "error_rate": 0.4, "improvements": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 }, "regressions": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 }, "no_change": { "additionalProp1": 1, "additionalProp3": 3, "additionalProp2": 2 } }, "mt_bench": { "overall_average": 0.8, "error_rate": 0.6, "scores": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 } }, "mt_bench_branch": { "error_rate": 0.4, "improvements": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 }, "regressions": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 }, "no_change": { "additionalProp1": 1, "additionalProp2": 2, "additionalProp3": 3 } } } }
Quando o estado é “ completed ”, no bucket “ Object Storage ”, é criado um diretório “ trained_models ” contendo os logs para solução de problemas.
O que tem na minha cesta do “ Object Storage ” depois do treino?
Após treinar o modelo, seu bucket do Object Storage conterá um diretório trained models com os seguintes arquivos.
Artifacts- Esses arquivos contêm os dados dos pontos de verificação das Fases 1 e 2 e o modelo para cada época.
Eval- Esses arquivos contêm as métricas de avaliação dos benchmarks
mmlu,mmlu_branch,mt_benchemt_bench_branch. Logs- Esses arquivos contêm os registros de execução do Red Hat AI Inference e detalhes do sistema.
Model- Esses arquivos contêm o modelo final gerado no formato d
safetensors. O conteúdo deste diretório é utilizado pelo modelo.
O que vem a seguir?
Opcional: Você pode implantar o modelo.