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.
Realice un seguimiento de las recomendaciones de inferencias y los resultados comparativos con MLflow
Puede realizar un seguimiento de los resultados de sus recomendaciones y comparar trabajos con MLflow totalmente gestionado en Amazon SageMaker AI. Cuando proporciona una configuración de MLflow, la SageMaker IA registra las métricas de rendimiento y los artefactos que produce el trabajo en una aplicación de MLflow. A continuación, puede utilizar la interfaz de usuario de MLflow para ver las ejecuciones individuales, comparar las configuraciones de los distintos trabajos y compartir los resultados con su equipo. Para obtener más información sobre MLflow en SageMaker IA, consulte. Acelere el desarrollo de IA generativa con MLflow gestionado en Amazon AI SageMaker
El seguimiento de MLflow es opcional. Para habilitarlo, proporcione una configuración de MLflow que haga referencia a una aplicación de MLflow al crear el trabajo.
Requisitos previos
Antes de realizar un seguimiento de los resultados con MLflow, además de una recomendación o un trabajo de referenciaRequisitos previos, necesitará lo siguiente:
-
Una aplicación MLflow en estado operativo, al Región de AWS igual que su trabajo. Para obtener información sobre cómo crear una aplicación MLflow, consulte. Configuración de la aplicación MLflow
-
Una función de ejecución de IAM (la
RoleArnque se transfiere al trabajo) con permiso para describir la aplicación MLflow y llamar a las API REST de MLflow. Añada lasagemaker:DescribeMlflowAppacción ysagemaker-mlflowlas acciones que el trabajo utiliza para registrar las ejecuciones. Para obtener más información sobre los permisos de MLflow, consulteConfiguración de la aplicación MLflow.
Parámetros de configuración de MLflow
Para realizar un seguimiento de los resultados, añada un MlflowConfig objeto a su CreateAIRecommendationJob CreateAIBenchmarkJob solicitud. OutputConfig MlflowConfigcontiene los siguientes campos:
MlflowResourceArn-
Obligatorio. El nombre del recurso de Amazon (ARN) de la aplicación MLflow en el que se registrarán los resultados, en el formato.
arn:aws:sagemaker:region:account-id:mlflow-app/app-id MlflowExperimentName-
Opcional. El nombre del experimento de MLflow con el que se registrará la ejecución. Si el experimento no existe, la SageMaker IA lo crea; si ya existe, la SageMaker IA lo reutiliza para que puedas agrupar las ejecuciones de varios trabajos en un experimento con el mismo nombre.
MlflowRunName-
Opcional. El nombre de la ejecución de MLflow de nivel superior en la que están anidados los resultados del trabajo. Para agrupar los resultados de varios trabajos en una ejecución de nivel superior, transfiera lo mismo
MlflowRunNamea cada trabajo.
Cada trabajo crea una ejecución de MLFlow de nivel superior, con ejecuciones secundarias anidadas que desglosan los resultados por dimensiones, como el objetivo o el tipo de instancia de referencia, la configuración de implementación y el nivel de simultaneidad. Esta estructura le permite profundizar en las mediciones individuales y comparar las configuraciones en la interfaz de usuario de MLflow.
Lo MlflowConfig que proporciona en la solicitud de creación se repite en OutputConfig la respuesta correspondienteDescribe.
Realice un seguimiento de un trabajo recomendado
Añada el MlflowConfig objeto OutputConfig al crear un trabajo de recomendación.
Python (boto3)
response = client.create_ai_recommendation_job( AIRecommendationJobName="my-recommendation-job", ModelSource={ "S3": { "S3Uri": "s3://DOC-EXAMPLE-BUCKET/models/my-model/", } }, OutputConfig={ "S3OutputLocation": "s3://DOC-EXAMPLE-BUCKET/recommendations/", "MlflowConfig": { "MlflowResourceArn": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-app/app-EXAMPLE", "MlflowExperimentName": "my-recommendation-experiment", "MlflowRunName": "my-recommendation-job-run", }, }, PerformanceTarget={ "Constraints": [ {"Metric": "ttft-ms"} ] }, AIWorkloadConfigIdentifier="my-recommendation-workload", RoleArn="arn:aws:iam::111122223333:role/ExampleRole", ) print(response["AIRecommendationJobArn"])
AWS CLI
aws sagemaker create-ai-recommendation-job \ --ai-recommendation-job-name "my-recommendation-job" \ --model-source '{"S3": {"S3Uri": "s3://DOC-EXAMPLE-BUCKET/models/my-model/"}}' \ --output-config '{ "S3OutputLocation": "s3://DOC-EXAMPLE-BUCKET/recommendations/", "MlflowConfig": { "MlflowResourceArn": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-app/app-EXAMPLE", "MlflowExperimentName": "my-recommendation-experiment", "MlflowRunName": "my-recommendation-job-run" } }' \ --performance-target '{"Constraints": [{"Metric": "ttft-ms"}]}' \ --ai-workload-config-identifier "my-recommendation-workload" \ --role-arn "arn:aws:iam::111122223333:role/ExampleRole" \ --region us-west-2
Realice un seguimiento de un trabajo de referencia
Añada el MlflowConfig objeto OutputConfig al crear un trabajo de referencia.
Python (boto3)
response = client.create_ai_benchmark_job( AIBenchmarkJobName="my-benchmark-job", BenchmarkTarget={ "Endpoint": { "Identifier": "my-sagemaker-endpoint" } }, OutputConfig={ "S3OutputLocation": "s3://DOC-EXAMPLE-BUCKET/benchmark-results/", "MlflowConfig": { "MlflowResourceArn": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-app/app-EXAMPLE", "MlflowExperimentName": "my-benchmark-experiment", "MlflowRunName": "my-benchmark-job-run", }, }, AIWorkloadConfigIdentifier="my-benchmark-config", RoleArn="arn:aws:iam::111122223333:role/ExampleRole", ) print(response["AIBenchmarkJobArn"])
AWS CLI
aws sagemaker create-ai-benchmark-job \ --ai-benchmark-job-name "my-benchmark-job" \ --benchmark-target '{"Endpoint": {"Identifier": "my-sagemaker-endpoint"}}' \ --output-config '{ "S3OutputLocation": "s3://DOC-EXAMPLE-BUCKET/benchmark-results/", "MlflowConfig": { "MlflowResourceArn": "arn:aws:sagemaker:us-west-2:111122223333:mlflow-app/app-EXAMPLE", "MlflowExperimentName": "my-benchmark-experiment", "MlflowRunName": "my-benchmark-job-run" } }' \ --ai-workload-config-identifier "my-benchmark-config" \ --role-arn "arn:aws:iam::111122223333:role/ExampleRole" \ --region us-west-2
Vea los resultados en MLFlow
Cuando el trabajo alcance el Completed estado, abra la interfaz de usuario de MLflow desde la aplicación MLflow para inspeccionar las ejecuciones registradas. Para obtener más información sobre cómo iniciar la interfaz de usuario de MLflow, consulte. Inicio de la interfaz de usuario de MLflow mediante una URL prefirmada
En la página Experimentos, seleccione el experimento que especificó. MlflowExperimentName
La vista Ejecuciones del experimento muestra una ejecución de nivel superior que contiene una ejecución por trabajo, que se expande a ejecuciones secundarias para cada tipo de instancia, configuración de despliegue y nivel de simultaneidad. Seleccione una ejecución para ver sus parámetros, métricas y artefactos.