Skip to content

Latest commit

 

History

History
75 lines (41 loc) · 3.13 KB

README.md

File metadata and controls

75 lines (41 loc) · 3.13 KB

AWS integration with Dall-e (OpenAI) and WhatsApp

Requisitos

Accedemos a nuestra cuenta de AWS y creamos un entorno de Cloud9, donde clonaremos el repositorio.

Ejecutar en Cloud9.

git clone https://github.com/luisgradossalinas/aws-openai-dalle-public

Abrir el contenido del archivo falle.yaml e ingresamos en la línea 66 nuestro API Key de OpenAI.

En la línea 73, ingresar el valor de nuestra instancia y token de UltraMsg.

Ejecutar en Cloud9

cd aws-openai-dalle-public
sh sh/01_Start_Deploy.sh

Esperamos que se cree el stack en CloudFormation.

Una vez creado el stack, ejecutamos en Cloud9 lo siguiente para iniciar la aplicación web en Flask (en un escenario productivo, la aplicación se puede dockerizar e implementar con Fargate y un balanceador de carga).

python3 web/app.py

Abrimos el puerto 8081, de la EC2 (Añadir una regla de entrada al Security group).

Añadir la regla de entrada.

Abrimos un navegador y pegamos la IP pública de la EC2 concatenada con el puerto 8081

Abrimos un nuevo terminal en Cloud9 y ejecutamos lo siguiente:

curl -s http://checkip.amazonaws.com | awk {'print "http://" $1 ":8081"'}

Pegar el resultado en un navegador y veremos la siguiente página.

Luego se te enviará la imagen generada en Dall-e por WhatsApp.

Documentación

https://realpython.com/generate-images-with-dalle-openai-api

https://github.com/openai/openai-cookbook/blob/main/examples/dalle/Image_generations_edits_and_variations_with_DALL-E.ipynb

Agradecimientos

Espero te haya servido esta solución, si pudiste replicarlo, puedes publicarlo en LinkedIn con tus aportes, cambios y etiquétame (https://www.linkedin.com/in/luisgrados).

Eliminar recursos en AWS

Ejecutamos en Cloud9.

aws s3 ls | grep dalle-images | awk {'print "aws s3 rb s3://" $3 " --f"'} | sh
aws s3 ls | grep dalle-code | awk {'print "aws s3 rb s3://" $3 " --f"'} | sh   
aws cloudformation delete-stack --stack-name StackDalle
echo "Stack StackDalle eliminándose"