1. Introdução ao Modelo DALL·E

O modelo DALL·E, desenvolvido pela OpenAI, é um sistema de inteligência artificial capaz de gerar imagens a partir de prompts textuais. Sua capacidade varia desde simples replicação de imagens até a recriação criativa de cenas descritas em texto. O nome "DALL·E" é uma fusão do pintor Salvador Dalí e do personagem animado WALL·E, simbolizando a interseção entre arte e automação.

O modelo DALL·E é treinado por meio de aprendizado profundo para compreender prompts textuais e transformá-los em representações visuais. Seja fotografia, pintura, arte digital ou qualquer outra forma de imagética, o DALL·E pode gerar imagens correspondentes com base nas descrições.

2. Uso Básico do Modelo de Geração de Imagens DALL·E

A OpenAI fornece uma interface de API para o DALL·E, permitindo que desenvolvedores integrem o modelo em suas próprias aplicações ou serviços. Abaixo está o processo básico e os significados dos parâmetros para gerar imagens usando as interfaces de API DALL·E 3 e DALL·E 2:

curl -X POST https://api.openai.com/v1/images/generations \
  -H "Authorization: Bearer SEU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
        "model": "dall-e-2", # Versão do modelo, pode ser "dall-e-3" ou "dall-e-2".
        "prompt": "Prompt de texto", # Texto usado para gerar a imagem.
        "n": 1, # Número de imagens a gerar.
        "size": "1024x1024", # Tamanho da imagem.
        "quality": "standard" # Qualidade da imagem, pode ser "hd".
      }'
  • model: Especifica a versão do modelo DALL·E a ser utilizada.
  • prompt: Fornece o prompt textual para o modelo, que ele utiliza para gerar imagens.
  • n: Especifica o número de imagens a serem geradas. O DALL·E 3 pode gerar apenas 1 imagem por vez, enquanto o DALL·E 2 pode gerar até 10 imagens simultaneamente.
  • size: Tamanho da imagem gerada. Para dall-e-2, deve ser um dos 256x256, 512x512 ou 1024x1024. Para dall-e-3, deve ser um dos 1024x1024, 1792x1024 ou 1024x1792.
  • quality: Define a qualidade da imagem gerada. standard para qualidade padrão, hd para qualidade de alta definição.

3. Edição de Imagens e Geração de Variantes (Apenas DALL·E 2)

3.1. Edição de Imagens (Edição ou Expansão de Imagens)

Com o recurso de edição de imagens do DALL·E 2, você pode enviar uma imagem e sua máscara correspondente. As áreas transparentes na máscara indicam as partes a serem editadas, e o modelo gerará conteúdo nessas áreas com base nas novas sugestões textuais. Esse recurso pode criar novos elementos diferentes dos elementos da imagem original, gerando assim versões editadas.

Continue usando o exemplo de solicitação da API com o comando curl:

curl -X POST https://api.openai.com/v1/images/edits \
  -H "Authorization: Bearer SEU_API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F "model=dall-e-2" \
  -F "prompt=Nova descrição textual" \
  -F "image=@/caminho_para_sua_imagem_original.png" \
  -F "mask=@/caminho_para_sua_mascara.png" \
  -F "n=1" \
  -F "size=1024x1024"
  • image: arquivo contendo a imagem original.
  • mask: arquivo contendo a máscara, onde a área transparente indica a região a ser processada pelo modelo.
  • prompt: nova sugestão textual descrevendo todo o conteúdo da nova imagem, não apenas a área apagada.

É importante observar que a imagem original e a máscara carregadas devem ser imagens PNG quadradas, não excedendo 4MB de tamanho e tendo as mesmas dimensões.

Exemplo:

curl https://api.openai.com/v1/images/edits \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -F image="@sunlit_lounge.png" \
  -F mask="@mask.png" \
  -F model="dall-e-2" \
  -F prompt="Uma área de descanso iluminada pelo sol em ambientes fechados com uma piscina e um flamingo dentro" \
  -F n=1 \
  -F size="1024x1024"

Imagem Original Imagem da Máscara Imagem Gerada

3.2. Geração de Variantes de Imagens

Usando o DALL·E 2 para gerar variantes de imagens a partir de uma imagem existente, cria-se algumas versões diferentes em conteúdo ou estilo. Esse recurso pode ser usado para explorar diferentes possibilidades de uma imagem ou para evolução criativa.

Da mesma forma, utilize o comando curl para enviar uma solicitação à API:

curl -X POST https://api.openai.com/v1/images/variations \
  -H "Authorization: Bearer SEU_API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F "image=@/caminho_para_sua_imagem.png" \
  -F "n=2" \
  -F "size=1024x1024"
  • image: arquivo contendo a imagem original para a qual as variantes serão geradas.
  • n: o número de variantes a serem geradas, que pode ser controlado usando esse parâmetro.

Assim como antes, a imagem de entrada deve ser um arquivo PNG quadrado, com menos de 4MB de tamanho.