En esta primera publicación de una serie de dos partes, examinamos cómo los minoristas pueden implementar una prueba virtual para mejorar la experiencia del cliente. En la parte 2, exploraremos más a fondo las aplicaciones y los beneficios del mundo real de esta tecnología innovadora.
Una de cada cuatro prendas compradas en línea se devuelve al minorista, lo que contribuirá al problema de devoluciones de 890 mil millones de dólares en Estados Unidos en 2024. Detrás de estas cifras se esconde una verdad simple: los compradores no pueden juzgar el ajuste y el estilo a través de sus pantallas. Entre las principales razones por las que los artículos de moda se devuelven se encuentran el mal ajuste, la talla incorrecta o el estilo que no coincide.
Los minoristas enfrentan un desafío crítico ya que sus clientes más valiosos a menudo devuelven la mayor cantidad de artículos, lo que los obliga a mantener políticas de devolución generosas a pesar de los elevados costos de procesamiento y el impacto ambiental. Cada devolución produce un 30 % más de emisiones de carbono que la entrega inicial y representa una oportunidad de ventas perdida hasta que los artículos se procesan nuevamente en el inventario. A medida que se aceleran las compras digitales, la tecnología de prueba virtual ha surgido como una solución para reducir las devoluciones y al mismo tiempo mantener la comodidad del cliente, pero las primeras implementaciones tuvieron problemas con la precisión, la escalabilidad y la preservación de detalles cruciales como drapeados, patrones y logotipos de las prendas.
Amazon Nova Canvas aborda estos desafíos a través de su capacidad de prueba virtual, que utiliza dos entradas de imágenes bidimensionales: una imagen de origen que muestra una persona o un espacio habitable y una imagen de referencia del producto. El sistema ofrece colocación automática de productos a través de la funcionalidad de enmascaramiento automático y controles manuales para ajustes precisos. Durante todo el proceso, conserva cuidadosamente detalles importantes como logotipos y texturas, al tiempo que proporciona controles de estilo completos para la personalización.
La prueba virtual se puede implementar en múltiples canales de participación del cliente, desde sitios web de comercio electrónico y aplicaciones de compras móviles hasta quioscos en las tiendas, plataformas de compras en redes sociales y salas de exposición virtuales. Imagínese visitar un sitio web de comercio electrónico, cargar su imagen personal y verla aplicada en toda la ropa y accesorios de ese sitio web.
La siguiente imagen muestra una imagen de origen, una imagen de referencia, una imagen de máscara y la imagen de prueba resultante.
En esta publicación, exploramos la capacidad de prueba virtual ahora disponible en Amazon Nova Canvas, incluido un código de muestra para comenzar rápidamente y consejos para ayudarlo a obtener los mejores resultados.
Descripción general de la solución
Con la capacidad de prueba virtual, los minoristas y las empresas de comercio electrónico pueden integrar la visualización de prendas y productos directamente en los puntos de contacto con sus clientes nuevos o existentes. Usando solo una carga de fotos y una selección de productos, los clientes pueden ver cómo se verían los artículos en ellos mismos, en un modelo u otra ubicación. Puede experimentar con pruebas virtuales en Amazon Nova Canvas dentro del área de juegos de Amazon Bedrock. Y lo guiaremos en la implementación de una solución completa en torno a esta característica en su propio entorno de Amazon Web Services (AWS). La siguiente sección proporciona instrucciones detalladas y mejores prácticas para la implementación.
Básicamente, la solución utiliza la nueva prueba virtual en Amazon Nova Canvas en Amazon Bedrock. Este modelo ofrece velocidades de inferencia rápidas, lo que lo hace adecuado para aplicaciones en tiempo real como el comercio electrónico. Al mismo tiempo, conserva detalles de alta fidelidad de los elementos de referencia, incluidos patrones, texturas y logotipos. El modelo mantiene manipulaciones semánticas precisas dentro de las escenas.
Nuestra solución combina servicios sin servidor de AWS con capacidades de procesamiento de IA en una arquitectura basada en eventos. Amazon DynamoDB Streams desencadena un flujo de trabajo de AWS Step Functions y eventos de Amazon Simple Storage Service (Amazon S3) para administrar la entrega de resultados. Amazon Nova Canvas en Amazon Bedrock administra tanto la generación de máscaras como la detección de poses. La solución sigue un proceso de procesamiento asincrónico con actualizaciones de estado en tiempo real en el que las conexiones WebSocket mantienen comunicación en tiempo real con los clientes, lo que permite la participación continua del usuario durante todo el proceso. Para obtener orientación de implementación detallada y mejores prácticas, consulte nuestra guía.
Explicación detallada de la arquitectura.
El inicio de la solicitud sigue este flujo:
Amazon S3 almacena las fotografías de modelos de clientes e imágenes de productos cargadas. Cada carga genera un mensaje enviado a una cola de Amazon Simple Queue Service (Amazon SQS). La función AWS Lambda crea los metadatos correspondientes y la ruta S3 y los almacena en la tabla de productos de DynamoDB para su posterior recuperación. Amazon API Gateway administra las conexiones WebSocket para actualizaciones de estado en tiempo real entre el cliente y la prueba virtual. Lambda procesa las solicitudes iniciales recuperando información del producto en la tabla de productos de DynamoDB y creando entradas de trabajo en DynamoDB. Amazon DynamoDB: la tabla de productos (vto-products) almacena los elementos del catálogo disponibles para la prueba virtual, en particular la ubicación de la imagen de Amazon S3. La tabla de trabajos de prueba virtuales de DynamoDB (vto-jobs) realiza un seguimiento del estado de cada solicitud de prueba.
La generación de prueba virtual sigue este flujo:
DynamoDB Streams activa de forma asincrónica flujos de trabajo de AWS Step Functions en la creación de trabajos para procesar solicitudes de prueba. AWS Step Functions organiza la generación de prueba virtual. Activa una función Lambda que llama al modelo Amazon Nova Canvas a través de Amazon Bedrock. La tabla de trabajos de DynamoDB se actualiza con el estado de prueba virtual.
La entrega de resultados sigue este flujo:
Amazon S3 almacena las imágenes de prueba generadas con metadatos de ID del trabajo. Amazon SQS maneja notificaciones de eventos S3 para imágenes de prueba completadas. La función AWS Lambda envía la URL de Amazon S3 del resultado al usuario a través de WebSocket.
El siguiente diagrama ilustra la arquitectura de la solución.
Proceso de solución
Esta sección explica el proceso integral de la solución. La guía de la solución proporciona más detalles e información sobre cómo replicar la solución.
Cuando su cliente inicia una solicitud de prueba, primero inicia sesión en Amazon Cognito y luego carga sus fotografías almacenadas en Amazon S3. Hay un flujo de trabajo disponible para completar automáticamente la tabla de productos en DynamoDB a través de eventos de Amazon S3. El cliente establece una conexión WebSocket a través de API Gateway, creando un canal persistente para actualizaciones en tiempo real. El cliente envía el ID del producto que desea probar virtualmente, así como la URL S3 del modelo estático que desea utilizar. Una función Lambda procesa esta solicitud recuperando la URL de la imagen del producto de DynamoDB y creando una entrada de trabajo con ambas URL de la imagen, devolviendo un ID de trabajo único para el seguimiento.
Luego, la secuencia de DynamoDB activa una función de paso para coordinar las diferentes escrituras y actualizaciones en la tabla de DynamoDB. La función de paso también invoca la función de prueba virtual de Amazon Nova Canvas. El modelo toma como entrada (1) la imagen de origen, que es la imagen base que le gustaría modificar (por ejemplo, la imagen del cliente), (2) la imagen de referencia, que es una imagen que contiene los productos que desea insertar en la imagen base. En el caso de las prendas, la imagen de referencia puede contener prendas dentro o fuera del cuerpo e incluso puede contener varios productos que representen distintos componentes del conjunto (como una camisa, pantalones y zapatos en una sola imagen).
De forma predeterminada, una máscara se calcula automáticamente utilizando entradas auxiliares (tipo de máscara: "PRENTA" o tipo de máscara: "PROMPT"). La imagen de la máscara puede ser proporcionada directamente por el desarrollador (tipo de máscara: "IMAGEN").
Cuando se especifica un tipo de máscara de “PRENDENCIA”, Amazon Nova Canvas creará una máscara que tiene en cuenta la prenda en función del valor del parámetro de entrada de la clase de prenda que usted especifique. En la mayoría de los casos, utilizará una de las siguientes clases de prendas de alto nivel:
"UPPER_BODY": crea una máscara que incluye la longitud completa del brazo. "LOWER_BODY": crea una máscara que incluye la longitud completa de las piernas sin espacios entre las piernas. "CALZADO": crea una máscara que se ajusta al perfil del zapato que se muestra en la imagen de origen. "FULL_BODY": crea una máscara equivalente a la combinación de "UPPER_BODY" y "LOWER_BODY".
La siguiente tabla muestra entradas de ejemplo con maskType: "PRENDENCIA".
Fuente Referencia Clase de prenda Salida
La siguiente tabla muestra entradas de ejemplo con maskType: "PROMPT".
Imagen de origen Solicitud de máscara Imagen de referencia Salida
También hay subclases más detalladas que pueden ser útiles en ciertos casos extremos. Al utilizar el tipo de máscara "PROMPT", puede utilizar lenguaje natural para describir el elemento en la imagen de origen que desea reemplazar. Esto es útil para imágenes de artículos distintos de prendas de vestir. Esta característica utiliza la misma funcionalidad de enmascaramiento automático que existe en la tarea “PINTURA” de Nova Canvas usando el parámetro maskPrompt.
Al utilizar la máscara y comprender qué áreas de la prenda deben reemplazarse, la imagen del producto se inserta en la foto del usuario como entrada. Luego, el modelo genera la imagen de prueba, que se almacena en Amazon S3 con el ID del trabajo como metadatos. Durante todo este proceso, el sistema envía actualizaciones de progreso a través de la conexión WebSocket. Una notificación de evento de Amazon S3 activa una función Lambda a través de Amazon SQS. La función genera una URL prefirmada para la imagen del resultado y la entrega al cliente a través de la conexión WebSocket establecida. Esto completa el proceso, que suele tardar entre 7 y 11 segundos.
Detalles de implementación
Esta sección detalla las tablas y el esquema utilizados en nuestra solución de prueba virtual para ayudarlo a comprender mejor el papel que desempeña cada tabla de DynamoDB.
Esta solución utiliza cuatro tablas de DynamoDB. La tabla de productos almacena el catálogo de artículos disponibles para prueba virtual. La tabla virtual_try_on_jobs mantiene el estado y la información de seguimiento de cada solicitud de prueba. La tabla vto-models almacena el catálogo de imágenes de los clientes utilizadas para las pruebas virtuales. La tabla de conexiones WebSocket (vto-connections) rastrea las conexiones WebSocket activas para obtener actualizaciones del estado del trabajo en tiempo real. La solución supone que la tabla de productos ya está completa con el inventario del minorista.
La tabla de productos (vto-products) almacena el catálogo de artículos disponibles para prueba virtual. Los productos se completan automáticamente cuando las imágenes se cargan en la carpeta /products/ S3. El esquema de la tabla de productos es el siguiente:
product_id (cadena, clave de partición): identificador único para el producto product_picture_s3_url (cadena): URL de Amazon S3 del nombre de la imagen del producto original (cadena): categoría del nombre para mostrar del producto (cadena): categoría de producto para la descripción de la organización (cadena): detalles del producto, incluidas opciones de estilo, color y tamaño. marca de tiempo de la última modificación
La tabla de modelos (vto-models) almacena el catálogo de imágenes de clientes utilizadas para las pruebas virtuales. Los modelos se completan automáticamente cuando las imágenes se cargan en la carpeta /models/S3. El esquema de la tabla de modelos es el siguiente:
model_id (cadena, clave de partición) – Identificador único para el modelo model_picture_s3_url (cadena) – URL de Amazon S3 del nombre de la imagen del modelo (cadena) – Categoría del nombre para mostrar del modelo (cadena) – Categoría del modelo para la descripción de la organización (cadena) – Detalles y características del modelo auto_imported (booleano) – Bandera que indica si el modelo se importó automáticamente mediante la carga de Amazon S3 creado_en (cadena) – Marca de tiempo ISO cuando se agregó el modelo actualizado_en (cadena) – Marca de tiempo ISO de la última modificación
La tabla de trabajos de prueba virtual (vto-jobs) mantiene información de estado y seguimiento para cada solicitud de prueba durante todo el flujo de trabajo de procesamiento. El esquema de la tabla de trabajos de prueba virtual es el siguiente:
id (cadena, clave de partición): identificador único para cada trabajo de prueba model_id (cadena): referencia al modelo utilizado product_id (cadena): referencia al producto que se está probando en model_picture_s3_url (cadena): URL de Amazon S3 de la foto cargada por el cliente product_picture_s3_url (cadena): URL de Amazon S3 del producto que se está probando en result_s3_url (cadena): URL de Amazon S3 de la imagen de resultado de prueba virtual generada status (cadena): parámetros del estado actual del trabajo (creado, procesando, completado o error) (mapa): parámetros de la API de prueba virtual (como tipo de máscara, estilo merge o clase de prenda). ID de conexión (cadena): ID de conexión WebSocket para actualizaciones en tiempo real.
La tabla de conexiones WebSocket (vto-connections) rastrea las conexiones WebSocket activas para obtener actualizaciones del estado del trabajo en tiempo real. Puede encontrar más información sobre cómo usar la API de WebSocket en el tutorial Crear una aplicación de chat WebSocket con una API de WebSocket, Lambda y DynamoDB. El esquema es el siguiente:
connect_id (cadena, clave de partición): identificador de conexión de WebSocket connect_at (cadena): marca de tiempo ISO cuando se estableció la conexión ttl (número): tiempo de vida para la limpieza automática de conexiones obsoletas
Conclusión
En esta publicación, cubrimos cómo implementar pruebas virtuales a escala, cubriendo los componentes principales. Para un comienzo rápido, proporcionamos un ejemplo completo de GitHub con requisitos previos, scripts de implementación, código de ejemplo y un documento de guía de solución integral con mejores prácticas y detalles de configuración. Utilice esta guía para comenzar de inmediato a experimentar con la solución.
A medida que el comercio electrónico continúa creciendo, reducir las tasas de devolución y al mismo tiempo mantener la satisfacción del cliente se vuelve cada vez más crítico para la rentabilidad y sostenibilidad de los minoristas. Esta solución de prueba virtual demuestra cómo los servicios sin servidor de AWS se pueden combinar con IA generativa para abordar un desafío importante. Al utilizar Amazon Nova Canvas junto con una sólida arquitectura sin servidor, los minoristas pueden ofrecer a los clientes una visualización precisa del producto y conservación de poses, manteniendo al mismo tiempo la experiencia de compra perfecta que esperan sus clientes más leales. Las consideraciones de implementación se extienden más allá de la arquitectura técnica. Una implementación exitosa requiere atención cuidadosa a las cuotas de servicio, el monitoreo y la optimización de costos. Nuestra guía de soluciones proporciona recomendaciones más detalladas para administrar conexiones WebSocket, implementar estrategias de reintento y optimizar la utilización de recursos. Estos aspectos operativos son cruciales para mantener un rendimiento confiable durante los períodos pico de compras y al mismo tiempo administrar los costos de manera efectiva.