Integración con Amazon S3
La integración con Amazon S3 conecta tus buckets de S3 con Ultralytics Platform. Tus imágenes permanecen en tus buckets: Platform las indexa allí mismo para que puedas explorarlas, anotarlas y entrenar modelos YOLO sin subir una copia. Si tienes activadas las funciones de IA, Platform también puede usarlas para la anotación inteligente, la anotación automática, la búsqueda de imágenes similares y el entrenamiento en la nube.
Los conjuntos de datos de Amazon S3 requieren un plan Pro o Enterprise. En los espacios de trabajo gratuitos se muestra la integración y se solicita la actualización al conectarse. Si finaliza una suscripción, los conjuntos de datos existentes de Amazon S3 siguen siendo totalmente accesibles; solo las conexiones e importaciones nuevas requieren Pro.
Crea un usuario de IAM#
El acceso de lectura cubre todo excepto la generación de imágenes, que también crea objetos. Platform nunca modifica ni elimina tus objetos. Usa un usuario de IAM específico; nunca uses las credenciales del usuario root:
-
En la consola de AWS, ve a IAM > Users y crea un usuario sin acceso a la consola.
-
Asigna una política que conceda acceso de listado y lectura a los buckets que quieras conectar:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:ListAllMyBuckets", "Resource": "*" }, { "Effect": "Allow", "Action": ["s3:ListBucket", "s3:GetObject"], "Resource": ["arn:aws:s3:::my-bucket", "arn:aws:s3:::my-bucket/*"] } ] }s3:ListAllMyBucketses opcional: permite que Platform descubra tus contenedores para que no tengas que escribir sus nombres.Para la generación de imágenes, permite también
s3:PutObject:{ "Effect": "Allow", "Action": "s3:PutObject", "Resource": [ "arn:aws:s3:::my-bucket/generated/*", "arn:aws:s3:::my-bucket/*/generated/*", "arn:aws:s3:::my-bucket/.ultralytics-write-check" ] }S3 no tiene permisos exclusivos de creación, así que esto limita las escrituras a las carpetas
generated/y a la clave.ultralytics-write-checkque Platform usa para probar el acceso de escritura (la prueba siempre se rechaza, así que no se almacena nada). Las escrituras propias de Platform nunca sobrescriben nada. -
Abre la pestaña Credenciales de seguridad del usuario, crea una clave de acceso y copia el ID de la clave de acceso y la clave de acceso secreta.
Platform rechaza las credenciales temporales de AWS. Las claves emitidas por AWS STS —incluidas las que empiezan por ASIA, las credenciales de sesión de rol y las claves de IAM Identity Center— caducan mientras un conjunto de datos sigue conectado, por lo que se necesita una clave de acceso de larga duración de un usuario de IAM dedicado.
Conectar con Platform#
- Ve a Configuración > Integraciones y selecciona Amazon S3 en la lista de integraciones.
- Introduce el ID de la clave de acceso, la clave de acceso secreta y la región del contenedor (por ejemplo,
us-east-1). - Haz clic en Buscar contenedores disponibles y selecciona los contenedores que quieras conectar. Si la política no permite descubrirlos, introduce manualmente el nombre de un contenedor conocido.
- Haz clic en Connect. Platform comprueba que puede listar y leer cada bucket seleccionado antes de guardar nada, y verifica si la clave también puede escribir en él mediante una solicitud que S3 siempre rechaza, así que no se almacena nada.

Cada credencial conectada tiene un interruptor de funciones de IA. Después de cambiar la política de IAM, vuelve a conectar el mismo usuario de IAM para comprobar de nuevo el acceso de escritura.
Necesitas el rol de administrador o propietario del espacio de trabajo para conectar el almacenamiento en la nube. Puedes añadir hasta 50 contenedores a la vez; la detección muestra hasta 300 de los contenedores que la clave puede ver.
Si más adelante vuelves a conectar el mismo usuario de IAM, se añadirán nuevos contenedores a la integración existente. Una credencial guardada solo se reemplaza si la nueva credencial puede seguir leyendo todos los contenedores que ya has conectado. Si no se puede leer algún contenedor, el error indica cuál, incluidos los conectados anteriormente con el mismo usuario de IAM.
Una conexión lee los contenedores de la región que indiques. Si tus contenedores están en varias regiones, crea una conexión por región.
Las credenciales se cifran en reposo con AES-256-GCM, nunca se devuelven al navegador ni se exponen a las cargas de trabajo de entrenamiento. Para revocar el acceso, desactiva la clave de acceso en AWS IAM.
Funciones de IA#
Cada credencial conectada tiene un interruptor de funciones de IA en Settings > Integrations, activado de forma predeterminada. Mientras está activado, las GPU de Ultralytics y los proveedores de modelos de IA pueden usar las imágenes de esa credencial para:
- Anotación inteligente con SAM, y anotación automática de imágenes individuales y por lotes
- Búsqueda de imágenes similares y análisis de agrupamiento
- Entrenamiento en la nube
- Generación de imágenes, en buckets con acceso de escritura
Los proveedores de modelos de IA solo intervienen en la generación de imágenes, para la que Google Gemini planifica las indicaciones a partir de la imagen de origen, y en los modelos de anotación de pago, que se ejecutan con la clave del proveedor de tu propio espacio de trabajo. Platform no conserva copias de tus imágenes: las funciones las leen cuando las necesitan, el entrenamiento en la nube usa copias temporales durante la ejecución y la búsqueda de imágenes similares guarda una incrustación de cada imagen, que se elimina cuando la imagen sale de Platform.
Desactiva el interruptor para que las imágenes no pasen por las GPU de Ultralytics ni por los proveedores de modelos de IA. Al desactivarlo se detienen los nuevos trabajos de IA; los que ya están en curso se completan. Los conjuntos de datos de esa credencial mostrarán funciones de IA desactivadas, con un enlace a estos ajustes, y cada función no disponible explicará el motivo. La anotación manual, el uso compartido y el entrenamiento local seguirán funcionando, y se conservarán las etiquetas, los modelos y los resultados de búsqueda que ya hayas creado.
Necesitas el rol de administrador o propietario del espacio de trabajo para cambiar el interruptor. También puedes configurarlo con la REST API, usando el ID de integración devuelto por GET /api/integrations/buckets:
curl -X PATCH \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"processing": false}' \
https://platform.ultralytics.com/api/integrations/buckets/INTEGRATION_IDGeneración de imágenes#
Generar imágenes similares funciona con conjuntos de datos de Amazon S3 cuyo bucket permita escribir al usuario de IAM, siempre que las funciones de IA estén activadas. Las imágenes que añadas se escriben en una carpeta generated/ dentro de la carpeta del conjunto de datos y, después, se añaden al conjunto de datos como cualquier otra imagen indexada. Platform solo crea objetos nuevos allí y nunca sobrescribe ni elimina los existentes. Si la acción indica que necesita acceso de escritura, concédelo si es necesario y vuelve a conectar el mismo usuario de IAM en Settings > Integrations.
Crea un conjunto de datos a partir de un contenedor S3#
- Haz clic en Nuevo conjunto de datos y abre la pestaña Nube.
- Elige un bucket conectado y busca la carpeta que contiene tus datos.
- Confirma la carpeta, ajusta el nombre del conjunto de datos y créalo.
Platform enumera la carpeta una vez e indexa lo que encuentra:
- Imágenes — Se indexan los objetos
.jpg,.jpeg,.png,.webpy.avif; las dimensiones se leen mediante solicitudes acotadas. Platform no guarda una segunda copia de la imagen original. - Etiquetas — Los archivos auxiliares
.txtde YOLO se analizan y se convierten en anotaciones de Platform, asociadas mediante la estructura estándarimages/→labels/o como archivos hermanos en la misma carpeta. - Metadatos — Un archivo YAML proporciona los nombres de las clases y la estructura de los puntos clave de pose, igual que una carga de archivo. Se prefieren
data.yamlydata.ymlcuando la carpeta contiene varios archivos. - Tarea — Una muestra de los archivos de etiquetas determina la tarea, por lo que las carpetas de segmentación, pose y OBB se reconocen por la estructura de sus etiquetas, no por la tarea que hayas seleccionado en el cuadro de diálogo.
- Divisiones — Los nombres de carpeta
train,valytesten la clave del objeto asignan automáticamente las divisiones.
Después, el conjunto de datos funciona como cualquier otro: explóralo y anótalo, configúralo como público o privado, compártelo con tu equipo y entrena con él mediante el entrenamiento gestionado. Los originales se transmiten cuando se necesitan y las imágenes indexadas no consumen tu cuota de almacenamiento de Platform.
Una sola importación indexa hasta 500 000 objetos, y archivos de etiquetas o YAML de hasta 1 MB cada uno. Los contenedores más grandes deben dividirse en varios conjuntos de datos.
Cada imagen indexada queda vinculada al ETag de su objeto S3, y Platform falla de forma segura si el objeto cambia mientras está vinculado. Añade objetos nuevos en lugar de sobrescribir los existentes.
Importaciones fallidas#
Si falla una importación —por una carpeta vacía, un error tipográfico en la ruta o permisos revocados—, el conjunto de datos muestra el error en su página. Los editores pueden hacer clic en Reintentar importación para reiniciarla con el contenedor y la carpeta guardados, o crear un conjunto de datos nuevo que apunte a la ruta corregida.
Al reintentar, se vuelve a listar la carpeta en lugar de reanudar la importación: se incluyen los objetos añadidos desde el primer intento y se descartan del conjunto de datos los que ya no están.
Entrenamiento#
El entrenamiento gestionado funciona con el flujo de entrenamiento habitual mientras estén activadas las funciones de IA. Durante la ejecución, el entrenamiento utiliza las copias propias de Platform de las imágenes fijadas, y tus credenciales de AWS nunca se exponen a las cargas de trabajo de entrenamiento. Si las funciones de IA están desactivadas, el cuadro de diálogo de entrenamiento explica por qué no está disponible el entrenamiento en la nube y ofrece la opción de entrenamiento local.
Desconectar una conexión#
Al desconectar, se eliminan las credenciales guardadas sin modificar nada en AWS. Los conjuntos de datos creados a partir de esos contenedores permanecen en tu espacio de trabajo con sus clases, etiquetas y anotaciones, pero sus imágenes no se pueden cargar, previsualizar ni utilizar para entrenar hasta que vuelvas a conectar el mismo usuario de IAM. Aunque estén desconectados, puedes cambiarles el nombre, editar sus etiquetas o eliminarlos.
Para desconectar, ve a Configuración > Integraciones, selecciona Amazon S3, haz clic en Desconectar junto a la credencial y confirma. Al abrir uno de sus conjuntos de datos, aparecerá Amazon S3 desconectado con un enlace a esta configuración; el conjunto de datos volverá a estar disponible automáticamente cuando te conectes de nuevo.
También puedes desconectar mediante la API REST, usando el ID de integración que devuelve GET /api/integrations/buckets:
curl -X DELETE \
-H "Authorization: Bearer YOUR_API_KEY" \
https://platform.ultralytics.com/api/integrations/buckets/INTEGRATION_IDfrom ultralytics_platform import Platform
client = Platform() # reads ULTRALYTICS_API_KEY
integrations = client.storage_integrations.list()
client.storage_integrations.delete("INTEGRATION_ID")Para revocar el acceso directamente en el origen, desactiva o elimina la clave de acceso en AWS IAM.
Limitaciones actuales#
Los conjuntos de datos respaldados por S3 no admiten las funciones que necesitan copias de tus imágenes propiedad de Platform: la clonación de conjuntos de datos, las instantáneas de versiones inmutables, el desenfoque de caras y el pegado de imágenes de otros conjuntos de datos. La anotación inteligente, la anotación automática, la búsqueda de imágenes similares, el agrupamiento, el entrenamiento en la nube y la generación de imágenes requieren tener activadas las funciones de IA.
Al eliminar un conjunto de datos vinculado a S3 o imágenes individuales de este, solo se eliminan las referencias de Platform; tus objetos no se modifican.
Consulta también las integraciones de Google Cloud Storage y Azure Blob Storage.
Preguntas frecuentes#
No. Platform lista el bucket una vez e indexa las dimensiones y las etiquetas de las imágenes que encuentra. Los originales se transmiten cuando se necesitan para explorarlos y anotarlos. Si las funciones de IA están activadas, las GPU de Ultralytics leen las imágenes cuando las necesitan, el entrenamiento gestionado usa copias temporales durante cada ejecución y la búsqueda de imágenes similares conserva un embedding de cada imagen, que se elimina junto con esta. Los únicos objetos que Platform escribe son las imágenes generadas que añades, en
generated/. Las imágenes indexadas no cuentan para tu cuota de almacenamiento.Un conjunto de datos se indexa una sola vez, al crearlo. Los objetos nuevos no se detectan hasta que creas un conjunto de datos nuevo o reintentas una importación fallida. Además, cada imagen indexada queda vinculada a su versión, por lo que, si sobrescribes un objeto, Platform falla de forma segura para esa imagen. Añade objetos nuevos en lugar de reemplazar los existentes.
Solo para la generación de imágenes, y únicamente si el usuario de IAM tiene
s3:PutObjecty las funciones de IA están activadas. Platform crea objetos nuevos engenerated/, dentro de la carpeta del conjunto de datos, y nunca sobrescribe ni elimina los existentes.Desconecta la integración en Settings > Integrations para eliminar las credenciales guardadas, o desactiva o elimina la clave de acceso en AWS IAM. Ninguna de las dos acciones afecta a los datos de tus buckets. Para evitar que las imágenes pasen por las GPU de Ultralytics sin desconectar la integración, desactiva las funciones de IA.
Comentarios
Haz una pregunta, comparte tus resultados o ayuda a otra persona.