Athrun Data Intelligence


IA generativa La prohijamiento entre diversas industrias está revolucionando diferentes tipos de aplicaciones, incluida la estampación de imágenes. La estampación de imágenes se utiliza en diversos sectores, como el diseño descriptivo, el marketing y las redes sociales. Los usuarios confían en herramientas especializadas para editar imágenes. Crear una alternativa personalizada para esta tarea puede resultar enredado. Sin retención, al utilizar varios servicios de AWS, puede implementar rápidamente una sin servidor Posibilidad para editar imágenes. Este enfoque puede brindarles a sus equipos llegada a modelos básicos (FM) de estampación de imágenes utilizando Roca Amazónica.

Amazon Bedrock es un servicio totalmente administrado que hace que los FM de las principales empresas emergentes de IA y Amazon estén disponibles a través de una API, por lo que puede nominar entre una amplia viso de FM para encontrar el maniquí que mejor se adapte a su caso de uso. Amazon Bedrock no tiene servidor, por lo que puede comenzar rápidamente, personalizar de forma privada los FM con sus propios datos e integrarlos e implementarlos en sus aplicaciones mediante herramientas de AWS sin tener que llevar la batuta la infraestructura.

Creador de imágenes Amazon Titan G1 es un AI FM habitable con Amazon Bedrock que le permite crear una imagen a partir de texto o cargar y editar su propia imagen. Algunas de las características secreto en las que nos centramos incluyen en pintura y pintar.

Esta publicación presenta una alternativa que simplifica la implementación de una aplicación web para la estampación de imágenes utilizando los servicios sin servidor de AWS. Usamos AWS amplificar, Cognito Amazonas, Puerta de enlace API de Amazon, AWS Lambday Amazon Bedrock con el maniquí Amazon Titan Image Generator G1 para crear una aplicación para editar imágenes mediante indicaciones. Cubrimos el funcionamiento interno de la alternativa para ayudarlo a comprender la función de cada servicio y cómo están conectados para brindarle una alternativa completa. Al momento de escribir esta publicación, Amazon Titan Image Generator G1 viene en dos versiones; Para esta publicación, utilizamos la lectura 2.

Descripción militar de la alternativa

El ulterior diagrama proporciona una descripción militar y destaca los componentes secreto. La obra utiliza Amazon Cognito para la autenticación de usuarios y Amplify como entorno de alojamiento para nuestra aplicación frontend. Se utiliza una combinación de API Gateway y una función Lambda para nuestros servicios backend, y Amazon Bedrock se integra con el maniquí FM, lo que permite a los usuarios editar la imagen mediante indicaciones.

Descripción general de la solución

Requisitos previos

Debe tener lo ulterior implementado para completar la alternativa en esta publicación:

Implemente fortuna de soluciones mediante AWS CloudFormation

Cuando ejecutas el Formación en la estrato de AWS plantilla, se implementan los siguientes fortuna:

Posteriormente de implementar la plantilla de CloudFormation, copie lo ulterior del archivo Futuro pestaña que se utilizará durante la implementación de Amplify:

  • userPoolId
  • userPoolClientId
  • invokeUrl

Salida CFN

Implementar la aplicación Amplify

Debe implementar manualmente la aplicación Amplify utilizando el código de interfaz que se encuentra en GitHub. Complete los siguientes pasos:

  1. Descargue el código de interfaz del repositorio de GitHub.
  2. Descomprima el archivo descargado y navegue hasta la carpeta.
  3. En el js carpeta, busque la config.js detener y reemplazar los títulos de XYZ para userPoolId, userPoolClientIdy invokeUrl con los títulos que recopiló de las panorama de la pila de CloudFormation. Establecer el region valía según la región donde está implementando la alternativa.

El ulterior es un ejemplo config.js archivo:

window._config = {
    cognito: {
        userPoolId: 'XYZ', // e.g. us-west-2_uXboG5pAb
        userPoolClientId: 'XYZ', // e.g. 25ddkmj4v6hfsfvruhpfi7n4hv
        region: 'XYZ// e.g. us-west-2
    },
    api: {
        invokeUrl: 'XYZ' // e.g. https://rc7nyt4tql.execute-api.us-west-2.amazonaws.com/prod,
    }
};

Extraer el archivo de configuración de actualización

  1. Seleccione todos los archivos y comprímalos como se muestra en la ulterior captura de pantalla.

