Tutorialprogramação· Médio· PT40M

DALL-E via API: Geração de Imagens com Python e gpt-image-1

Gere imagens com DALL-E 3 e gpt-image-1 via API Python: geração básica, base64, lote com threading, edição por máscara e controle de custos.

24 de maio de 2026· Atualizado em 24 de maio de 2026por Redação SWEN.AI
DALL-E via API: Geração de Imagens com Python e gpt-image-1

DALL-E API: geração de imagens programática

A API de imagens da OpenAI permite gerar, editar e criar variações de imagens via código Python. Isso abre possibilidades que o ChatGPT não oferece: geração em lote, integração em pipelines, e personalização total via parâmetros.

Modelos disponíveis

DALL-E 3 (dall-e-3): alta qualidade, máximo 1 imagem por request, excelente fidelidade ao prompt. gpt-image-1: modelo mais recente, suporta até 10 imagens simultâneas, aceita referências de imagem, melhor para workflows de produção.

Passo 1 — Geração básica com DALL-E 3

from openai import OpenAI
import base64
client = OpenAI()
response = client.images.generate(
    model="dall-e-3",
    prompt="A futuristic Brazilian city at sunset, São Paulo skyline with flying cars, cinematic photography",
    size="1792x1024",
    quality="hd",
    n=1
)
print(response.data[0].url)  # URL temporária (expira em 1h)

Passo 2 — Salvar imagem localmente

import requests
image_url = response.data[0].url
image_data = requests.get(image_url).content
with open("imagem_gerada.png", "wb") as f:
    f.write(image_data)

Passo 3 — gpt-image-1 com base64

response = client.images.generate(
    model="gpt-image-1",
    prompt="Minimalist logo for a fintech startup, blue and white, clean vector style",
    size="1024x1024",
    quality="high",
    n=1
)
import base64
image_bytes = base64.b64decode(response.data[0].b64_json)
with open("logo.png", "wb") as f:
    f.write(image_bytes)

Passo 4 — Geração em lote com threading

from concurrent.futures import ThreadPoolExecutor
prompts = ["capa 1 ...", "capa 2 ...", "capa 3 ..."]
def gerar(prompt):
    r = client.images.generate(model="gpt-image-1",prompt=prompt,size="1536x1024",quality="high",n=1)
    return base64.b64decode(r.data[0].b64_json)
with ThreadPoolExecutor(max_workers=5) as ex:
    imagens = list(ex.map(gerar, prompts))

Passo 5 — Edição de imagens (inpainting)

with open("original.png","rb") as img, open("mascara.png","rb") as mask:
    response = client.images.edit(
        image=img, mask=mask,
        prompt="Replace the background with a tropical beach",
        model="dall-e-2", size="1024x1024"
    )

Controle de custos

DALL-E 3 HD 1792x1024: US$0,12 por imagem. gpt-image-1 high 1536x1024: US$0,19 por imagem. Para volume: use quality="standard" e salve no storage para evitar re-geração.

Salve seu progresso de aprendizado

Crie sua conta gratuita no SWEN.AI para acompanhar as aulas concluídas

Salvar meu progresso

Tutoriais relacionados

📚 Guias Completos no CF Gauss

CF Gauss por Luis Roquette — especialista em IA para empresas brasileiras