Modelos de formación para InstructLab
Entrene su modelo con los datos generados y, a continuación, pruébelo para verificar los resultados. Más información sobre qué es la formación.
La información o los archivos de configuración no se pueden pasar al modelo para realizar un ajuste fino.
Requisitos previos
- Prepare su taxonomía
- Añada la taxonomía
tar.gza su cubo Object Storage. Puede utilizar la CLI o la interfaz de usuario. - Generar datos a partir de su taxonomía.
Alineación de modelos mediante la consola
-
En la página InstructLab Proyectos, haga clic en su proyecto > Modelos alineados > Alinear.
-
Introduzca un nombre alfanumérico para el modelo y seleccione los datos de entrenamiento que desea utilizar.
-
Opcional: Revise el coste estimado que se le proporciona antes de iniciar el proceso de alineación.
-
Haga clic en Alinear. El estado es '
queued, luego 'running. Espera a que el estado sea 'completed. Este proceso puede durar minutos u horas. Una vez finalizada la alineación, en el cubo Object Storage se crea un directoriotrained_modelscon registros para la resolución de problemas.
Entrenamiento de modelos mediante la CLI
-
Obtiene el ID de los datos a utilizar.
ibmcloud ilab data list -
Ejecute el comando para iniciar el entrenamiento del modelo con los datos generados. Fíjate en la identificación.
ibmcloud ilab model train --name testmodel --data-id <data_id> -
Comprueba los detalles de tu generación de datos. Incluya el ID del modelo. El estado es '
queued, luego 'running. Espera a que el estado sea 'completed. Este proceso puede durar minutos u horas. Cuando el estado escompleted, en el cubo Object Storage, se crea un directoriotrained_modelscon registros para la resolución de problemas.ibmcloud ilab model get --id <model_id> -
Opcional: Cuando el estado es
completed, puede revisar las métricas, como las estimaciones de fichas para calcular el coste estimado.Ejemplo de comando '
model get' con la opción '--output json'.ibmcloud ilab model get --id daef9836-631f-4686-ad18-e0e6a0910f5d --output jsonEjemplo de salida JSON
{ "base_model": "granite-3.1-8b-starter-v2.1", "created_at": "2026-02-18T16:06:05.000Z", "data_id": "8b1433c0-e375-4b00-b36d-2ad00697014e", "id": "daef9836-631f-4686-ad18-e0e6a0910f5d", "last_signal_at": "2026-02-18T17: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" }
Entrenamiento de modelos mediante la API
-
Obtiene el ID de los datos a utilizar.
Ejemplo de comando.
curl -X 'GET' \ 'https://us-east.instructlab.ibm.com/v1/data' \ -H 'accept: application/json'Ejemplo de salida.
{ "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-02-18T17:20:32.000Z" } ] } -
Ejecute el comando para iniciar el entrenamiento del modelo con los datos generados. Fíjate en la identificación.
Ejemplo 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" }'Ejemplo de salida.
{ "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-02-18T17: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 } } } } -
Comprueba los detalles de tu generación de datos. Incluya el ID del modelo. El estado es '
queued, luego 'running. Espera a que el estado sea 'completed. Este proceso puede durar minutos u horas.Ejemplo de comando.
curl -X 'GET' \ 'https://us-east.instructlab.ibm.com/v1/models/baa8cfb5-e306-4e15-869d-735b74b1919d' \ -H 'accept: application/json'Ejemplo de salida.
{ "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-02-18T17: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 } } } }
Cuando el estado es completed, en el cubo Object Storage, se crea un directorio trained_models con registros para la resolución de problemas.
¿Qué hay en mi cubo Object Storage después del entrenamiento?
Después de entrenar el modelo, su cubo Object Storage contiene un directorio trained models con los siguientes archivos.
Artifacts- Estos archivos contienen los datos de los puntos de control de las fases 1 y 2 y el modelo de cada época.
Eval- Estos archivos contienen las métricas de evaluación para los benchmarks
mmlu,mmlu_branch,mt_benchymt_bench_branch. Logs- Estos archivos contienen los registros de ejecución Red Hat AI InstructLab y detalles del sistema.
Model- Estos archivos contienen el modelo final en formato "
safetensors". El contenido de este directorio es utilizado por el modelo.
¿Qué hacer a continuación?
Opcional: Puede desplegar el modelo.