Asegúrese de comprimir el contenido y no la carpeta de nivel superior. Por ejemplo, si el resultado de su compilación genera una carpeta convocatoria AWS-Amplify-Codenavegue hasta esa carpeta, seleccione todo el contenido y luego comprima el contenido.

Crear nuevo archivo zip

  1. Utilice el nuevo archivo .zip para manualmente desplegar la aplicación en Amplify.

Una vez implementada, recibirá un dominio que podrá utilizar en pasos posteriores para obtener a la aplicación.

Aplicación de creación de búsqueda de AWS Amplify

  1. Crear un agraciado de prueba en el clase de usuarios de Amazon Cognito.

Se requiere una dirección de correo electrónico para este agraciado porque deberá marcar la dirección de correo electrónico como verificada.

Cognito Crear usuario

  1. Regrese a la página de Amplify y use el dominio que generó automáticamente para obtener a la aplicación.

Utilice Amazon Cognito para la autenticación de usuarios

Amazon Cognito es una plataforma de identidad que puede utilizar para autenticar y autorizar usuarios. Usamos Amazon Cognito en nuestra alternativa para revisar al agraciado ayer de que pueda usar la aplicación de estampación de imágenes.

Al obtener a la URL de la aparejo de estampación de imágenes, se le pedirá que inicie sesión con un agraciado de prueba creado previamente. Para iniciar sesión por primera vez, se pedirá a los usuarios que actualicen su contraseña. Posteriormente de este proceso, las credenciales del agraciado se validan con los registros almacenados en el clase de usuarios. Si las credenciales coinciden, Amazon Cognito emitirá un token web JSON (JWT). En el Carga útil API que se enviará sección de la página, notará que el Autorización El campo se ha actualizado con el JWT recién emitido.

Utilice Lambda para el código backend y Amazon Bedrock para la función de IA generativa

El código de backend está alojado en Lambda y se inicia mediante solicitudes de usuarios enrutadas a través de API Gateway. La función Lambda procesa la carga útil de la solicitud y la reenvía a Amazon Bedrock. La respuesta de Amazon Bedrock sigue la misma ruta que la solicitud original.

Utilice API Gateway para la papeleo de API

API Gateway agiliza la papeleo de API, lo que permite a los desarrolladores implementar, sustentar, monitorear, proteger y esquilar sus API sin esfuerzo. En nuestro caso de uso, API Gateway sirve como orquestador de la razonamiento de la aplicación y proporciona regulación para llevar la batuta la carga en el backend. Sin API Gateway, necesitaría utilizar el SDK de JavaScript en la interfaz para interactuar directamente con la API de Amazon Bedrock, lo que aporta más trabajo a la interfaz.

Utilice Amplify para el código de interfaz

Amplify ofrece un entorno de avance para crear aplicaciones web y móviles seguras y escalables. Permite a los desarrolladores centrarse en su código en ocasión de preocuparse por la infraestructura subyacente. Amplify igualmente se integra con muchos proveedores de Git. Para esta alternativa, cargamos manualmente nuestro código de interfaz utilizando el método descrito anteriormente en esta publicación.

Tutorial de la aparejo de estampación de imágenes

Navegue hasta la URL proporcionada a posteriori de crear la aplicación en Amplify e inicie sesión. En el primer intento de inicio de sesión, se le pedirá que restablezca su contraseña.

Iniciar sesión en la aplicación

A medida que siga los pasos de esta aparejo, notará la Carga útil API que se enviará sección en el costado derecho que se actualiza dinámicamente, reflejando los detalles mencionados en los pasos correspondientes a continuación.

Paso 1: crea una máscara en tu imagen

Para crear una máscara en su imagen, elija un archivo (JPEG, JPG o PNG).

Posteriormente de cargar la imagen, la interfaz convierte el archivo a base64 y base_image El valía se actualiza.

Al clasificar una parte de la imagen que desea editar, se creará una máscara y mask El valía se actualiza con un nuevo valía base64. Además puede utilizar la opción de tamaño de trazo para ajustar el radio que está seleccionando.

Ahora tienes la imagen diferente y la imagen de máscara codificadas en base64. (El maniquí Amazon Titan Image Generator G1 requiere que las entradas estén en codificación base64).

Elija archivo y cree máscara

Paso 2: escriba un mensaje y configure sus opciones

Escribe un mensaje que describa lo que quieres hacer con la imagen. Para este ejemplo, ingresamos Make the driveway clear and empty. Esto se refleja en el mensaje de la derecha.

