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.
SageMaker Componentes para las canalizaciones de Kubeflow
Con SageMaker los componentes para Kubeflow Pipelines, puedes crear y supervisar trabajos nativos de SageMaker entrenamiento, ajuste, despliegue de terminales y transformación por lotes desde tus canalizaciones de Kubeflow. Al ejecutar las tareas de Kubeflow Pipeline SageMaker, transfieres las tareas de procesamiento de datos y formación del clúster de Kubernetes al servicio gestionado optimizado para el aprendizaje automático. SageMaker En este documento se presupone tener conocimientos previos de Kubernetes y Kubeflow.
Contenido
- ¿Qué son las canalizaciones de Kubeflow?
- ¿Qué son los componentes de una canalización de Kubeflow?
- ¿Por qué usar SageMaker componentes para las canalizaciones de Kubeflow?
- SageMaker Componentes para las versiones de Kubeflow Pipelines
- Lista de SageMaker componentes para las canalizaciones de Kubeflow
- IAMpermisos
- Conversión de canalizaciones para su uso SageMaker
- Instalar canalizaciones de Kubeflow
- Usa componentes SageMaker
¿Qué son las canalizaciones de Kubeflow?
Kubeflow Pipelines (KFP) es una plataforma para crear e implementar flujos de trabajo de aprendizaje automático (ML) portátiles y escalables basados en contenedores Docker. La plataforma de canalizaciones de Kubeflow consta de lo siguiente:
-
Una interfaz de usuario (UI) para administrar y rastrear experimentos, trabajos y ejecuciones.
-
Un motor (Argo) para programar flujos de trabajo de ML de varios pasos.
-
Y SDK para definir y manipular canalizaciones y componentes.
-
Cuadernos para interactuar con el sistema mediante el. SDK
Una canalización es una descripción de un flujo de trabajo de ML que se expresa como un gráfico acíclico dirigido
Para obtener más información sobre las canalizaciones de Kubeflow, consulte la documentación de las canalizaciones de Kubeflow
¿Qué son los componentes de una canalización de Kubeflow?
Un componente de canalización de Kubeflow es un conjunto de códigos que se utiliza para ejecutar un paso de una canalización de Kubeflow. Los componentes se representan mediante un módulo de Python integrado en una imagen de Docker. Cuando se ejecuta la canalización, se crea una instancia del contenedor del componente en uno de los nodos de trabajo del clúster de Kubernetes que ejecuta Kubeflow, y se ejecuta su lógica. Los componentes de la canalización pueden leer las salidas de los componentes anteriores y crear salidas que el siguiente componente de la canalización puede consumir. Estos componentes facilitan y agilizan la creación de canalizaciones para entornos de experimentación y producción sin tener que interactuar con la infraestructura subyacente de Kubernetes.
Puedes usar SageMaker componentes en tu canalización de Kubeflow. En lugar de encapsular tu lógica en un contenedor personalizado, solo tienes que cargar los componentes y describir tu canalización mediante las canalizaciones de Kubeflow. SDK Cuando la canalización se ejecuta, tus instrucciones se traducen en una SageMaker tarea o implementación. A continuación, la carga de trabajo se ejecuta en la infraestructura totalmente gestionada de SageMaker.
¿Por qué usar SageMaker componentes para las canalizaciones de Kubeflow?
SageMaker Los componentes de Kubeflow Pipelines ofrecen una alternativa desde la que iniciar tus tareas con un uso intensivo de cómputo. SageMaker Los componentes se integran SageMaker con la portabilidad y la organización de Kubeflow Pipelines. Con los SageMaker componentes de Kubeflow Pipelines, puede crear y supervisar sus SageMaker recursos como parte de un flujo de trabajo de Kubeflow Pipelines. Cada uno de los trabajos de sus procesos se ejecuta en SageMaker lugar de ejecutarse en el clúster local de Kubernetes, lo que le permite aprovechar SageMaker funciones clave como el etiquetado de datos, el ajuste de hiperparámetros a gran escala y los trabajos de formación distribuidos, o el despliegue de modelos escalables y seguros con un solo clic. Los parámetros, el estado, los registros y los resultados de los trabajos SageMaker siguen siendo accesibles desde la interfaz de usuario de Kubeflow Pipelines.
Los SageMaker componentes integran SageMaker funciones clave en sus flujos de trabajo de aprendizaje automático, desde la preparación de datos hasta la creación, el entrenamiento y la implementación de modelos de aprendizaje automático. Puede crear una canalización de Kubeflow creada íntegramente con estos componentes o integrar componentes individuales en su flujo de trabajo según sea necesario. Los componentes están disponibles en una o dos versiones. Cada versión de un componente utiliza un backend diferente. Para obtener más información acerca de las versiones, consulte SageMaker Componentes para las versiones de Kubeflow Pipelines.
El uso de SageMaker Components for Kubeflow Pipelines no conlleva ningún cargo adicional. Se le cobrará por cualquier SageMaker recurso que utilice a través de estos componentes.
SageMaker Componentes para las versiones de Kubeflow Pipelines
SageMaker Los componentes de Kubeflow Pipelines vienen en dos versiones. Cada versión utiliza un backend diferente para crear y gestionar los recursos. SageMaker
-
Los SageMaker componentes de la versión 1 de Kubeflow Pipelines (v1.x o inferior) utilizan Boto3 () como backend.
AWS SDK for Python (Boto3) -
AWS introducida para facilitar una forma nativa de Kubernetes de gestionar los recursos de la nube. ACK
AWS ACKincluye un conjunto de controladores AWS específicos del servicio, uno de los cuales es el controlador. SageMaker El SageMaker controlador facilita que los desarrolladores de aprendizaje automático y los científicos de datos utilicen Kubernetes como plano de control para entrenar, ajustar e implementar modelos de aprendizaje automático (ML). SageMaker Para obtener más información, consulte SageMaker Operadores para Kubernetes
Se admiten ambas versiones de los SageMaker componentes de Kubeflow Pipelines. Sin embargo, la versión 2 ofrece algunas ventajas adicionales. En concreto, ofrece:
-
Una experiencia uniforme para gestionar tus SageMaker recursos desde cualquier aplicación, ya sea que utilices canalizaciones de Kubeflow, Kubernetes CLI ()
kubectl
u otras aplicaciones de Kubeflow, como Notebooks. -
La flexibilidad de gestionar y supervisar tus recursos fuera del flujo de trabajo de Kubeflow Pipeline. SageMaker
-
No tendrás tiempo de configuración para usar los SageMaker componentes si implementaste el Kubeflow completo en
el momento del AWS lanzamiento, ya que el SageMaker Operator forma parte de su despliegue.
Lista de SageMaker componentes para las canalizaciones de Kubeflow
La siguiente es una lista de todos los SageMaker componentes de Kubeflow Pipelines y sus versiones disponibles. También puedes encontrar todos los SageMaker componentes de las canalizaciones de Kubeflow
nota
Recomendamos a los usuarios que utilicen la versión 2 de un SageMaker componente siempre que esté disponible.
-
Ground Truth
El componente Ground Truth le permite enviar trabajos de etiquetado de SageMaker Ground Truth directamente desde un flujo de trabajo de Kubeflow Pipelines.
Versión 1 del componente Versión 2 del componente SageMaker Componente Ground Truth Kubeflow Pipelines versión 1
X
-
Workteam
El componente Workteam te permite crear trabajos para equipos de trabajo SageMaker privados directamente desde un flujo de trabajo de Kubeflow Pipelines.
Versión 1 del componente Versión 2 del componente SageMaker crear un equipo de trabajo privado: componente Kubeflow Pipelines, versión 1
X
-
Procesando
El componente de procesamiento te permite enviar los trabajos de procesamiento SageMaker directamente desde un flujo de trabajo de Kubeflow Pipelines.
Versión 1 del componente Versión 2 del componente SageMaker Procesamiento del componente Kubeflow Pipeline, versión 1
X
-
Entrenamiento
El componente de formación te permite enviar trabajos de SageMaker formación directamente desde un flujo de trabajo de Kubeflow Pipelines.
Versión 1 del componente Versión 2 del componente SageMaker Formación del componente Kubeflow Pipelines, versión 1
SageMaker Capacitación del componente Kubeflow Pipelines, versión 2
-
Optimización de hiperparámetros
El componente de optimización de hiperparámetros te permite enviar tareas de ajuste de hiperparámetros SageMaker directamente desde un flujo de trabajo de Kubeflow Pipelines.
Versión 1 del componente Versión 2 del componente SageMaker optimización de hiperparámetros: componente de Kubeflow Pipeline, versión 1
X
-
Implementación de alojamiento
Los componentes de alojamiento permiten implementar un modelo mediante los servicios de SageMaker alojamiento de un flujo de trabajo de Kubeflow Pipelines.
Versión 1 del componente Versión 2 del componente SageMaker Servicios de alojamiento: cree la versión 1 del componente Endpoint Kubeflow Pipeline
. La versión 2 de los componentes de alojamiento consta de los tres subcomponentes necesarios para crear una implementación de alojamiento en ella. SageMaker
-
Un componente de SageMaker Model Kubeflow Pipelines, versión 2
, responsable de los artefactos del modelo y de la ruta de registro de la imagen del modelo que contiene el código de inferencia. -
Un componente de Kubeflow Pipelines de SageMaker Endpoint Configuration, versión 2
, responsable de definir la configuración del punto final, como el tipo de instancia, los modelos, el número de instancias y la opción de inferencia sin servidor. -
Un componente de SageMaker Endpoint Kubeflow Pipelines, versión 2
, responsable de crear o actualizar el punto final tal como se especifica en la configuración del punto final. SageMaker
-
-
Transformación por lotes
El componente Batch Transform te permite ejecutar trabajos de inferencia para un conjunto de datos completo SageMaker desde un flujo de trabajo de Kubeflow Pipelines.
Versión 1 del componente Versión 2 del componente SageMaker Componente Batch Transform Kubeflow Pipeline versión 1
X
-
Monitor de modelos
Los componentes de Model Monitor permiten supervisar la calidad de los modelos de aprendizaje SageMaker automático en producción a partir de un flujo de trabajo de Kubeflow Pipelines.
Versión 1 del componente Versión 2 del componente X
Los componentes del monitor de modelos constan de cuatro subcomponentes para supervisar la desviación en un modelo.
-
Un componente de Kubeflow Pipelines, versión 2, de SageMaker Data Quality Job Definition
, responsable de monitorear la desviación en la calidad de los datos. -
Un componente de Kubeflow Pipelines de SageMaker Model Quality Job Definition, versión 2
, responsable de monitorear la desviación en las métricas de calidad del modelo. -
Un componente de Kubeflow Pipelines, versión 2, de SageMaker Model Bias Job Definition
, responsable de monitorear el sesgo en las predicciones de un modelo. -
Un SageMaker modelo de definición de trabajo de explicabilidad del componente de Kubeflow Pipelines, versión 2
, responsable de monitorear la desviación en la atribución de funciones.
Además, para el monitoreo programado con una frecuencia específica, un quinto componente, el componente SageMaker Monitoring Schedule Kubeflow Pipelines, versión 2, se encarga de monitorear los datos
recopilados desde un punto final en tiempo real según un cronograma. Para obtener más información sobre Amazon SageMaker Model Monitor, consulteSupervisión de la calidad de los datos y los modelos con Amazon SageMaker Model Monitor.
-
IAMpermisos
La implementación de Kubeflow Pipelines con SageMaker componentes requiere los siguientes tres niveles de autenticación:
-
Un IAM rol que otorga a su nodo de puerta de enlace (que puede ser su máquina local o una instancia remota) acceso al clúster de Amazon Elastic Kubernetes Service (Amazon). EKS
El usuario que accede al nodo de puerta de enlace asume este rol para:
-
Cree un EKS clúster de Amazon e instálelo KFP
-
Crea IAM roles
-
Crear buckets de Amazon S3 para sus datos de entrada de muestra.
El rol requiere los siguientes permisos:
-
CloudWatchLogsFullAccess
-
IAMFullAccess
-
Amazon S3 FullAccess
-
Amazon EC2FullAccess
-
Una mazonEKSAdmin política (cree esta política con el esquema de Amazon EKS Identity Based Policy Examples)
-
-
Una función de IAM ejecución de Kubernetes que asumen los módulos de canalización de Kubernetes (kfp-example-pod-role) o el operador al que acceden los pods del SageMaker controlador de Kubernetes. SageMaker Esta función se utiliza para crear y supervisar trabajos desde Kubernetes. SageMaker
El rol requiere el siguiente permiso:
-
AmazonSageMakerFullAccess
Puedes limitar los permisos a los pods KFP y a los controladores creando y adjuntando tu propia política personalizada.
-
-
Una función de SageMaker IAM ejecución que asumen los SageMaker trabajos para acceder a AWS recursos como Amazon S3 o Amazon ECR (kfp-example-sagemaker-execution-role).
SageMaker los trabajos utilizan este rol para:
-
Acceder a SageMaker los recursos
-
Ingresar datos desde Amazon S3.
-
Guardar su modelo de salida en Amazon S3.
El rol requiere los siguientes permisos:
-
AmazonSageMakerFullAccess
-
Amazon S3 FullAccess
-
Conversión de canalizaciones para su uso SageMaker
Puedes convertir una canalización existente para usarla SageMaker portando tus contenedores genéricos de procesamiento de Python y contenedores de entrenamiento. Si los utilizas SageMaker para realizar inferencias, también necesitas adjuntar IAM permisos a tu clúster y convertir un artefacto en un modelo.