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.
Implemente MLflow modelos con ModelBuilder
Puede implementar MLflow modelos en un SageMaker punto final mediante Amazon SageMaker Model Builder. Para obtener más información sobre Amazon SageMaker Model Builder, consulte Crear un modelo en Amazon SageMaker con ModelBuilder.
ModelBuilder
es una clase de Python que toma un modelo de marco o una especificación de inferencia especificada por el usuario y lo convierte en un modelo desplegable. Para obtener más información sobre la ModelBuilder
clase, consulte. ModelBuilder
Para implementar su MLflow modelo medianteModelBuilder
, proporcione una ruta a sus MLflow artefactos en el model_metadata["MLFLOW_MODEL_PATH"]
atributo. Siga leyendo para obtener más información sobre los formatos de entrada de la ruta del modelo válidos:
nota
Si proporciona la ruta del artefacto modelo en forma de identificador de MLflow ejecución o ruta de registro del MLflow modelo, también debe especificar su servidor de seguimiento ARN mediante el model_metadata["MLFLOW_TRACKING_ARN"]
atributo.
Modele las rutas que requieran ARN una model_metadata
Las siguientes rutas de modelo requieren que especifique una ARN en el model_metadata
para su despliegue:
MLflowID de ejecución
: runs:/aloy-run-id/run-relative/path/to/model
MLflowruta de registro del modelo
: models:/model-name/model-version
Modele las rutas que no requieren una ARN en el model_metadata
Las siguientes rutas de modelo no requieren que especifique una ARN en el model_metadata
para su despliegue:
Ruta del modelo local:
/Users/me/path/to/local/model
Ruta del modelo Amazon S3:
s3://amzn-s3-demo-bucket/path/to/model
Paquete modeloARN:
arn:aws:sagemaker:region:account-id:mlflow-tracking-server/tracking-server-name
Para obtener más información sobre cómo funciona la implementación de MLflow modelos con Amazon SageMaker, consulte Implementar un MLflow modelo SageMaker en Amazon
Si utiliza una ruta de Amazon S3, puede encontrar la ruta de su modelo registrado con los siguientes comandos:
registered_model = client.get_registered_model(name=
'AutoRegisteredModel'
) source_path = registered_model.latest_versions[0].source
El siguiente ejemplo es una descripción general de cómo implementar el MLflow modelo mediante ModelBuilder
una ruta de registro del MLflow modelo. Como en este ejemplo se proporciona la ruta del artefacto del modelo en forma de ruta de registro del MLflow modelo, la llamada a también ModelBuilder
debe especificar un servidor de seguimiento ARN mediante el model_metadata["MLFLOW_TRACKING_ARN"]
atributo.
importante
Debe usar la versión 2.224.0ModelBuilder
nota
Utilice el siguiente ejemplo de código como referencia. Para ver end-to-end ejemplos que muestran cómo implementar MLflow modelos registrados, consulteMLflowtutoriales con ejemplos de cuadernos Jupyter.
from sagemaker.serve import ModelBuilder from sagemaker.serve.mode.function_pointers import Mode from sagemaker.serve import SchemaBuilder my_schema = SchemaBuilder( sample_input=
sample_input
, sample_output=sample_output
) model_builder = ModelBuilder( mode=Mode.SAGEMAKER_ENDPOINT, schema_builder=my_schema, role_arn="Your-service-role-ARN
", model_metadata={ # both model path and tracking server ARN are required if you use an mlflow run ID or mlflow model registry path as input "MLFLOW_MODEL_PATH": "models:/sklearn-model/1
" "MLFLOW_TRACKING_ARN": "arn:aws:sagemaker:region:account-id:mlflow-tracking-server/tracking-server-name
" } ) model = model_builder.build() predictor = model.deploy( initial_instance_count=1
, instance_type="ml.c6i.xlarge
" )
Para mantener el seguimiento del linaje de MLflow los modelos implementadosModelBuilder
, debe tener los siguientes IAM permisos:
sagemaker:CreateArtifact
sagemaker:ListArtifacts
sagemaker:AddAssociation
sagemaker:DescribeMLflowTrackingServer
importante
El seguimiento del linaje es opcional. La implementación se realiza correctamente sin los permisos relacionados con el seguimiento del linaje. Si no tiene los permisos configurados, aparecerá un error en los permisos de seguimiento del linaje al llamar. model.deploy()
Sin embargo, la implementación del punto final aún se realiza correctamente y puede interactuar directamente con el punto final de su modelo. Si se configuran los permisos anteriores, la información de seguimiento del linaje se crea y almacena automáticamente.
Para obtener más información y end-to-end ejemplos, consulteMLflowtutoriales con ejemplos de cuadernos Jupyter.