Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Refinamiento de modelos de centros seleccionados
En su centro de modelos seleccionado y privado, puede ejecutar trabajos de entrenamiento de refinamiento mediante sus referencias de modelos. Las referencias a los modelos apuntan a un JumpStart modelo disponible públicamente en el centro público de SageMaker IA, pero puedes ajustar el modelo a partir de tus propios datos para tu caso de uso específico. Después del trabajo de refinamiento, tendrá acceso a los pesos del modelo que puede utilizar o implementar en un punto de conexión.
Puede ajustar los modelos centrales seleccionados en solo unas pocas líneas de código con el SDK de SageMaker Python. Para obtener más información general sobre cómo ajustar los modelos disponibles JumpStart públicamente, consulte. Modelos fundacionales e hiperparámetros para el refinamiento
Requisitos previos
Para afinar la referencia de un JumpStart modelo en su centro seleccionado, haga lo siguiente:
-
Asegúrese de que el rol de IAM de su usuario tenga el permiso de SageMaker IA
TrainHubModeladjunto. Para obtener más información, consulta Adición y eliminación de permisos de identidad de IAM en la AWSGuía del usuario de IAM.Debe asociar una política como la del siguiente ejemplo al rol de IAM de su usuario.
nota
Si el centro seleccionado se comparte entre cuentas y el contenido del centro es propiedad de otra cuenta, asegúrese de que el suyo
HubContent(el recurso de referencia del modelo) tenga una política de IAM basada en recursos que también otorgue el permisoTrainHubModela la cuenta solicitante, como se muestra en el siguiente ejemplo. -
Disponga de un centro privado con una referencia a un JumpStart modelo que desee ajustar. Para obtener más información sobre cómo crear un centro privado, consulte Creación de un centro privado de modelos. Para obtener información sobre cómo añadir JumpStart modelos disponibles públicamente a tu centro privado, consulta. Adición de modelos a un centro privado
nota
El JumpStart modelo que elija debe poder ajustarse con precisión. Puede verificar si un modelo es refinable consultando Built-in Algorithms with Pre-trained Models Table
. -
Tenga un conjunto de datos de entrenamiento que desee utilizar para refinar el modelo. El conjunto de datos debe tener el formato de entrenamiento apropiado para el modelo que desea refinar.
Refinamiento de una referencia de modelo de un centro seleccionado
El siguiente procedimiento le muestra cómo ajustar una referencia de modelo en su centro privado seleccionado mediante el SDK de SageMaker Python.
-
Asegúrese de tener instalada la última versión (como mínimo
2.242.0) del SDK de SageMaker Python. Para obtener más información, consulte Usar la versión 2.x del SDK de SageMaker Python. !pip install --upgrade sagemaker -
Importa los módulos AWS SDK para Python (Boto3) y los que necesitarás del SDK de SageMaker Python.
import boto3 from sagemaker.jumpstart.estimator import JumpStartEstimator from sagemaker.session import Session -
Inicialice una sesión de Boto3, un cliente de SageMaker IA y una sesión del SDK de SageMaker Python.
sagemaker_client = boto3.Session(region_name=<AWS-region>).client("sagemaker") sm_session = Session(sagemaker_client=sagemaker_client) -
Crea
JumpStartEstimatory proporciona el ID del JumpStart modelo, el nombre de tu hub que contiene la referencia del modelo y tu sesión del SDK de SageMaker Python. Para obtener una lista de modelos IDs, consulta la tabla de algoritmos integrados con modelos previamente entrenados. También puede especificar los campos
instance_typeyinstance_countal crear el estimador. Si no lo hace, el trabajo de entrenamiento utilizará el tipo y el recuento de instancia predeterminados para el modelo que utilice.También puede especificar
output_pathen la ubicación de Amazon S3 donde desea almacenar las ponderaciones del modelo de ajuste fino. Si no especificas eloutput_path, utiliza un bucket Amazon S3 de SageMaker IA predeterminado para la región de tu cuenta, denominado con el siguiente formato:sagemaker-.<region>-<account-id>estimator = JumpStartEstimator( model_id="meta-textgeneration-llama-3-2-1b", hub_name=<your-hub-name>, sagemaker_session=sm_session, # If you don't specify an existing session, a default one is created for you # Optional: specify your desired instance type and count for the training job # instance_type = "ml.g5.2xlarge" # instance_count = 1 # Optional: specify a custom S3 location to store the fine-tuned model artifacts # output_path: "s3://<output-path-for-model-artifacts>" ) -
Cree un diccionario con la clave
trainingen la que especifique la ubicación de su conjunto de datos de refinamiento. En este ejemplo se apunta a un URI de Amazon S3. Si tienes otras consideraciones, como usar el modo local o varios canales de datos de entrenamiento, consulta JumpStartEstimator.fit ()en la documentación del SDK de SageMaker Python para obtener más información. training_input = { "training": "s3://<your-fine-tuning-dataset>" } -
Llame al método
fit()del estimador y envíe sus datos de entrenamiento y su aceptación del EULA (si corresponde).nota
En el siguiente ejemplo se establece
accept_eula=False.Debe cambiar el valor manualmente aTruepara aceptar el EULA.estimator.fit(inputs=training_input, accept_eula=False)
Su trabajo de refinamiento debería comenzar ahora.
Puedes comprobar tu trabajo de ajuste viendo tus trabajos de formación, ya sea en la consola de SageMaker IA o mediante la API. ListTrainingJobs
Puede acceder a sus artefactos de modelo ajustados en el Amazon S3 output_path que se especificó en el JumpStartEstimator objeto (ya sea el bucket Amazon S3 de SageMaker IA predeterminado para la región o una ruta de Amazon S3 personalizada que especificó, si corresponde).