/image/background-remove, que toma una imagen opaca ya terminada y segmenta el primer plano a posteriori. Usa la transparencia nativa cuando de todos modos vayas a generar o editar el recurso; usa la eliminación de fondo cuando solo tengas la imagen opaca.

Mismo prompt y misma semilla en gpt-image-2-5-flare. Izquierda: salida predeterminada. Derecha: transparent_background: true, mostrada sobre un fondo de cuadros. La sombra proyectada se conserva como alfa parcial.
Qué necesitas
400 antes de que se ejecute la inferencia, así que no se te cobra por una solicitud rechazada.
Paso 1: genera una imagen transparente
/image/generate es el endpoint nativo. Establece format en png o webp y transparent_background en true.
content-type: image/png con una disposición de píxeles RGBA. Sin return_binary obtienes el sobre JSON habitual con una cadena base64 en images[0].
format tiene como valor predeterminado webp, que también admite alfa, así que omitir format funciona. Solo falla un "format": "jpeg" explícito.
Paso 2: verifica el canal alfa
No te fíes de la extensión del archivo. Comprueba el modo de píxel y revisa la distribución del alfa para confirmar que el fondo es realmente transparente y no un relleno blanco aplanado.0 (el fondo), una franja de valores parciales a lo largo de los bordes (antialiasing y sombras suaves) y un cuadro delimitador del sujeto más pequeño que el lienzo. Si im.mode es RGB o la proporción transparente es 0%, el canal alfa se perdió en algún punto de tu pipeline, normalmente en un paso de redimensionado o recodificación que lo descartó.

El canal alfa de la imagen anterior, aislado. La sombra bajo el vaso se desvanece a lo largo de docenas de niveles de gris en lugar de saltar de blanco a negro, que es lo que quieres para componer sobre fondos arbitrarios.
252–254 en lugar de 255. Visualmente es indistinguible, pero si aplicas un umbral == 255 para encontrar el sujeto, obtendrás una máscara vacía. Usa en su lugar un umbral > 0 o >= 250.Paso 3: usa el endpoint compatible con OpenAI
Si ya usas el SDK de OpenAI,/images/generations acepta el mismo parámetro background que usa OpenAI. Establécelo en "transparent" y elige png o webp como output_format.
background acepta transparent, opaque o auto. opaque, auto y null mantienen el comportamiento predeterminado del modelo, así que el único valor que cambia algo es transparent. output_format tiene como valor predeterminado png en este endpoint, así que puedes omitirlo.
/images/generations acepta quality, style, output_compression y size por compatibilidad con OpenAI, pero los ignora. En los modelos GPT Image que cubre esta página, size no tiene ningún efecto: la salida mantiene la relación de aspecto y la resolución predeterminadas del modelo. Además de model y prompt, los campos que afectan a la imagen son background, output_format y moderation; response_format solo elige entre base64 y una data URL. resolution y aspect_ratio no son campos y el esquema es estricto, así que enviar cualquiera de ellos devuelve 400. Omite quality aquí; usa el endpoint nativo /image/generate cuando necesites controlar el nivel (consulta Precios más abajo).Paso 4: edita con transparencia
Tanto/image/edit como /image/multi-edit aceptan también transparent_background. La imagen fuente no necesita ser transparente; puedes pasar una foto opaca y pedir al modelo que aísle el sujeto mientras la edita.
output_format se infiere cuando se omite: normalmente PNG para ediciones 1K y JPEG para 2K/4K, pero cuando transparent_background es true la inferencia cambia a PNG en todas las resoluciones. Así que solo necesitas enviar output_format explícitamente si quieres WebP.
/image/multi-edit acepta los mismos campos con dos diferencias: envía cada imagen de entrada como una parte images repetida, e indica el modelo con modelId en lugar de model. Es la opción natural para componer una foto de producto en una nueva escena y recibir el resultado compuesto como un recorte que puedes colocar en tu propio diseño.
Precios
La transparencia no añade ningún recargo. Pagas el precio normal por imagen del modelo. Las dos rutas facturan de forma distinta:Errores
La validación se ejecuta antes de llamar al modelo. Ambos mensajes indican cómo solucionarlo.transparent_background: false con jpeg es válido y devuelve un JPEG opaco normal.
Descubre los modelos compatibles en tiempo de ejecución
Los IDs de modelo cambian. En lugar de codificar la lista anterior, filtraGET /models por el flag de restricción. La clave solo está presente, como true, en los modelos que la admiten.
type=inpaint para los endpoints de edición, que devuelven los IDs de modelo -edit.
Cuándo usar esto frente a /image/background-remove
/image/background-remove cuando la imagen opaca ya existe y no quieres regenerarla.

Un único sticker transparente de la solicitud del Paso 1, colocado sobre tres fondos sin ningún procesamiento adicional.
Relacionado
- Generación de imágenes para tamaños, niveles de calidad y la lista completa de parámetros de
/image/generate - Edición de imágenes para
/image/edit,/image/multi-edity/image/background-remove - Modelos de imagen para precios y restricciones actuales