Puede nominar entre las siguientes opciones de estampación de imágenes: pintura interna y pintura externa. El valía para mode se actualiza dependiendo de su selección.

  • Utilice inpainting para eliminar instrumentos enmascarados y reemplazarlos con píxeles de fondo
  • Utilice pintura foráneo para extender los píxeles de la imagen enmascarada hasta los límites de la imagen.

Designar Destinar a API para mandar la carga útil a la puerta de enlace API. Esta actividad invoca la función Lambda, que valida la carga útil recibida. Si la carga útil se valida correctamente, la función Lambda procede a invocar la API de Amazon Bedrock para su posterior procesamiento.

La API de Amazon Bedrock genera dos panorama de imágenes en formato base64, que se transmiten a la aplicación frontend y se representan como imágenes visuales.

Inmediato

Paso 3: ver y descargar el resultado

La ulterior captura de pantalla muestra los resultados de nuestra prueba. Puede descargar los resultados o proporcionar un mensaje actualizado para obtener un nuevo resultado.

Descargar

Pruebas y alternativa de problemas

Cuando inicias el Destinar a API actividad, el sistema realiza una comprobación de brío. Si equivocación la información requerida o es incorrecta, mostrará una notificación de error. Por ejemplo, si intenta mandar una imagen a la API sin proporcionar un mensaje, aparecerá un mensaje de error en el costado derecho de la interfaz, advirtiéndole de la entrada que equivocación, como se muestra en la ulterior captura de pantalla.

Error de aplicación

Suprimir

Si decide dejar de usar la aparejo de estampación de imágenes, puede seguir estos pasos para eliminar la aparejo de estampación de imágenes, sus fortuna asociados implementados mediante AWS CloudFormation y la implementación de Amplify:

  1. Elimine la pila de CloudFormation:
    1. En la consola de AWS CloudFormation, elija pilas en el panel de navegación.
    2. Localice la pila que creó durante el proceso de implementación (le asignó un nombre).
    3. Seleccione la pila y elija Borrar.
  2. Elimine la aplicación Amplify y sus fortuna. Para obtener instrucciones, consulte Suprimir fortuna.

Conclusión

En esta publicación, exploramos una alternativa de muestra que puede utilizar para implementar una aplicación de estampación de imágenes mediante los servicios sin servidor de AWS y los servicios de IA generativa. Usamos Amazon Bedrock y Amazon Titan FM que le permite editar imágenes mediante indicaciones. Al adoptar esta alternativa, obtiene la superioridad de utilizar los servicios administrados de AWS, por lo que no tiene que sustentar la infraestructura subyacente. Comience hoy implementando esta alternativa de muestra.

Bienes adicionales

Para obtener más información sobre Amazon Bedrock, consulte los siguientes fortuna:

Para obtener más información sobre el maniquí Amazon Titan Image Generator G1, consulte los siguientes fortuna:


Acerca de los autores

salman ahmedsalman ahmed es directivo técnico senior de cuentas en AWS Enterprise Support. Le gusta ayudar a los clientes de la industria de viajes y hotelería a diseñar, implementar y respaldar la infraestructura de la estrato. Con pasión por los servicios de redes y primaveras de experiencia, ayuda a los clientes a adoptar varios servicios de redes de AWS. Fuera del trabajo, Salman disfruta de la fotografía, correr y ver a sus equipos deportivos favoritos.

Sergio BarrazaSergio Barraza es líder senior de soporte empresarial en AWS y ayuda a los clientes de energía a diseñar y optimizar soluciones en la estrato. Apasionado por el avance de software, consejo a los clientes de energía a través de la prohijamiento de servicios de AWS. Fuera del trabajo, Sergio es un músico multiinstrumentista que toca la guitarra, el piano y la fila, y igualmente practica Wing Chun Kung Fu.

Ravi KumarRavi Kumar es un directivo técnico senior de cuentas en AWS Enterprise Support que ayuda a los clientes de la industria de viajes y hotelería a optimizar sus operaciones en la estrato en AWS. Es un profesional de TI orientado a resultados con más de 20 primaveras de experiencia. En su tiempo redimido, Ravi disfruta de actividades creativas como pintar. Además le gusta recrearse al cricket y correr a lugares nuevos.

Ankush GoyalAnkush Goyal es un líder de soporte empresarial en AWS Enterprise Support que ayuda a los clientes a optimizar sus operaciones en la estrato en AWS. Es un profesional de TI orientado a resultados con más de 20 primaveras de experiencia.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *